diff --git a/apis/alertsmanagement/v1beta1/zz_monitoractionruleactiongroup_types.go b/apis/alertsmanagement/v1beta1/zz_monitoractionruleactiongroup_types.go index 64d31abd2..1755f4014 100755 --- a/apis/alertsmanagement/v1beta1/zz_monitoractionruleactiongroup_types.go +++ b/apis/alertsmanagement/v1beta1/zz_monitoractionruleactiongroup_types.go @@ -34,9 +34,11 @@ type AlertContextObservation struct { type AlertContextParameters struct { // The operator for a given condition. Possible values are Equals and NotEquals. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -61,9 +63,11 @@ type AlertRuleIDObservation struct { type AlertRuleIDParameters struct { // The operator for a given condition. Possible values are Equals and NotEquals. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -118,24 +122,31 @@ type ConditionObservation struct { type ConditionParameters struct { // A alert_context block as defined below. + // +kubebuilder:validation:Optional AlertContext []AlertContextParameters `json:"alertContext,omitempty" tf:"alert_context,omitempty"` // A alert_rule_id block as defined below. + // +kubebuilder:validation:Optional AlertRuleID []AlertRuleIDParameters `json:"alertRuleId,omitempty" tf:"alert_rule_id,omitempty"` // A description block as defined below. + // +kubebuilder:validation:Optional Description []DescriptionParameters `json:"description,omitempty" tf:"description,omitempty"` // A monitor block as defined below. + // +kubebuilder:validation:Optional Monitor []MonitorParameters `json:"monitor,omitempty" tf:"monitor,omitempty"` // A monitor_service as block defined below. + // +kubebuilder:validation:Optional MonitorService []MonitorServiceParameters `json:"monitorService,omitempty" tf:"monitor_service,omitempty"` // A severity block as defined below. + // +kubebuilder:validation:Optional Severity []SeverityParameters `json:"severity,omitempty" tf:"severity,omitempty"` // A target_resource_type block as defined below. + // +kubebuilder:validation:Optional TargetResourceType []TargetResourceTypeParameters `json:"targetResourceType,omitempty" tf:"target_resource_type,omitempty"` } @@ -160,9 +171,11 @@ type DescriptionObservation struct { type DescriptionParameters struct { // The operator for a given condition. Possible values are Equals and NotEquals. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -228,12 +241,15 @@ type MonitorActionRuleActionGroupParameters struct { ActionGroupIDSelector *v1.Selector `json:"actionGroupIdSelector,omitempty" tf:"-"` // A condition block as defined below. + // +kubebuilder:validation:Optional Condition []ConditionParameters `json:"condition,omitempty" tf:"condition,omitempty"` // Specifies a description for the Action Rule. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // Is the Action Rule enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Specifies the name of the resource group in which the Monitor Action Rule should exist. Changing this forces a new resource to be created. @@ -250,9 +266,11 @@ type MonitorActionRuleActionGroupParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A scope block as defined below. + // +kubebuilder:validation:Optional Scope []ScopeParameters `json:"scope,omitempty" tf:"scope,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -277,9 +295,11 @@ type MonitorObservation struct { type MonitorParameters struct { // The operator for a given condition. Possible values are Equals and NotEquals. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -304,9 +324,11 @@ type MonitorServiceObservation struct { type MonitorServiceParameters struct { // The operator for a given condition. Possible values are Equals and NotEquals. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -331,9 +353,11 @@ type ScopeObservation struct { type ScopeParameters struct { // A list of resource IDs of the given scope type which will be the target of action rule. + // +kubebuilder:validation:Optional ResourceIds []*string `json:"resourceIds,omitempty" tf:"resource_ids,omitempty"` // Specifies the type of target scope. Possible values are ResourceGroup and Resource. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -358,9 +382,11 @@ type SeverityObservation struct { type SeverityParameters struct { // The operator for a given condition. Possible values are Equals and NotEquals. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -385,9 +411,11 @@ type TargetResourceTypeObservation struct { type TargetResourceTypeParameters struct { // The operator for a given condition. Possible values are Equals and NotEquals. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } diff --git a/apis/alertsmanagement/v1beta1/zz_monitoractionrulesuppression_types.go b/apis/alertsmanagement/v1beta1/zz_monitoractionrulesuppression_types.go index 0c622b43a..14e9325ac 100755 --- a/apis/alertsmanagement/v1beta1/zz_monitoractionrulesuppression_types.go +++ b/apis/alertsmanagement/v1beta1/zz_monitoractionrulesuppression_types.go @@ -34,9 +34,11 @@ type ConditionAlertContextObservation struct { type ConditionAlertContextParameters struct { // The operator for a given condition. Possible values are Equals and NotEquals. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -61,9 +63,11 @@ type ConditionAlertRuleIDObservation struct { type ConditionAlertRuleIDParameters struct { // The operator for a given condition. Possible values are Equals and NotEquals. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -88,9 +92,11 @@ type ConditionDescriptionObservation struct { type ConditionDescriptionParameters struct { // The operator for a given condition. Possible values are Equals and NotEquals. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -115,9 +121,11 @@ type ConditionMonitorObservation struct { type ConditionMonitorParameters struct { // The operator for a given condition. Possible values are Equals and NotEquals. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -142,9 +150,11 @@ type ConditionMonitorServiceObservation struct { type ConditionMonitorServiceParameters struct { // The operator for a given condition. Possible values are Equals and NotEquals. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -169,9 +179,11 @@ type ConditionSeverityObservation struct { type ConditionSeverityParameters struct { // The operator for a given condition. Possible values are Equals and NotEquals. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -196,9 +208,11 @@ type ConditionTargetResourceTypeObservation struct { type ConditionTargetResourceTypeParameters struct { // The operator for a given condition. Possible values are Equals and NotEquals. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -253,24 +267,31 @@ type MonitorActionRuleSuppressionConditionObservation struct { type MonitorActionRuleSuppressionConditionParameters struct { // A alert_context block as defined below. + // +kubebuilder:validation:Optional AlertContext []ConditionAlertContextParameters `json:"alertContext,omitempty" tf:"alert_context,omitempty"` // A alert_rule_id block as defined below. + // +kubebuilder:validation:Optional AlertRuleID []ConditionAlertRuleIDParameters `json:"alertRuleId,omitempty" tf:"alert_rule_id,omitempty"` // A description block as defined below. + // +kubebuilder:validation:Optional Description []ConditionDescriptionParameters `json:"description,omitempty" tf:"description,omitempty"` // A monitor block as defined below. + // +kubebuilder:validation:Optional Monitor []ConditionMonitorParameters `json:"monitor,omitempty" tf:"monitor,omitempty"` // A monitor_service as block defined below. + // +kubebuilder:validation:Optional MonitorService []ConditionMonitorServiceParameters `json:"monitorService,omitempty" tf:"monitor_service,omitempty"` // A severity block as defined below. + // +kubebuilder:validation:Optional Severity []ConditionSeverityParameters `json:"severity,omitempty" tf:"severity,omitempty"` // A target_resource_type block as defined below. + // +kubebuilder:validation:Optional TargetResourceType []ConditionTargetResourceTypeParameters `json:"targetResourceType,omitempty" tf:"target_resource_type,omitempty"` } @@ -325,12 +346,15 @@ type MonitorActionRuleSuppressionObservation struct { type MonitorActionRuleSuppressionParameters struct { // A condition block as defined below. + // +kubebuilder:validation:Optional Condition []MonitorActionRuleSuppressionConditionParameters `json:"condition,omitempty" tf:"condition,omitempty"` // Specifies a description for the Action Rule. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // Is the Action Rule enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Specifies the name of the resource group in which the Monitor Action Rule should exist. Changing this forces a new resource to be created. @@ -347,12 +371,15 @@ type MonitorActionRuleSuppressionParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A scope block as defined below. + // +kubebuilder:validation:Optional Scope []MonitorActionRuleSuppressionScopeParameters `json:"scope,omitempty" tf:"scope,omitempty"` // A suppression block as defined below. + // +kubebuilder:validation:Optional Suppression []SuppressionParameters `json:"suppression,omitempty" tf:"suppression,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -377,9 +404,11 @@ type MonitorActionRuleSuppressionScopeObservation struct { type MonitorActionRuleSuppressionScopeParameters struct { // A list of resource IDs of the given scope type which will be the target of action rule. + // +kubebuilder:validation:Optional ResourceIds []*string `json:"resourceIds,omitempty" tf:"resource_ids,omitempty"` // Specifies the type of target scope. Possible values are ResourceGroup and Resource. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -416,15 +445,19 @@ type ScheduleObservation struct { type ScheduleParameters struct { // specifies the recurrence UTC end datetime (Y-m-d'T'H:M:S'Z'). + // +kubebuilder:validation:Optional EndDateUtc *string `json:"endDateUtc,omitempty" tf:"end_date_utc,omitempty"` // specifies the list of dayOfMonth to recurrence. Possible values are between 1 - 31. Required if recurrence_type is Monthly. + // +kubebuilder:validation:Optional RecurrenceMonthly []*float64 `json:"recurrenceMonthly,omitempty" tf:"recurrence_monthly,omitempty"` // specifies the list of dayOfWeek to recurrence. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday and Saturday. + // +kubebuilder:validation:Optional RecurrenceWeekly []*string `json:"recurrenceWeekly,omitempty" tf:"recurrence_weekly,omitempty"` // specifies the recurrence UTC start datetime (Y-m-d'T'H:M:S'Z'). + // +kubebuilder:validation:Optional StartDateUtc *string `json:"startDateUtc,omitempty" tf:"start_date_utc,omitempty"` } @@ -449,9 +482,11 @@ type SuppressionObservation struct { type SuppressionParameters struct { // Specifies the type of suppression. Possible values are Always, Daily, Monthly, Once, and Weekly. + // +kubebuilder:validation:Optional RecurrenceType *string `json:"recurrenceType,omitempty" tf:"recurrence_type,omitempty"` // A schedule block as defined below. Required if recurrence_type is Daily, Monthly, Once or Weekly. + // +kubebuilder:validation:Optional Schedule []ScheduleParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` } diff --git a/apis/alertsmanagement/v1beta1/zz_monitoralertprocessingruleactiongroup_types.go b/apis/alertsmanagement/v1beta1/zz_monitoralertprocessingruleactiongroup_types.go index 52033a84b..e8e983395 100755 --- a/apis/alertsmanagement/v1beta1/zz_monitoralertprocessingruleactiongroup_types.go +++ b/apis/alertsmanagement/v1beta1/zz_monitoralertprocessingruleactiongroup_types.go @@ -34,9 +34,11 @@ type AlertRuleNameObservation struct { type AlertRuleNameParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -61,9 +63,11 @@ type DailyObservation struct { type DailyParameters struct { // Specifies the recurrence end time (H:M:S). + // +kubebuilder:validation:Optional EndTime *string `json:"endTime,omitempty" tf:"end_time,omitempty"` // Specifies the recurrence start time (H:M:S). + // +kubebuilder:validation:Optional StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` } @@ -88,9 +92,11 @@ type MonitorAlertProcessingRuleActionGroupConditionAlertContextObservation struc type MonitorAlertProcessingRuleActionGroupConditionAlertContextParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -115,9 +121,11 @@ type MonitorAlertProcessingRuleActionGroupConditionAlertRuleIDObservation struct type MonitorAlertProcessingRuleActionGroupConditionAlertRuleIDParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -142,9 +150,11 @@ type MonitorAlertProcessingRuleActionGroupConditionDescriptionObservation struct type MonitorAlertProcessingRuleActionGroupConditionDescriptionParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -205,9 +215,11 @@ type MonitorAlertProcessingRuleActionGroupConditionMonitorServiceObservation str type MonitorAlertProcessingRuleActionGroupConditionMonitorServiceParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -250,36 +262,47 @@ type MonitorAlertProcessingRuleActionGroupConditionObservation struct { type MonitorAlertProcessingRuleActionGroupConditionParameters struct { // A alert_context block as defined above. + // +kubebuilder:validation:Optional AlertContext []MonitorAlertProcessingRuleActionGroupConditionAlertContextParameters `json:"alertContext,omitempty" tf:"alert_context,omitempty"` // A alert_rule_id block as defined above. + // +kubebuilder:validation:Optional AlertRuleID []MonitorAlertProcessingRuleActionGroupConditionAlertRuleIDParameters `json:"alertRuleId,omitempty" tf:"alert_rule_id,omitempty"` // A alert_rule_name block as defined above. + // +kubebuilder:validation:Optional AlertRuleName []AlertRuleNameParameters `json:"alertRuleName,omitempty" tf:"alert_rule_name,omitempty"` // A description block as defined below. + // +kubebuilder:validation:Optional Description []MonitorAlertProcessingRuleActionGroupConditionDescriptionParameters `json:"description,omitempty" tf:"description,omitempty"` // A monitor_condition block as defined below. + // +kubebuilder:validation:Optional MonitorCondition []MonitorConditionParameters `json:"monitorCondition,omitempty" tf:"monitor_condition,omitempty"` // A monitor_service block as defined below. + // +kubebuilder:validation:Optional MonitorService []MonitorAlertProcessingRuleActionGroupConditionMonitorServiceParameters `json:"monitorService,omitempty" tf:"monitor_service,omitempty"` // A severity block as defined below. + // +kubebuilder:validation:Optional Severity []MonitorAlertProcessingRuleActionGroupConditionSeverityParameters `json:"severity,omitempty" tf:"severity,omitempty"` // A signal_type block as defined below. + // +kubebuilder:validation:Optional SignalType []SignalTypeParameters `json:"signalType,omitempty" tf:"signal_type,omitempty"` // A target_resource block as defined below. + // +kubebuilder:validation:Optional TargetResource []TargetResourceParameters `json:"targetResource,omitempty" tf:"target_resource,omitempty"` // A target_resource_group block as defined below. + // +kubebuilder:validation:Optional TargetResourceGroup []TargetResourceGroupParameters `json:"targetResourceGroup,omitempty" tf:"target_resource_group,omitempty"` // A target_resource_type block as defined below. + // +kubebuilder:validation:Optional TargetResourceType []MonitorAlertProcessingRuleActionGroupConditionTargetResourceTypeParameters `json:"targetResourceType,omitempty" tf:"target_resource_type,omitempty"` } @@ -304,9 +327,11 @@ type MonitorAlertProcessingRuleActionGroupConditionSeverityObservation struct { type MonitorAlertProcessingRuleActionGroupConditionSeverityParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -331,9 +356,11 @@ type MonitorAlertProcessingRuleActionGroupConditionTargetResourceTypeObservation type MonitorAlertProcessingRuleActionGroupConditionTargetResourceTypeParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -402,12 +429,15 @@ type MonitorAlertProcessingRuleActionGroupParameters struct { AddActionGroupIdsSelector *v1.Selector `json:"addActionGroupIdsSelector,omitempty" tf:"-"` // A condition block as defined below. + // +kubebuilder:validation:Optional Condition []MonitorAlertProcessingRuleActionGroupConditionParameters `json:"condition,omitempty" tf:"condition,omitempty"` // Specifies a description for the Alert Processing Rule. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // Should the Alert Processing Rule be enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The name of the Resource Group where the Alert Processing Rule should exist. Changing this forces a new Alert Processing Rule to be created. @@ -424,6 +454,7 @@ type MonitorAlertProcessingRuleActionGroupParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A schedule block as defined below. + // +kubebuilder:validation:Optional Schedule []MonitorAlertProcessingRuleActionGroupScheduleParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` // A list of resource IDs which will be the target of alert processing rule. @@ -441,6 +472,7 @@ type MonitorAlertProcessingRuleActionGroupParameters struct { ScopesSelector *v1.Selector `json:"scopesSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the Alert Processing Rule. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -477,15 +509,19 @@ type MonitorAlertProcessingRuleActionGroupScheduleObservation struct { type MonitorAlertProcessingRuleActionGroupScheduleParameters struct { // Specifies the Alert Processing Rule effective start time (Y-m-d'T'H:M:S). + // +kubebuilder:validation:Optional EffectiveFrom *string `json:"effectiveFrom,omitempty" tf:"effective_from,omitempty"` // Specifies the Alert Processing Rule effective end time (Y-m-d'T'H:M:S). + // +kubebuilder:validation:Optional EffectiveUntil *string `json:"effectiveUntil,omitempty" tf:"effective_until,omitempty"` // A recurrence block as defined above. + // +kubebuilder:validation:Optional Recurrence []RecurrenceParameters `json:"recurrence,omitempty" tf:"recurrence,omitempty"` // The time zone (e.g. Pacific Standard time, Eastern Standard Time). Defaults to UTC. possible values are defined here. + // +kubebuilder:validation:Optional TimeZone *string `json:"timeZone,omitempty" tf:"time_zone,omitempty"` } @@ -510,9 +546,11 @@ type MonitorConditionObservation struct { type MonitorConditionParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -543,12 +581,15 @@ type MonthlyObservation struct { type MonthlyParameters struct { // Specifies a list of dayOfMonth to recurrence. Possible values are integers between 1 - 31. + // +kubebuilder:validation:Optional DaysOfMonth []*float64 `json:"daysOfMonth,omitempty" tf:"days_of_month,omitempty"` // Specifies the recurrence end time (H:M:S). + // +kubebuilder:validation:Optional EndTime *string `json:"endTime,omitempty" tf:"end_time,omitempty"` // Specifies the recurrence start time (H:M:S). + // +kubebuilder:validation:Optional StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` } @@ -579,12 +620,15 @@ type RecurrenceObservation struct { type RecurrenceParameters struct { // One or more daily blocks as defined above. + // +kubebuilder:validation:Optional Daily []DailyParameters `json:"daily,omitempty" tf:"daily,omitempty"` // One or more monthly blocks as defined above. + // +kubebuilder:validation:Optional Monthly []MonthlyParameters `json:"monthly,omitempty" tf:"monthly,omitempty"` // One or more weekly blocks as defined below. + // +kubebuilder:validation:Optional Weekly []WeeklyParameters `json:"weekly,omitempty" tf:"weekly,omitempty"` } @@ -609,9 +653,11 @@ type SignalTypeObservation struct { type SignalTypeParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -636,9 +682,11 @@ type TargetResourceGroupObservation struct { type TargetResourceGroupParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -663,9 +711,11 @@ type TargetResourceObservation struct { type TargetResourceParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -696,12 +746,15 @@ type WeeklyObservation struct { type WeeklyParameters struct { // Specifies a list of dayOfWeek to recurrence. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, and Saturday. + // +kubebuilder:validation:Optional DaysOfWeek []*string `json:"daysOfWeek,omitempty" tf:"days_of_week,omitempty"` // Specifies the recurrence end time (H:M:S). + // +kubebuilder:validation:Optional EndTime *string `json:"endTime,omitempty" tf:"end_time,omitempty"` // Specifies the recurrence start time (H:M:S). + // +kubebuilder:validation:Optional StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` } diff --git a/apis/alertsmanagement/v1beta1/zz_monitoralertprocessingrulesuppression_types.go b/apis/alertsmanagement/v1beta1/zz_monitoralertprocessingrulesuppression_types.go index 0bdaacc14..b723edd5d 100755 --- a/apis/alertsmanagement/v1beta1/zz_monitoralertprocessingrulesuppression_types.go +++ b/apis/alertsmanagement/v1beta1/zz_monitoralertprocessingrulesuppression_types.go @@ -34,9 +34,11 @@ type ConditionAlertRuleNameObservation struct { type ConditionAlertRuleNameParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -61,9 +63,11 @@ type ConditionMonitorConditionObservation struct { type ConditionMonitorConditionParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -88,9 +92,11 @@ type ConditionSignalTypeObservation struct { type ConditionSignalTypeParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -115,9 +121,11 @@ type ConditionTargetResourceGroupObservation struct { type ConditionTargetResourceGroupParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -142,9 +150,11 @@ type ConditionTargetResourceObservation struct { type ConditionTargetResourceParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -169,9 +179,11 @@ type MonitorAlertProcessingRuleSuppressionConditionAlertContextObservation struc type MonitorAlertProcessingRuleSuppressionConditionAlertContextParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -196,9 +208,11 @@ type MonitorAlertProcessingRuleSuppressionConditionAlertRuleIDObservation struct type MonitorAlertProcessingRuleSuppressionConditionAlertRuleIDParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -223,9 +237,11 @@ type MonitorAlertProcessingRuleSuppressionConditionDescriptionObservation struct type MonitorAlertProcessingRuleSuppressionConditionDescriptionParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -286,9 +302,11 @@ type MonitorAlertProcessingRuleSuppressionConditionMonitorServiceObservation str type MonitorAlertProcessingRuleSuppressionConditionMonitorServiceParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -331,36 +349,47 @@ type MonitorAlertProcessingRuleSuppressionConditionObservation struct { type MonitorAlertProcessingRuleSuppressionConditionParameters struct { // A alert_context block as defined above. + // +kubebuilder:validation:Optional AlertContext []MonitorAlertProcessingRuleSuppressionConditionAlertContextParameters `json:"alertContext,omitempty" tf:"alert_context,omitempty"` // A alert_rule_id block as defined above. + // +kubebuilder:validation:Optional AlertRuleID []MonitorAlertProcessingRuleSuppressionConditionAlertRuleIDParameters `json:"alertRuleId,omitempty" tf:"alert_rule_id,omitempty"` // A alert_rule_name block as defined above. + // +kubebuilder:validation:Optional AlertRuleName []ConditionAlertRuleNameParameters `json:"alertRuleName,omitempty" tf:"alert_rule_name,omitempty"` // A description block as defined below. + // +kubebuilder:validation:Optional Description []MonitorAlertProcessingRuleSuppressionConditionDescriptionParameters `json:"description,omitempty" tf:"description,omitempty"` // A monitor_condition block as defined below. + // +kubebuilder:validation:Optional MonitorCondition []ConditionMonitorConditionParameters `json:"monitorCondition,omitempty" tf:"monitor_condition,omitempty"` // A monitor_service block as defined below. + // +kubebuilder:validation:Optional MonitorService []MonitorAlertProcessingRuleSuppressionConditionMonitorServiceParameters `json:"monitorService,omitempty" tf:"monitor_service,omitempty"` // A severity block as defined below. + // +kubebuilder:validation:Optional Severity []MonitorAlertProcessingRuleSuppressionConditionSeverityParameters `json:"severity,omitempty" tf:"severity,omitempty"` // A signal_type block as defined below. + // +kubebuilder:validation:Optional SignalType []ConditionSignalTypeParameters `json:"signalType,omitempty" tf:"signal_type,omitempty"` // A target_resource block as defined below. + // +kubebuilder:validation:Optional TargetResource []ConditionTargetResourceParameters `json:"targetResource,omitempty" tf:"target_resource,omitempty"` // A target_resource_group block as defined below. + // +kubebuilder:validation:Optional TargetResourceGroup []ConditionTargetResourceGroupParameters `json:"targetResourceGroup,omitempty" tf:"target_resource_group,omitempty"` // A target_resource_type block as defined below. + // +kubebuilder:validation:Optional TargetResourceType []MonitorAlertProcessingRuleSuppressionConditionTargetResourceTypeParameters `json:"targetResourceType,omitempty" tf:"target_resource_type,omitempty"` } @@ -385,9 +414,11 @@ type MonitorAlertProcessingRuleSuppressionConditionSeverityObservation struct { type MonitorAlertProcessingRuleSuppressionConditionSeverityParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -412,9 +443,11 @@ type MonitorAlertProcessingRuleSuppressionConditionTargetResourceTypeObservation type MonitorAlertProcessingRuleSuppressionConditionTargetResourceTypeParameters struct { // The operator for a given condition. Possible values are Equals, NotEquals, Contains, and DoesNotContain. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of values to match for a given condition. The values should be valid resource types. (e.g. Microsoft.Compute/VirtualMachines) + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -466,12 +499,15 @@ type MonitorAlertProcessingRuleSuppressionObservation struct { type MonitorAlertProcessingRuleSuppressionParameters struct { // A condition block as defined below. + // +kubebuilder:validation:Optional Condition []MonitorAlertProcessingRuleSuppressionConditionParameters `json:"condition,omitempty" tf:"condition,omitempty"` // Specifies a description for the Alert Processing Rule. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // Should the Alert Processing Rule be enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The name of the Resource Group where the Alert Processing Rule should exist. Changing this forces a new Alert Processing Rule to be created. @@ -488,6 +524,7 @@ type MonitorAlertProcessingRuleSuppressionParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A schedule block as defined below. + // +kubebuilder:validation:Optional Schedule []MonitorAlertProcessingRuleSuppressionScheduleParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` // A list of resource IDs which will be the target of Alert Processing Rule. @@ -505,6 +542,7 @@ type MonitorAlertProcessingRuleSuppressionParameters struct { ScopesSelector *v1.Selector `json:"scopesSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the Alert Processing Rule. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -541,15 +579,19 @@ type MonitorAlertProcessingRuleSuppressionScheduleObservation struct { type MonitorAlertProcessingRuleSuppressionScheduleParameters struct { // Specifies the Alert Processing Rule effective start time (Y-m-d'T'H:M:S). + // +kubebuilder:validation:Optional EffectiveFrom *string `json:"effectiveFrom,omitempty" tf:"effective_from,omitempty"` // Specifies the Alert Processing Rule effective end time (Y-m-d'T'H:M:S). + // +kubebuilder:validation:Optional EffectiveUntil *string `json:"effectiveUntil,omitempty" tf:"effective_until,omitempty"` // A recurrence block as defined above. + // +kubebuilder:validation:Optional Recurrence []ScheduleRecurrenceParameters `json:"recurrence,omitempty" tf:"recurrence,omitempty"` // The time zone (e.g. Pacific Standard time, Eastern Standard Time). Defaults to UTC. possible values are defined here. + // +kubebuilder:validation:Optional TimeZone *string `json:"timeZone,omitempty" tf:"time_zone,omitempty"` } @@ -574,9 +616,11 @@ type RecurrenceDailyObservation struct { type RecurrenceDailyParameters struct { // Specifies the recurrence end time (H:M:S). + // +kubebuilder:validation:Optional EndTime *string `json:"endTime,omitempty" tf:"end_time,omitempty"` // Specifies the recurrence start time (H:M:S). + // +kubebuilder:validation:Optional StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` } @@ -607,12 +651,15 @@ type RecurrenceMonthlyObservation struct { type RecurrenceMonthlyParameters struct { // Specifies a list of dayOfMonth to recurrence. Possible values are integers between 1 - 31. + // +kubebuilder:validation:Optional DaysOfMonth []*float64 `json:"daysOfMonth,omitempty" tf:"days_of_month,omitempty"` // Specifies the recurrence end time (H:M:S). + // +kubebuilder:validation:Optional EndTime *string `json:"endTime,omitempty" tf:"end_time,omitempty"` // Specifies the recurrence start time (H:M:S). + // +kubebuilder:validation:Optional StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` } @@ -643,12 +690,15 @@ type RecurrenceWeeklyObservation struct { type RecurrenceWeeklyParameters struct { // Specifies a list of dayOfWeek to recurrence. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, and Saturday. + // +kubebuilder:validation:Optional DaysOfWeek []*string `json:"daysOfWeek,omitempty" tf:"days_of_week,omitempty"` // Specifies the recurrence end time (H:M:S). + // +kubebuilder:validation:Optional EndTime *string `json:"endTime,omitempty" tf:"end_time,omitempty"` // Specifies the recurrence start time (H:M:S). + // +kubebuilder:validation:Optional StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` } @@ -679,12 +729,15 @@ type ScheduleRecurrenceObservation struct { type ScheduleRecurrenceParameters struct { // One or more daily blocks as defined above. + // +kubebuilder:validation:Optional Daily []RecurrenceDailyParameters `json:"daily,omitempty" tf:"daily,omitempty"` // One or more monthly blocks as defined above. + // +kubebuilder:validation:Optional Monthly []RecurrenceMonthlyParameters `json:"monthly,omitempty" tf:"monthly,omitempty"` // One or more weekly blocks as defined below. + // +kubebuilder:validation:Optional Weekly []RecurrenceWeeklyParameters `json:"weekly,omitempty" tf:"weekly,omitempty"` } diff --git a/apis/alertsmanagement/v1beta1/zz_monitorsmartdetectoralertrule_types.go b/apis/alertsmanagement/v1beta1/zz_monitorsmartdetectoralertrule_types.go index 1766c8cb0..ab368bdaf 100755 --- a/apis/alertsmanagement/v1beta1/zz_monitorsmartdetectoralertrule_types.go +++ b/apis/alertsmanagement/v1beta1/zz_monitorsmartdetectoralertrule_types.go @@ -37,6 +37,7 @@ type ActionGroupObservation struct { type ActionGroupParameters struct { // Specifies a custom email subject if Email Receiver is specified in Monitor Action Group resource. + // +kubebuilder:validation:Optional EmailSubject *string `json:"emailSubject,omitempty" tf:"email_subject,omitempty"` // Specifies the action group ids. @@ -54,6 +55,7 @@ type ActionGroupParameters struct { IdsSelector *v1.Selector `json:"idsSelector,omitempty" tf:"-"` // A JSON String which Specifies the custom webhook payload if Webhook Receiver is specified in Monitor Action Group resource. + // +kubebuilder:validation:Optional WebhookPayload *string `json:"webhookPayload,omitempty" tf:"webhook_payload,omitempty"` } @@ -129,21 +131,27 @@ type MonitorSmartDetectorAlertRuleObservation struct { type MonitorSmartDetectorAlertRuleParameters struct { // An action_group block as defined below. + // +kubebuilder:validation:Optional ActionGroup []ActionGroupParameters `json:"actionGroup,omitempty" tf:"action_group,omitempty"` // Specifies a description for the Smart Detector Alert Rule. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // Specifies the Built-In Smart Detector type that this alert rule will use. Currently the only possible values are FailureAnomaliesDetector, RequestPerformanceDegradationDetector, DependencyPerformanceDegradationDetector, ExceptionVolumeChangedDetector, TraceSeverityDetector, MemoryLeakDetector. + // +kubebuilder:validation:Optional DetectorType *string `json:"detectorType,omitempty" tf:"detector_type,omitempty"` // Is the Smart Detector Alert Rule enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Specifies the frequency of this Smart Detector Alert Rule in ISO8601 format. + // +kubebuilder:validation:Optional Frequency *string `json:"frequency,omitempty" tf:"frequency,omitempty"` // Specifies the name of the Monitor Smart Detector Alert Rule. 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 resource group in which the Monitor Smart Detector Alert Rule should exist. Changing this forces a new resource to be created. @@ -174,12 +182,15 @@ type MonitorSmartDetectorAlertRuleParameters struct { ScopeResourceIdsSelector *v1.Selector `json:"scopeResourceIdsSelector,omitempty" tf:"-"` // Specifies the severity of this Smart Detector Alert Rule. Possible values are Sev0, Sev1, Sev2, Sev3 or Sev4. + // +kubebuilder:validation:Optional Severity *string `json:"severity,omitempty" tf:"severity,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the duration (in ISO8601 format) to wait before notifying on the alert rule again. + // +kubebuilder:validation:Optional ThrottlingDuration *string `json:"throttlingDuration,omitempty" tf:"throttling_duration,omitempty"` } diff --git a/apis/analysisservices/v1beta1/zz_server_types.go b/apis/analysisservices/v1beta1/zz_server_types.go index 39b9a28c7..614ad915e 100755 --- a/apis/analysisservices/v1beta1/zz_server_types.go +++ b/apis/analysisservices/v1beta1/zz_server_types.go @@ -40,12 +40,15 @@ type IPv4FirewallRuleObservation struct { type IPv4FirewallRuleParameters struct { // Specifies the name of the firewall rule. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // End of the firewall rule range as IPv4 address. + // +kubebuilder:validation:Optional RangeEnd *string `json:"rangeEnd,omitempty" tf:"range_end,omitempty"` // Start of the firewall rule range as IPv4 address. + // +kubebuilder:validation:Optional RangeStart *string `json:"rangeStart,omitempty" tf:"range_start,omitempty"` } @@ -115,6 +118,7 @@ type ServerObservation struct { type ServerParameters struct { // List of email addresses of admin users. + // +kubebuilder:validation:Optional AdminUsers []*string `json:"adminUsers,omitempty" tf:"admin_users,omitempty"` // URI and SAS token for a blob container to store backups. @@ -122,18 +126,23 @@ type ServerParameters struct { BackupBlobContainerURISecretRef *v1.SecretKeySelector `json:"backupBlobContainerUriSecretRef,omitempty" tf:"-"` // Indicates if the Power BI service is allowed to access or not. + // +kubebuilder:validation:Optional EnablePowerBiService *bool `json:"enablePowerBiService,omitempty" tf:"enable_power_bi_service,omitempty"` // One or more ipv4_firewall_rule block(s) as defined below. + // +kubebuilder:validation:Optional IPv4FirewallRule []IPv4FirewallRuleParameters `json:"ipv4FirewallRule,omitempty" tf:"ipv4_firewall_rule,omitempty"` // The Azure location where the Analysis Services Server exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the Analysis Services Server. Only lowercase Alphanumeric characters allowed, starting with a letter. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Controls how the read-write server is used in the query pool. If this value is set to All then read-write servers are also used for queries. Otherwise with ReadOnly these servers do not participate in query operations. + // +kubebuilder:validation:Optional QuerypoolConnectionMode *string `json:"querypoolConnectionMode,omitempty" tf:"querypool_connection_mode,omitempty"` // The name of the Resource Group in which the Analysis Services Server should be exist. Changing this forces a new resource to be created. @@ -150,9 +159,11 @@ type ServerParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // SKU for the Analysis Services Server. Possible values are: D1, B1, B2, S0, S1, S2, S4, S8, S9, S8v2 and S9v2. + // +kubebuilder:validation:Optional Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_api_types.go b/apis/apimanagement/v1beta1/zz_api_types.go index b0279e108..ff6aef405 100755 --- a/apis/apimanagement/v1beta1/zz_api_types.go +++ b/apis/apimanagement/v1beta1/zz_api_types.go @@ -176,33 +176,43 @@ type APIParameters struct { APIManagementNameSelector *v1.Selector `json:"apiManagementNameSelector,omitempty" tf:"-"` // Type of API. Possible values are graphql, http, soap, and websocket. Defaults to http. + // +kubebuilder:validation:Optional APIType *string `json:"apiType,omitempty" tf:"api_type,omitempty"` // A contact block as documented below. + // +kubebuilder:validation:Optional Contact []ContactParameters `json:"contact,omitempty" tf:"contact,omitempty"` // A description of the API Management API, which may include HTML formatting tags. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The display name of the API. + // +kubebuilder:validation:Optional DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` // A import block as documented below. + // +kubebuilder:validation:Optional Import []ImportParameters `json:"import,omitempty" tf:"import,omitempty"` // A license block as documented below. + // +kubebuilder:validation:Optional License []LicenseParameters `json:"license,omitempty" tf:"license,omitempty"` // An oauth2_authorization block as documented below. + // +kubebuilder:validation:Optional Oauth2Authorization []Oauth2AuthorizationParameters `json:"oauth2Authorization,omitempty" tf:"oauth2_authorization,omitempty"` // An openid_authentication block as documented below. + // +kubebuilder:validation:Optional OpenIDAuthentication []OpenIDAuthenticationParameters `json:"openidAuthentication,omitempty" tf:"openid_authentication,omitempty"` // The Path for this API Management API, which is a relative URL which uniquely identifies this API and all of its resource paths within the API Management Service. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` // A list of protocols the operations in this API can be invoked. Possible values are http, https, ws, and wss. + // +kubebuilder:validation:Optional Protocols []*string `json:"protocols,omitempty" tf:"protocols,omitempty"` // The Name of the Resource Group where the API Management API exists. Changing this forces a new resource to be created. @@ -219,36 +229,47 @@ type APIParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The Revision which used for this API. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Revision *string `json:"revision,omitempty" tf:"revision,omitempty"` // The description of the API Revision of the API Management API. + // +kubebuilder:validation:Optional RevisionDescription *string `json:"revisionDescription,omitempty" tf:"revision_description,omitempty"` // Absolute URL of the backend service implementing this API. + // +kubebuilder:validation:Optional ServiceURL *string `json:"serviceUrl,omitempty" tf:"service_url,omitempty"` // Should this API expose a SOAP frontend, rather than a HTTP frontend? Defaults to false. + // +kubebuilder:validation:Optional SoapPassThrough *bool `json:"soapPassThrough,omitempty" tf:"soap_pass_through,omitempty"` // The API id of the source API, which could be in format azurerm_api_management_api.example.id or in format azurerm_api_management_api.example.id;rev=1 + // +kubebuilder:validation:Optional SourceAPIID *string `json:"sourceApiId,omitempty" tf:"source_api_id,omitempty"` // A subscription_key_parameter_names block as documented below. + // +kubebuilder:validation:Optional SubscriptionKeyParameterNames []SubscriptionKeyParameterNamesParameters `json:"subscriptionKeyParameterNames,omitempty" tf:"subscription_key_parameter_names,omitempty"` // Should this API require a subscription key? Defaults to true. + // +kubebuilder:validation:Optional SubscriptionRequired *bool `json:"subscriptionRequired,omitempty" tf:"subscription_required,omitempty"` // Absolute URL of the Terms of Service for the API. + // +kubebuilder:validation:Optional TermsOfServiceURL *string `json:"termsOfServiceUrl,omitempty" tf:"terms_of_service_url,omitempty"` // The Version number of this API, if this API is versioned. + // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` // The description of the API Version of the API Management API. + // +kubebuilder:validation:Optional VersionDescription *string `json:"versionDescription,omitempty" tf:"version_description,omitempty"` // The ID of the Version Set which this API is associated with. + // +kubebuilder:validation:Optional VersionSetID *string `json:"versionSetId,omitempty" tf:"version_set_id,omitempty"` } @@ -279,12 +300,15 @@ type ContactObservation struct { type ContactParameters struct { // The email address of the contact person/organization. + // +kubebuilder:validation:Optional Email *string `json:"email,omitempty" tf:"email,omitempty"` // The name of the contact person/organization. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Absolute URL of the contact information. + // +kubebuilder:validation:Optional URL *string `json:"url,omitempty" tf:"url,omitempty"` } @@ -315,12 +339,15 @@ type ImportObservation struct { type ImportParameters struct { // The format of the content from which the API Definition should be imported. Possible values are: openapi, openapi+json, openapi+json-link, openapi-link, swagger-json, swagger-link-json, wadl-link-json, wadl-xml, wsdl and wsdl-link. + // +kubebuilder:validation:Optional ContentFormat *string `json:"contentFormat,omitempty" tf:"content_format,omitempty"` // The Content from which the API Definition should be imported. When a content_format of *-link-* is specified this must be a URL, otherwise this must be defined inline. + // +kubebuilder:validation:Optional ContentValue *string `json:"contentValue,omitempty" tf:"content_value,omitempty"` // A wsdl_selector block as defined below, which allows you to limit the import of a WSDL to only a subset of the document. This can only be specified when content_format is wsdl or wsdl-link. + // +kubebuilder:validation:Optional WsdlSelector []WsdlSelectorParameters `json:"wsdlSelector,omitempty" tf:"wsdl_selector,omitempty"` } @@ -345,9 +372,11 @@ type LicenseObservation struct { type LicenseParameters struct { // The name of the license . + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Absolute URL of the license. + // +kubebuilder:validation:Optional URL *string `json:"url,omitempty" tf:"url,omitempty"` } @@ -372,9 +401,11 @@ type Oauth2AuthorizationObservation struct { type Oauth2AuthorizationParameters struct { // OAuth authorization server identifier. The name of an OAuth2 Authorization Server. + // +kubebuilder:validation:Optional AuthorizationServerName *string `json:"authorizationServerName,omitempty" tf:"authorization_server_name,omitempty"` // Operations scope. + // +kubebuilder:validation:Optional Scope *string `json:"scope,omitempty" tf:"scope,omitempty"` } @@ -399,9 +430,11 @@ type OpenIDAuthenticationObservation struct { type OpenIDAuthenticationParameters struct { // How to send token to the server. A list of zero or more methods. Valid values are authorizationHeader and query. + // +kubebuilder:validation:Optional BearerTokenSendingMethods []*string `json:"bearerTokenSendingMethods,omitempty" tf:"bearer_token_sending_methods,omitempty"` // OpenID Connect provider identifier. The name of an OpenID Connect Provider. + // +kubebuilder:validation:Optional OpenIDProviderName *string `json:"openidProviderName,omitempty" tf:"openid_provider_name,omitempty"` } @@ -426,9 +459,11 @@ type SubscriptionKeyParameterNamesObservation struct { type SubscriptionKeyParameterNamesParameters struct { // The name of the HTTP Header which should be used for the Subscription Key. + // +kubebuilder:validation:Optional Header *string `json:"header,omitempty" tf:"header,omitempty"` // The name of the QueryString parameter which should be used for the Subscription Key. + // +kubebuilder:validation:Optional Query *string `json:"query,omitempty" tf:"query,omitempty"` } @@ -453,9 +488,11 @@ type WsdlSelectorObservation struct { type WsdlSelectorParameters struct { // The name of endpoint (port) to import from WSDL. + // +kubebuilder:validation:Optional EndpointName *string `json:"endpointName,omitempty" tf:"endpoint_name,omitempty"` // The name of service to import from WSDL. + // +kubebuilder:validation:Optional ServiceName *string `json:"serviceName,omitempty" tf:"service_name,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_apidiagnostic_types.go b/apis/apimanagement/v1beta1/zz_apidiagnostic_types.go index 474131d56..915f1fda4 100755 --- a/apis/apimanagement/v1beta1/zz_apidiagnostic_types.go +++ b/apis/apimanagement/v1beta1/zz_apidiagnostic_types.go @@ -137,27 +137,35 @@ type APIDiagnosticParameters struct { APINameSelector *v1.Selector `json:"apiNameSelector,omitempty" tf:"-"` // Always log errors. Send telemetry if there is an erroneous condition, regardless of sampling settings. + // +kubebuilder:validation:Optional AlwaysLogErrors *bool `json:"alwaysLogErrors,omitempty" tf:"always_log_errors,omitempty"` // A backend_request block as defined below. + // +kubebuilder:validation:Optional BackendRequest []BackendRequestParameters `json:"backendRequest,omitempty" tf:"backend_request,omitempty"` // A backend_response block as defined below. + // +kubebuilder:validation:Optional BackendResponse []BackendResponseParameters `json:"backendResponse,omitempty" tf:"backend_response,omitempty"` // A frontend_request block as defined below. + // +kubebuilder:validation:Optional FrontendRequest []FrontendRequestParameters `json:"frontendRequest,omitempty" tf:"frontend_request,omitempty"` // A frontend_response block as defined below. + // +kubebuilder:validation:Optional FrontendResponse []FrontendResponseParameters `json:"frontendResponse,omitempty" tf:"frontend_response,omitempty"` // The HTTP Correlation Protocol to use. Possible values are None, Legacy or W3C. + // +kubebuilder:validation:Optional HTTPCorrelationProtocol *string `json:"httpCorrelationProtocol,omitempty" tf:"http_correlation_protocol,omitempty"` // Log client IP address. + // +kubebuilder:validation:Optional LogClientIP *bool `json:"logClientIp,omitempty" tf:"log_client_ip,omitempty"` // The format of the Operation Name for Application Insights telemetries. Possible values are Name, and Url. Defaults to Name. + // +kubebuilder:validation:Optional OperationNameFormat *string `json:"operationNameFormat,omitempty" tf:"operation_name_format,omitempty"` // The name of the Resource Group where the API Management Service API Diagnostics Logs should exist. Changing this forces a new API Management Service API Diagnostics Logs to be created. @@ -174,9 +182,11 @@ type APIDiagnosticParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Sampling (%). For high traffic APIs, please read this documentation to understand performance implications and log sampling. Valid values are between 0.0 and 100.0. + // +kubebuilder:validation:Optional SamplingPercentage *float64 `json:"samplingPercentage,omitempty" tf:"sampling_percentage,omitempty"` // Logging verbosity. Possible values are verbose, information or error. + // +kubebuilder:validation:Optional Verbosity *string `json:"verbosity,omitempty" tf:"verbosity,omitempty"` } @@ -207,12 +217,15 @@ type BackendRequestObservation struct { type BackendRequestParameters struct { // Number of payload bytes to log (up to 8192). + // +kubebuilder:validation:Optional BodyBytes *float64 `json:"bodyBytes,omitempty" tf:"body_bytes,omitempty"` // A data_masking block as defined below. + // +kubebuilder:validation:Optional DataMasking []DataMaskingParameters `json:"dataMasking,omitempty" tf:"data_masking,omitempty"` // Specifies a list of headers to log. + // +kubebuilder:validation:Optional HeadersToLog []*string `json:"headersToLog,omitempty" tf:"headers_to_log,omitempty"` } @@ -237,9 +250,11 @@ type BackendResponseDataMaskingObservation struct { type BackendResponseDataMaskingParameters struct { // A headers block as defined below. + // +kubebuilder:validation:Optional Headers []DataMaskingHeadersParameters `json:"headers,omitempty" tf:"headers,omitempty"` // A query_params block as defined below. + // +kubebuilder:validation:Optional QueryParams []DataMaskingQueryParamsParameters `json:"queryParams,omitempty" tf:"query_params,omitempty"` } @@ -270,12 +285,15 @@ type BackendResponseObservation struct { type BackendResponseParameters struct { // Number of payload bytes to log (up to 8192). + // +kubebuilder:validation:Optional BodyBytes *float64 `json:"bodyBytes,omitempty" tf:"body_bytes,omitempty"` // A data_masking block as defined below. + // +kubebuilder:validation:Optional DataMasking []BackendResponseDataMaskingParameters `json:"dataMasking,omitempty" tf:"data_masking,omitempty"` // Specifies a list of headers to log. + // +kubebuilder:validation:Optional HeadersToLog []*string `json:"headersToLog,omitempty" tf:"headers_to_log,omitempty"` } @@ -300,9 +318,11 @@ type DataMaskingHeadersObservation struct { type DataMaskingHeadersParameters struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. + // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // The name of the header or the query parameter to mask. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -327,9 +347,11 @@ type DataMaskingObservation struct { type DataMaskingParameters struct { // A headers block as defined below. + // +kubebuilder:validation:Optional Headers []HeadersParameters `json:"headers,omitempty" tf:"headers,omitempty"` // A query_params block as defined below. + // +kubebuilder:validation:Optional QueryParams []QueryParamsParameters `json:"queryParams,omitempty" tf:"query_params,omitempty"` } @@ -354,9 +376,11 @@ type DataMaskingQueryParamsObservation struct { type DataMaskingQueryParamsParameters struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. + // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // The name of the header or the query parameter to mask. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -381,9 +405,11 @@ type FrontendRequestDataMaskingHeadersObservation struct { type FrontendRequestDataMaskingHeadersParameters struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. + // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // The name of the header or the query parameter to mask. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -408,9 +434,11 @@ type FrontendRequestDataMaskingObservation struct { type FrontendRequestDataMaskingParameters struct { // A headers block as defined below. + // +kubebuilder:validation:Optional Headers []FrontendRequestDataMaskingHeadersParameters `json:"headers,omitempty" tf:"headers,omitempty"` // A query_params block as defined below. + // +kubebuilder:validation:Optional QueryParams []FrontendRequestDataMaskingQueryParamsParameters `json:"queryParams,omitempty" tf:"query_params,omitempty"` } @@ -435,9 +463,11 @@ type FrontendRequestDataMaskingQueryParamsObservation struct { type FrontendRequestDataMaskingQueryParamsParameters struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. + // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // The name of the header or the query parameter to mask. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -468,12 +498,15 @@ type FrontendRequestObservation struct { type FrontendRequestParameters struct { // Number of payload bytes to log (up to 8192). + // +kubebuilder:validation:Optional BodyBytes *float64 `json:"bodyBytes,omitempty" tf:"body_bytes,omitempty"` // A data_masking block as defined below. + // +kubebuilder:validation:Optional DataMasking []FrontendRequestDataMaskingParameters `json:"dataMasking,omitempty" tf:"data_masking,omitempty"` // Specifies a list of headers to log. + // +kubebuilder:validation:Optional HeadersToLog []*string `json:"headersToLog,omitempty" tf:"headers_to_log,omitempty"` } @@ -498,9 +531,11 @@ type FrontendResponseDataMaskingHeadersObservation struct { type FrontendResponseDataMaskingHeadersParameters struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. + // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // The name of the header or the query parameter to mask. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -525,9 +560,11 @@ type FrontendResponseDataMaskingObservation struct { type FrontendResponseDataMaskingParameters struct { // A headers block as defined below. + // +kubebuilder:validation:Optional Headers []FrontendResponseDataMaskingHeadersParameters `json:"headers,omitempty" tf:"headers,omitempty"` // A query_params block as defined below. + // +kubebuilder:validation:Optional QueryParams []FrontendResponseDataMaskingQueryParamsParameters `json:"queryParams,omitempty" tf:"query_params,omitempty"` } @@ -552,9 +589,11 @@ type FrontendResponseDataMaskingQueryParamsObservation struct { type FrontendResponseDataMaskingQueryParamsParameters struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. + // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // The name of the header or the query parameter to mask. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -585,12 +624,15 @@ type FrontendResponseObservation struct { type FrontendResponseParameters struct { // Number of payload bytes to log (up to 8192). + // +kubebuilder:validation:Optional BodyBytes *float64 `json:"bodyBytes,omitempty" tf:"body_bytes,omitempty"` // A data_masking block as defined below. + // +kubebuilder:validation:Optional DataMasking []FrontendResponseDataMaskingParameters `json:"dataMasking,omitempty" tf:"data_masking,omitempty"` // Specifies a list of headers to log. + // +kubebuilder:validation:Optional HeadersToLog []*string `json:"headersToLog,omitempty" tf:"headers_to_log,omitempty"` } @@ -615,9 +657,11 @@ type HeadersObservation struct { type HeadersParameters struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. + // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // The name of the header or the query parameter to mask. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -642,9 +686,11 @@ type QueryParamsObservation struct { type QueryParamsParameters struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. + // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // The name of the header or the query parameter to mask. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_apioperation_types.go b/apis/apimanagement/v1beta1/zz_apioperation_types.go index d42db3183..ae5a34281 100755 --- a/apis/apimanagement/v1beta1/zz_apioperation_types.go +++ b/apis/apimanagement/v1beta1/zz_apioperation_types.go @@ -102,15 +102,19 @@ type APIOperationParameters struct { APINameSelector *v1.Selector `json:"apiNameSelector,omitempty" tf:"-"` // A description for this API Operation, which may include HTML formatting tags. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The Display Name for this API Management Operation. + // +kubebuilder:validation:Optional DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` // The HTTP Method used for this API Management Operation, like GET, DELETE, PUT or POST - but not limited to these values. + // +kubebuilder:validation:Optional Method *string `json:"method,omitempty" tf:"method,omitempty"` // A request block as defined below. + // +kubebuilder:validation:Optional Request []RequestParameters `json:"request,omitempty" tf:"request,omitempty"` // The Name of the Resource Group in which the API Management Service exists. Changing this forces a new resource to be created. @@ -127,12 +131,15 @@ type APIOperationParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // One or more response blocks as defined below. + // +kubebuilder:validation:Optional Response []ResponseParameters `json:"response,omitempty" tf:"response,omitempty"` // One or more template_parameter blocks as defined below. + // +kubebuilder:validation:Optional TemplateParameter []TemplateParameterParameters `json:"templateParameter,omitempty" tf:"template_parameter,omitempty"` // The relative URL Template identifying the target resource for this operation, which may include parameters. + // +kubebuilder:validation:Optional URLTemplate *string `json:"urlTemplate,omitempty" tf:"url_template,omitempty"` } @@ -175,18 +182,23 @@ type ExampleObservation struct { type ExampleParameters struct { // A description of this Template Parameter. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // A URL that points to the literal example. + // +kubebuilder:validation:Optional ExternalValue *string `json:"externalValue,omitempty" tf:"external_value,omitempty"` // The Name of this Template Parameter. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A short description for this example. + // +kubebuilder:validation:Optional Summary *string `json:"summary,omitempty" tf:"summary,omitempty"` // The example of the representation. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -229,18 +241,23 @@ type FormParameterExampleObservation struct { type FormParameterExampleParameters struct { // A description of this Template Parameter. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // A URL that points to the literal example. + // +kubebuilder:validation:Optional ExternalValue *string `json:"externalValue,omitempty" tf:"external_value,omitempty"` // The Name of this Template Parameter. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A short description for this example. + // +kubebuilder:validation:Optional Summary *string `json:"summary,omitempty" tf:"summary,omitempty"` // The example of the representation. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -307,30 +324,39 @@ type FormParameterObservation struct { type FormParameterParameters struct { // The default value for this Template Parameter. + // +kubebuilder:validation:Optional DefaultValue *string `json:"defaultValue,omitempty" tf:"default_value,omitempty"` // A description of this Template Parameter. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // One or more example blocks as defined above. + // +kubebuilder:validation:Optional Example []FormParameterExampleParameters `json:"example,omitempty" tf:"example,omitempty"` // The Name of this Template Parameter. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Is this Template Parameter Required? + // +kubebuilder:validation:Optional Required *bool `json:"required,omitempty" tf:"required,omitempty"` // The name of the Schema. + // +kubebuilder:validation:Optional SchemaID *string `json:"schemaId,omitempty" tf:"schema_id,omitempty"` // The Type of this Template Parameter, such as a string. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // The type name defined by the Schema. + // +kubebuilder:validation:Optional TypeName *string `json:"typeName,omitempty" tf:"type_name,omitempty"` // One or more acceptable values for this Template Parameter. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -373,18 +399,23 @@ type HeaderExampleObservation struct { type HeaderExampleParameters struct { // A description of this Template Parameter. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // A URL that points to the literal example. + // +kubebuilder:validation:Optional ExternalValue *string `json:"externalValue,omitempty" tf:"external_value,omitempty"` // The Name of this Template Parameter. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A short description for this example. + // +kubebuilder:validation:Optional Summary *string `json:"summary,omitempty" tf:"summary,omitempty"` // The example of the representation. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -451,30 +482,39 @@ type HeaderObservation struct { type HeaderParameters struct { // The default value for this Template Parameter. + // +kubebuilder:validation:Optional DefaultValue *string `json:"defaultValue,omitempty" tf:"default_value,omitempty"` // A description of this Template Parameter. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // One or more example blocks as defined above. + // +kubebuilder:validation:Optional Example []ExampleParameters `json:"example,omitempty" tf:"example,omitempty"` // The Name of this Template Parameter. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Is this Template Parameter Required? + // +kubebuilder:validation:Optional Required *bool `json:"required,omitempty" tf:"required,omitempty"` // The name of the Schema. + // +kubebuilder:validation:Optional SchemaID *string `json:"schemaId,omitempty" tf:"schema_id,omitempty"` // The Type of this Template Parameter, such as a string. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // The type name defined by the Schema. + // +kubebuilder:validation:Optional TypeName *string `json:"typeName,omitempty" tf:"type_name,omitempty"` // One or more acceptable values for this Template Parameter. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -517,18 +557,23 @@ type QueryParameterExampleObservation struct { type QueryParameterExampleParameters struct { // A description of this Template Parameter. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // A URL that points to the literal example. + // +kubebuilder:validation:Optional ExternalValue *string `json:"externalValue,omitempty" tf:"external_value,omitempty"` // The Name of this Template Parameter. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A short description for this example. + // +kubebuilder:validation:Optional Summary *string `json:"summary,omitempty" tf:"summary,omitempty"` // The example of the representation. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -595,30 +640,39 @@ type QueryParameterObservation struct { type QueryParameterParameters struct { // The default value for this Template Parameter. + // +kubebuilder:validation:Optional DefaultValue *string `json:"defaultValue,omitempty" tf:"default_value,omitempty"` // A description of this Template Parameter. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // One or more example blocks as defined above. + // +kubebuilder:validation:Optional Example []QueryParameterExampleParameters `json:"example,omitempty" tf:"example,omitempty"` // The Name of this Template Parameter. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Is this Template Parameter Required? + // +kubebuilder:validation:Optional Required *bool `json:"required,omitempty" tf:"required,omitempty"` // The name of the Schema. + // +kubebuilder:validation:Optional SchemaID *string `json:"schemaId,omitempty" tf:"schema_id,omitempty"` // The Type of this Template Parameter, such as a string. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // The type name defined by the Schema. + // +kubebuilder:validation:Optional TypeName *string `json:"typeName,omitempty" tf:"type_name,omitempty"` // One or more acceptable values for this Template Parameter. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -661,18 +715,23 @@ type RepresentationExampleObservation struct { type RepresentationExampleParameters struct { // A description of this Template Parameter. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // A URL that points to the literal example. + // +kubebuilder:validation:Optional ExternalValue *string `json:"externalValue,omitempty" tf:"external_value,omitempty"` // The Name of this Template Parameter. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A short description for this example. + // +kubebuilder:validation:Optional Summary *string `json:"summary,omitempty" tf:"summary,omitempty"` // The example of the representation. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -715,18 +774,23 @@ type RepresentationFormParameterExampleObservation struct { type RepresentationFormParameterExampleParameters struct { // A description of this Template Parameter. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // A URL that points to the literal example. + // +kubebuilder:validation:Optional ExternalValue *string `json:"externalValue,omitempty" tf:"external_value,omitempty"` // The Name of this Template Parameter. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A short description for this example. + // +kubebuilder:validation:Optional Summary *string `json:"summary,omitempty" tf:"summary,omitempty"` // The example of the representation. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -793,30 +857,39 @@ type RepresentationFormParameterObservation struct { type RepresentationFormParameterParameters struct { // The default value for this Template Parameter. + // +kubebuilder:validation:Optional DefaultValue *string `json:"defaultValue,omitempty" tf:"default_value,omitempty"` // A description of this Template Parameter. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // One or more example blocks as defined above. + // +kubebuilder:validation:Optional Example []RepresentationFormParameterExampleParameters `json:"example,omitempty" tf:"example,omitempty"` // The Name of this Template Parameter. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Is this Template Parameter Required? + // +kubebuilder:validation:Optional Required *bool `json:"required,omitempty" tf:"required,omitempty"` // The name of the Schema. + // +kubebuilder:validation:Optional SchemaID *string `json:"schemaId,omitempty" tf:"schema_id,omitempty"` // The Type of this Template Parameter, such as a string. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // The type name defined by the Schema. + // +kubebuilder:validation:Optional TypeName *string `json:"typeName,omitempty" tf:"type_name,omitempty"` // One or more acceptable values for this Template Parameter. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -859,18 +932,23 @@ type RepresentationObservation struct { type RepresentationParameters struct { // The Content Type of this representation, such as application/json. + // +kubebuilder:validation:Optional ContentType *string `json:"contentType,omitempty" tf:"content_type,omitempty"` // One or more example blocks as defined above. + // +kubebuilder:validation:Optional Example []RepresentationExampleParameters `json:"example,omitempty" tf:"example,omitempty"` // One or more form_parameter block as defined above. + // +kubebuilder:validation:Optional FormParameter []FormParameterParameters `json:"formParameter,omitempty" tf:"form_parameter,omitempty"` // The name of the Schema. + // +kubebuilder:validation:Optional SchemaID *string `json:"schemaId,omitempty" tf:"schema_id,omitempty"` // The type name defined by the Schema. + // +kubebuilder:validation:Optional TypeName *string `json:"typeName,omitempty" tf:"type_name,omitempty"` } @@ -907,15 +985,19 @@ type RequestObservation struct { type RequestParameters struct { // A description of the HTTP Request, which may include HTML tags. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // One or more header blocks as defined above. + // +kubebuilder:validation:Optional Header []HeaderParameters `json:"header,omitempty" tf:"header,omitempty"` // One or more query_parameter blocks as defined above. + // +kubebuilder:validation:Optional QueryParameter []QueryParameterParameters `json:"queryParameter,omitempty" tf:"query_parameter,omitempty"` // One or more representation blocks as defined below. + // +kubebuilder:validation:Optional Representation []RepresentationParameters `json:"representation,omitempty" tf:"representation,omitempty"` } @@ -982,30 +1064,39 @@ type ResponseHeaderObservation struct { type ResponseHeaderParameters struct { // The default value for this Template Parameter. + // +kubebuilder:validation:Optional DefaultValue *string `json:"defaultValue,omitempty" tf:"default_value,omitempty"` // A description of this Template Parameter. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // One or more example blocks as defined above. + // +kubebuilder:validation:Optional Example []HeaderExampleParameters `json:"example,omitempty" tf:"example,omitempty"` // The Name of this Template Parameter. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Is this Template Parameter Required? + // +kubebuilder:validation:Optional Required *bool `json:"required,omitempty" tf:"required,omitempty"` // The name of the Schema. + // +kubebuilder:validation:Optional SchemaID *string `json:"schemaId,omitempty" tf:"schema_id,omitempty"` // The Type of this Template Parameter, such as a string. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // The type name defined by the Schema. + // +kubebuilder:validation:Optional TypeName *string `json:"typeName,omitempty" tf:"type_name,omitempty"` // One or more acceptable values for this Template Parameter. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -1042,15 +1133,19 @@ type ResponseObservation struct { type ResponseParameters struct { // A description of the HTTP Response, which may include HTML tags. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // One or more header blocks as defined above. + // +kubebuilder:validation:Optional Header []ResponseHeaderParameters `json:"header,omitempty" tf:"header,omitempty"` // One or more representation blocks as defined below. + // +kubebuilder:validation:Optional Representation []ResponseRepresentationParameters `json:"representation,omitempty" tf:"representation,omitempty"` // The HTTP Status Code. + // +kubebuilder:validation:Optional StatusCode *float64 `json:"statusCode,omitempty" tf:"status_code,omitempty"` } @@ -1093,18 +1188,23 @@ type ResponseRepresentationExampleObservation struct { type ResponseRepresentationExampleParameters struct { // A description of this Template Parameter. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // A URL that points to the literal example. + // +kubebuilder:validation:Optional ExternalValue *string `json:"externalValue,omitempty" tf:"external_value,omitempty"` // The Name of this Template Parameter. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A short description for this example. + // +kubebuilder:validation:Optional Summary *string `json:"summary,omitempty" tf:"summary,omitempty"` // The example of the representation. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -1147,18 +1247,23 @@ type ResponseRepresentationObservation struct { type ResponseRepresentationParameters struct { // The Content Type of this representation, such as application/json. + // +kubebuilder:validation:Optional ContentType *string `json:"contentType,omitempty" tf:"content_type,omitempty"` // One or more example blocks as defined above. + // +kubebuilder:validation:Optional Example []ResponseRepresentationExampleParameters `json:"example,omitempty" tf:"example,omitempty"` // One or more form_parameter block as defined above. + // +kubebuilder:validation:Optional FormParameter []RepresentationFormParameterParameters `json:"formParameter,omitempty" tf:"form_parameter,omitempty"` // The name of the Schema. + // +kubebuilder:validation:Optional SchemaID *string `json:"schemaId,omitempty" tf:"schema_id,omitempty"` // The type name defined by the Schema. + // +kubebuilder:validation:Optional TypeName *string `json:"typeName,omitempty" tf:"type_name,omitempty"` } @@ -1201,18 +1306,23 @@ type TemplateParameterExampleObservation struct { type TemplateParameterExampleParameters struct { // A description of this Template Parameter. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // A URL that points to the literal example. + // +kubebuilder:validation:Optional ExternalValue *string `json:"externalValue,omitempty" tf:"external_value,omitempty"` // The Name of this Template Parameter. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A short description for this example. + // +kubebuilder:validation:Optional Summary *string `json:"summary,omitempty" tf:"summary,omitempty"` // The example of the representation. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -1279,30 +1389,39 @@ type TemplateParameterObservation struct { type TemplateParameterParameters struct { // The default value for this Template Parameter. + // +kubebuilder:validation:Optional DefaultValue *string `json:"defaultValue,omitempty" tf:"default_value,omitempty"` // A description of this Template Parameter. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // One or more example blocks as defined above. + // +kubebuilder:validation:Optional Example []TemplateParameterExampleParameters `json:"example,omitempty" tf:"example,omitempty"` // The Name of this Template Parameter. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Is this Template Parameter Required? + // +kubebuilder:validation:Optional Required *bool `json:"required,omitempty" tf:"required,omitempty"` // The name of the Schema. + // +kubebuilder:validation:Optional SchemaID *string `json:"schemaId,omitempty" tf:"schema_id,omitempty"` // The Type of this Template Parameter, such as a string. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // The type name defined by the Schema. + // +kubebuilder:validation:Optional TypeName *string `json:"typeName,omitempty" tf:"type_name,omitempty"` // One or more acceptable values for this Template Parameter. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_apioperationpolicy_types.go b/apis/apimanagement/v1beta1/zz_apioperationpolicy_types.go index 22e48cceb..537c5e06a 100755 --- a/apis/apimanagement/v1beta1/zz_apioperationpolicy_types.go +++ b/apis/apimanagement/v1beta1/zz_apioperationpolicy_types.go @@ -103,9 +103,11 @@ type APIOperationPolicyParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The XML Content for this Policy. + // +kubebuilder:validation:Optional XMLContent *string `json:"xmlContent,omitempty" tf:"xml_content,omitempty"` // A link to a Policy XML Document, which must be publicly available. + // +kubebuilder:validation:Optional XMLLink *string `json:"xmlLink,omitempty" tf:"xml_link,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_apioperationtag_types.go b/apis/apimanagement/v1beta1/zz_apioperationtag_types.go index 4d55b3d50..4bd023201 100755 --- a/apis/apimanagement/v1beta1/zz_apioperationtag_types.go +++ b/apis/apimanagement/v1beta1/zz_apioperationtag_types.go @@ -48,6 +48,7 @@ type APIOperationTagParameters struct { APIOperationIDSelector *v1.Selector `json:"apiOperationIdSelector,omitempty" tf:"-"` // The display name of the API Management API Operation Tag. + // +kubebuilder:validation:Optional DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_apipolicy_types.go b/apis/apimanagement/v1beta1/zz_apipolicy_types.go index 1d595f83b..99c362549 100755 --- a/apis/apimanagement/v1beta1/zz_apipolicy_types.go +++ b/apis/apimanagement/v1beta1/zz_apipolicy_types.go @@ -85,9 +85,11 @@ type APIPolicyParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The XML Content for this Policy as a string. + // +kubebuilder:validation:Optional XMLContent *string `json:"xmlContent,omitempty" tf:"xml_content,omitempty"` // A link to a Policy XML Document, which must be publicly available. + // +kubebuilder:validation:Optional XMLLink *string `json:"xmlLink,omitempty" tf:"xml_link,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_apirelease_types.go b/apis/apimanagement/v1beta1/zz_apirelease_types.go index df91f6b60..34fad3920 100755 --- a/apis/apimanagement/v1beta1/zz_apirelease_types.go +++ b/apis/apimanagement/v1beta1/zz_apirelease_types.go @@ -48,6 +48,7 @@ type APIReleaseParameters struct { APIIDSelector *v1.Selector `json:"apiIdSelector,omitempty" tf:"-"` // The Release Notes. + // +kubebuilder:validation:Optional Notes *string `json:"notes,omitempty" tf:"notes,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_apischema_types.go b/apis/apimanagement/v1beta1/zz_apischema_types.go index a17d6f0e7..d91ec1195 100755 --- a/apis/apimanagement/v1beta1/zz_apischema_types.go +++ b/apis/apimanagement/v1beta1/zz_apischema_types.go @@ -84,12 +84,15 @@ type APISchemaParameters struct { APINameSelector *v1.Selector `json:"apiNameSelector,omitempty" tf:"-"` // Types definitions. Used for Swagger/OpenAPI v2/v3 schemas only. + // +kubebuilder:validation:Optional Components *string `json:"components,omitempty" tf:"components,omitempty"` // The content type of the API Schema. + // +kubebuilder:validation:Optional ContentType *string `json:"contentType,omitempty" tf:"content_type,omitempty"` // Types definitions. Used for Swagger/OpenAPI v1 schemas only. + // +kubebuilder:validation:Optional Definitions *string `json:"definitions,omitempty" tf:"definitions,omitempty"` // The Name of the Resource Group in which the API Management Service exists. Changing this forces a new resource to be created. @@ -106,6 +109,7 @@ type APISchemaParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The JSON escaped string defining the document representing the Schema. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_apiversionset_types.go b/apis/apimanagement/v1beta1/zz_apiversionset_types.go index b703fafd7..da183f231 100755 --- a/apis/apimanagement/v1beta1/zz_apiversionset_types.go +++ b/apis/apimanagement/v1beta1/zz_apiversionset_types.go @@ -74,9 +74,11 @@ type APIVersionSetParameters struct { APIManagementNameSelector *v1.Selector `json:"apiManagementNameSelector,omitempty" tf:"-"` // The description of API Version Set. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The display name of this API Version Set. + // +kubebuilder:validation:Optional DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` // The name of the Resource Group in which the parent API Management Service exists. Changing this forces a new resource to be created. @@ -93,12 +95,15 @@ type APIVersionSetParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The name of the Header which should be read from Inbound Requests which defines the API Version. + // +kubebuilder:validation:Optional VersionHeaderName *string `json:"versionHeaderName,omitempty" tf:"version_header_name,omitempty"` // The name of the Query String which should be read from Inbound Requests which defines the API Version. + // +kubebuilder:validation:Optional VersionQueryName *string `json:"versionQueryName,omitempty" tf:"version_query_name,omitempty"` // Specifies where in an Inbound HTTP Request that the API Version should be read from. Possible values are Header, Query and Segment. + // +kubebuilder:validation:Optional VersioningScheme *string `json:"versioningScheme,omitempty" tf:"versioning_scheme,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_authorizationserver_types.go b/apis/apimanagement/v1beta1/zz_authorizationserver_types.go index 025c1195f..e51386a76 100755 --- a/apis/apimanagement/v1beta1/zz_authorizationserver_types.go +++ b/apis/apimanagement/v1beta1/zz_authorizationserver_types.go @@ -128,21 +128,27 @@ type AuthorizationServerParameters struct { APIManagementNameSelector *v1.Selector `json:"apiManagementNameSelector,omitempty" tf:"-"` // The OAUTH Authorization Endpoint. + // +kubebuilder:validation:Optional AuthorizationEndpoint *string `json:"authorizationEndpoint,omitempty" tf:"authorization_endpoint,omitempty"` // The HTTP Verbs supported by the Authorization Endpoint. Possible values are DELETE, GET, HEAD, OPTIONS, PATCH, POST, PUT and TRACE. + // +kubebuilder:validation:Optional AuthorizationMethods []*string `json:"authorizationMethods,omitempty" tf:"authorization_methods,omitempty"` // The mechanism by which Access Tokens are passed to the API. Possible values are authorizationHeader and query. + // +kubebuilder:validation:Optional BearerTokenSendingMethods []*string `json:"bearerTokenSendingMethods,omitempty" tf:"bearer_token_sending_methods,omitempty"` // The Authentication Methods supported by the Token endpoint of this Authorization Server.. Possible values are Basic and Body. + // +kubebuilder:validation:Optional ClientAuthenticationMethod []*string `json:"clientAuthenticationMethod,omitempty" tf:"client_authentication_method,omitempty"` // The Client/App ID registered with this Authorization Server. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The URI of page where Client/App Registration is performed for this Authorization Server. + // +kubebuilder:validation:Optional ClientRegistrationEndpoint *string `json:"clientRegistrationEndpoint,omitempty" tf:"client_registration_endpoint,omitempty"` // The Client/App Secret registered with this Authorization Server. @@ -150,15 +156,19 @@ type AuthorizationServerParameters struct { ClientSecretSecretRef *v1.SecretKeySelector `json:"clientSecretSecretRef,omitempty" tf:"-"` // The Default Scope used when requesting an Access Token, specified as a string containing space-delimited values. + // +kubebuilder:validation:Optional DefaultScope *string `json:"defaultScope,omitempty" tf:"default_scope,omitempty"` // A description of the Authorization Server, which may contain HTML formatting tags. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The user-friendly name of this Authorization Server. + // +kubebuilder:validation:Optional DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` // Form of Authorization Grants required when requesting an Access Token. Possible values are authorizationCode, clientCredentials, implicit and resourceOwnerPassword. + // +kubebuilder:validation:Optional GrantTypes []*string `json:"grantTypes,omitempty" tf:"grant_types,omitempty"` // The name of the Resource Group in which the API Management Service exists. Changing this forces a new resource to be created. @@ -179,15 +189,19 @@ type AuthorizationServerParameters struct { ResourceOwnerPasswordSecretRef *v1.SecretKeySelector `json:"resourceOwnerPasswordSecretRef,omitempty" tf:"-"` // The username associated with the Resource Owner. + // +kubebuilder:validation:Optional ResourceOwnerUsername *string `json:"resourceOwnerUsername,omitempty" tf:"resource_owner_username,omitempty"` // Does this Authorization Server support State? If this is set to true the client may use the state parameter to raise protocol security. + // +kubebuilder:validation:Optional SupportState *bool `json:"supportState,omitempty" tf:"support_state,omitempty"` // A token_body_parameter block as defined below. + // +kubebuilder:validation:Optional TokenBodyParameter []TokenBodyParameterParameters `json:"tokenBodyParameter,omitempty" tf:"token_body_parameter,omitempty"` // The OAUTH Token Endpoint. + // +kubebuilder:validation:Optional TokenEndpoint *string `json:"tokenEndpoint,omitempty" tf:"token_endpoint,omitempty"` } @@ -212,9 +226,11 @@ type TokenBodyParameterObservation struct { type TokenBodyParameterParameters struct { // The Name of the Parameter. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Value of the Parameter. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_backend_types.go b/apis/apimanagement/v1beta1/zz_backend_types.go index f18218613..4ba2110ee 100755 --- a/apis/apimanagement/v1beta1/zz_backend_types.go +++ b/apis/apimanagement/v1beta1/zz_backend_types.go @@ -34,9 +34,11 @@ type AuthorizationObservation struct { type AuthorizationParameters struct { // The authentication Parameter value. + // +kubebuilder:validation:Optional Parameter *string `json:"parameter,omitempty" tf:"parameter,omitempty"` // The authentication Scheme name. + // +kubebuilder:validation:Optional Scheme *string `json:"scheme,omitempty" tf:"scheme,omitempty"` } @@ -125,15 +127,19 @@ type BackendParameters struct { APIManagementNameSelector *v1.Selector `json:"apiManagementNameSelector,omitempty" tf:"-"` // A credentials block as documented below. + // +kubebuilder:validation:Optional Credentials []CredentialsParameters `json:"credentials,omitempty" tf:"credentials,omitempty"` // The description of the backend. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The protocol used by the backend host. Possible values are http or soap. + // +kubebuilder:validation:Optional Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` // A proxy block as documented below. + // +kubebuilder:validation:Optional Proxy []BackendProxyParameters `json:"proxy,omitempty" tf:"proxy,omitempty"` // The Name of the Resource Group where the API Management Service exists. Changing this forces a new resource to be created. @@ -150,18 +156,23 @@ type BackendParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The management URI of the backend host in an external system. This URI can be the ARM Resource ID of Logic Apps, Function Apps or API Apps, or the management endpoint of a Service Fabric cluster. + // +kubebuilder:validation:Optional ResourceID *string `json:"resourceId,omitempty" tf:"resource_id,omitempty"` // A service_fabric_cluster block as documented below. + // +kubebuilder:validation:Optional ServiceFabricCluster []ServiceFabricClusterParameters `json:"serviceFabricCluster,omitempty" tf:"service_fabric_cluster,omitempty"` // A tls block as documented below. + // +kubebuilder:validation:Optional TLS []TLSParameters `json:"tls,omitempty" tf:"tls,omitempty"` // The title of the backend. + // +kubebuilder:validation:Optional Title *string `json:"title,omitempty" tf:"title,omitempty"` // The URL of the backend host. + // +kubebuilder:validation:Optional URL *string `json:"url,omitempty" tf:"url,omitempty"` } @@ -190,9 +201,11 @@ type BackendProxyParameters struct { PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"` // The URL of the proxy server. + // +kubebuilder:validation:Optional URL *string `json:"url,omitempty" tf:"url,omitempty"` // The username to connect to the proxy server. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } @@ -229,15 +242,19 @@ type CredentialsObservation struct { type CredentialsParameters struct { // An authorization block as defined below. + // +kubebuilder:validation:Optional Authorization []AuthorizationParameters `json:"authorization,omitempty" tf:"authorization,omitempty"` // A list of client certificate thumbprints to present to the backend host. The certificates must exist within the API Management Service. + // +kubebuilder:validation:Optional Certificate []*string `json:"certificate,omitempty" tf:"certificate,omitempty"` // A mapping of header parameters to pass to the backend host. The keys are the header names and the values are a comma separated string of header values. This is converted to a list before being passed to the API. + // +kubebuilder:validation:Optional Header map[string]*string `json:"header,omitempty" tf:"header,omitempty"` // A mapping of query parameters to pass to the backend host. The keys are the query names and the values are a comma separated string of query values. This is converted to a list before being passed to the API. + // +kubebuilder:validation:Optional Query map[string]*string `json:"query,omitempty" tf:"query,omitempty"` } @@ -262,9 +279,11 @@ type ServerX509NameObservation struct { type ServerX509NameParameters struct { // The thumbprint for the issuer of the certificate. + // +kubebuilder:validation:Optional IssuerCertificateThumbprint *string `json:"issuerCertificateThumbprint,omitempty" tf:"issuer_certificate_thumbprint,omitempty"` // The common name of the certificate. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -313,21 +332,27 @@ type ServiceFabricClusterObservation struct { type ServiceFabricClusterParameters struct { // The client certificate resource id for the management endpoint. + // +kubebuilder:validation:Optional ClientCertificateID *string `json:"clientCertificateId,omitempty" tf:"client_certificate_id,omitempty"` // The client certificate thumbprint for the management endpoint. + // +kubebuilder:validation:Optional ClientCertificateThumbprint *string `json:"clientCertificateThumbprint,omitempty" tf:"client_certificate_thumbprint,omitempty"` // A list of cluster management endpoints. + // +kubebuilder:validation:Optional ManagementEndpoints []*string `json:"managementEndpoints,omitempty" tf:"management_endpoints,omitempty"` // The maximum number of retries when attempting resolve the partition. + // +kubebuilder:validation:Optional MaxPartitionResolutionRetries *float64 `json:"maxPartitionResolutionRetries,omitempty" tf:"max_partition_resolution_retries,omitempty"` // A list of thumbprints of the server certificates of the Service Fabric cluster. + // +kubebuilder:validation:Optional ServerCertificateThumbprints []*string `json:"serverCertificateThumbprints,omitempty" tf:"server_certificate_thumbprints,omitempty"` // One or more server_x509_name blocks as documented below. + // +kubebuilder:validation:Optional ServerX509Name []ServerX509NameParameters `json:"serverX509Name,omitempty" tf:"server_x509_name,omitempty"` } @@ -352,9 +377,11 @@ type TLSObservation struct { type TLSParameters struct { // Flag indicating whether SSL certificate chain validation should be done when using self-signed certificates for the backend host. + // +kubebuilder:validation:Optional ValidateCertificateChain *bool `json:"validateCertificateChain,omitempty" tf:"validate_certificate_chain,omitempty"` // Flag indicating whether SSL certificate name validation should be done when using self-signed certificates for the backend host. + // +kubebuilder:validation:Optional ValidateCertificateName *bool `json:"validateCertificateName,omitempty" tf:"validate_certificate_name,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_certificate_types.go b/apis/apimanagement/v1beta1/zz_certificate_types.go index 1b08b325c..b73f43892 100755 --- a/apis/apimanagement/v1beta1/zz_certificate_types.go +++ b/apis/apimanagement/v1beta1/zz_certificate_types.go @@ -66,6 +66,7 @@ type CertificateParameters_2 struct { DataSecretRef *v1.SecretKeySelector `json:"dataSecretRef,omitempty" tf:"-"` // The Client ID of the User Assigned Managed Identity to use for retrieving certificate. + // +kubebuilder:validation:Optional KeyVaultIdentityClientID *string `json:"keyVaultIdentityClientId,omitempty" tf:"key_vault_identity_client_id,omitempty"` // The ID of the Key Vault Secret containing the SSL Certificate, which must be of the type application/x-pkcs12. diff --git a/apis/apimanagement/v1beta1/zz_diagnostic_types.go b/apis/apimanagement/v1beta1/zz_diagnostic_types.go index f56c2dba7..f24d02eca 100755 --- a/apis/apimanagement/v1beta1/zz_diagnostic_types.go +++ b/apis/apimanagement/v1beta1/zz_diagnostic_types.go @@ -34,9 +34,11 @@ type BackendRequestDataMaskingHeadersObservation struct { type BackendRequestDataMaskingHeadersParameters struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. + // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // The name of the header or the query parameter to mask. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -61,9 +63,11 @@ type BackendRequestDataMaskingObservation struct { type BackendRequestDataMaskingParameters struct { // A headers block as defined below. + // +kubebuilder:validation:Optional Headers []BackendRequestDataMaskingHeadersParameters `json:"headers,omitempty" tf:"headers,omitempty"` // A query_params block as defined below. + // +kubebuilder:validation:Optional QueryParams []BackendRequestDataMaskingQueryParamsParameters `json:"queryParams,omitempty" tf:"query_params,omitempty"` } @@ -88,9 +92,11 @@ type BackendRequestDataMaskingQueryParamsObservation struct { type BackendRequestDataMaskingQueryParamsParameters struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. + // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // The name of the header or the query parameter to mask. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -115,9 +121,11 @@ type BackendResponseDataMaskingHeadersObservation struct { type BackendResponseDataMaskingHeadersParameters struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. + // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // The name of the header or the query parameter to mask. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -142,9 +150,11 @@ type BackendResponseDataMaskingQueryParamsObservation struct { type BackendResponseDataMaskingQueryParamsParameters struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. + // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // The name of the header or the query parameter to mask. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -175,12 +185,15 @@ type DiagnosticBackendRequestObservation struct { type DiagnosticBackendRequestParameters struct { // Number of payload bytes to log (up to 8192). + // +kubebuilder:validation:Optional BodyBytes *float64 `json:"bodyBytes,omitempty" tf:"body_bytes,omitempty"` // A data_masking block as defined below. + // +kubebuilder:validation:Optional DataMasking []BackendRequestDataMaskingParameters `json:"dataMasking,omitempty" tf:"data_masking,omitempty"` // Specifies a list of headers to log. + // +kubebuilder:validation:Optional HeadersToLog []*string `json:"headersToLog,omitempty" tf:"headers_to_log,omitempty"` } @@ -205,9 +218,11 @@ type DiagnosticBackendResponseDataMaskingObservation struct { type DiagnosticBackendResponseDataMaskingParameters struct { // A headers block as defined below. + // +kubebuilder:validation:Optional Headers []BackendResponseDataMaskingHeadersParameters `json:"headers,omitempty" tf:"headers,omitempty"` // A query_params block as defined below. + // +kubebuilder:validation:Optional QueryParams []BackendResponseDataMaskingQueryParamsParameters `json:"queryParams,omitempty" tf:"query_params,omitempty"` } @@ -238,12 +253,15 @@ type DiagnosticBackendResponseObservation struct { type DiagnosticBackendResponseParameters struct { // Number of payload bytes to log (up to 8192). + // +kubebuilder:validation:Optional BodyBytes *float64 `json:"bodyBytes,omitempty" tf:"body_bytes,omitempty"` // A data_masking block as defined below. + // +kubebuilder:validation:Optional DataMasking []DiagnosticBackendResponseDataMaskingParameters `json:"dataMasking,omitempty" tf:"data_masking,omitempty"` // Specifies a list of headers to log. + // +kubebuilder:validation:Optional HeadersToLog []*string `json:"headersToLog,omitempty" tf:"headers_to_log,omitempty"` } @@ -268,9 +286,11 @@ type DiagnosticFrontendRequestDataMaskingHeadersObservation struct { type DiagnosticFrontendRequestDataMaskingHeadersParameters struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. + // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // The name of the header or the query parameter to mask. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -295,9 +315,11 @@ type DiagnosticFrontendRequestDataMaskingObservation struct { type DiagnosticFrontendRequestDataMaskingParameters struct { // A headers block as defined below. + // +kubebuilder:validation:Optional Headers []DiagnosticFrontendRequestDataMaskingHeadersParameters `json:"headers,omitempty" tf:"headers,omitempty"` // A query_params block as defined below. + // +kubebuilder:validation:Optional QueryParams []DiagnosticFrontendRequestDataMaskingQueryParamsParameters `json:"queryParams,omitempty" tf:"query_params,omitempty"` } @@ -322,9 +344,11 @@ type DiagnosticFrontendRequestDataMaskingQueryParamsObservation struct { type DiagnosticFrontendRequestDataMaskingQueryParamsParameters struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. + // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // The name of the header or the query parameter to mask. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -355,12 +379,15 @@ type DiagnosticFrontendRequestObservation struct { type DiagnosticFrontendRequestParameters struct { // Number of payload bytes to log (up to 8192). + // +kubebuilder:validation:Optional BodyBytes *float64 `json:"bodyBytes,omitempty" tf:"body_bytes,omitempty"` // A data_masking block as defined below. + // +kubebuilder:validation:Optional DataMasking []DiagnosticFrontendRequestDataMaskingParameters `json:"dataMasking,omitempty" tf:"data_masking,omitempty"` // Specifies a list of headers to log. + // +kubebuilder:validation:Optional HeadersToLog []*string `json:"headersToLog,omitempty" tf:"headers_to_log,omitempty"` } @@ -385,9 +412,11 @@ type DiagnosticFrontendResponseDataMaskingHeadersObservation struct { type DiagnosticFrontendResponseDataMaskingHeadersParameters struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. + // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // The name of the header or the query parameter to mask. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -412,9 +441,11 @@ type DiagnosticFrontendResponseDataMaskingObservation struct { type DiagnosticFrontendResponseDataMaskingParameters struct { // A headers block as defined below. + // +kubebuilder:validation:Optional Headers []DiagnosticFrontendResponseDataMaskingHeadersParameters `json:"headers,omitempty" tf:"headers,omitempty"` // A query_params block as defined below. + // +kubebuilder:validation:Optional QueryParams []DiagnosticFrontendResponseDataMaskingQueryParamsParameters `json:"queryParams,omitempty" tf:"query_params,omitempty"` } @@ -439,9 +470,11 @@ type DiagnosticFrontendResponseDataMaskingQueryParamsObservation struct { type DiagnosticFrontendResponseDataMaskingQueryParamsParameters struct { // The data masking mode. Possible values are Mask and Hide for query_params. The only possible value is Mask for headers. + // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // The name of the header or the query parameter to mask. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -472,12 +505,15 @@ type DiagnosticFrontendResponseObservation struct { type DiagnosticFrontendResponseParameters struct { // Number of payload bytes to log (up to 8192). + // +kubebuilder:validation:Optional BodyBytes *float64 `json:"bodyBytes,omitempty" tf:"body_bytes,omitempty"` // A data_masking block as defined below. + // +kubebuilder:validation:Optional DataMasking []DiagnosticFrontendResponseDataMaskingParameters `json:"dataMasking,omitempty" tf:"data_masking,omitempty"` // Specifies a list of headers to log. + // +kubebuilder:validation:Optional HeadersToLog []*string `json:"headersToLog,omitempty" tf:"headers_to_log,omitempty"` } @@ -589,27 +625,35 @@ type DiagnosticParameters struct { APIManagementNameSelector *v1.Selector `json:"apiManagementNameSelector,omitempty" tf:"-"` // Always log errors. Send telemetry if there is an erroneous condition, regardless of sampling settings. + // +kubebuilder:validation:Optional AlwaysLogErrors *bool `json:"alwaysLogErrors,omitempty" tf:"always_log_errors,omitempty"` // A backend_request block as defined below. + // +kubebuilder:validation:Optional BackendRequest []DiagnosticBackendRequestParameters `json:"backendRequest,omitempty" tf:"backend_request,omitempty"` // A backend_response block as defined below. + // +kubebuilder:validation:Optional BackendResponse []DiagnosticBackendResponseParameters `json:"backendResponse,omitempty" tf:"backend_response,omitempty"` // A frontend_request block as defined below. + // +kubebuilder:validation:Optional FrontendRequest []DiagnosticFrontendRequestParameters `json:"frontendRequest,omitempty" tf:"frontend_request,omitempty"` // A frontend_response block as defined below. + // +kubebuilder:validation:Optional FrontendResponse []DiagnosticFrontendResponseParameters `json:"frontendResponse,omitempty" tf:"frontend_response,omitempty"` // The HTTP Correlation Protocol to use. Possible values are None, Legacy or W3C. + // +kubebuilder:validation:Optional HTTPCorrelationProtocol *string `json:"httpCorrelationProtocol,omitempty" tf:"http_correlation_protocol,omitempty"` // Log client IP address. + // +kubebuilder:validation:Optional LogClientIP *bool `json:"logClientIp,omitempty" tf:"log_client_ip,omitempty"` // The format of the Operation Name for Application Insights telemetries. Possible values are Name, and Url. Defaults to Name. + // +kubebuilder:validation:Optional OperationNameFormat *string `json:"operationNameFormat,omitempty" tf:"operation_name_format,omitempty"` // The Name of the Resource Group where the API Management Service exists. Changing this forces a new resource to be created. @@ -626,9 +670,11 @@ type DiagnosticParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Sampling (%). For high traffic APIs, please read this documentation to understand performance implications and log sampling. Valid values are between 0.0 and 100.0. + // +kubebuilder:validation:Optional SamplingPercentage *float64 `json:"samplingPercentage,omitempty" tf:"sampling_percentage,omitempty"` // Logging verbosity. Possible values are verbose, information or error. + // +kubebuilder:validation:Optional Verbosity *string `json:"verbosity,omitempty" tf:"verbosity,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_emailtemplate_types.go b/apis/apimanagement/v1beta1/zz_emailtemplate_types.go index 3cc3f28d5..d5eb93732 100755 --- a/apis/apimanagement/v1beta1/zz_emailtemplate_types.go +++ b/apis/apimanagement/v1beta1/zz_emailtemplate_types.go @@ -65,6 +65,7 @@ type EmailTemplateParameters struct { APIManagementNameSelector *v1.Selector `json:"apiManagementNameSelector,omitempty" tf:"-"` // The body of the Email. Its format has to be a well-formed HTML document. + // +kubebuilder:validation:Optional Body *string `json:"body,omitempty" tf:"body,omitempty"` // The name of the Resource Group where the API Management Email Template should exist. Changing this forces a new API Management Email Template to be created. @@ -81,6 +82,7 @@ type EmailTemplateParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The subject of the Email. + // +kubebuilder:validation:Optional Subject *string `json:"subject,omitempty" tf:"subject,omitempty"` // The name of the Email Template. Possible values are AccountClosedDeveloper, ApplicationApprovedNotificationMessage, ConfirmSignUpIdentityDefault, EmailChangeIdentityDefault, InviteUserNotificationMessage, NewCommentNotificationMessage, NewDeveloperNotificationMessage, NewIssueNotificationMessage, PasswordResetByAdminNotificationMessage, PasswordResetIdentityDefault, PurchaseDeveloperNotificationMessage, QuotaLimitApproachingDeveloperNotificationMessage, RejectDeveloperNotificationMessage, RequestDeveloperNotificationMessage. Changing this forces a new API Management Email Template to be created. diff --git a/apis/apimanagement/v1beta1/zz_gateway_types.go b/apis/apimanagement/v1beta1/zz_gateway_types.go index 80f74558a..31f31d47c 100755 --- a/apis/apimanagement/v1beta1/zz_gateway_types.go +++ b/apis/apimanagement/v1beta1/zz_gateway_types.go @@ -54,9 +54,11 @@ type GatewayParameters struct { APIManagementIDSelector *v1.Selector `json:"apiManagementIdSelector,omitempty" tf:"-"` // The description of the API Management Gateway. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // A location_data block as documented below. + // +kubebuilder:validation:Optional LocationData []LocationDataParameters `json:"locationData,omitempty" tf:"location_data,omitempty"` } @@ -93,15 +95,19 @@ type LocationDataObservation struct { type LocationDataParameters struct { // The city or locality where the resource is located. + // +kubebuilder:validation:Optional City *string `json:"city,omitempty" tf:"city,omitempty"` // The district, state, or province where the resource is located. + // +kubebuilder:validation:Optional District *string `json:"district,omitempty" tf:"district,omitempty"` // A canonical name for the geographic or physical location. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The country or region where the resource is located. + // +kubebuilder:validation:Optional Region *string `json:"region,omitempty" tf:"region,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_globalschema_types.go b/apis/apimanagement/v1beta1/zz_globalschema_types.go index 16636c114..9dfc2a303 100755 --- a/apis/apimanagement/v1beta1/zz_globalschema_types.go +++ b/apis/apimanagement/v1beta1/zz_globalschema_types.go @@ -62,6 +62,7 @@ type GlobalSchemaParameters struct { APIManagementNameSelector *v1.Selector `json:"apiManagementNameSelector,omitempty" tf:"-"` // The description of the schema. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The Name of the Resource Group in which the API Management Service exists. Changing this forces a new resource to be created. @@ -78,9 +79,11 @@ type GlobalSchemaParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The content type of the Schema. Possible values are xml and json. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // The string defining the document representing the Schema. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_identityprovideraad_types.go b/apis/apimanagement/v1beta1/zz_identityprovideraad_types.go index bfdab4d7f..3bd6ed3ff 100755 --- a/apis/apimanagement/v1beta1/zz_identityprovideraad_types.go +++ b/apis/apimanagement/v1beta1/zz_identityprovideraad_types.go @@ -62,9 +62,11 @@ type IdentityProviderAADParameters struct { APIManagementNameSelector *v1.Selector `json:"apiManagementNameSelector,omitempty" tf:"-"` // List of allowed AAD Tenants. + // +kubebuilder:validation:Optional AllowedTenants []*string `json:"allowedTenants,omitempty" tf:"allowed_tenants,omitempty"` // Client Id of the Application in the AAD Identity Provider. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // Client secret of the Application in the AAD Identity Provider. @@ -85,6 +87,7 @@ type IdentityProviderAADParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The AAD Tenant to use instead of Common when logging into Active Directory + // +kubebuilder:validation:Optional SigninTenant *string `json:"signinTenant,omitempty" tf:"signin_tenant,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_identityproviderfacebook_types.go b/apis/apimanagement/v1beta1/zz_identityproviderfacebook_types.go index f86801a0a..80b80f4e3 100755 --- a/apis/apimanagement/v1beta1/zz_identityproviderfacebook_types.go +++ b/apis/apimanagement/v1beta1/zz_identityproviderfacebook_types.go @@ -50,6 +50,7 @@ type IdentityProviderFacebookParameters struct { APIManagementNameSelector *v1.Selector `json:"apiManagementNameSelector,omitempty" tf:"-"` // App ID for Facebook. + // +kubebuilder:validation:Optional AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // App Secret for Facebook. diff --git a/apis/apimanagement/v1beta1/zz_identityprovidergoogle_types.go b/apis/apimanagement/v1beta1/zz_identityprovidergoogle_types.go index e4f24a23a..31786938f 100755 --- a/apis/apimanagement/v1beta1/zz_identityprovidergoogle_types.go +++ b/apis/apimanagement/v1beta1/zz_identityprovidergoogle_types.go @@ -50,6 +50,7 @@ type IdentityProviderGoogleParameters struct { APIManagementNameSelector *v1.Selector `json:"apiManagementNameSelector,omitempty" tf:"-"` // Client Id for Google Sign-in. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // Client secret for Google Sign-in. diff --git a/apis/apimanagement/v1beta1/zz_identityprovidermicrosoft_types.go b/apis/apimanagement/v1beta1/zz_identityprovidermicrosoft_types.go index f2fb37a48..af6ca3651 100755 --- a/apis/apimanagement/v1beta1/zz_identityprovidermicrosoft_types.go +++ b/apis/apimanagement/v1beta1/zz_identityprovidermicrosoft_types.go @@ -50,6 +50,7 @@ type IdentityProviderMicrosoftParameters struct { APIManagementNameSelector *v1.Selector `json:"apiManagementNameSelector,omitempty" tf:"-"` // Client Id of the Azure AD Application. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // Client secret of the Azure AD Application. diff --git a/apis/apimanagement/v1beta1/zz_logger_types.go b/apis/apimanagement/v1beta1/zz_logger_types.go index 9f356cdb1..6d3d5cbce 100755 --- a/apis/apimanagement/v1beta1/zz_logger_types.go +++ b/apis/apimanagement/v1beta1/zz_logger_types.go @@ -45,6 +45,7 @@ type EventHubParameters struct { ConnectionStringSecretRef v1.SecretKeySelector `json:"connectionStringSecretRef" tf:"-"` // The name of an EventHub. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -106,15 +107,19 @@ type LoggerParameters struct { APIManagementNameSelector *v1.Selector `json:"apiManagementNameSelector,omitempty" tf:"-"` // An application_insights block as documented below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ApplicationInsights []ApplicationInsightsParameters `json:"applicationInsights,omitempty" tf:"application_insights,omitempty"` // Specifies whether records should be buffered in the Logger prior to publishing. Defaults to true. + // +kubebuilder:validation:Optional Buffered *bool `json:"buffered,omitempty" tf:"buffered,omitempty"` // A description of this Logger. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // An eventhub block as documented below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional EventHub []EventHubParameters `json:"eventhub,omitempty" tf:"eventhub,omitempty"` // The name of the Resource Group in which the API Management Service exists. Changing this forces a new resource to be created. diff --git a/apis/apimanagement/v1beta1/zz_management_types.go b/apis/apimanagement/v1beta1/zz_management_types.go index deaf228ed..11f2fbcb6 100755 --- a/apis/apimanagement/v1beta1/zz_management_types.go +++ b/apis/apimanagement/v1beta1/zz_management_types.go @@ -67,21 +67,27 @@ type AdditionalLocationObservation struct { type AdditionalLocationParameters struct { // The number of compute units in this region. Defaults to the capacity of the main region. + // +kubebuilder:validation:Optional Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` // Only valid for an Api Management service deployed in multiple locations. This can be used to disable the gateway in this additional location. + // +kubebuilder:validation:Optional GatewayDisabled *bool `json:"gatewayDisabled,omitempty" tf:"gateway_disabled,omitempty"` // The name of the Azure Region in which the API Management Service should be expanded to. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // ID of a standard SKU IPv4 Public IP. + // +kubebuilder:validation:Optional PublicIPAddressID *string `json:"publicIpAddressId,omitempty" tf:"public_ip_address_id,omitempty"` // A virtual_network_configuration block as defined below. Required when virtual_network_type is External or Internal. + // +kubebuilder:validation:Optional VirtualNetworkConfiguration []VirtualNetworkConfigurationParameters `json:"virtualNetworkConfiguration,omitempty" tf:"virtual_network_configuration,omitempty"` // A list of availability zones. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } @@ -117,6 +123,7 @@ type CertificateParameters struct { EncodedCertificateSecretRef v1.SecretKeySelector `json:"encodedCertificateSecretRef" tf:"-"` // The name of the Certificate Store where this certificate should be stored. Possible values are CertificateAuthority and Root. + // +kubebuilder:validation:Optional StoreName *string `json:"storeName,omitempty" tf:"store_name,omitempty"` } @@ -147,12 +154,15 @@ type DelegationObservation struct { type DelegationParameters struct { // Should subscription requests be delegated to an external url? Defaults to false. + // +kubebuilder:validation:Optional SubscriptionsEnabled *bool `json:"subscriptionsEnabled,omitempty" tf:"subscriptions_enabled,omitempty"` // The delegation URL. + // +kubebuilder:validation:Optional URL *string `json:"url,omitempty" tf:"url,omitempty"` // Should user registration requests be delegated to an external url? Defaults to false. + // +kubebuilder:validation:Optional UserRegistrationEnabled *bool `json:"userRegistrationEnabled,omitempty" tf:"user_registration_enabled,omitempty"` // A base64-encoded validation key to validate, that a request is coming from Azure API Management. @@ -283,9 +293,11 @@ type IdentityObservation struct { type IdentityParameters struct { // A list of User Assigned Managed Identity IDs to be assigned to this API Management Service. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this API Management Service. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -475,48 +487,63 @@ type ManagementObservation struct { type ManagementParameters struct { // One or more additional_location blocks as defined below. + // +kubebuilder:validation:Optional AdditionalLocation []AdditionalLocationParameters `json:"additionalLocation,omitempty" tf:"additional_location,omitempty"` // One or more (up to 10) certificate blocks as defined below. + // +kubebuilder:validation:Optional Certificate []CertificateParameters `json:"certificate,omitempty" tf:"certificate,omitempty"` // Enforce a client certificate to be presented on each request to the gateway? This is only supported when SKU type is Consumption. + // +kubebuilder:validation:Optional ClientCertificateEnabled *bool `json:"clientCertificateEnabled,omitempty" tf:"client_certificate_enabled,omitempty"` // A delegation block as defined below. + // +kubebuilder:validation:Optional Delegation []DelegationParameters `json:"delegation,omitempty" tf:"delegation,omitempty"` // Disable the gateway in main region? This is only supported when additional_location is set. + // +kubebuilder:validation:Optional GatewayDisabled *bool `json:"gatewayDisabled,omitempty" tf:"gateway_disabled,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // The Azure location where the API Management Service exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The version which the control plane API calls to API Management service are limited with version equal to or newer than. + // +kubebuilder:validation:Optional MinAPIVersion *string `json:"minApiVersion,omitempty" tf:"min_api_version,omitempty"` // Email address from which the notification will be sent. + // +kubebuilder:validation:Optional NotificationSenderEmail *string `json:"notificationSenderEmail,omitempty" tf:"notification_sender_email,omitempty"` // A policy block as defined below. + // +kubebuilder:validation:Optional Policy []PolicyParameters `json:"policy,omitempty" tf:"policy,omitempty"` // A protocols block as defined below. + // +kubebuilder:validation:Optional Protocols []ProtocolsParameters `json:"protocols,omitempty" tf:"protocols,omitempty"` // ID of a standard SKU IPv4 Public IP. + // +kubebuilder:validation:Optional PublicIPAddressID *string `json:"publicIpAddressId,omitempty" tf:"public_ip_address_id,omitempty"` // Is public access to the service allowed?. Defaults to true + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // The email of publisher/company. + // +kubebuilder:validation:Optional PublisherEmail *string `json:"publisherEmail,omitempty" tf:"publisher_email,omitempty"` // The name of publisher/company. + // +kubebuilder:validation:Optional PublisherName *string `json:"publisherName,omitempty" tf:"publisher_name,omitempty"` // The name of the Resource Group in which the API Management Service should be exist. Changing this forces a new resource to be created. @@ -533,30 +560,39 @@ type ManagementParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A security block as defined below. + // +kubebuilder:validation:Optional Security []SecurityParameters `json:"security,omitempty" tf:"security,omitempty"` // A sign_in block as defined below. + // +kubebuilder:validation:Optional SignIn []SignInParameters `json:"signIn,omitempty" tf:"sign_in,omitempty"` // A sign_up block as defined below. + // +kubebuilder:validation:Optional SignUp []SignUpParameters `json:"signUp,omitempty" tf:"sign_up,omitempty"` // sku_name is a string consisting of two parts separated by an underscore(_). The first part is the name, valid values include: Consumption, Developer, Basic, Standard and Premium. The second part is the capacity (e.g. the number of deployed units of the sku), which must be a positive integer (e.g. Developer_1). + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // A mapping of tags assigned to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // A tenant_access block as defined below. + // +kubebuilder:validation:Optional TenantAccess []TenantAccessParameters `json:"tenantAccess,omitempty" tf:"tenant_access,omitempty"` // A virtual_network_configuration block as defined below. Required when virtual_network_type is External or Internal. + // +kubebuilder:validation:Optional VirtualNetworkConfiguration []ManagementVirtualNetworkConfigurationParameters `json:"virtualNetworkConfiguration,omitempty" tf:"virtual_network_configuration,omitempty"` // The type of virtual network you want to use, valid values include: None, External, Internal. + // +kubebuilder:validation:Optional VirtualNetworkType *string `json:"virtualNetworkType,omitempty" tf:"virtual_network_type,omitempty"` // Specifies a list of Availability Zones in which this API Management service should be located. Changing this forces a new API Management service to be created. + // +kubebuilder:validation:Optional Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } @@ -607,9 +643,11 @@ type PolicyObservation struct { type PolicyParameters struct { // The XML Content for this Policy. + // +kubebuilder:validation:Optional XMLContent *string `json:"xmlContent,omitempty" tf:"xml_content"` // A link to an API Management Policy XML Document, which must be publicly available. + // +kubebuilder:validation:Optional XMLLink *string `json:"xmlLink,omitempty" tf:"xml_link"` } @@ -664,6 +702,7 @@ type ProtocolsObservation struct { type ProtocolsParameters struct { // Should HTTP/2 be supported by the API Management Service? Defaults to false. + // +kubebuilder:validation:Optional EnableHttp2 *bool `json:"enableHttp2,omitempty" tf:"enable_http2,omitempty"` } @@ -853,54 +892,71 @@ type SecurityObservation struct { type SecurityParameters struct { // Should SSL 3.0 be enabled on the backend of the gateway? Defaults to false. + // +kubebuilder:validation:Optional EnableBackendSsl30 *bool `json:"enableBackendSsl30,omitempty" tf:"enable_backend_ssl30,omitempty"` // Should TLS 1.0 be enabled on the backend of the gateway? Defaults to false. + // +kubebuilder:validation:Optional EnableBackendTls10 *bool `json:"enableBackendTls10,omitempty" tf:"enable_backend_tls10,omitempty"` // Should TLS 1.1 be enabled on the backend of the gateway? Defaults to false. + // +kubebuilder:validation:Optional EnableBackendTls11 *bool `json:"enableBackendTls11,omitempty" tf:"enable_backend_tls11,omitempty"` // Should SSL 3.0 be enabled on the frontend of the gateway? Defaults to false. + // +kubebuilder:validation:Optional EnableFrontendSsl30 *bool `json:"enableFrontendSsl30,omitempty" tf:"enable_frontend_ssl30,omitempty"` // Should TLS 1.0 be enabled on the frontend of the gateway? Defaults to false. + // +kubebuilder:validation:Optional EnableFrontendTls10 *bool `json:"enableFrontendTls10,omitempty" tf:"enable_frontend_tls10,omitempty"` // Should TLS 1.1 be enabled on the frontend of the gateway? Defaults to false. + // +kubebuilder:validation:Optional EnableFrontendTls11 *bool `json:"enableFrontendTls11,omitempty" tf:"enable_frontend_tls11,omitempty"` // Should the TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA cipher be enabled? Defaults to false. + // +kubebuilder:validation:Optional TLSEcdheEcdsaWithAes128CbcShaCiphersEnabled *bool `json:"tlsEcdheEcdsaWithAes128CbcShaCiphersEnabled,omitempty" tf:"tls_ecdhe_ecdsa_with_aes128_cbc_sha_ciphers_enabled,omitempty"` // Should the TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA cipher be enabled? Defaults to false. + // +kubebuilder:validation:Optional TLSEcdheEcdsaWithAes256CbcShaCiphersEnabled *bool `json:"tlsEcdheEcdsaWithAes256CbcShaCiphersEnabled,omitempty" tf:"tls_ecdhe_ecdsa_with_aes256_cbc_sha_ciphers_enabled,omitempty"` // Should the TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA cipher be enabled? Defaults to false. + // +kubebuilder:validation:Optional TLSEcdheRsaWithAes128CbcShaCiphersEnabled *bool `json:"tlsEcdheRsaWithAes128CbcShaCiphersEnabled,omitempty" tf:"tls_ecdhe_rsa_with_aes128_cbc_sha_ciphers_enabled,omitempty"` // Should the TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA cipher be enabled? Defaults to false. + // +kubebuilder:validation:Optional TLSEcdheRsaWithAes256CbcShaCiphersEnabled *bool `json:"tlsEcdheRsaWithAes256CbcShaCiphersEnabled,omitempty" tf:"tls_ecdhe_rsa_with_aes256_cbc_sha_ciphers_enabled,omitempty"` // Should the TLS_RSA_WITH_AES_128_CBC_SHA256 cipher be enabled? Defaults to false. + // +kubebuilder:validation:Optional TLSRsaWithAes128CbcSha256CiphersEnabled *bool `json:"tlsRsaWithAes128CbcSha256CiphersEnabled,omitempty" tf:"tls_rsa_with_aes128_cbc_sha256_ciphers_enabled,omitempty"` // Should the TLS_RSA_WITH_AES_128_CBC_SHA cipher be enabled? Defaults to false. + // +kubebuilder:validation:Optional TLSRsaWithAes128CbcShaCiphersEnabled *bool `json:"tlsRsaWithAes128CbcShaCiphersEnabled,omitempty" tf:"tls_rsa_with_aes128_cbc_sha_ciphers_enabled,omitempty"` // Should the TLS_RSA_WITH_AES_128_GCM_SHA256 cipher be enabled? Defaults to false. + // +kubebuilder:validation:Optional TLSRsaWithAes128GCMSha256CiphersEnabled *bool `json:"tlsRsaWithAes128GcmSha256CiphersEnabled,omitempty" tf:"tls_rsa_with_aes128_gcm_sha256_ciphers_enabled,omitempty"` // Should the TLS_RSA_WITH_AES_256_CBC_SHA256 cipher be enabled? Defaults to false. + // +kubebuilder:validation:Optional TLSRsaWithAes256CbcSha256CiphersEnabled *bool `json:"tlsRsaWithAes256CbcSha256CiphersEnabled,omitempty" tf:"tls_rsa_with_aes256_cbc_sha256_ciphers_enabled,omitempty"` // Should the TLS_RSA_WITH_AES_256_CBC_SHA cipher be enabled? Defaults to false. + // +kubebuilder:validation:Optional TLSRsaWithAes256CbcShaCiphersEnabled *bool `json:"tlsRsaWithAes256CbcShaCiphersEnabled,omitempty" tf:"tls_rsa_with_aes256_cbc_sha_ciphers_enabled,omitempty"` // Should the TLS_RSA_WITH_AES_256_GCM_SHA384 cipher be enabled? Defaults to false. + // +kubebuilder:validation:Optional TLSRsaWithAes256GCMSha384CiphersEnabled *bool `json:"tlsRsaWithAes256GcmSha384CiphersEnabled,omitempty" tf:"tls_rsa_with_aes256_gcm_sha384_ciphers_enabled,omitempty"` // Should the TLS_RSA_WITH_3DES_EDE_CBC_SHA cipher be enabled for alL TLS versions (1.0, 1.1 and 1.2)? + // +kubebuilder:validation:Optional TripleDesCiphersEnabled *bool `json:"tripleDesCiphersEnabled,omitempty" tf:"triple_des_ciphers_enabled,omitempty"` } @@ -919,6 +975,7 @@ type SignInObservation struct { type SignInParameters struct { // Should anonymous users be redirected to the sign in page? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` } @@ -943,9 +1000,11 @@ type SignUpObservation struct { type SignUpParameters struct { // Can users sign up on the development portal? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // A terms_of_service block as defined below. + // +kubebuilder:validation:Optional TermsOfService []TermsOfServiceParameters `json:"termsOfService,omitempty" tf:"terms_of_service,omitempty"` } @@ -967,6 +1026,7 @@ type TenantAccessObservation struct { type TenantAccessParameters struct { // Should the access to the management API be enabled? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` } @@ -997,12 +1057,15 @@ type TermsOfServiceObservation struct { type TermsOfServiceParameters struct { // Should the user be asked for consent during sign up? + // +kubebuilder:validation:Optional ConsentRequired *bool `json:"consentRequired,omitempty" tf:"consent_required,omitempty"` // Should Terms of Service be displayed during sign up?. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The Terms of Service which users are required to agree to in order to sign up. + // +kubebuilder:validation:Optional Text *string `json:"text,omitempty" tf:"text,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_namedvalue_types.go b/apis/apimanagement/v1beta1/zz_namedvalue_types.go index d25ce5d8c..0eaac1f60 100755 --- a/apis/apimanagement/v1beta1/zz_namedvalue_types.go +++ b/apis/apimanagement/v1beta1/zz_namedvalue_types.go @@ -68,6 +68,7 @@ type NamedValueParameters struct { APIManagementNameSelector *v1.Selector `json:"apiManagementNameSelector,omitempty" tf:"-"` // The display name of this API Management Named Value. + // +kubebuilder:validation:Optional DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` // The name of the Resource Group in which the API Management Named Value should exist. Changing this forces a new resource to be created. @@ -84,12 +85,15 @@ type NamedValueParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Specifies whether the API Management Named Value is secret. Valid values are true or false. The default value is false. + // +kubebuilder:validation:Optional Secret *bool `json:"secret,omitempty" tf:"secret,omitempty"` // A list of tags to be applied to the API Management Named Value. + // +kubebuilder:validation:Optional Tags []*string `json:"tags,omitempty" tf:"tags,omitempty"` // A value_from_key_vault block as defined below. + // +kubebuilder:validation:Optional ValueFromKeyVault []ValueFromKeyVaultParameters `json:"valueFromKeyVault,omitempty" tf:"value_from_key_vault,omitempty"` // The value of this API Management Named Value. @@ -118,9 +122,11 @@ type ValueFromKeyVaultObservation struct { type ValueFromKeyVaultParameters struct { // The client ID of User Assigned Identity, for the API Management Service, which will be used to access the key vault secret. The System Assigned Identity will be used in absence. + // +kubebuilder:validation:Optional IdentityClientID *string `json:"identityClientId,omitempty" tf:"identity_client_id,omitempty"` // The resource ID of the Key Vault Secret. + // +kubebuilder:validation:Optional SecretID *string `json:"secretId,omitempty" tf:"secret_id,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_notificationrecipientuser_types.go b/apis/apimanagement/v1beta1/zz_notificationrecipientuser_types.go index 32657f3eb..55c4bc908 100755 --- a/apis/apimanagement/v1beta1/zz_notificationrecipientuser_types.go +++ b/apis/apimanagement/v1beta1/zz_notificationrecipientuser_types.go @@ -51,6 +51,7 @@ type NotificationRecipientUserParameters struct { APIManagementIDSelector *v1.Selector `json:"apiManagementIdSelector,omitempty" tf:"-"` // The Notification Name to be received. Changing this forces a new API Management Notification Recipient User to be created. Possible values are AccountClosedPublisher, BCC, NewApplicationNotificationMessage, NewIssuePublisherNotificationMessage, PurchasePublisherNotificationMessage, QuotaLimitApproachingPublisherNotificationMessage, and RequestPublisherNotificationMessage. + // +kubebuilder:validation:Optional NotificationType *string `json:"notificationType,omitempty" tf:"notification_type,omitempty"` // The recipient user ID. Changing this forces a new API Management Notification Recipient User to be created. diff --git a/apis/apimanagement/v1beta1/zz_openidconnectprovider_types.go b/apis/apimanagement/v1beta1/zz_openidconnectprovider_types.go index 91d2485e0..c5c9141cf 100755 --- a/apis/apimanagement/v1beta1/zz_openidconnectprovider_types.go +++ b/apis/apimanagement/v1beta1/zz_openidconnectprovider_types.go @@ -70,12 +70,15 @@ type OpenIDConnectProviderParameters struct { ClientSecretSecretRef v1.SecretKeySelector `json:"clientSecretSecretRef" tf:"-"` // A description of this OpenID Connect Provider. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // A user-friendly name for this OpenID Connect Provider. + // +kubebuilder:validation:Optional DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` // The URI of the Metadata endpoint. + // +kubebuilder:validation:Optional MetadataEndpoint *string `json:"metadataEndpoint,omitempty" tf:"metadata_endpoint,omitempty"` // The name of the Resource Group where the API Management Service exists. Changing this forces a new resource to be created. diff --git a/apis/apimanagement/v1beta1/zz_policy_types.go b/apis/apimanagement/v1beta1/zz_policy_types.go index 2ccd3752e..3753f3bc5 100755 --- a/apis/apimanagement/v1beta1/zz_policy_types.go +++ b/apis/apimanagement/v1beta1/zz_policy_types.go @@ -54,9 +54,11 @@ type PolicyParameters_2 struct { APIManagementIDSelector *v1.Selector `json:"apiManagementIdSelector,omitempty" tf:"-"` // The XML Content for this Policy as a string. + // +kubebuilder:validation:Optional XMLContent *string `json:"xmlContent,omitempty" tf:"xml_content,omitempty"` // A link to a Policy XML Document, which must be publicly available. + // +kubebuilder:validation:Optional XMLLink *string `json:"xmlLink,omitempty" tf:"xml_link,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_product_types.go b/apis/apimanagement/v1beta1/zz_product_types.go index baa177fee..ec147a1f2 100755 --- a/apis/apimanagement/v1beta1/zz_product_types.go +++ b/apis/apimanagement/v1beta1/zz_product_types.go @@ -86,15 +86,19 @@ type ProductParameters struct { APIManagementNameSelector *v1.Selector `json:"apiManagementNameSelector,omitempty" tf:"-"` // Do subscribers need to be approved prior to being able to use the Product? + // +kubebuilder:validation:Optional ApprovalRequired *bool `json:"approvalRequired,omitempty" tf:"approval_required,omitempty"` // A description of this Product, which may include HTML formatting tags. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The Display Name for this API Management Product. + // +kubebuilder:validation:Optional DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` // Is this Product Published? + // +kubebuilder:validation:Optional Published *bool `json:"published,omitempty" tf:"published,omitempty"` // The name of the Resource Group in which the API Management Service should be exist. Changing this forces a new resource to be created. @@ -111,12 +115,15 @@ type ProductParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Is a Subscription required to access API's included in this Product? Defaults to true. + // +kubebuilder:validation:Optional SubscriptionRequired *bool `json:"subscriptionRequired,omitempty" tf:"subscription_required,omitempty"` // The number of subscriptions a user can have to this Product at the same time. + // +kubebuilder:validation:Optional SubscriptionsLimit *float64 `json:"subscriptionsLimit,omitempty" tf:"subscriptions_limit,omitempty"` // The Terms and Conditions for this Product, which must be accepted by Developers before they can begin the Subscription process. + // +kubebuilder:validation:Optional Terms *string `json:"terms,omitempty" tf:"terms,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_productpolicy_types.go b/apis/apimanagement/v1beta1/zz_productpolicy_types.go index c9d4e7fe9..7cdcde8d1 100755 --- a/apis/apimanagement/v1beta1/zz_productpolicy_types.go +++ b/apis/apimanagement/v1beta1/zz_productpolicy_types.go @@ -85,9 +85,11 @@ type ProductPolicyParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The XML Content for this Policy. + // +kubebuilder:validation:Optional XMLContent *string `json:"xmlContent,omitempty" tf:"xml_content,omitempty"` // A link to a Policy XML Document, which must be publicly available. + // +kubebuilder:validation:Optional XMLLink *string `json:"xmlLink,omitempty" tf:"xml_link,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_rediscache_types.go b/apis/apimanagement/v1beta1/zz_rediscache_types.go index 4bd799701..168d87d3a 100755 --- a/apis/apimanagement/v1beta1/zz_rediscache_types.go +++ b/apis/apimanagement/v1beta1/zz_rediscache_types.go @@ -57,6 +57,7 @@ type RedisCacheParameters struct { APIManagementIDSelector *v1.Selector `json:"apiManagementIdSelector,omitempty" tf:"-"` // The location where to use cache from. Possible values are default and valid Azure regions. Defaults to default. + // +kubebuilder:validation:Optional CacheLocation *string `json:"cacheLocation,omitempty" tf:"cache_location,omitempty"` // The connection string to the Cache for Redis. @@ -64,6 +65,7 @@ type RedisCacheParameters struct { ConnectionStringSecretRef v1.SecretKeySelector `json:"connectionStringSecretRef" tf:"-"` // The description of the API Management Redis Cache. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The resource ID of the Cache for Redis. diff --git a/apis/apimanagement/v1beta1/zz_subscription_types.go b/apis/apimanagement/v1beta1/zz_subscription_types.go index 029703c4d..2385da8e3 100755 --- a/apis/apimanagement/v1beta1/zz_subscription_types.go +++ b/apis/apimanagement/v1beta1/zz_subscription_types.go @@ -61,6 +61,7 @@ type SubscriptionObservation struct { type SubscriptionParameters struct { // The ID of the API which should be assigned to this Subscription. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional APIID *string `json:"apiId,omitempty" tf:"api_id,omitempty"` // The name of the API Management Service where this Subscription should be created. Changing this forces a new resource to be created. @@ -77,6 +78,7 @@ type SubscriptionParameters struct { APIManagementNameSelector *v1.Selector `json:"apiManagementNameSelector,omitempty" tf:"-"` // Determines whether tracing can be enabled. Defaults to true. + // +kubebuilder:validation:Optional AllowTracing *bool `json:"allowTracing,omitempty" tf:"allow_tracing,omitempty"` // The primary subscription key to use for the subscription. @@ -115,9 +117,11 @@ type SubscriptionParameters struct { SecondaryKeySecretRef *v1.SecretKeySelector `json:"secondaryKeySecretRef,omitempty" tf:"-"` // The state of this Subscription. Possible values are active, cancelled, expired, rejected, submitted and suspended. Defaults to submitted. + // +kubebuilder:validation:Optional State *string `json:"state,omitempty" tf:"state,omitempty"` // An Identifier which should used as the ID of this Subscription. If not specified a new Subscription ID will be generated. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SubscriptionID *string `json:"subscriptionId,omitempty" tf:"subscription_id,omitempty"` // The ID of the User which should be assigned to this Subscription. Changing this forces a new resource to be created. diff --git a/apis/apimanagement/v1beta1/zz_tag_types.go b/apis/apimanagement/v1beta1/zz_tag_types.go index c767dbe09..34c037dc6 100755 --- a/apis/apimanagement/v1beta1/zz_tag_types.go +++ b/apis/apimanagement/v1beta1/zz_tag_types.go @@ -48,6 +48,7 @@ type TagParameters struct { APIManagementIDSelector *v1.Selector `json:"apiManagementIdSelector,omitempty" tf:"-"` // The display name of the API Management Tag. Defaults to the name. + // +kubebuilder:validation:Optional DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` } diff --git a/apis/apimanagement/v1beta1/zz_user_types.go b/apis/apimanagement/v1beta1/zz_user_types.go index b58dca65a..d4de72ad3 100755 --- a/apis/apimanagement/v1beta1/zz_user_types.go +++ b/apis/apimanagement/v1beta1/zz_user_types.go @@ -80,18 +80,23 @@ type UserParameters struct { APIManagementNameSelector *v1.Selector `json:"apiManagementNameSelector,omitempty" tf:"-"` // The kind of confirmation email which will be sent to this user. Possible values are invite and signup. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Confirmation *string `json:"confirmation,omitempty" tf:"confirmation,omitempty"` // The email address associated with this user. + // +kubebuilder:validation:Optional Email *string `json:"email,omitempty" tf:"email,omitempty"` // The first name for this user. + // +kubebuilder:validation:Optional FirstName *string `json:"firstName,omitempty" tf:"first_name,omitempty"` // The last name for this user. + // +kubebuilder:validation:Optional LastName *string `json:"lastName,omitempty" tf:"last_name,omitempty"` // A note about this user. + // +kubebuilder:validation:Optional Note *string `json:"note,omitempty" tf:"note,omitempty"` // The password associated with this user. @@ -112,6 +117,7 @@ type UserParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The state of this user. Possible values are active, blocked and pending. + // +kubebuilder:validation:Optional State *string `json:"state,omitempty" tf:"state,omitempty"` } diff --git a/apis/appconfiguration/v1beta1/zz_configuration_types.go b/apis/appconfiguration/v1beta1/zz_configuration_types.go index 0a8fbd5f3..49936a422 100755 --- a/apis/appconfiguration/v1beta1/zz_configuration_types.go +++ b/apis/appconfiguration/v1beta1/zz_configuration_types.go @@ -97,21 +97,27 @@ type ConfigurationObservation struct { type ConfigurationParameters struct { // An encryption block as defined below. + // +kubebuilder:validation:Optional Encryption []EncryptionParameters `json:"encryption,omitempty" tf:"encryption,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // Whether local authentication methods is enabled. Defaults to true. + // +kubebuilder:validation:Optional LocalAuthEnabled *bool `json:"localAuthEnabled,omitempty" tf:"local_auth_enabled,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The Public Network Access setting of the App Configuration. Possible values are Enabled and Disabled. + // +kubebuilder:validation:Optional PublicNetworkAccess *string `json:"publicNetworkAccess,omitempty" tf:"public_network_access,omitempty"` // Whether Purge Protection is enabled. This field only works for standard sku. Defaults to false. + // +kubebuilder:validation:Optional PurgeProtectionEnabled *bool `json:"purgeProtectionEnabled,omitempty" tf:"purge_protection_enabled,omitempty"` // The name of the resource group in which to create the App Configuration. Changing this forces a new resource to be created. @@ -128,12 +134,15 @@ type ConfigurationParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The SKU name of the App Configuration. Possible values are free and standard. Defaults to free. + // +kubebuilder:validation:Optional Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // The number of days that items should be retained for once soft-deleted. This field only works for standard sku. This value can be between 1 and 7 days. Defaults to 7. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SoftDeleteRetentionDays *float64 `json:"softDeleteRetentionDays,omitempty" tf:"soft_delete_retention_days,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -207,9 +216,11 @@ type IdentityObservation struct { type IdentityParameters struct { // A list of User Assigned Managed Identity IDs to be assigned to this App Configuration. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this App Configuration. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/appplatform/v1beta1/zz_springcloudaccelerator_types.go b/apis/appplatform/v1beta1/zz_springcloudaccelerator_types.go index 237f3eff9..8affcc6bb 100755 --- a/apis/appplatform/v1beta1/zz_springcloudaccelerator_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudaccelerator_types.go @@ -34,6 +34,7 @@ type SpringCloudAcceleratorObservation struct { type SpringCloudAcceleratorParameters struct { // The name which should be used for this Spring Cloud Accelerator. Changing this forces a new Spring Cloud Accelerator to be created. The only possible value is default. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID of the Spring Cloud Service. Changing this forces a new Spring Cloud Accelerator to be created. diff --git a/apis/appplatform/v1beta1/zz_springcloudapiportal_types.go b/apis/appplatform/v1beta1/zz_springcloudapiportal_types.go index 7b4fca6a7..97cb04fef 100755 --- a/apis/appplatform/v1beta1/zz_springcloudapiportal_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudapiportal_types.go @@ -72,12 +72,15 @@ type SpringCloudAPIPortalParameters struct { GatewayIdsSelector *v1.Selector `json:"gatewayIdsSelector,omitempty" tf:"-"` // is only https is allowed? + // +kubebuilder:validation:Optional HTTPSOnlyEnabled *bool `json:"httpsOnlyEnabled,omitempty" tf:"https_only_enabled,omitempty"` // Specifies the required instance count of the Spring Cloud API Portal. Possible Values are between 1 and 500. Defaults to 1 if not specified. + // +kubebuilder:validation:Optional InstanceCount *float64 `json:"instanceCount,omitempty" tf:"instance_count,omitempty"` // Is the public network access enabled? + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // The ID of the Spring Cloud Service. Changing this forces a new Spring Cloud API Portal to be created. @@ -95,6 +98,7 @@ type SpringCloudAPIPortalParameters struct { SpringCloudServiceIDSelector *v1.Selector `json:"springCloudServiceIdSelector,omitempty" tf:"-"` // A sso block as defined below. + // +kubebuilder:validation:Optional Sso []SsoParameters `json:"sso,omitempty" tf:"sso,omitempty"` } @@ -131,15 +135,19 @@ type SsoObservation struct { type SsoParameters struct { // The public identifier for the application. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The secret known only to the application and the authorization server. + // +kubebuilder:validation:Optional ClientSecret *string `json:"clientSecret,omitempty" tf:"client_secret,omitempty"` // The URI of Issuer Identifier. + // +kubebuilder:validation:Optional IssuerURI *string `json:"issuerUri,omitempty" tf:"issuer_uri,omitempty"` // It defines the specific actions applications can be allowed to do on a user's behalf. + // +kubebuilder:validation:Optional Scope []*string `json:"scope,omitempty" tf:"scope,omitempty"` } diff --git a/apis/appplatform/v1beta1/zz_springcloudapiportalcustomdomain_types.go b/apis/appplatform/v1beta1/zz_springcloudapiportalcustomdomain_types.go index 13ad742d5..199a14591 100755 --- a/apis/appplatform/v1beta1/zz_springcloudapiportalcustomdomain_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudapiportalcustomdomain_types.go @@ -40,6 +40,7 @@ type SpringCloudAPIPortalCustomDomainObservation struct { type SpringCloudAPIPortalCustomDomainParameters struct { // The name which should be used for this Spring Cloud API Portal Domain. Changing this forces a new Spring Cloud API Portal Domain to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID of the Spring Cloud API Portal. Changing this forces a new Spring Cloud API Portal Domain to be created. @@ -57,6 +58,7 @@ type SpringCloudAPIPortalCustomDomainParameters struct { SpringCloudAPIPortalIDSelector *v1.Selector `json:"springCloudApiPortalIdSelector,omitempty" tf:"-"` // Specifies the thumbprint of the Spring Cloud Certificate that binds to the Spring Cloud API Portal Domain. + // +kubebuilder:validation:Optional Thumbprint *string `json:"thumbprint,omitempty" tf:"thumbprint,omitempty"` } diff --git a/apis/appplatform/v1beta1/zz_springcloudapp_types.go b/apis/appplatform/v1beta1/zz_springcloudapp_types.go index f82a3a36a..63d35a7b4 100755 --- a/apis/appplatform/v1beta1/zz_springcloudapp_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudapp_types.go @@ -52,18 +52,23 @@ type CustomPersistentDiskObservation struct { type CustomPersistentDiskParameters struct { // These are the mount options for a persistent disk. + // +kubebuilder:validation:Optional MountOptions []*string `json:"mountOptions,omitempty" tf:"mount_options,omitempty"` // The mount path of the persistent disk. + // +kubebuilder:validation:Optional MountPath *string `json:"mountPath,omitempty" tf:"mount_path,omitempty"` // Indicates whether the persistent disk is a readOnly one. + // +kubebuilder:validation:Optional ReadOnlyEnabled *bool `json:"readOnlyEnabled,omitempty" tf:"read_only_enabled,omitempty"` // The share name of the Azure File share. + // +kubebuilder:validation:Optional ShareName *string `json:"shareName,omitempty" tf:"share_name,omitempty"` // The name of the Spring Cloud Storage. + // +kubebuilder:validation:Optional StorageName *string `json:"storageName,omitempty" tf:"storage_name,omitempty"` } @@ -94,9 +99,11 @@ type IdentityObservation struct { type IdentityParameters struct { // A list of User Assigned Managed Identity IDs to be assigned to this Spring Cloud Application. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Spring Cloud Application. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -139,18 +146,23 @@ type IngressSettingsObservation struct { type IngressSettingsParameters struct { // Specifies how ingress should communicate with this app backend service. Allowed values are GRPC and Default. Defaults to Default. + // +kubebuilder:validation:Optional BackendProtocol *string `json:"backendProtocol,omitempty" tf:"backend_protocol,omitempty"` // Specifies the ingress read time out in seconds. Defaults to 300. + // +kubebuilder:validation:Optional ReadTimeoutInSeconds *float64 `json:"readTimeoutInSeconds,omitempty" tf:"read_timeout_in_seconds,omitempty"` // Specifies the ingress send time out in seconds. Defaults to 60. + // +kubebuilder:validation:Optional SendTimeoutInSeconds *float64 `json:"sendTimeoutInSeconds,omitempty" tf:"send_timeout_in_seconds,omitempty"` // Specifies the type of the affinity, set this to Cookie to enable session affinity. Allowed values are Cookie and None. Defaults to None. + // +kubebuilder:validation:Optional SessionAffinity *string `json:"sessionAffinity,omitempty" tf:"session_affinity,omitempty"` // Specifies the time in seconds until the cookie expires. + // +kubebuilder:validation:Optional SessionCookieMaxAge *float64 `json:"sessionCookieMaxAge,omitempty" tf:"session_cookie_max_age,omitempty"` } @@ -175,9 +187,11 @@ type PersistentDiskObservation struct { type PersistentDiskParameters struct { // Specifies the mount path of the persistent disk. Defaults to /persistent. + // +kubebuilder:validation:Optional MountPath *string `json:"mountPath,omitempty" tf:"mount_path,omitempty"` // Specifies the size of the persistent disk in GB. Possible values are between 0 and 50. + // +kubebuilder:validation:Optional SizeInGb *float64 `json:"sizeInGb,omitempty" tf:"size_in_gb,omitempty"` } @@ -259,27 +273,35 @@ type SpringCloudAppObservation struct { type SpringCloudAppParameters struct { // A JSON object that contains the addon configurations of the Spring Cloud Service. + // +kubebuilder:validation:Optional AddonJSON *string `json:"addonJson,omitempty" tf:"addon_json,omitempty"` // A custom_persistent_disk block as defined below. + // +kubebuilder:validation:Optional CustomPersistentDisk []CustomPersistentDiskParameters `json:"customPersistentDisk,omitempty" tf:"custom_persistent_disk,omitempty"` // Is only HTTPS allowed? Defaults to false. + // +kubebuilder:validation:Optional HTTPSOnly *bool `json:"httpsOnly,omitempty" tf:"https_only,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // An ingress_settings block as defined below. + // +kubebuilder:validation:Optional IngressSettings []IngressSettingsParameters `json:"ingressSettings,omitempty" tf:"ingress_settings,omitempty"` // Does the Spring Cloud Application have public endpoint? Defaults to false. + // +kubebuilder:validation:Optional IsPublic *bool `json:"isPublic,omitempty" tf:"is_public,omitempty"` // An persistent_disk block as defined below. + // +kubebuilder:validation:Optional PersistentDisk []PersistentDiskParameters `json:"persistentDisk,omitempty" tf:"persistent_disk,omitempty"` // Should the App in vnet injection instance exposes endpoint which could be accessed from Internet? + // +kubebuilder:validation:Optional PublicEndpointEnabled *bool `json:"publicEndpointEnabled,omitempty" tf:"public_endpoint_enabled,omitempty"` // Specifies the name of the resource group in which to create the Spring Cloud Application. Changing this forces a new resource to be created. @@ -309,6 +331,7 @@ type SpringCloudAppParameters struct { ServiceNameSelector *v1.Selector `json:"serviceNameSelector,omitempty" tf:"-"` // Is End to End TLS Enabled? Defaults to false. + // +kubebuilder:validation:Optional TLSEnabled *bool `json:"tlsEnabled,omitempty" tf:"tls_enabled,omitempty"` } diff --git a/apis/appplatform/v1beta1/zz_springcloudappcosmosdbassociation_types.go b/apis/appplatform/v1beta1/zz_springcloudappcosmosdbassociation_types.go index 8e0ab1635..161164e58 100755 --- a/apis/appplatform/v1beta1/zz_springcloudappcosmosdbassociation_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudappcosmosdbassociation_types.go @@ -70,6 +70,7 @@ type SpringCloudAppCosmosDBAssociationObservation struct { type SpringCloudAppCosmosDBAssociationParameters struct { // Specifies the API type which should be used when connecting to the CosmosDB Account. Possible values are cassandra, gremlin, mongo, sql or table. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional APIType *string `json:"apiType,omitempty" tf:"api_type,omitempty"` // Specifies the CosmosDB Account access key. @@ -101,18 +102,23 @@ type SpringCloudAppCosmosDBAssociationParameters struct { CosmosDBAccountIDSelector *v1.Selector `json:"cosmosdbAccountIdSelector,omitempty" tf:"-"` // Specifies the name of the Cassandra Keyspace which the Spring Cloud App should be associated with. Should only be set when api_type is cassandra. + // +kubebuilder:validation:Optional CosmosDBCassandraKeySpaceName *string `json:"cosmosdbCassandraKeyspaceName,omitempty" tf:"cosmosdb_cassandra_keyspace_name,omitempty"` // Specifies the name of the Gremlin Database which the Spring Cloud App should be associated with. Should only be set when api_type is gremlin. + // +kubebuilder:validation:Optional CosmosDBGremlinDatabaseName *string `json:"cosmosdbGremlinDatabaseName,omitempty" tf:"cosmosdb_gremlin_database_name,omitempty"` // Specifies the name of the Gremlin Graph which the Spring Cloud App should be associated with. Should only be set when api_type is gremlin. + // +kubebuilder:validation:Optional CosmosDBGremlinGraphName *string `json:"cosmosdbGremlinGraphName,omitempty" tf:"cosmosdb_gremlin_graph_name,omitempty"` // Specifies the name of the Mongo Database which the Spring Cloud App should be associated with. Should only be set when api_type is mongo. + // +kubebuilder:validation:Optional CosmosDBMongoDatabaseName *string `json:"cosmosdbMongoDatabaseName,omitempty" tf:"cosmosdb_mongo_database_name,omitempty"` // Specifies the name of the SQL Database which the Spring Cloud App should be associated with. Should only be set when api_type is sql. + // +kubebuilder:validation:Optional CosmosDBSQLDatabaseName *string `json:"cosmosdbSqlDatabaseName,omitempty" tf:"cosmosdb_sql_database_name,omitempty"` // Specifies the ID of the Spring Cloud Application where this Association is created. Changing this forces a new resource to be created. diff --git a/apis/appplatform/v1beta1/zz_springcloudappredisassociation_types.go b/apis/appplatform/v1beta1/zz_springcloudappredisassociation_types.go index d406b4128..a514730d0 100755 --- a/apis/appplatform/v1beta1/zz_springcloudappredisassociation_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudappredisassociation_types.go @@ -68,6 +68,7 @@ type SpringCloudAppRedisAssociationParameters struct { RedisCacheIDSelector *v1.Selector `json:"redisCacheIdSelector,omitempty" tf:"-"` // Should SSL be used when connecting to Redis? Defaults to true. + // +kubebuilder:validation:Optional SSLEnabled *bool `json:"sslEnabled,omitempty" tf:"ssl_enabled,omitempty"` // Specifies the Spring Cloud Application resource ID in which the Association is created. Changing this forces a new resource to be created. diff --git a/apis/appplatform/v1beta1/zz_springcloudbuilddeployment_types.go b/apis/appplatform/v1beta1/zz_springcloudbuilddeployment_types.go index 9cd721923..f29f467c5 100755 --- a/apis/appplatform/v1beta1/zz_springcloudbuilddeployment_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudbuilddeployment_types.go @@ -34,9 +34,11 @@ type QuotaObservation struct { type QuotaParameters struct { // Specifies the required cpu of the Spring Cloud Deployment. Possible Values are 500m, 1, 2, 3 and 4. Defaults to 1 if not specified. + // +kubebuilder:validation:Optional CPU *string `json:"cpu,omitempty" tf:"cpu,omitempty"` // Specifies the required memory size of the Spring Cloud Deployment. Possible Values are 512Mi, 1Gi, 2Gi, 3Gi, 4Gi, 5Gi, 6Gi, 7Gi, and 8Gi. Defaults to 1Gi if not specified. + // +kubebuilder:validation:Optional Memory *string `json:"memory,omitempty" tf:"memory,omitempty"` } @@ -85,18 +87,23 @@ type SpringCloudBuildDeploymentObservation struct { type SpringCloudBuildDeploymentParameters struct { // A JSON object that contains the addon configurations of the Spring Cloud Build Deployment. + // +kubebuilder:validation:Optional AddonJSON *string `json:"addonJson,omitempty" tf:"addon_json,omitempty"` // The ID of the Spring Cloud Build Result. + // +kubebuilder:validation:Optional BuildResultID *string `json:"buildResultId,omitempty" tf:"build_result_id,omitempty"` // Specifies the environment variables of the Spring Cloud Deployment as a map of key-value pairs. + // +kubebuilder:validation:Optional EnvironmentVariables map[string]*string `json:"environmentVariables,omitempty" tf:"environment_variables,omitempty"` // Specifies the required instance count of the Spring Cloud Deployment. Possible Values are between 1 and 500. Defaults to 1 if not specified. + // +kubebuilder:validation:Optional InstanceCount *float64 `json:"instanceCount,omitempty" tf:"instance_count,omitempty"` // A quota block as defined below. + // +kubebuilder:validation:Optional Quota []QuotaParameters `json:"quota,omitempty" tf:"quota,omitempty"` // The ID of the Spring Cloud Service. Changing this forces a new Spring Cloud Build Deployment to be created. diff --git a/apis/appplatform/v1beta1/zz_springcloudbuilder_types.go b/apis/appplatform/v1beta1/zz_springcloudbuilder_types.go index b0ba5ad69..cf900d3c1 100755 --- a/apis/appplatform/v1beta1/zz_springcloudbuilder_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudbuilder_types.go @@ -34,9 +34,11 @@ type BuildPackGroupObservation struct { type BuildPackGroupParameters struct { // Specifies a list of the build pack's ID. + // +kubebuilder:validation:Optional BuildPackIds []*string `json:"buildPackIds,omitempty" tf:"build_pack_ids,omitempty"` // The name which should be used for this build pack group. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -73,9 +75,11 @@ type SpringCloudBuilderObservation struct { type SpringCloudBuilderParameters struct { // One or more build_pack_group blocks as defined below. + // +kubebuilder:validation:Optional BuildPackGroup []BuildPackGroupParameters `json:"buildPackGroup,omitempty" tf:"build_pack_group,omitempty"` // The name which should be used for this Spring Cloud Builder. Changing this forces a new Spring Cloud Builder to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID of the Spring Cloud Service. Changing this forces a new Spring Cloud Builder to be created. @@ -93,6 +97,7 @@ type SpringCloudBuilderParameters struct { SpringCloudServiceIDSelector *v1.Selector `json:"springCloudServiceIdSelector,omitempty" tf:"-"` // A stack block as defined below. + // +kubebuilder:validation:Optional Stack []StackParameters `json:"stack,omitempty" tf:"stack,omitempty"` } @@ -117,9 +122,11 @@ type StackObservation struct { type StackParameters struct { // Specifies the ID of the ClusterStack. + // +kubebuilder:validation:Optional ID *string `json:"id,omitempty" tf:"id,omitempty"` // Specifies the version of the ClusterStack + // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` } diff --git a/apis/appplatform/v1beta1/zz_springcloudbuildpackbinding_types.go b/apis/appplatform/v1beta1/zz_springcloudbuildpackbinding_types.go index 500d4d7b8..beb0d7d77 100755 --- a/apis/appplatform/v1beta1/zz_springcloudbuildpackbinding_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudbuildpackbinding_types.go @@ -34,9 +34,11 @@ type LaunchObservation struct { type LaunchParameters struct { // Specifies a map of non-sensitive properties for launchProperties. + // +kubebuilder:validation:Optional Properties map[string]*string `json:"properties,omitempty" tf:"properties,omitempty"` // Specifies a map of sensitive properties for launchProperties. + // +kubebuilder:validation:Optional Secrets map[string]*string `json:"secrets,omitempty" tf:"secrets,omitempty"` } @@ -67,9 +69,11 @@ type SpringCloudBuildPackBindingObservation struct { type SpringCloudBuildPackBindingParameters struct { // Specifies the Build Pack Binding Type. Allowed values are ApacheSkyWalking, AppDynamics, ApplicationInsights, Dynatrace, ElasticAPM and NewRelic. + // +kubebuilder:validation:Optional BindingType *string `json:"bindingType,omitempty" tf:"binding_type,omitempty"` // A launch block as defined below. + // +kubebuilder:validation:Optional Launch []LaunchParameters `json:"launch,omitempty" tf:"launch,omitempty"` // The ID of the Spring Cloud Builder. Changing this forces a new Spring Cloud Build Pack Binding to be created. diff --git a/apis/appplatform/v1beta1/zz_springcloudcertificate_types.go b/apis/appplatform/v1beta1/zz_springcloudcertificate_types.go index a2c9dd27a..8f8860384 100755 --- a/apis/appplatform/v1beta1/zz_springcloudcertificate_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudcertificate_types.go @@ -43,6 +43,7 @@ type SpringCloudCertificateObservation struct { type SpringCloudCertificateParameters struct { // The content of uploaded certificate. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional CertificateContent *string `json:"certificateContent,omitempty" tf:"certificate_content,omitempty"` // Specifies the ID of the Key Vault Certificate resource. Changing this forces a new resource to be created. diff --git a/apis/appplatform/v1beta1/zz_springcloudconfigurationservice_types.go b/apis/appplatform/v1beta1/zz_springcloudconfigurationservice_types.go index 4df2e4fa1..6432bcb25 100755 --- a/apis/appplatform/v1beta1/zz_springcloudconfigurationservice_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudconfigurationservice_types.go @@ -76,15 +76,19 @@ type RepositoryObservation struct { type RepositoryParameters struct { // Specifies the SSH public key of git repository. + // +kubebuilder:validation:Optional HostKey *string `json:"hostKey,omitempty" tf:"host_key,omitempty"` // Specifies the SSH key algorithm of git repository. + // +kubebuilder:validation:Optional HostKeyAlgorithm *string `json:"hostKeyAlgorithm,omitempty" tf:"host_key_algorithm,omitempty"` // Specifies the label of the repository. + // +kubebuilder:validation:Optional Label *string `json:"label,omitempty" tf:"label,omitempty"` // Specifies the name which should be used for this repository. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the password of git repository basic auth. @@ -92,6 +96,7 @@ type RepositoryParameters struct { PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"` // Specifies the collection of patterns of the repository. + // +kubebuilder:validation:Optional Patterns []*string `json:"patterns,omitempty" tf:"patterns,omitempty"` // Specifies the SSH private key of git repository. @@ -99,15 +104,19 @@ type RepositoryParameters struct { PrivateKeySecretRef *v1.SecretKeySelector `json:"privateKeySecretRef,omitempty" tf:"-"` // Specifies a list of searching path of the repository + // +kubebuilder:validation:Optional SearchPaths []*string `json:"searchPaths,omitempty" tf:"search_paths,omitempty"` // Specifies whether enable the strict host key checking. + // +kubebuilder:validation:Optional StrictHostKeyChecking *bool `json:"strictHostKeyChecking,omitempty" tf:"strict_host_key_checking,omitempty"` // Specifies the URI of the repository. + // +kubebuilder:validation:Optional URI *string `json:"uri,omitempty" tf:"uri,omitempty"` // Specifies the username of git repository basic auth. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } @@ -132,6 +141,7 @@ type SpringCloudConfigurationServiceObservation struct { type SpringCloudConfigurationServiceParameters struct { // One or more repository blocks as defined below. + // +kubebuilder:validation:Optional Repository []RepositoryParameters `json:"repository,omitempty" tf:"repository,omitempty"` // The ID of the Spring Cloud Service. Changing this forces a new Spring Cloud Configuration Service to be created. diff --git a/apis/appplatform/v1beta1/zz_springcloudcontainerdeployment_types.go b/apis/appplatform/v1beta1/zz_springcloudcontainerdeployment_types.go index 047cf6ad2..cac3b30c7 100755 --- a/apis/appplatform/v1beta1/zz_springcloudcontainerdeployment_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudcontainerdeployment_types.go @@ -82,30 +82,39 @@ type SpringCloudContainerDeploymentObservation struct { type SpringCloudContainerDeploymentParameters struct { // A JSON object that contains the addon configurations of the Spring Cloud Container Deployment. + // +kubebuilder:validation:Optional AddonJSON *string `json:"addonJson,omitempty" tf:"addon_json,omitempty"` // Specifies the arguments to the entrypoint. The docker image's CMD is used if not specified. + // +kubebuilder:validation:Optional Arguments []*string `json:"arguments,omitempty" tf:"arguments,omitempty"` // Specifies the entrypoint array. It will not be executed within a shell. The docker image's ENTRYPOINT is used if not specified. + // +kubebuilder:validation:Optional Commands []*string `json:"commands,omitempty" tf:"commands,omitempty"` // Specifies the environment variables of the Spring Cloud Deployment as a map of key-value pairs. + // +kubebuilder:validation:Optional EnvironmentVariables map[string]*string `json:"environmentVariables,omitempty" tf:"environment_variables,omitempty"` // Container image of the custom container. This should be in the form of : without the server name of the registry. + // +kubebuilder:validation:Optional Image *string `json:"image,omitempty" tf:"image,omitempty"` // Specifies the required instance count of the Spring Cloud Deployment. Possible Values are between 1 and 500. Defaults to 1 if not specified. + // +kubebuilder:validation:Optional InstanceCount *float64 `json:"instanceCount,omitempty" tf:"instance_count,omitempty"` // Specifies the language framework of the container image. The only possible value is springboot. + // +kubebuilder:validation:Optional LanguageFramework *string `json:"languageFramework,omitempty" tf:"language_framework,omitempty"` // A quota block as defined below. + // +kubebuilder:validation:Optional Quota []SpringCloudContainerDeploymentQuotaParameters `json:"quota,omitempty" tf:"quota,omitempty"` // The name of the registry that contains the container image. + // +kubebuilder:validation:Optional Server *string `json:"server,omitempty" tf:"server,omitempty"` // The ID of the Spring Cloud Service. Changing this forces a new Spring Cloud Container Deployment to be created. @@ -144,9 +153,11 @@ type SpringCloudContainerDeploymentQuotaObservation struct { type SpringCloudContainerDeploymentQuotaParameters struct { // Specifies the required cpu of the Spring Cloud Deployment. Possible Values are 500m, 1, 2, 3 and 4. Defaults to 1 if not specified. + // +kubebuilder:validation:Optional CPU *string `json:"cpu,omitempty" tf:"cpu,omitempty"` // Specifies the required memory size of the Spring Cloud Deployment. Possible Values are 512Mi, 1Gi, 2Gi, 3Gi, 4Gi, 5Gi, 6Gi, 7Gi, and 8Gi. Defaults to 1Gi if not specified. + // +kubebuilder:validation:Optional Memory *string `json:"memory,omitempty" tf:"memory,omitempty"` } diff --git a/apis/appplatform/v1beta1/zz_springcloudcustomdomain_types.go b/apis/appplatform/v1beta1/zz_springcloudcustomdomain_types.go index 412a10628..3a650c9b4 100755 --- a/apis/appplatform/v1beta1/zz_springcloudcustomdomain_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudcustomdomain_types.go @@ -46,9 +46,11 @@ type SpringCloudCustomDomainObservation struct { type SpringCloudCustomDomainParameters struct { // Specifies the name of the Spring Cloud Certificate that binds to the Spring Cloud Custom Domain. Required when thumbprint is specified + // +kubebuilder:validation:Optional CertificateName *string `json:"certificateName,omitempty" tf:"certificate_name,omitempty"` // Specifies the name of the Spring Cloud Custom Domain. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the resource ID of the Spring Cloud Application. Changing this forces a new resource to be created. @@ -66,6 +68,7 @@ type SpringCloudCustomDomainParameters struct { SpringCloudAppIDSelector *v1.Selector `json:"springCloudAppIdSelector,omitempty" tf:"-"` // Specifies the thumbprint of the Spring Cloud Certificate that binds to the Spring Cloud Custom Domain. Required when certificate_name is specified. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Thumbprint *string `json:"thumbprint,omitempty" tf:"thumbprint,omitempty"` } diff --git a/apis/appplatform/v1beta1/zz_springcloudcustomizedaccelerator_types.go b/apis/appplatform/v1beta1/zz_springcloudcustomizedaccelerator_types.go index c45e82341..7722256c4 100755 --- a/apis/appplatform/v1beta1/zz_springcloudcustomizedaccelerator_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudcustomizedaccelerator_types.go @@ -32,6 +32,7 @@ type BasicAuthParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // Specifies the username of git repository basic auth. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } @@ -86,24 +87,31 @@ type GitRepositoryObservation struct { type GitRepositoryParameters struct { // A basic_auth block as defined below. Conflicts with git_repository.0.ssh_auth. Changing this forces a new Spring Cloud Customized Accelerator to be created. + // +kubebuilder:validation:Optional BasicAuth []BasicAuthParameters `json:"basicAuth,omitempty" tf:"basic_auth,omitempty"` // Specifies the Git repository branch to be used. + // +kubebuilder:validation:Optional Branch *string `json:"branch,omitempty" tf:"branch,omitempty"` // Specifies the Git repository commit to be used. + // +kubebuilder:validation:Optional Commit *string `json:"commit,omitempty" tf:"commit,omitempty"` // Specifies the Git repository tag to be used. + // +kubebuilder:validation:Optional GitTag *string `json:"gitTag,omitempty" tf:"git_tag,omitempty"` // Specifies the interval for checking for updates to Git or image repository. It should be greater than 10. + // +kubebuilder:validation:Optional IntervalInSeconds *float64 `json:"intervalInSeconds,omitempty" tf:"interval_in_seconds,omitempty"` // A ssh_auth block as defined below. Conflicts with git_repository.0.basic_auth. Changing this forces a new Spring Cloud Customized Accelerator to be created. + // +kubebuilder:validation:Optional SSHAuth []SSHAuthParameters `json:"sshAuth,omitempty" tf:"ssh_auth,omitempty"` // Specifies Git repository URL for the accelerator. + // +kubebuilder:validation:Optional URL *string `json:"url,omitempty" tf:"url,omitempty"` } @@ -122,6 +130,7 @@ type SSHAuthObservation struct { type SSHAuthParameters struct { // Specifies the SSH Key algorithm of git repository basic auth. + // +kubebuilder:validation:Optional HostKeyAlgorithm *string `json:"hostKeyAlgorithm,omitempty" tf:"host_key_algorithm,omitempty"` // Specifies the Public SSH Key of git repository basic auth. @@ -178,18 +187,23 @@ type SpringCloudCustomizedAcceleratorObservation struct { type SpringCloudCustomizedAcceleratorParameters struct { // Specifies a list of accelerator tags. + // +kubebuilder:validation:Optional AcceleratorTags []*string `json:"acceleratorTags,omitempty" tf:"accelerator_tags,omitempty"` // Specifies the description of the Spring Cloud Customized Accelerator. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // Specifies the display name of the Spring Cloud Customized Accelerator.. + // +kubebuilder:validation:Optional DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` // A git_repository block as defined below. + // +kubebuilder:validation:Optional GitRepository []GitRepositoryParameters `json:"gitRepository,omitempty" tf:"git_repository,omitempty"` // Specifies the icon URL of the Spring Cloud Customized Accelerator.. + // +kubebuilder:validation:Optional IconURL *string `json:"iconUrl,omitempty" tf:"icon_url,omitempty"` // The ID of the Spring Cloud Accelerator. Changing this forces a new Spring Cloud Customized Accelerator to be created. diff --git a/apis/appplatform/v1beta1/zz_springclouddevtoolportal_types.go b/apis/appplatform/v1beta1/zz_springclouddevtoolportal_types.go index f9938975e..9197508db 100755 --- a/apis/appplatform/v1beta1/zz_springclouddevtoolportal_types.go +++ b/apis/appplatform/v1beta1/zz_springclouddevtoolportal_types.go @@ -58,15 +58,19 @@ type SpringCloudDevToolPortalObservation struct { type SpringCloudDevToolPortalParameters struct { // Should the Accelerator plugin be enabled? + // +kubebuilder:validation:Optional ApplicationAcceleratorEnabled *bool `json:"applicationAcceleratorEnabled,omitempty" tf:"application_accelerator_enabled,omitempty"` // Should the Application Live View be enabled? + // +kubebuilder:validation:Optional ApplicationLiveViewEnabled *bool `json:"applicationLiveViewEnabled,omitempty" tf:"application_live_view_enabled,omitempty"` // The name which should be used for this Spring Cloud Dev Tool Portal. The only possible value is default. Changing this forces a new Spring Cloud Dev Tool Portal to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Is public network access enabled? + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // The ID of the Spring Cloud Service. Changing this forces a new Spring Cloud Dev Tool Portal to be created. @@ -84,6 +88,7 @@ type SpringCloudDevToolPortalParameters struct { SpringCloudServiceIDSelector *v1.Selector `json:"springCloudServiceIdSelector,omitempty" tf:"-"` // A sso block as defined below. + // +kubebuilder:validation:Optional Sso []SpringCloudDevToolPortalSsoParameters `json:"sso,omitempty" tf:"sso,omitempty"` } @@ -120,15 +125,19 @@ type SpringCloudDevToolPortalSsoObservation struct { type SpringCloudDevToolPortalSsoParameters struct { // Specifies the public identifier for the application. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // Specifies the secret known only to the application and the authorization server. + // +kubebuilder:validation:Optional ClientSecret *string `json:"clientSecret,omitempty" tf:"client_secret,omitempty"` // Specifies the URI of a JSON file with generic OIDC provider configuration. + // +kubebuilder:validation:Optional MetadataURL *string `json:"metadataUrl,omitempty" tf:"metadata_url,omitempty"` // Specifies a list of specific actions applications can be allowed to do on a user's behalf. + // +kubebuilder:validation:Optional Scope []*string `json:"scope,omitempty" tf:"scope,omitempty"` } diff --git a/apis/appplatform/v1beta1/zz_springcloudgateway_types.go b/apis/appplatform/v1beta1/zz_springcloudgateway_types.go index 807317d71..e24c44925 100755 --- a/apis/appplatform/v1beta1/zz_springcloudgateway_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudgateway_types.go @@ -52,18 +52,23 @@ type APIMetadataObservation struct { type APIMetadataParameters struct { // Detailed description of the APIs available on the Gateway instance. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // Location of additional documentation for the APIs available on the Gateway instance. + // +kubebuilder:validation:Optional DocumentationURL *string `json:"documentationUrl,omitempty" tf:"documentation_url,omitempty"` // Base URL that API consumers will use to access APIs on the Gateway instance. + // +kubebuilder:validation:Optional ServerURL *string `json:"serverUrl,omitempty" tf:"server_url,omitempty"` // Specifies the title describing the context of the APIs available on the Gateway instance. + // +kubebuilder:validation:Optional Title *string `json:"title,omitempty" tf:"title,omitempty"` // Specifies the version of APIs available on this Gateway instance. + // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` } @@ -112,21 +117,27 @@ type CorsObservation struct { type CorsParameters struct { // Allowed headers in cross-site requests. The special value * allows actual requests to send any header. + // +kubebuilder:validation:Optional AllowedHeaders []*string `json:"allowedHeaders,omitempty" tf:"allowed_headers,omitempty"` // Allowed HTTP methods on cross-site requests. The special value * allows all methods. If not set, GET and HEAD are allowed by default. Possible values are DELETE, GET, HEAD, MERGE, POST, OPTIONS and PUT. + // +kubebuilder:validation:Optional AllowedMethods []*string `json:"allowedMethods,omitempty" tf:"allowed_methods,omitempty"` // Allowed origins to make cross-site requests. The special value * allows all domains. + // +kubebuilder:validation:Optional AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` // is user credentials are supported on cross-site requests? + // +kubebuilder:validation:Optional CredentialsAllowed *bool `json:"credentialsAllowed,omitempty" tf:"credentials_allowed,omitempty"` // HTTP response headers to expose for cross-site requests. + // +kubebuilder:validation:Optional ExposedHeaders []*string `json:"exposedHeaders,omitempty" tf:"exposed_headers,omitempty"` // How long, in seconds, the response from a pre-flight request can be cached by clients. + // +kubebuilder:validation:Optional MaxAgeSeconds *float64 `json:"maxAgeSeconds,omitempty" tf:"max_age_seconds,omitempty"` } @@ -202,27 +213,35 @@ type SpringCloudGatewayObservation struct { type SpringCloudGatewayParameters struct { // A api_metadata block as defined below. + // +kubebuilder:validation:Optional APIMetadata []APIMetadataParameters `json:"apiMetadata,omitempty" tf:"api_metadata,omitempty"` // Specifies a list of application performance monitoring types used in the Spring Cloud Gateway. The allowed values are AppDynamics, ApplicationInsights, Dynatrace, ElasticAPM and NewRelic. + // +kubebuilder:validation:Optional ApplicationPerformanceMonitoringTypes []*string `json:"applicationPerformanceMonitoringTypes,omitempty" tf:"application_performance_monitoring_types,omitempty"` // A cors block as defined below. + // +kubebuilder:validation:Optional Cors []CorsParameters `json:"cors,omitempty" tf:"cors,omitempty"` // Specifies the environment variables of the Spring Cloud Gateway as a map of key-value pairs. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional EnvironmentVariables map[string]*string `json:"environmentVariables,omitempty" tf:"environment_variables,omitempty"` // is only https is allowed? + // +kubebuilder:validation:Optional HTTPSOnly *bool `json:"httpsOnly,omitempty" tf:"https_only,omitempty"` // Specifies the required instance count of the Spring Cloud Gateway. Possible Values are between 1 and 500. Defaults to 1 if not specified. + // +kubebuilder:validation:Optional InstanceCount *float64 `json:"instanceCount,omitempty" tf:"instance_count,omitempty"` // Indicates whether the Spring Cloud Gateway exposes endpoint. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // A quota block as defined below. + // +kubebuilder:validation:Optional Quota []SpringCloudGatewayQuotaParameters `json:"quota,omitempty" tf:"quota,omitempty"` // Specifies the sensitive environment variables of the Spring Cloud Gateway as a map of key-value pairs. Changing this forces a new resource to be created. @@ -244,6 +263,7 @@ type SpringCloudGatewayParameters struct { SpringCloudServiceIDSelector *v1.Selector `json:"springCloudServiceIdSelector,omitempty" tf:"-"` // A sso block as defined below. + // +kubebuilder:validation:Optional Sso []SpringCloudGatewaySsoParameters `json:"sso,omitempty" tf:"sso,omitempty"` } @@ -268,9 +288,11 @@ type SpringCloudGatewayQuotaObservation struct { type SpringCloudGatewayQuotaParameters struct { // Specifies the required cpu of the Spring Cloud Deployment. Possible Values are 500m, 1, 2, 3 and 4. Defaults to 1 if not specified. + // +kubebuilder:validation:Optional CPU *string `json:"cpu,omitempty" tf:"cpu,omitempty"` // Specifies the required memory size of the Spring Cloud Deployment. Possible Values are 512Mi, 1Gi, 2Gi, 3Gi, 4Gi, 5Gi, 6Gi, 7Gi, and 8Gi. Defaults to 1Gi if not specified. + // +kubebuilder:validation:Optional Memory *string `json:"memory,omitempty" tf:"memory,omitempty"` } @@ -307,15 +329,19 @@ type SpringCloudGatewaySsoObservation struct { type SpringCloudGatewaySsoParameters struct { // The public identifier for the application. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The secret known only to the application and the authorization server. + // +kubebuilder:validation:Optional ClientSecret *string `json:"clientSecret,omitempty" tf:"client_secret,omitempty"` // The URI of Issuer Identifier. + // +kubebuilder:validation:Optional IssuerURI *string `json:"issuerUri,omitempty" tf:"issuer_uri,omitempty"` // It defines the specific actions applications can be allowed to do on a user's behalf. + // +kubebuilder:validation:Optional Scope []*string `json:"scope,omitempty" tf:"scope,omitempty"` } diff --git a/apis/appplatform/v1beta1/zz_springcloudgatewaycustomdomain_types.go b/apis/appplatform/v1beta1/zz_springcloudgatewaycustomdomain_types.go index 43d1853bb..5512fc344 100755 --- a/apis/appplatform/v1beta1/zz_springcloudgatewaycustomdomain_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudgatewaycustomdomain_types.go @@ -40,6 +40,7 @@ type SpringCloudGatewayCustomDomainObservation struct { type SpringCloudGatewayCustomDomainParameters struct { // The name which should be used for this Spring Cloud Gateway Custom Domain. Changing this forces a new Spring Cloud Gateway Custom Domain to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID of the Spring Cloud Gateway. Changing this forces a new Spring Cloud Gateway Custom Domain to be created. @@ -57,6 +58,7 @@ type SpringCloudGatewayCustomDomainParameters struct { SpringCloudGatewayIDSelector *v1.Selector `json:"springCloudGatewayIdSelector,omitempty" tf:"-"` // Specifies the thumbprint of the Spring Cloud Certificate that binds to the Spring Cloud Gateway Custom Domain. + // +kubebuilder:validation:Optional Thumbprint *string `json:"thumbprint,omitempty" tf:"thumbprint,omitempty"` } diff --git a/apis/appplatform/v1beta1/zz_springcloudjavadeployment_types.go b/apis/appplatform/v1beta1/zz_springcloudjavadeployment_types.go index b67be5c15..c735b0759 100755 --- a/apis/appplatform/v1beta1/zz_springcloudjavadeployment_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudjavadeployment_types.go @@ -58,18 +58,23 @@ type SpringCloudJavaDeploymentObservation struct { type SpringCloudJavaDeploymentParameters struct { // Specifies the environment variables of the Spring Cloud Deployment as a map of key-value pairs. + // +kubebuilder:validation:Optional EnvironmentVariables map[string]*string `json:"environmentVariables,omitempty" tf:"environment_variables,omitempty"` // Specifies the required instance count of the Spring Cloud Deployment. Possible Values are between 1 and 500. Defaults to 1 if not specified. + // +kubebuilder:validation:Optional InstanceCount *float64 `json:"instanceCount,omitempty" tf:"instance_count,omitempty"` // Specifies the jvm option of the Spring Cloud Deployment. + // +kubebuilder:validation:Optional JvmOptions *string `json:"jvmOptions,omitempty" tf:"jvm_options,omitempty"` // A quota block as defined below. + // +kubebuilder:validation:Optional Quota []SpringCloudJavaDeploymentQuotaParameters `json:"quota,omitempty" tf:"quota,omitempty"` // Specifies the runtime version of the Spring Cloud Deployment. Possible Values are Java_8, Java_11 and Java_17. Defaults to Java_8. + // +kubebuilder:validation:Optional RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` // Specifies the id of the Spring Cloud Application in which to create the Deployment. Changing this forces a new resource to be created. @@ -108,9 +113,11 @@ type SpringCloudJavaDeploymentQuotaObservation struct { type SpringCloudJavaDeploymentQuotaParameters struct { // Specifies the required cpu of the Spring Cloud Deployment. Possible Values are 500m, 1, 2, 3 and 4. Defaults to 1 if not specified. + // +kubebuilder:validation:Optional CPU *string `json:"cpu,omitempty" tf:"cpu,omitempty"` // Specifies the required memory size of the Spring Cloud Deployment. Possible Values are 512Mi, 1Gi, 2Gi, 3Gi, 4Gi, 5Gi, 6Gi, 7Gi, and 8Gi. Defaults to 1Gi if not specified. + // +kubebuilder:validation:Optional Memory *string `json:"memory,omitempty" tf:"memory,omitempty"` } diff --git a/apis/appplatform/v1beta1/zz_springcloudservice_types.go b/apis/appplatform/v1beta1/zz_springcloudservice_types.go index 480df865d..afee6b985 100755 --- a/apis/appplatform/v1beta1/zz_springcloudservice_types.go +++ b/apis/appplatform/v1beta1/zz_springcloudservice_types.go @@ -58,21 +58,27 @@ type ConfigServerGitSettingObservation struct { type ConfigServerGitSettingParameters struct { // A http_basic_auth block as defined below. + // +kubebuilder:validation:Optional HTTPBasicAuth []HTTPBasicAuthParameters `json:"httpBasicAuth,omitempty" tf:"http_basic_auth,omitempty"` // The default label of the Git repository, should be the branch name, tag name, or commit-id of the repository. + // +kubebuilder:validation:Optional Label *string `json:"label,omitempty" tf:"label,omitempty"` // One or more repository blocks as defined below. + // +kubebuilder:validation:Optional Repository []ConfigServerGitSettingRepositoryParameters `json:"repository,omitempty" tf:"repository,omitempty"` // A ssh_auth block as defined below. + // +kubebuilder:validation:Optional SSHAuth []ConfigServerGitSettingSSHAuthParameters `json:"sshAuth,omitempty" tf:"ssh_auth,omitempty"` // An array of strings used to search subdirectories of the Git repository. + // +kubebuilder:validation:Optional SearchPaths []*string `json:"searchPaths,omitempty" tf:"search_paths,omitempty"` // The URI of the default Git repository used as the Config Server back end, should be started with http://, https://, git@, or ssh://. + // +kubebuilder:validation:Optional URI *string `json:"uri,omitempty" tf:"uri,omitempty"` } @@ -127,24 +133,31 @@ type ConfigServerGitSettingRepositoryObservation struct { type ConfigServerGitSettingRepositoryParameters struct { // A http_basic_auth block as defined below. + // +kubebuilder:validation:Optional HTTPBasicAuth []RepositoryHTTPBasicAuthParameters `json:"httpBasicAuth,omitempty" tf:"http_basic_auth,omitempty"` // The default label of the Git repository, should be the branch name, tag name, or commit-id of the repository. + // +kubebuilder:validation:Optional Label *string `json:"label,omitempty" tf:"label,omitempty"` // A name to identify on the Git repository, required only if repos exists. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // An array of strings used to match an application name. For each pattern, use the {application}/{profile} format with wildcards. + // +kubebuilder:validation:Optional Pattern []*string `json:"pattern,omitempty" tf:"pattern,omitempty"` // A ssh_auth block as defined below. + // +kubebuilder:validation:Optional SSHAuth []RepositorySSHAuthParameters `json:"sshAuth,omitempty" tf:"ssh_auth,omitempty"` // An array of strings used to search subdirectories of the Git repository. + // +kubebuilder:validation:Optional SearchPaths []*string `json:"searchPaths,omitempty" tf:"search_paths,omitempty"` // The URI of the Git repository that's used as the Config Server back end should be started with http://, https://, git@, or ssh://. + // +kubebuilder:validation:Optional URI *string `json:"uri,omitempty" tf:"uri,omitempty"` } @@ -169,6 +182,7 @@ type ConfigServerGitSettingSSHAuthObservation struct { type ConfigServerGitSettingSSHAuthParameters struct { // The host key algorithm, should be ssh-dss, ssh-rsa, ecdsa-sha2-nistp256, ecdsa-sha2-nistp384, or ecdsa-sha2-nistp521. Required only if host-key exists. + // +kubebuilder:validation:Optional HostKeyAlgorithm *string `json:"hostKeyAlgorithm,omitempty" tf:"host_key_algorithm,omitempty"` // The host key of the Git repository server, should not include the algorithm prefix as covered by host-key-algorithm. @@ -180,6 +194,7 @@ type ConfigServerGitSettingSSHAuthParameters struct { PrivateKeySecretRef v1.SecretKeySelector `json:"privateKeySecretRef" tf:"-"` // Indicates whether the Config Server instance will fail to start if the host_key does not match. Defaults to true. + // +kubebuilder:validation:Optional StrictHostKeyCheckingEnabled *bool `json:"strictHostKeyCheckingEnabled,omitempty" tf:"strict_host_key_checking_enabled,omitempty"` } @@ -202,6 +217,7 @@ type HTTPBasicAuthParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The username that's used to access the Git repository server, required when the Git repository server supports HTTP Basic Authentication. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } @@ -244,6 +260,7 @@ type NetworkObservation struct { type NetworkParameters struct { // Specifies the Name of the resource group containing network resources of Azure Spring Cloud Apps. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional AppNetworkResourceGroup *string `json:"appNetworkResourceGroup,omitempty" tf:"app_network_resource_group,omitempty"` // Specifies the ID of the Subnet which should host the Spring Boot Applications deployed in this Spring Cloud Service. Changing this forces a new resource to be created. @@ -261,12 +278,15 @@ type NetworkParameters struct { AppSubnetIDSelector *v1.Selector `json:"appSubnetIdSelector,omitempty" tf:"-"` // A list of (at least 3) CIDR ranges (at least /16) which are used to host the Spring Cloud infrastructure, which must not overlap with any existing CIDR ranges in the Subnet. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional CidrRanges []*string `json:"cidrRanges,omitempty" tf:"cidr_ranges,omitempty"` // Ingress read time out in seconds. + // +kubebuilder:validation:Optional ReadTimeoutSeconds *float64 `json:"readTimeoutSeconds,omitempty" tf:"read_timeout_seconds,omitempty"` // Specifies the Name of the resource group containing network resources of Azure Spring Cloud Service Runtime. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ServiceRuntimeNetworkResourceGroup *string `json:"serviceRuntimeNetworkResourceGroup,omitempty" tf:"service_runtime_network_resource_group,omitempty"` // Specifies the ID of the Subnet where the Service Runtime components of the Spring Cloud Service will exist. Changing this forces a new resource to be created. @@ -303,6 +323,7 @@ type RepositoryHTTPBasicAuthParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The username that's used to access the Git repository server, required when the Git repository server supports HTTP Basic Authentication. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } @@ -327,6 +348,7 @@ type RepositorySSHAuthObservation struct { type RepositorySSHAuthParameters struct { // The host key algorithm, should be ssh-dss, ssh-rsa, ecdsa-sha2-nistp256, ecdsa-sha2-nistp384, or ecdsa-sha2-nistp521. Required only if host-key exists. + // +kubebuilder:validation:Optional HostKeyAlgorithm *string `json:"hostKeyAlgorithm,omitempty" tf:"host_key_algorithm,omitempty"` // The host key of the Git repository server, should not include the algorithm prefix as covered by host-key-algorithm. @@ -338,6 +360,7 @@ type RepositorySSHAuthParameters struct { PrivateKeySecretRef v1.SecretKeySelector `json:"privateKeySecretRef" tf:"-"` // Indicates whether the Config Server instance will fail to start if the host_key does not match. Defaults to true. + // +kubebuilder:validation:Optional StrictHostKeyCheckingEnabled *bool `json:"strictHostKeyCheckingEnabled,omitempty" tf:"strict_host_key_checking_enabled,omitempty"` } @@ -449,18 +472,23 @@ type SpringCloudServiceObservation struct { type SpringCloudServiceParameters struct { // Specifies the size for this Spring Cloud Service's default build agent pool. Possible values are S1, S2, S3, S4 and S5. This field is applicable only for Spring Cloud Service with enterprise tier. + // +kubebuilder:validation:Optional BuildAgentPoolSize *string `json:"buildAgentPoolSize,omitempty" tf:"build_agent_pool_size,omitempty"` // A config_server_git_setting block as defined below. This field is applicable only for Spring Cloud Service with basic and standard tier. + // +kubebuilder:validation:Optional ConfigServerGitSetting []ConfigServerGitSettingParameters `json:"configServerGitSetting,omitempty" tf:"config_server_git_setting,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Should the log stream in vnet injection instance could be accessed from Internet? + // +kubebuilder:validation:Optional LogStreamPublicEndpointEnabled *bool `json:"logStreamPublicEndpointEnabled,omitempty" tf:"log_stream_public_endpoint_enabled,omitempty"` // A network block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Network []NetworkParameters `json:"network,omitempty" tf:"network,omitempty"` // Specifies The name of the resource group in which to create the Spring Cloud Service. Changing this forces a new resource to be created. @@ -477,18 +505,23 @@ type SpringCloudServiceParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Whether enable the default Service Registry. This field is applicable only for Spring Cloud Service with enterprise tier. + // +kubebuilder:validation:Optional ServiceRegistryEnabled *bool `json:"serviceRegistryEnabled,omitempty" tf:"service_registry_enabled,omitempty"` // Specifies the SKU Name for this Spring Cloud Service. Possible values are B0, S0 and E0. Defaults to S0. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // A trace block as defined below. + // +kubebuilder:validation:Optional Trace []TraceParameters `json:"trace,omitempty" tf:"trace,omitempty"` // Whether zone redundancy is enabled for this Spring Cloud Service. Defaults to false. + // +kubebuilder:validation:Optional ZoneRedundant *bool `json:"zoneRedundant,omitempty" tf:"zone_redundant,omitempty"` } @@ -524,6 +557,7 @@ type TraceParameters struct { ConnectionStringSelector *v1.Selector `json:"connectionStringSelector,omitempty" tf:"-"` // The sampling rate of Application Insights Agent. Must be between 0.0 and 100.0. Defaults to 10.0. + // +kubebuilder:validation:Optional SampleRate *float64 `json:"sampleRate,omitempty" tf:"sample_rate,omitempty"` } diff --git a/apis/attestation/v1beta1/zz_provider_types.go b/apis/attestation/v1beta1/zz_provider_types.go index 79d2968b3..42c30cbbd 100755 --- a/apis/attestation/v1beta1/zz_provider_types.go +++ b/apis/attestation/v1beta1/zz_provider_types.go @@ -26,8 +26,11 @@ type PolicyObservation struct { } type PolicyParameters struct { + + // +kubebuilder:validation:Optional Data *string `json:"data,omitempty" tf:"data,omitempty"` + // +kubebuilder:validation:Optional EnvironmentType *string `json:"environmentType,omitempty" tf:"environment_type,omitempty"` } @@ -92,14 +95,18 @@ type ProviderObservation struct { type ProviderParameters struct { // The Azure Region where the Attestation Provider should exist. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the base64 URI Encoded RFC 7519 JWT that should be used for the TPM Policy. + // +kubebuilder:validation:Optional OpenEnclavePolicyBase64 *string `json:"openEnclavePolicyBase64,omitempty" tf:"open_enclave_policy_base64,omitempty"` + // +kubebuilder:validation:Optional Policy []PolicyParameters `json:"policy,omitempty" tf:"policy,omitempty"` // A valid X.509 certificate (Section 4 of RFC4648). Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PolicySigningCertificateData *string `json:"policySigningCertificateData,omitempty" tf:"policy_signing_certificate_data,omitempty"` // The name of the Resource Group where the attestation provider should exist. Changing this forces a new resource to be created. @@ -116,12 +123,15 @@ type ProviderParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Specifies the base64 URI Encoded RFC 7519 JWT that should be used for the TPM Policy. + // +kubebuilder:validation:Optional SgxEnclavePolicyBase64 *string `json:"sgxEnclavePolicyBase64,omitempty" tf:"sgx_enclave_policy_base64,omitempty"` // A mapping of tags which should be assigned to the Attestation Provider. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the base64 URI Encoded RFC 7519 JWT that should be used for the TPM Policy. + // +kubebuilder:validation:Optional TpmPolicyBase64 *string `json:"tpmPolicyBase64,omitempty" tf:"tpm_policy_base64,omitempty"` } diff --git a/apis/authorization/v1beta1/zz_managementlock_types.go b/apis/authorization/v1beta1/zz_managementlock_types.go index 900ed86cc..072d9221d 100755 --- a/apis/authorization/v1beta1/zz_managementlock_types.go +++ b/apis/authorization/v1beta1/zz_managementlock_types.go @@ -46,12 +46,15 @@ type ManagementLockObservation struct { type ManagementLockParameters struct { // Specifies the Level to be used for this Lock. Possible values are CanNotDelete and ReadOnly. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional LockLevel *string `json:"lockLevel,omitempty" tf:"lock_level,omitempty"` // Specifies the name of the Management Lock. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies some notes about the lock. Maximum of 512 characters. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Notes *string `json:"notes,omitempty" tf:"notes,omitempty"` // Specifies the scope at which the Management Lock should be created. Changing this forces a new resource to be created. diff --git a/apis/authorization/v1beta1/zz_policydefinition_types.go b/apis/authorization/v1beta1/zz_policydefinition_types.go index d4b0b9e21..c8ed4ce39 100755 --- a/apis/authorization/v1beta1/zz_policydefinition_types.go +++ b/apis/authorization/v1beta1/zz_policydefinition_types.go @@ -76,27 +76,35 @@ type PolicyDefinitionObservation struct { type PolicyDefinitionParameters struct { // The description of the policy definition. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The display name of the policy definition. + // +kubebuilder:validation:Optional DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` // The id of the Management Group where this policy should be defined. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ManagementGroupID *string `json:"managementGroupId,omitempty" tf:"management_group_id,omitempty"` // The metadata for the policy definition. This is a JSON string representing additional metadata that should be stored with the policy definition. + // +kubebuilder:validation:Optional Metadata *string `json:"metadata,omitempty" tf:"metadata,omitempty"` // The policy resource manager mode that allows you to specify which resource types will be evaluated. Possible values are All, Indexed, Microsoft.ContainerService.Data, Microsoft.CustomerLockbox.Data, Microsoft.DataCatalog.Data, Microsoft.KeyVault.Data, Microsoft.Kubernetes.Data, Microsoft.MachineLearningServices.Data, Microsoft.Network.Data and Microsoft.Synapse.Data. + // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // Parameters for the policy definition. This field is a JSON string that allows you to parameterize your policy definition. + // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The policy rule for the policy definition. This is a JSON string representing the rule that contains an if and a then block. + // +kubebuilder:validation:Optional PolicyRule *string `json:"policyRule,omitempty" tf:"policy_rule,omitempty"` // The policy type. Possible values are BuiltIn, Custom, NotSpecified and Static. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PolicyType *string `json:"policyType,omitempty" tf:"policy_type,omitempty"` } diff --git a/apis/authorization/v1beta1/zz_resourcegrouppolicyassignment_types.go b/apis/authorization/v1beta1/zz_resourcegrouppolicyassignment_types.go index d4e1edded..7479232ca 100755 --- a/apis/authorization/v1beta1/zz_resourcegrouppolicyassignment_types.go +++ b/apis/authorization/v1beta1/zz_resourcegrouppolicyassignment_types.go @@ -40,9 +40,11 @@ type IdentityObservation struct { type IdentityParameters struct { // A list of User Managed Identity IDs which should be assigned to the Policy Definition. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // The Type of Managed Identity which should be added to this Policy Definition. Possible values are SystemAssigned and UserAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -67,9 +69,11 @@ type NonComplianceMessageObservation struct { type NonComplianceMessageParameters struct { // The non-compliance message text. When assigning policy sets (initiatives), unless policy_definition_reference_id is specified then this message will be the default for all policies. + // +kubebuilder:validation:Optional Content *string `json:"content,omitempty" tf:"content,omitempty"` // When assigning policy sets (initiatives), this is the ID of the policy definition that the non-compliance message applies to. + // +kubebuilder:validation:Optional PolicyDefinitionReferenceID *string `json:"policyDefinitionReferenceId,omitempty" tf:"policy_definition_reference_id,omitempty"` } @@ -94,9 +98,11 @@ type OverridesObservation struct { type OverridesParameters struct { // One or more override_selector as defined below. + // +kubebuilder:validation:Optional Selectors []SelectorsParameters `json:"selectors,omitempty" tf:"selectors,omitempty"` // Specifies the value to override the policy property. Possible values for policyEffect override listed policy effects. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -184,33 +190,43 @@ type ResourceGroupPolicyAssignmentObservation struct { type ResourceGroupPolicyAssignmentParameters struct { // A description which should be used for this Policy Assignment. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The Display Name for this Policy Assignment. + // +kubebuilder:validation:Optional DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` // Specifies if this Policy should be enforced or not? Defaults to true. + // +kubebuilder:validation:Optional Enforce *bool `json:"enforce,omitempty" tf:"enforce,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // The Azure Region where the Policy Assignment should exist. Changing this forces a new Policy Assignment to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // A JSON mapping of any Metadata for this Policy. + // +kubebuilder:validation:Optional Metadata *string `json:"metadata,omitempty" tf:"metadata,omitempty"` // One or more non_compliance_message blocks as defined below. + // +kubebuilder:validation:Optional NonComplianceMessage []NonComplianceMessageParameters `json:"nonComplianceMessage,omitempty" tf:"non_compliance_message,omitempty"` // Specifies a list of Resource Scopes (for example a Subscription, or a Resource Group) within this Management Group which are excluded from this Policy. + // +kubebuilder:validation:Optional NotScopes []*string `json:"notScopes,omitempty" tf:"not_scopes,omitempty"` // One or more overrides blocks as defined below. More detail about overrides and resource_selectors see policy assignment structure + // +kubebuilder:validation:Optional Overrides []OverridesParameters `json:"overrides,omitempty" tf:"overrides,omitempty"` // A JSON mapping of any Parameters for this Policy. + // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created. @@ -242,6 +258,7 @@ type ResourceGroupPolicyAssignmentParameters struct { ResourceGroupIDSelector *v1.Selector `json:"resourceGroupIdSelector,omitempty" tf:"-"` // One or more resource_selectors blocks as defined below to filter polices by resource properties. + // +kubebuilder:validation:Optional ResourceSelectors []ResourceSelectorsParameters `json:"resourceSelectors,omitempty" tf:"resource_selectors,omitempty"` } @@ -266,9 +283,11 @@ type ResourceSelectorsObservation struct { type ResourceSelectorsParameters struct { // Specifies a name for the resource selector. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // One or more resource_selector block as defined below. + // +kubebuilder:validation:Optional Selectors []ResourceSelectorsSelectorsParameters `json:"selectors,omitempty" tf:"selectors,omitempty"` } @@ -299,12 +318,15 @@ type ResourceSelectorsSelectorsObservation struct { type ResourceSelectorsSelectorsParameters struct { // The list of allowed values for the specified kind. Cannot be used with not_in. Can contain up to 50 values. + // +kubebuilder:validation:Optional In []*string `json:"in,omitempty" tf:"in,omitempty"` // Specifies which characteristic will narrow down the set of evaluated resources. Possible values are resourceLocation, resourceType and resourceWithoutLocation. + // +kubebuilder:validation:Optional Kind *string `json:"kind,omitempty" tf:"kind,omitempty"` // The list of not-allowed values for the specified kind. Cannot be used with in. Can contain up to 50 values. + // +kubebuilder:validation:Optional NotIn []*string `json:"notIn,omitempty" tf:"not_in,omitempty"` } @@ -332,9 +354,11 @@ type SelectorsObservation struct { type SelectorsParameters struct { // The list of allowed values for the specified kind. Cannot be used with not_in. Can contain up to 50 values. + // +kubebuilder:validation:Optional In []*string `json:"in,omitempty" tf:"in,omitempty"` // The list of not-allowed values for the specified kind. Cannot be used with in. Can contain up to 50 values. + // +kubebuilder:validation:Optional NotIn []*string `json:"notIn,omitempty" tf:"not_in,omitempty"` } diff --git a/apis/authorization/v1beta1/zz_resourcepolicyassignment_types.go b/apis/authorization/v1beta1/zz_resourcepolicyassignment_types.go index 9df5e4617..aecdb44ef 100755 --- a/apis/authorization/v1beta1/zz_resourcepolicyassignment_types.go +++ b/apis/authorization/v1beta1/zz_resourcepolicyassignment_types.go @@ -37,9 +37,11 @@ type OverridesSelectorsObservation struct { type OverridesSelectorsParameters struct { // The list of allowed values for the specified kind. Cannot be used with not_in. Can contain up to 50 values. + // +kubebuilder:validation:Optional In []*string `json:"in,omitempty" tf:"in,omitempty"` // The list of not-allowed values for the specified kind. Cannot be used with in. Can contain up to 50 values. + // +kubebuilder:validation:Optional NotIn []*string `json:"notIn,omitempty" tf:"not_in,omitempty"` } @@ -70,9 +72,11 @@ type ResourcePolicyAssignmentIdentityObservation struct { type ResourcePolicyAssignmentIdentityParameters struct { // A list of User Managed Identity IDs which should be assigned to the Policy Definition. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // The Type of Managed Identity which should be added to this Policy Definition. Possible values are SystemAssigned and UserAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -139,9 +143,11 @@ type ResourcePolicyAssignmentNonComplianceMessageObservation struct { type ResourcePolicyAssignmentNonComplianceMessageParameters struct { // The non-compliance message text. When assigning policy sets (initiatives), unless policy_definition_reference_id is specified then this message will be the default for all policies. + // +kubebuilder:validation:Optional Content *string `json:"content,omitempty" tf:"content,omitempty"` // When assigning policy sets (initiatives), this is the ID of the policy definition that the non-compliance message applies to. + // +kubebuilder:validation:Optional PolicyDefinitionReferenceID *string `json:"policyDefinitionReferenceId,omitempty" tf:"policy_definition_reference_id,omitempty"` } @@ -214,45 +220,58 @@ type ResourcePolicyAssignmentOverridesObservation struct { type ResourcePolicyAssignmentOverridesParameters struct { // One or more override_selector as defined below. + // +kubebuilder:validation:Optional Selectors []OverridesSelectorsParameters `json:"selectors,omitempty" tf:"selectors,omitempty"` // Specifies the value to override the policy property. Possible values for policyEffect override listed policy effects. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } type ResourcePolicyAssignmentParameters struct { // A description which should be used for this Policy Assignment. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The Display Name for this Policy Assignment. + // +kubebuilder:validation:Optional DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` // Specifies if this Policy should be enforced or not? Defaults to true. + // +kubebuilder:validation:Optional Enforce *bool `json:"enforce,omitempty" tf:"enforce,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []ResourcePolicyAssignmentIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // The Azure Region where the Policy Assignment should exist. Changing this forces a new Policy Assignment to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // A JSON mapping of any Metadata for this Policy. + // +kubebuilder:validation:Optional Metadata *string `json:"metadata,omitempty" tf:"metadata,omitempty"` // The name which should be used for this Policy Assignment. Changing this forces a new Resource Policy Assignment to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // One or more non_compliance_message blocks as defined below. + // +kubebuilder:validation:Optional NonComplianceMessage []ResourcePolicyAssignmentNonComplianceMessageParameters `json:"nonComplianceMessage,omitempty" tf:"non_compliance_message,omitempty"` // Specifies a list of Resource Scopes (for example a Subscription, or a Resource Group) within this Management Group which are excluded from this Policy. + // +kubebuilder:validation:Optional NotScopes []*string `json:"notScopes,omitempty" tf:"not_scopes,omitempty"` // One or more overrides blocks as defined below. More detail about overrides and resource_selectors see policy assignment structure + // +kubebuilder:validation:Optional Overrides []ResourcePolicyAssignmentOverridesParameters `json:"overrides,omitempty" tf:"overrides,omitempty"` // A JSON mapping of any Parameters for this Policy. + // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created. @@ -270,9 +289,11 @@ type ResourcePolicyAssignmentParameters struct { PolicyDefinitionIDSelector *v1.Selector `json:"policyDefinitionIdSelector,omitempty" tf:"-"` // The ID of the Resource (or Resource Scope) where this should be applied. Changing this forces a new Resource Policy Assignment to be created. + // +kubebuilder:validation:Optional ResourceID *string `json:"resourceId,omitempty" tf:"resource_id,omitempty"` // One or more resource_selectors blocks as defined below to filter polices by resource properties. + // +kubebuilder:validation:Optional ResourceSelectors []ResourcePolicyAssignmentResourceSelectorsParameters `json:"resourceSelectors,omitempty" tf:"resource_selectors,omitempty"` } @@ -297,9 +318,11 @@ type ResourcePolicyAssignmentResourceSelectorsObservation struct { type ResourcePolicyAssignmentResourceSelectorsParameters struct { // Specifies a name for the resource selector. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // One or more resource_selector block as defined below. + // +kubebuilder:validation:Optional Selectors []ResourcePolicyAssignmentResourceSelectorsSelectorsParameters `json:"selectors,omitempty" tf:"selectors,omitempty"` } @@ -330,12 +353,15 @@ type ResourcePolicyAssignmentResourceSelectorsSelectorsObservation struct { type ResourcePolicyAssignmentResourceSelectorsSelectorsParameters struct { // The list of allowed values for the specified kind. Cannot be used with not_in. Can contain up to 50 values. + // +kubebuilder:validation:Optional In []*string `json:"in,omitempty" tf:"in,omitempty"` // Specifies which characteristic will narrow down the set of evaluated resources. Possible values are resourceLocation, resourceType and resourceWithoutLocation. + // +kubebuilder:validation:Optional Kind *string `json:"kind,omitempty" tf:"kind,omitempty"` // The list of not-allowed values for the specified kind. Cannot be used with in. Can contain up to 50 values. + // +kubebuilder:validation:Optional NotIn []*string `json:"notIn,omitempty" tf:"not_in,omitempty"` } diff --git a/apis/authorization/v1beta1/zz_resourcepolicyexemption_types.go b/apis/authorization/v1beta1/zz_resourcepolicyexemption_types.go index 87e578df7..d02298eb2 100755 --- a/apis/authorization/v1beta1/zz_resourcepolicyexemption_types.go +++ b/apis/authorization/v1beta1/zz_resourcepolicyexemption_types.go @@ -73,21 +73,27 @@ type ResourcePolicyExemptionObservation struct { type ResourcePolicyExemptionParameters struct { // A description to use for this Policy Exemption. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // A friendly display name to use for this Policy Exemption. + // +kubebuilder:validation:Optional DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` // The category of this policy exemption. Possible values are Waiver and Mitigated. + // +kubebuilder:validation:Optional ExemptionCategory *string `json:"exemptionCategory,omitempty" tf:"exemption_category,omitempty"` // The expiration date and time in UTC ISO 8601 format of this policy exemption. + // +kubebuilder:validation:Optional ExpiresOn *string `json:"expiresOn,omitempty" tf:"expires_on,omitempty"` // The metadata for this policy exemption. This is a JSON string representing additional metadata that should be stored with the policy exemption. + // +kubebuilder:validation:Optional Metadata *string `json:"metadata,omitempty" tf:"metadata,omitempty"` // The name of the Policy Exemption. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID of the Policy Assignment to be exempted at the specified Scope. Changing this forces a new resource to be created. @@ -105,6 +111,7 @@ type ResourcePolicyExemptionParameters struct { PolicyAssignmentIDSelector *v1.Selector `json:"policyAssignmentIdSelector,omitempty" tf:"-"` // The policy definition reference ID list when the associated policy assignment is an assignment of a policy set definition. + // +kubebuilder:validation:Optional PolicyDefinitionReferenceIds []*string `json:"policyDefinitionReferenceIds,omitempty" tf:"policy_definition_reference_ids,omitempty"` // The Resource ID where the Policy Exemption should be applied. Changing this forces a new resource to be created. diff --git a/apis/authorization/v1beta1/zz_roleassignment_types.go b/apis/authorization/v1beta1/zz_roleassignment_types.go index 41ca249f5..2a8e05c30 100755 --- a/apis/authorization/v1beta1/zz_roleassignment_types.go +++ b/apis/authorization/v1beta1/zz_roleassignment_types.go @@ -85,21 +85,27 @@ type RoleAssignmentObservation struct { type RoleAssignmentParameters struct { // The condition that limits the resources that the role can be assigned to. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Condition *string `json:"condition,omitempty" tf:"condition,omitempty"` // The version of the condition. Possible values are 1.0 or 2.0. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ConditionVersion *string `json:"conditionVersion,omitempty" tf:"condition_version,omitempty"` // The delegated Azure Resource Id which contains a Managed Identity. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DelegatedManagedIdentityResourceID *string `json:"delegatedManagedIdentityResourceId,omitempty" tf:"delegated_managed_identity_resource_id,omitempty"` // The description for this Role Assignment. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // A unique UUID/GUID for this Role Assignment - one will be generated if not specified. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID of the Principal (User, Group or Service Principal) to assign the Role Definition to. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PrincipalID *string `json:"principalId,omitempty" tf:"principal_id,omitempty"` // The Scoped-ID of the Role Definition. Changing this forces a new resource to be created. Conflicts with role_definition_name. @@ -117,12 +123,15 @@ type RoleAssignmentParameters struct { RoleDefinitionIDSelector *v1.Selector `json:"roleDefinitionIdSelector,omitempty" tf:"-"` // The name of a built-in Role. Changing this forces a new resource to be created. Conflicts with role_definition_id. + // +kubebuilder:validation:Optional RoleDefinitionName *string `json:"roleDefinitionName,omitempty" tf:"role_definition_name,omitempty"` // The scope at which the Role Assignment applies to, such as /subscriptions/0b1f6471-1bf0-4dda-aec3-111122223333, /subscriptions/0b1f6471-1bf0-4dda-aec3-111122223333/resourceGroups/myGroup, or /subscriptions/0b1f6471-1bf0-4dda-aec3-111122223333/resourceGroups/myGroup/providers/Microsoft.Compute/virtualMachines/myVM, or /providers/Microsoft.Management/managementGroups/myMG. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Scope *string `json:"scope,omitempty" tf:"scope,omitempty"` // If the principal_id is a newly provisioned Service Principal set this value to true to skip the Azure Active Directory check which may fail due to replication lag. This argument is only valid if the principal_id is a Service Principal identity. Defaults to false. + // +kubebuilder:validation:Optional SkipServicePrincipalAADCheck *bool `json:"skipServicePrincipalAadCheck,omitempty" tf:"skip_service_principal_aad_check,omitempty"` } diff --git a/apis/authorization/v1beta1/zz_roledefinition_types.go b/apis/authorization/v1beta1/zz_roledefinition_types.go index 147d2bc52..15c84328b 100755 --- a/apis/authorization/v1beta1/zz_roledefinition_types.go +++ b/apis/authorization/v1beta1/zz_roledefinition_types.go @@ -46,15 +46,19 @@ type PermissionsObservation struct { type PermissionsParameters struct { // One or more Allowed Actions, such as *, Microsoft.Resources/subscriptions/resourceGroups/read. See 'Azure Resource Manager resource provider operations' for details. + // +kubebuilder:validation:Optional Actions []*string `json:"actions,omitempty" tf:"actions,omitempty"` // One or more Allowed Data Actions, such as *, Microsoft.Storage/storageAccounts/blobServices/containers/blobs/read. See 'Azure Resource Manager resource provider operations' for details. + // +kubebuilder:validation:Optional DataActions []*string `json:"dataActions,omitempty" tf:"data_actions,omitempty"` // One or more Disallowed Actions, such as *, Microsoft.Resources/subscriptions/resourceGroups/read. See 'Azure Resource Manager resource provider operations' for details. + // +kubebuilder:validation:Optional NotActions []*string `json:"notActions,omitempty" tf:"not_actions,omitempty"` // One or more Disallowed Data Actions, such as *, Microsoft.Resources/subscriptions/resourceGroups/read. See 'Azure Resource Manager resource provider operations' for details. + // +kubebuilder:validation:Optional NotDataActions []*string `json:"notDataActions,omitempty" tf:"not_data_actions,omitempty"` } @@ -108,21 +112,27 @@ type RoleDefinitionObservation struct { type RoleDefinitionParameters struct { // One or more assignable scopes for this Role Definition, such as /subscriptions/0b1f6471-1bf0-4dda-aec3-111122223333, /subscriptions/0b1f6471-1bf0-4dda-aec3-111122223333/resourceGroups/myGroup, or /subscriptions/0b1f6471-1bf0-4dda-aec3-111122223333/resourceGroups/myGroup/providers/Microsoft.Compute/virtualMachines/myVM. + // +kubebuilder:validation:Optional AssignableScopes []*string `json:"assignableScopes,omitempty" tf:"assignable_scopes,omitempty"` // A description of the Role Definition. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The name of the Role Definition. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A permissions block as defined below. + // +kubebuilder:validation:Optional Permissions []PermissionsParameters `json:"permissions,omitempty" tf:"permissions,omitempty"` // A unique UUID/GUID which identifies this role - one will be generated if not specified. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional RoleDefinitionID *string `json:"roleDefinitionId,omitempty" tf:"role_definition_id,omitempty"` // The scope at which the Role Definition applies to, such as /subscriptions/0b1f6471-1bf0-4dda-aec3-111122223333, /subscriptions/0b1f6471-1bf0-4dda-aec3-111122223333/resourceGroups/myGroup, or /subscriptions/0b1f6471-1bf0-4dda-aec3-111122223333/resourceGroups/myGroup/providers/Microsoft.Compute/virtualMachines/myVM. It is recommended to use the first entry of the assignable_scopes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Scope *string `json:"scope,omitempty" tf:"scope,omitempty"` } diff --git a/apis/authorization/v1beta1/zz_subscriptionpolicyassignment_types.go b/apis/authorization/v1beta1/zz_subscriptionpolicyassignment_types.go index 008942efa..537cfb02f 100755 --- a/apis/authorization/v1beta1/zz_subscriptionpolicyassignment_types.go +++ b/apis/authorization/v1beta1/zz_subscriptionpolicyassignment_types.go @@ -40,9 +40,11 @@ type SubscriptionPolicyAssignmentIdentityObservation struct { type SubscriptionPolicyAssignmentIdentityParameters struct { // A list of User Managed Identity IDs which should be assigned to the Policy Definition. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // The Type of Managed Identity which should be added to this Policy Definition. Possible values are SystemAssigned or UserAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -106,9 +108,11 @@ type SubscriptionPolicyAssignmentNonComplianceMessageObservation struct { type SubscriptionPolicyAssignmentNonComplianceMessageParameters struct { // The non-compliance message text. When assigning policy sets (initiatives), unless policy_definition_reference_id is specified then this message will be the default for all policies. + // +kubebuilder:validation:Optional Content *string `json:"content,omitempty" tf:"content,omitempty"` // When assigning policy sets (initiatives), this is the ID of the policy definition that the non-compliance message applies to. + // +kubebuilder:validation:Optional PolicyDefinitionReferenceID *string `json:"policyDefinitionReferenceId,omitempty" tf:"policy_definition_reference_id,omitempty"` } @@ -178,9 +182,11 @@ type SubscriptionPolicyAssignmentOverridesObservation struct { type SubscriptionPolicyAssignmentOverridesParameters struct { // One or more override_selector as defined below. + // +kubebuilder:validation:Optional Selectors []SubscriptionPolicyAssignmentOverridesSelectorsParameters `json:"selectors,omitempty" tf:"selectors,omitempty"` // Specifies the value to override the policy property. Possible values for policyEffect override listed policy effects. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -208,42 +214,54 @@ type SubscriptionPolicyAssignmentOverridesSelectorsObservation struct { type SubscriptionPolicyAssignmentOverridesSelectorsParameters struct { // The list of allowed values for the specified kind. Cannot be used with not_in. Can contain up to 50 values. + // +kubebuilder:validation:Optional In []*string `json:"in,omitempty" tf:"in,omitempty"` // The list of not-allowed values for the specified kind. Cannot be used with in. Can contain up to 50 values. + // +kubebuilder:validation:Optional NotIn []*string `json:"notIn,omitempty" tf:"not_in,omitempty"` } type SubscriptionPolicyAssignmentParameters struct { // A description which should be used for this Policy Assignment. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The Display Name for this Policy Assignment. + // +kubebuilder:validation:Optional DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` // Specifies if this Policy should be enforced or not? Defaults to true. + // +kubebuilder:validation:Optional Enforce *bool `json:"enforce,omitempty" tf:"enforce,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []SubscriptionPolicyAssignmentIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // The Azure Region where the Policy Assignment should exist. Changing this forces a new Policy Assignment to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // A JSON mapping of any Metadata for this Policy. + // +kubebuilder:validation:Optional Metadata *string `json:"metadata,omitempty" tf:"metadata,omitempty"` // One or more non_compliance_message blocks as defined below. + // +kubebuilder:validation:Optional NonComplianceMessage []SubscriptionPolicyAssignmentNonComplianceMessageParameters `json:"nonComplianceMessage,omitempty" tf:"non_compliance_message,omitempty"` // Specifies a list of Resource Scopes (for example a Subscription, or a Resource Group) within this Management Group which are excluded from this Policy. + // +kubebuilder:validation:Optional NotScopes []*string `json:"notScopes,omitempty" tf:"not_scopes,omitempty"` // One or more overrides blocks as defined below. More detail about overrides and resource_selectors see policy assignment structure + // +kubebuilder:validation:Optional Overrides []SubscriptionPolicyAssignmentOverridesParameters `json:"overrides,omitempty" tf:"overrides,omitempty"` // A JSON mapping of any Parameters for this Policy. + // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The ID of the Policy Definition or Policy Definition Set. Changing this forces a new Policy Assignment to be created. @@ -261,9 +279,11 @@ type SubscriptionPolicyAssignmentParameters struct { PolicyDefinitionIDSelector *v1.Selector `json:"policyDefinitionIdSelector,omitempty" tf:"-"` // One or more resource_selectors blocks as defined below to filter polices by resource properties. + // +kubebuilder:validation:Optional ResourceSelectors []SubscriptionPolicyAssignmentResourceSelectorsParameters `json:"resourceSelectors,omitempty" tf:"resource_selectors,omitempty"` // The ID of the Subscription where this Policy Assignment should be created. Changing this forces a new Policy Assignment to be created. + // +kubebuilder:validation:Optional SubscriptionID *string `json:"subscriptionId,omitempty" tf:"subscription_id,omitempty"` } @@ -288,9 +308,11 @@ type SubscriptionPolicyAssignmentResourceSelectorsObservation struct { type SubscriptionPolicyAssignmentResourceSelectorsParameters struct { // Specifies a name for the resource selector. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // One or more resource_selector block as defined below. + // +kubebuilder:validation:Optional Selectors []SubscriptionPolicyAssignmentResourceSelectorsSelectorsParameters `json:"selectors,omitempty" tf:"selectors,omitempty"` } @@ -321,12 +343,15 @@ type SubscriptionPolicyAssignmentResourceSelectorsSelectorsObservation struct { type SubscriptionPolicyAssignmentResourceSelectorsSelectorsParameters struct { // The list of allowed values for the specified kind. Cannot be used with not_in. Can contain up to 50 values. + // +kubebuilder:validation:Optional In []*string `json:"in,omitempty" tf:"in,omitempty"` // Specifies which characteristic will narrow down the set of evaluated resources. Possible values are resourceLocation, resourceType and resourceWithoutLocation. + // +kubebuilder:validation:Optional Kind *string `json:"kind,omitempty" tf:"kind,omitempty"` // The list of not-allowed values for the specified kind. Cannot be used with in. Can contain up to 50 values. + // +kubebuilder:validation:Optional NotIn []*string `json:"notIn,omitempty" tf:"not_in,omitempty"` } diff --git a/apis/authorization/v1beta1/zz_subscriptionpolicyexemption_types.go b/apis/authorization/v1beta1/zz_subscriptionpolicyexemption_types.go index d3365617a..19daef91b 100755 --- a/apis/authorization/v1beta1/zz_subscriptionpolicyexemption_types.go +++ b/apis/authorization/v1beta1/zz_subscriptionpolicyexemption_types.go @@ -70,18 +70,23 @@ type SubscriptionPolicyExemptionObservation struct { type SubscriptionPolicyExemptionParameters struct { // A description to use for this Policy Exemption. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // A friendly display name to use for this Policy Exemption. + // +kubebuilder:validation:Optional DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` // The category of this policy exemption. Possible values are Waiver and Mitigated. + // +kubebuilder:validation:Optional ExemptionCategory *string `json:"exemptionCategory,omitempty" tf:"exemption_category,omitempty"` // The expiration date and time in UTC ISO 8601 format of this policy exemption. + // +kubebuilder:validation:Optional ExpiresOn *string `json:"expiresOn,omitempty" tf:"expires_on,omitempty"` // The metadata for this policy exemption. This is a JSON string representing additional metadata that should be stored with the policy exemption. + // +kubebuilder:validation:Optional Metadata *string `json:"metadata,omitempty" tf:"metadata,omitempty"` // The ID of the Policy Assignment to be exempted at the specified Scope. Changing this forces a new resource to be created. @@ -99,9 +104,11 @@ type SubscriptionPolicyExemptionParameters struct { PolicyAssignmentIDSelector *v1.Selector `json:"policyAssignmentIdSelector,omitempty" tf:"-"` // The policy definition reference ID list when the associated policy assignment is an assignment of a policy set definition. + // +kubebuilder:validation:Optional PolicyDefinitionReferenceIds []*string `json:"policyDefinitionReferenceIds,omitempty" tf:"policy_definition_reference_ids,omitempty"` // The Subscription ID where the Policy Exemption should be applied. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SubscriptionID *string `json:"subscriptionId,omitempty" tf:"subscription_id,omitempty"` } diff --git a/apis/automation/v1beta1/zz_account_types.go b/apis/automation/v1beta1/zz_account_types.go index c6b724631..af787797a 100755 --- a/apis/automation/v1beta1/zz_account_types.go +++ b/apis/automation/v1beta1/zz_account_types.go @@ -78,18 +78,23 @@ type AccountObservation struct { type AccountParameters struct { // An encryption block as defined below. + // +kubebuilder:validation:Optional Encryption []EncryptionParameters `json:"encryption,omitempty" tf:"encryption,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // Whether requests using non-AAD authentication are blocked. Defaults to true. + // +kubebuilder:validation:Optional LocalAuthenticationEnabled *bool `json:"localAuthenticationEnabled,omitempty" tf:"local_authentication_enabled,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Whether public network access is allowed for the container registry. Defaults to true. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // The name of the resource group in which the Automation Account is created. Changing this forces a new resource to be created. @@ -106,9 +111,11 @@ type AccountParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The SKU of the account. Possible values are Basic and Free. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -133,12 +140,16 @@ type EncryptionObservation struct { } type EncryptionParameters struct { + + // +kubebuilder:validation:Optional KeySource *string `json:"keySource,omitempty" tf:"key_source,omitempty"` // The ID of the Key Vault Key which should be used to Encrypt the data in this Automation Account. + // +kubebuilder:validation:Optional KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"` // The User Assigned Managed Identity ID to be used for accessing the Customer Managed Key for encryption. + // +kubebuilder:validation:Optional UserAssignedIdentityID *string `json:"userAssignedIdentityId,omitempty" tf:"user_assigned_identity_id,omitempty"` } @@ -169,9 +180,11 @@ type IdentityObservation struct { type IdentityParameters struct { // The ID of the User Assigned Identity which should be assigned to this Automation Account. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // The type of identity used for this Automation Account. Possible values are SystemAssigned, UserAssigned and SystemAssigned, UserAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/automation/v1beta1/zz_connection_types.go b/apis/automation/v1beta1/zz_connection_types.go index 61a1f6c0f..f2bf34840 100755 --- a/apis/automation/v1beta1/zz_connection_types.go +++ b/apis/automation/v1beta1/zz_connection_types.go @@ -62,6 +62,7 @@ type ConnectionParameters struct { AutomationAccountNameSelector *v1.Selector `json:"automationAccountNameSelector,omitempty" tf:"-"` // A description for this Connection. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The name of the resource group in which the Connection is created. Changing this forces a new resource to be created. @@ -78,9 +79,11 @@ type ConnectionParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The type of the Connection - can be either builtin type such as Azure, AzureClassicCertificate, and AzureServicePrincipal, or a user defined types. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // A mapping of key value pairs passed to the connection. Different type needs different parameters in the values. Builtin types have required field values as below: + // +kubebuilder:validation:Optional Values map[string]*string `json:"values,omitempty" tf:"values,omitempty"` } diff --git a/apis/automation/v1beta1/zz_connectionclassiccertificate_types.go b/apis/automation/v1beta1/zz_connectionclassiccertificate_types.go index d68807c76..fdc6a40bf 100755 --- a/apis/automation/v1beta1/zz_connectionclassiccertificate_types.go +++ b/apis/automation/v1beta1/zz_connectionclassiccertificate_types.go @@ -68,9 +68,11 @@ type ConnectionClassicCertificateParameters struct { AutomationAccountNameSelector *v1.Selector `json:"automationAccountNameSelector,omitempty" tf:"-"` // The name of the certificate asset. + // +kubebuilder:validation:Optional CertificateAssetName *string `json:"certificateAssetName,omitempty" tf:"certificate_asset_name,omitempty"` // A description for this Connection. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The name of the resource group in which the Connection is created. Changing this forces a new resource to be created. @@ -87,9 +89,11 @@ type ConnectionClassicCertificateParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The id of subscription. + // +kubebuilder:validation:Optional SubscriptionID *string `json:"subscriptionId,omitempty" tf:"subscription_id,omitempty"` // The name of subscription. + // +kubebuilder:validation:Optional SubscriptionName *string `json:"subscriptionName,omitempty" tf:"subscription_name,omitempty"` } diff --git a/apis/automation/v1beta1/zz_connectiontype_types.go b/apis/automation/v1beta1/zz_connectiontype_types.go index 265629db0..47a3affc4 100755 --- a/apis/automation/v1beta1/zz_connectiontype_types.go +++ b/apis/automation/v1beta1/zz_connectiontype_types.go @@ -62,12 +62,15 @@ type ConnectionTypeParameters struct { AutomationAccountNameSelector *v1.Selector `json:"automationAccountNameSelector,omitempty" tf:"-"` // One or more field blocks as defined below. Changing this forces a new Automation to be created. + // +kubebuilder:validation:Optional Field []FieldParameters `json:"field,omitempty" tf:"field,omitempty"` // Whether the connection type is global. Changing this forces a new Automation to be created. + // +kubebuilder:validation:Optional IsGlobal *bool `json:"isGlobal,omitempty" tf:"is_global,omitempty"` // The name which should be used for this Automation Connection Type. Changing this forces a new Automation to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The name of the Resource Group where the Automation should exist. Changing this forces a new Automation to be created. @@ -117,15 +120,19 @@ type FieldObservation struct { type FieldParameters struct { // Whether to set the isEncrypted flag of the connection field definition. + // +kubebuilder:validation:Optional IsEncrypted *bool `json:"isEncrypted,omitempty" tf:"is_encrypted,omitempty"` // Whether to set the isOptional flag of the connection field definition. + // +kubebuilder:validation:Optional IsOptional *bool `json:"isOptional,omitempty" tf:"is_optional,omitempty"` // The name which should be used for this connection field definition. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The type of the connection field definition. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/automation/v1beta1/zz_credential_types.go b/apis/automation/v1beta1/zz_credential_types.go index 21fbab283..2075cf0d2 100755 --- a/apis/automation/v1beta1/zz_credential_types.go +++ b/apis/automation/v1beta1/zz_credential_types.go @@ -56,6 +56,7 @@ type CredentialParameters struct { AutomationAccountNameSelector *v1.Selector `json:"automationAccountNameSelector,omitempty" tf:"-"` // The description associated with this Automation Credential. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The password associated with this Automation Credential. @@ -76,6 +77,7 @@ type CredentialParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The username associated with this Automation Credential. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } diff --git a/apis/automation/v1beta1/zz_hybridrunbookworkergroup_types.go b/apis/automation/v1beta1/zz_hybridrunbookworkergroup_types.go index cd0c0e3a4..0f0d4cfb5 100755 --- a/apis/automation/v1beta1/zz_hybridrunbookworkergroup_types.go +++ b/apis/automation/v1beta1/zz_hybridrunbookworkergroup_types.go @@ -46,12 +46,15 @@ type HybridRunBookWorkerGroupObservation struct { type HybridRunBookWorkerGroupParameters struct { // The name of the Automation Account in which the Runbook Worker Group is created. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional AutomationAccountName *string `json:"automationAccountName,omitempty" tf:"automation_account_name,omitempty"` // The name of resource type azurerm_automation_credential to use for hybrid worker. + // +kubebuilder:validation:Optional CredentialName *string `json:"credentialName,omitempty" tf:"credential_name,omitempty"` // The name which should be used for this Automation Account Runbook Worker Group. 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 where the Automation should exist. Changing this forces a new Automation to be created. diff --git a/apis/automation/v1beta1/zz_module_types.go b/apis/automation/v1beta1/zz_module_types.go index 94d04f7f7..d838fd0b9 100755 --- a/apis/automation/v1beta1/zz_module_types.go +++ b/apis/automation/v1beta1/zz_module_types.go @@ -34,9 +34,11 @@ type HashObservation struct { type HashParameters struct { // Specifies the algorithm used for the hash content. + // +kubebuilder:validation:Optional Algorithm *string `json:"algorithm,omitempty" tf:"algorithm,omitempty"` // The hash value of the content. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -67,9 +69,11 @@ type ModuleLinkObservation struct { type ModuleLinkParameters struct { // A hash block as defined below. + // +kubebuilder:validation:Optional Hash []HashParameters `json:"hash,omitempty" tf:"hash,omitempty"` // The URI of the module content (zip or nupkg). + // +kubebuilder:validation:Optional URI *string `json:"uri,omitempty" tf:"uri,omitempty"` } @@ -104,6 +108,7 @@ type ModuleParameters struct { AutomationAccountNameSelector *v1.Selector `json:"automationAccountNameSelector,omitempty" tf:"-"` // A module_link block as defined below. + // +kubebuilder:validation:Optional ModuleLink []ModuleLinkParameters `json:"moduleLink,omitempty" tf:"module_link,omitempty"` // The name of the resource group in which the Module is created. Changing this forces a new resource to be created. diff --git a/apis/automation/v1beta1/zz_runbook_types.go b/apis/automation/v1beta1/zz_runbook_types.go index 3937d464e..3fa4f3af6 100755 --- a/apis/automation/v1beta1/zz_runbook_types.go +++ b/apis/automation/v1beta1/zz_runbook_types.go @@ -34,9 +34,11 @@ type ContentLinkHashObservation struct { type ContentLinkHashParameters struct { // Specifies the hash algorithm used to hash the content. + // +kubebuilder:validation:Optional Algorithm *string `json:"algorithm,omitempty" tf:"algorithm,omitempty"` // Specifies the expected hash value of the content. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -67,12 +69,15 @@ type ContentLinkObservation struct { type ContentLinkParameters struct { // A hash block as defined below. + // +kubebuilder:validation:Optional Hash []ContentLinkHashParameters `json:"hash,omitempty" tf:"hash,omitempty"` // The URI of the runbook content. + // +kubebuilder:validation:Optional URI *string `json:"uri,omitempty" tf:"uri,omitempty"` // Specifies the version of the content + // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` } @@ -113,15 +118,19 @@ type DraftObservation struct { type DraftParameters struct { // A publish_content_link block as defined above. + // +kubebuilder:validation:Optional ContentLink []ContentLinkParameters `json:"contentLink,omitempty" tf:"content_link,omitempty"` // Whether the draft in edit mode. + // +kubebuilder:validation:Optional EditModeEnabled *bool `json:"editModeEnabled,omitempty" tf:"edit_mode_enabled,omitempty"` // Specifies the output types of the runbook. + // +kubebuilder:validation:Optional OutputTypes []*string `json:"outputTypes,omitempty" tf:"output_types,omitempty"` // A list of parameters block as defined below. + // +kubebuilder:validation:Optional Parameters []ParametersParameters `json:"parameters,omitempty" tf:"parameters,omitempty"` } @@ -156,14 +165,18 @@ type JobScheduleObservation struct { type JobScheduleParameters struct { // The Automation Runbook ID. + // +kubebuilder:validation:Optional JobScheduleID *string `json:"jobScheduleId,omitempty" tf:"job_schedule_id"` // A list of parameters block as defined below. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters"` + // +kubebuilder:validation:Optional RunOn *string `json:"runOn,omitempty" tf:"run_on"` // Specifies the name of the Runbook. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ScheduleName *string `json:"scheduleName,omitempty" tf:"schedule_name"` } @@ -206,18 +219,23 @@ type ParametersObservation struct { type ParametersParameters struct { // Specifies the default value of the parameter. + // +kubebuilder:validation:Optional DefaultValue *string `json:"defaultValue,omitempty" tf:"default_value,omitempty"` // The name of the parameter. + // +kubebuilder:validation:Optional Key *string `json:"key,omitempty" tf:"key,omitempty"` // Whether this parameter is mandatory. + // +kubebuilder:validation:Optional Mandatory *bool `json:"mandatory,omitempty" tf:"mandatory,omitempty"` // Specifies the position of the parameter. + // +kubebuilder:validation:Optional Position *float64 `json:"position,omitempty" tf:"position,omitempty"` // Specifies the type of this parameter. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -242,9 +260,11 @@ type PublishContentLinkHashObservation struct { type PublishContentLinkHashParameters struct { // Specifies the hash algorithm used to hash the content. + // +kubebuilder:validation:Optional Algorithm *string `json:"algorithm,omitempty" tf:"algorithm,omitempty"` // Specifies the expected hash value of the content. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -275,12 +295,15 @@ type PublishContentLinkObservation struct { type PublishContentLinkParameters struct { // A hash block as defined below. + // +kubebuilder:validation:Optional Hash []PublishContentLinkHashParameters `json:"hash,omitempty" tf:"hash,omitempty"` // The URI of the runbook content. + // +kubebuilder:validation:Optional URI *string `json:"uri,omitempty" tf:"uri,omitempty"` // Specifies the version of the content + // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` } @@ -385,32 +408,42 @@ type RunBookParameters struct { AutomationAccountNameSelector *v1.Selector `json:"automationAccountNameSelector,omitempty" tf:"-"` // The desired content of the runbook. + // +kubebuilder:validation:Optional Content *string `json:"content,omitempty" tf:"content,omitempty"` // A description for this credential. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // A draft block as defined below . + // +kubebuilder:validation:Optional Draft []DraftParameters `json:"draft,omitempty" tf:"draft,omitempty"` + // +kubebuilder:validation:Optional JobSchedule []JobScheduleParameters `json:"jobSchedule,omitempty" tf:"job_schedule,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the activity-level tracing options of the runbook, available only for Graphical runbooks. Possible values are 0 for None, 9 for Basic, and 15 for Detailed. Must turn on Verbose logging in order to see the tracing. + // +kubebuilder:validation:Optional LogActivityTraceLevel *float64 `json:"logActivityTraceLevel,omitempty" tf:"log_activity_trace_level,omitempty"` // Progress log option. + // +kubebuilder:validation:Optional LogProgress *bool `json:"logProgress,omitempty" tf:"log_progress,omitempty"` // Verbose log option. + // +kubebuilder:validation:Optional LogVerbose *bool `json:"logVerbose,omitempty" tf:"log_verbose,omitempty"` // Specifies the name of the Runbook. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The published runbook content link. + // +kubebuilder:validation:Optional PublishContentLink []PublishContentLinkParameters `json:"publishContentLink,omitempty" tf:"publish_content_link,omitempty"` // The name of the resource group in which the Runbook is created. Changing this forces a new resource to be created. @@ -427,9 +460,11 @@ type RunBookParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The type of the runbook - can be either Graph, GraphPowerShell, GraphPowerShellWorkflow, PowerShellWorkflow, PowerShell, Python3, Python2 or Script. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional RunBookType *string `json:"runbookType,omitempty" tf:"runbook_type,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/automation/v1beta1/zz_schedule_types.go b/apis/automation/v1beta1/zz_schedule_types.go index 036e24dfe..8ddcf7568 100755 --- a/apis/automation/v1beta1/zz_schedule_types.go +++ b/apis/automation/v1beta1/zz_schedule_types.go @@ -34,9 +34,11 @@ type MonthlyOccurrenceObservation struct { type MonthlyOccurrenceParameters struct { // Day of the occurrence. Must be one of Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday. + // +kubebuilder:validation:Optional Day *string `json:"day,omitempty" tf:"day,omitempty"` // Occurrence of the week within the month. Must be between 1 and 5. -1 for last week within the month. + // +kubebuilder:validation:Optional Occurrence *float64 `json:"occurrence,omitempty" tf:"occurrence,omitempty"` } @@ -125,21 +127,27 @@ type ScheduleParameters struct { AutomationAccountNameSelector *v1.Selector `json:"automationAccountNameSelector,omitempty" tf:"-"` // A description for this Schedule. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The end time of the schedule. + // +kubebuilder:validation:Optional ExpiryTime *string `json:"expiryTime,omitempty" tf:"expiry_time,omitempty"` // The frequency of the schedule. - can be either OneTime, Day, Hour, Week, or Month. + // +kubebuilder:validation:Optional Frequency *string `json:"frequency,omitempty" tf:"frequency,omitempty"` // The number of frequencys between runs. Only valid when frequency is Day, Hour, Week, or Month and defaults to 1. + // +kubebuilder:validation:Optional Interval *float64 `json:"interval,omitempty" tf:"interval,omitempty"` // List of days of the month that the job should execute on. Must be between 1 and 31. -1 for last day of the month. Only valid when frequency is Month. + // +kubebuilder:validation:Optional MonthDays []*float64 `json:"monthDays,omitempty" tf:"month_days,omitempty"` // List of monthly_occurrence blocks as defined below to specifies occurrences of days within a month. Only valid when frequency is Month. The monthly_occurrence block supports fields documented below. + // +kubebuilder:validation:Optional MonthlyOccurrence []MonthlyOccurrenceParameters `json:"monthlyOccurrence,omitempty" tf:"monthly_occurrence,omitempty"` // The name of the resource group in which the Schedule is created. Changing this forces a new resource to be created. @@ -156,12 +164,15 @@ type ScheduleParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Start time of the schedule. Must be at least five minutes in the future. Defaults to seven minutes in the future from the time the resource is created. + // +kubebuilder:validation:Optional StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` // The timezone of the start time. Defaults to Etc/UTC. For possible values see: https://docs.microsoft.com/en-us/rest/api/maps/timezone/gettimezoneenumwindows + // +kubebuilder:validation:Optional Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` // List of days of the week that the job should execute on. Only valid when frequency is Week. Possible values are Monday, Tuesday, Wednesday, Thursday, Friday, Saturday and Sunday. + // +kubebuilder:validation:Optional WeekDays []*string `json:"weekDays,omitempty" tf:"week_days,omitempty"` } diff --git a/apis/automation/v1beta1/zz_variablebool_types.go b/apis/automation/v1beta1/zz_variablebool_types.go index f6fe4b241..b35f84e87 100755 --- a/apis/automation/v1beta1/zz_variablebool_types.go +++ b/apis/automation/v1beta1/zz_variablebool_types.go @@ -62,9 +62,11 @@ type VariableBoolParameters struct { AutomationAccountNameSelector *v1.Selector `json:"automationAccountNameSelector,omitempty" tf:"-"` // The description of the Automation Variable. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // Specifies if the Automation Variable is encrypted. Defaults to false. + // +kubebuilder:validation:Optional Encrypted *bool `json:"encrypted,omitempty" tf:"encrypted,omitempty"` // The name of the resource group in which to create the Automation Variable. Changing this forces a new resource to be created. @@ -81,6 +83,7 @@ type VariableBoolParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The value of the Automation Variable as a boolean. + // +kubebuilder:validation:Optional Value *bool `json:"value,omitempty" tf:"value,omitempty"` } diff --git a/apis/automation/v1beta1/zz_variabledatetime_types.go b/apis/automation/v1beta1/zz_variabledatetime_types.go index b48ec361d..961dbd493 100755 --- a/apis/automation/v1beta1/zz_variabledatetime_types.go +++ b/apis/automation/v1beta1/zz_variabledatetime_types.go @@ -62,9 +62,11 @@ type VariableDateTimeParameters struct { AutomationAccountNameSelector *v1.Selector `json:"automationAccountNameSelector,omitempty" tf:"-"` // The description of the Automation Variable. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // Specifies if the Automation Variable is encrypted. Defaults to false. + // +kubebuilder:validation:Optional Encrypted *bool `json:"encrypted,omitempty" tf:"encrypted,omitempty"` // The name of the resource group in which to create the Automation Variable. Changing this forces a new resource to be created. @@ -81,6 +83,7 @@ type VariableDateTimeParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The value of the Automation Variable in the RFC3339 Section 5.6 Internet Date/Time Format. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } diff --git a/apis/automation/v1beta1/zz_variableint_types.go b/apis/automation/v1beta1/zz_variableint_types.go index 747edafa8..691704f8e 100755 --- a/apis/automation/v1beta1/zz_variableint_types.go +++ b/apis/automation/v1beta1/zz_variableint_types.go @@ -62,9 +62,11 @@ type VariableIntParameters struct { AutomationAccountNameSelector *v1.Selector `json:"automationAccountNameSelector,omitempty" tf:"-"` // The description of the Automation Variable. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // Specifies if the Automation Variable is encrypted. Defaults to false. + // +kubebuilder:validation:Optional Encrypted *bool `json:"encrypted,omitempty" tf:"encrypted,omitempty"` // The name of the resource group in which to create the Automation Variable. Changing this forces a new resource to be created. @@ -81,6 +83,7 @@ type VariableIntParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The value of the Automation Variable as a integer. + // +kubebuilder:validation:Optional Value *float64 `json:"value,omitempty" tf:"value,omitempty"` } diff --git a/apis/automation/v1beta1/zz_variablestring_types.go b/apis/automation/v1beta1/zz_variablestring_types.go index 7010a74df..a1f5e3884 100755 --- a/apis/automation/v1beta1/zz_variablestring_types.go +++ b/apis/automation/v1beta1/zz_variablestring_types.go @@ -62,9 +62,11 @@ type VariableStringParameters struct { AutomationAccountNameSelector *v1.Selector `json:"automationAccountNameSelector,omitempty" tf:"-"` // The description of the Automation Variable. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // Specifies if the Automation Variable is encrypted. Defaults to false. + // +kubebuilder:validation:Optional Encrypted *bool `json:"encrypted,omitempty" tf:"encrypted,omitempty"` // The name of the resource group in which to create the Automation Variable. Changing this forces a new resource to be created. @@ -81,6 +83,7 @@ type VariableStringParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The value of the Automation Variable as a string. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } diff --git a/apis/automation/v1beta1/zz_webhook_types.go b/apis/automation/v1beta1/zz_webhook_types.go index 48e3a68c4..a586db0c4 100755 --- a/apis/automation/v1beta1/zz_webhook_types.go +++ b/apis/automation/v1beta1/zz_webhook_types.go @@ -77,15 +77,19 @@ type WebhookParameters struct { AutomationAccountNameSelector *v1.Selector `json:"automationAccountNameSelector,omitempty" tf:"-"` // Controls if Webhook is enabled. Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Timestamp when the webhook expires. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ExpiryTime *string `json:"expiryTime,omitempty" tf:"expiry_time,omitempty"` // Specifies the name of the Webhook. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Map of input parameters passed to runbook. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The name of the resource group in which the Webhook is created. Changing this forces a new resource to be created. @@ -116,6 +120,7 @@ type WebhookParameters struct { RunBookNameSelector *v1.Selector `json:"runbookNameSelector,omitempty" tf:"-"` // Name of the hybrid worker group the Webhook job will run on. + // +kubebuilder:validation:Optional RunOnWorkerGroup *string `json:"runOnWorkerGroup,omitempty" tf:"run_on_worker_group,omitempty"` // URI to initiate the webhook. Can be generated using Generate URI API. By default, new URI is generated on each new resource creation. Changing this forces a new resource to be created. diff --git a/apis/azure/v1beta1/zz_resourcegroup_types.go b/apis/azure/v1beta1/zz_resourcegroup_types.go index ac37338dc..410ded9a1 100755 --- a/apis/azure/v1beta1/zz_resourcegroup_types.go +++ b/apis/azure/v1beta1/zz_resourcegroup_types.go @@ -37,9 +37,11 @@ type ResourceGroupObservation struct { type ResourceGroupParameters struct { // The Azure Region where the Resource Group should exist. Changing this forces a new Resource Group to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // A mapping of tags which should be assigned to the Resource Group. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/azure/v1beta1/zz_resourceproviderregistration_types.go b/apis/azure/v1beta1/zz_resourceproviderregistration_types.go index 396c95c54..5012a369b 100755 --- a/apis/azure/v1beta1/zz_resourceproviderregistration_types.go +++ b/apis/azure/v1beta1/zz_resourceproviderregistration_types.go @@ -34,9 +34,11 @@ type FeatureObservation struct { type FeatureParameters struct { // Specifies the name of the feature to register. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Should this feature be Registered or Unregistered? + // +kubebuilder:validation:Optional Registered *bool `json:"registered,omitempty" tf:"registered,omitempty"` } @@ -63,9 +65,11 @@ type ResourceProviderRegistrationObservation struct { type ResourceProviderRegistrationParameters struct { // A list of feature blocks as defined below. + // +kubebuilder:validation:Optional Feature []FeatureParameters `json:"feature,omitempty" tf:"feature,omitempty"` // The namespace of the Resource Provider which should be registered. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } diff --git a/apis/azure/v1beta1/zz_subscription_types.go b/apis/azure/v1beta1/zz_subscription_types.go index 310190d92..257badd74 100755 --- a/apis/azure/v1beta1/zz_subscription_types.go +++ b/apis/azure/v1beta1/zz_subscription_types.go @@ -65,21 +65,26 @@ type SubscriptionObservation struct { type SubscriptionParameters struct { // The Azure Billing Scope ID. Can be a Microsoft Customer Account Billing Scope ID, a Microsoft Partner Account Billing Scope ID or an Enrollment Billing Scope ID. + // +kubebuilder:validation:Optional BillingScopeID *string `json:"billingScopeId,omitempty" tf:"billing_scope_id,omitempty"` // The ID of the Subscription. Changing this forces a new Subscription to be created. // The GUID of the Subscription. + // +kubebuilder:validation:Optional SubscriptionID *string `json:"subscriptionId,omitempty" tf:"subscription_id,omitempty"` // The Name of the Subscription. This is the Display Name in the portal. // The Display Name for the Subscription. + // +kubebuilder:validation:Optional SubscriptionName *string `json:"subscriptionName,omitempty" tf:"subscription_name,omitempty"` // A mapping of tags to assign to the Subscription. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The workload type of the Subscription. Possible values are Production (default) and DevTest. Changing this forces a new Subscription to be created. // The workload type for the Subscription. Possible values are `Production` (default) and `DevTest`. + // +kubebuilder:validation:Optional Workload *string `json:"workload,omitempty" tf:"workload,omitempty"` } diff --git a/apis/azurestackhci/v1beta1/zz_cluster_types.go b/apis/azurestackhci/v1beta1/zz_cluster_types.go index c56d730dc..50ede49dc 100755 --- a/apis/azurestackhci/v1beta1/zz_cluster_types.go +++ b/apis/azurestackhci/v1beta1/zz_cluster_types.go @@ -52,9 +52,11 @@ type ClusterObservation struct { type ClusterParameters struct { // The Client ID of the Azure Active Directory which is used by the Azure Stack HCI Cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The Azure Region where the Azure Stack HCI Cluster 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 where the Azure Stack HCI Cluster should exist. Changing this forces a new resource to be created. @@ -71,9 +73,11 @@ type ClusterParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the Azure Stack HCI Cluster. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The Tenant ID of the Azure Active Directory which is used by the Azure Stack HCI Cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` } diff --git a/apis/botservice/v1beta1/zz_botchannelalexa_types.go b/apis/botservice/v1beta1/zz_botchannelalexa_types.go index 163532f43..50560c750 100755 --- a/apis/botservice/v1beta1/zz_botchannelalexa_types.go +++ b/apis/botservice/v1beta1/zz_botchannelalexa_types.go @@ -57,6 +57,7 @@ type BotChannelAlexaParameters struct { BotNameSelector *v1.Selector `json:"botNameSelector,omitempty" tf:"-"` // The supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the resource group where the Alexa Channel should be created. Changing this forces a new resource to be created. @@ -73,6 +74,7 @@ type BotChannelAlexaParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The Alexa skill ID for the Alexa Channel. + // +kubebuilder:validation:Optional SkillID *string `json:"skillId,omitempty" tf:"skill_id,omitempty"` } diff --git a/apis/botservice/v1beta1/zz_botchanneldirectline_types.go b/apis/botservice/v1beta1/zz_botchanneldirectline_types.go index 8379d9a3b..70c9bc767 100755 --- a/apis/botservice/v1beta1/zz_botchanneldirectline_types.go +++ b/apis/botservice/v1beta1/zz_botchanneldirectline_types.go @@ -57,6 +57,7 @@ type BotChannelDirectLineParameters struct { BotNameSelector *v1.Selector `json:"botNameSelector,omitempty" tf:"-"` // The supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the resource group in which to create the Bot Channel. Changing this forces a new resource to be created. @@ -73,6 +74,7 @@ type BotChannelDirectLineParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A site represents a client application that you want to connect to your bot. Multiple site blocks may be defined as below + // +kubebuilder:validation:Optional Site []SiteParameters `json:"site,omitempty" tf:"site,omitempty"` } @@ -124,21 +126,27 @@ type SiteObservation struct { type SiteParameters struct { // Enables/Disables this site. Enabled by default Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Enables additional security measures for this site, see Enhanced Directline Authentication Features. Disabled by default. + // +kubebuilder:validation:Optional EnhancedAuthenticationEnabled *bool `json:"enhancedAuthenticationEnabled,omitempty" tf:"enhanced_authentication_enabled,omitempty"` // The name of the site + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // This field is required when is_secure_site_enabled is enabled. Determines which origins can establish a Directline conversation for this site. + // +kubebuilder:validation:Optional TrustedOrigins []*string `json:"trustedOrigins,omitempty" tf:"trusted_origins,omitempty"` // Enables v1 of the Directline protocol for this site. Enabled by default Defaults to true. + // +kubebuilder:validation:Optional V1Allowed *bool `json:"v1Allowed,omitempty" tf:"v1_allowed,omitempty"` // Enables v3 of the Directline protocol for this site. Enabled by default Defaults to true. + // +kubebuilder:validation:Optional V3Allowed *bool `json:"v3Allowed,omitempty" tf:"v3_allowed,omitempty"` } diff --git a/apis/botservice/v1beta1/zz_botchannelline_types.go b/apis/botservice/v1beta1/zz_botchannelline_types.go index 1e48a91d6..11e646801 100755 --- a/apis/botservice/v1beta1/zz_botchannelline_types.go +++ b/apis/botservice/v1beta1/zz_botchannelline_types.go @@ -57,9 +57,11 @@ type BotChannelLineParameters struct { BotNameSelector *v1.Selector `json:"botNameSelector,omitempty" tf:"-"` // One or more line_channel blocks as defined below. + // +kubebuilder:validation:Optional LineChannel []LineChannelParameters `json:"lineChannel,omitempty" tf:"line_channel,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the resource group where the Line Channel should be created. Changing this forces a new resource to be created. diff --git a/apis/botservice/v1beta1/zz_botchannelmsteams_types.go b/apis/botservice/v1beta1/zz_botchannelmsteams_types.go index 6ffbdb1d9..691ce2c53 100755 --- a/apis/botservice/v1beta1/zz_botchannelmsteams_types.go +++ b/apis/botservice/v1beta1/zz_botchannelmsteams_types.go @@ -63,12 +63,15 @@ type BotChannelMSTeamsParameters struct { BotNameSelector *v1.Selector `json:"botNameSelector,omitempty" tf:"-"` // Specifies the webhook for Microsoft Teams channel calls. + // +kubebuilder:validation:Optional CallingWebHook *string `json:"callingWebHook,omitempty" tf:"calling_web_hook,omitempty"` // Specifies whether to enable Microsoft Teams channel calls. This defaults to false. + // +kubebuilder:validation:Optional EnableCalling *bool `json:"enableCalling,omitempty" tf:"enable_calling,omitempty"` // The supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the resource group in which to create the Bot Channel. Changing this forces a new resource to be created. diff --git a/apis/botservice/v1beta1/zz_botchannelslack_types.go b/apis/botservice/v1beta1/zz_botchannelslack_types.go index 5e9482bba..f91db33e7 100755 --- a/apis/botservice/v1beta1/zz_botchannelslack_types.go +++ b/apis/botservice/v1beta1/zz_botchannelslack_types.go @@ -63,6 +63,7 @@ type BotChannelSlackParameters struct { BotNameSelector *v1.Selector `json:"botNameSelector,omitempty" tf:"-"` // The Client ID that will be used to authenticate with Slack. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The Client Secret that will be used to authenticate with Slack. @@ -70,9 +71,11 @@ type BotChannelSlackParameters struct { ClientSecretSecretRef v1.SecretKeySelector `json:"clientSecretSecretRef" tf:"-"` // The Slack Landing Page URL. + // +kubebuilder:validation:Optional LandingPageURL *string `json:"landingPageUrl,omitempty" tf:"landing_page_url,omitempty"` // The supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the resource group in which to create the Bot Channel. Changing this forces a new resource to be created. diff --git a/apis/botservice/v1beta1/zz_botchannelsms_types.go b/apis/botservice/v1beta1/zz_botchannelsms_types.go index b2e1fcfd6..c853aa4e4 100755 --- a/apis/botservice/v1beta1/zz_botchannelsms_types.go +++ b/apis/botservice/v1beta1/zz_botchannelsms_types.go @@ -63,9 +63,11 @@ type BotChannelSMSParameters struct { BotNameSelector *v1.Selector `json:"botNameSelector,omitempty" tf:"-"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The phone number for the SMS Channel. + // +kubebuilder:validation:Optional PhoneNumber *string `json:"phoneNumber,omitempty" tf:"phone_number,omitempty"` // The name of the resource group where the SMS Channel should be created. Changing this forces a new resource to be created. @@ -82,6 +84,7 @@ type BotChannelSMSParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The account security identifier (SID) for the SMS Channel. + // +kubebuilder:validation:Optional SMSChannelAccountSecurityID *string `json:"smsChannelAccountSecurityId,omitempty" tf:"sms_channel_account_security_id,omitempty"` // The authorization token for the SMS Channel. diff --git a/apis/botservice/v1beta1/zz_botchannelsregistration_types.go b/apis/botservice/v1beta1/zz_botchannelsregistration_types.go index 7577b2f4d..6bde7d4dc 100755 --- a/apis/botservice/v1beta1/zz_botchannelsregistration_types.go +++ b/apis/botservice/v1beta1/zz_botchannelsregistration_types.go @@ -118,9 +118,11 @@ type BotChannelsRegistrationObservation struct { type BotChannelsRegistrationParameters struct { // The CMK Key Vault Key URL to encrypt the Bot Channels Registration with the Customer Managed Encryption Key. + // +kubebuilder:validation:Optional CmkKeyVaultURL *string `json:"cmkKeyVaultUrl,omitempty" tf:"cmk_key_vault_url,omitempty"` // The description of the Bot Channels Registration. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The Application Insights API Key to associate with the Bot Channels Registration. @@ -128,33 +130,43 @@ type BotChannelsRegistrationParameters struct { DeveloperAppInsightsAPIKeySecretRef *v1.SecretKeySelector `json:"developerAppInsightsApiKeySecretRef,omitempty" tf:"-"` // The Application Insights Application ID to associate with the Bot Channels Registration. + // +kubebuilder:validation:Optional DeveloperAppInsightsApplicationID *string `json:"developerAppInsightsApplicationId,omitempty" tf:"developer_app_insights_application_id,omitempty"` // The Application Insights Key to associate with the Bot Channels Registration. + // +kubebuilder:validation:Optional DeveloperAppInsightsKey *string `json:"developerAppInsightsKey,omitempty" tf:"developer_app_insights_key,omitempty"` // The name of the Bot Channels Registration will be displayed as. This defaults to name if not specified. + // +kubebuilder:validation:Optional DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` // The Bot Channels Registration endpoint. + // +kubebuilder:validation:Optional Endpoint *string `json:"endpoint,omitempty" tf:"endpoint,omitempty"` // The icon URL to visually identify the Bot Channels Registration. + // +kubebuilder:validation:Optional IconURL *string `json:"iconUrl,omitempty" tf:"icon_url,omitempty"` // Is the Bot Channels Registration in an isolated network? + // +kubebuilder:validation:Optional IsolatedNetworkEnabled *bool `json:"isolatedNetworkEnabled,omitempty" tf:"isolated_network_enabled,omitempty"` // The supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The Microsoft Application ID for the Bot Channels Registration. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional MicrosoftAppID *string `json:"microsoftAppId,omitempty" tf:"microsoft_app_id,omitempty"` // Specifies the name of the Bot Channels Registration. Changing this forces a new resource to be created. Must be globally unique. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Is the Bot Channels Registration in an isolated network? + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // The name of the resource group in which to create the Bot Channels Registration. Changing this forces a new resource to be created. @@ -171,12 +183,15 @@ type BotChannelsRegistrationParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The SKU of the Bot Channels Registration. Valid values include F0 or S1. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // Is the streaming endpoint enabled for the Bot Channels Registration. Defaults to false. + // +kubebuilder:validation:Optional StreamingEndpointEnabled *bool `json:"streamingEndpointEnabled,omitempty" tf:"streaming_endpoint_enabled,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/botservice/v1beta1/zz_botchannelwebchat_types.go b/apis/botservice/v1beta1/zz_botchannelwebchat_types.go index 080a7d3e8..4b258fa49 100755 --- a/apis/botservice/v1beta1/zz_botchannelwebchat_types.go +++ b/apis/botservice/v1beta1/zz_botchannelwebchat_types.go @@ -57,6 +57,7 @@ type BotChannelWebChatParameters struct { BotNameSelector *v1.Selector `json:"botNameSelector,omitempty" tf:"-"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the resource group where the Web Chat Channel should be created. Changing this forces a new resource to be created. @@ -73,6 +74,7 @@ type BotChannelWebChatParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A list of Web Chat Site names. + // +kubebuilder:validation:Optional SiteNames []*string `json:"siteNames,omitempty" tf:"site_names,omitempty"` } diff --git a/apis/botservice/v1beta1/zz_botconnection_types.go b/apis/botservice/v1beta1/zz_botconnection_types.go index fbdb742d7..57f11b57f 100755 --- a/apis/botservice/v1beta1/zz_botconnection_types.go +++ b/apis/botservice/v1beta1/zz_botconnection_types.go @@ -81,6 +81,7 @@ type BotConnectionParameters struct { BotNameSelector *v1.Selector `json:"botNameSelector,omitempty" tf:"-"` // The Client ID that will be used to authenticate with the service provider. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The Client Secret that will be used to authenticate with the service provider. @@ -88,9 +89,11 @@ type BotConnectionParameters struct { ClientSecretSecretRef v1.SecretKeySelector `json:"clientSecretSecretRef" tf:"-"` // The supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // A map of additional parameters to apply to the connection. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The name of the resource group in which to create the Bot Connection. Changing this forces a new resource to be created. @@ -107,12 +110,15 @@ type BotConnectionParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The Scopes at which the connection should be applied. + // +kubebuilder:validation:Optional Scopes *string `json:"scopes,omitempty" tf:"scopes,omitempty"` // The name of the service provider that will be associated with this connection. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ServiceProviderName *string `json:"serviceProviderName,omitempty" tf:"service_provider_name,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/botservice/v1beta1/zz_botwebapp_types.go b/apis/botservice/v1beta1/zz_botwebapp_types.go index 878c28737..7947fb60d 100755 --- a/apis/botservice/v1beta1/zz_botwebapp_types.go +++ b/apis/botservice/v1beta1/zz_botwebapp_types.go @@ -86,21 +86,27 @@ type BotWebAppParameters struct { DeveloperAppInsightsAPIKeySecretRef *v1.SecretKeySelector `json:"developerAppInsightsApiKeySecretRef,omitempty" tf:"-"` // The Application Insights Application ID to associate with the Web App Bot. + // +kubebuilder:validation:Optional DeveloperAppInsightsApplicationID *string `json:"developerAppInsightsApplicationId,omitempty" tf:"developer_app_insights_application_id,omitempty"` // The Application Insights Key to associate with the Web App Bot. + // +kubebuilder:validation:Optional DeveloperAppInsightsKey *string `json:"developerAppInsightsKey,omitempty" tf:"developer_app_insights_key,omitempty"` // The name of the Web App Bot will be displayed as. This defaults to name if not specified. + // +kubebuilder:validation:Optional DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` // The Web App Bot endpoint. + // +kubebuilder:validation:Optional Endpoint *string `json:"endpoint,omitempty" tf:"endpoint,omitempty"` // The supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // A list of LUIS App IDs to associate with the Web App Bot. + // +kubebuilder:validation:Optional LuisAppIds []*string `json:"luisAppIds,omitempty" tf:"luis_app_ids,omitempty"` // The LUIS key to associate with the Web App Bot. @@ -108,6 +114,7 @@ type BotWebAppParameters struct { LuisKeySecretRef *v1.SecretKeySelector `json:"luisKeySecretRef,omitempty" tf:"-"` // The Microsoft Application ID for the Web App Bot. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional MicrosoftAppID *string `json:"microsoftAppId,omitempty" tf:"microsoft_app_id,omitempty"` // The name of the resource group in which to create the Web App Bot. Changing this forces a new resource to be created. @@ -124,9 +131,11 @@ type BotWebAppParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The SKU of the Web App Bot. Valid values include F0 or S1. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/cache/v1beta1/zz_rediscache_types.go b/apis/cache/v1beta1/zz_rediscache_types.go index 530561f79..dd92be320 100755 --- a/apis/cache/v1beta1/zz_rediscache_types.go +++ b/apis/cache/v1beta1/zz_rediscache_types.go @@ -40,9 +40,11 @@ type IdentityObservation struct { type IdentityParameters struct { // A list of User Assigned Managed Identity IDs to be assigned to this Redis Cluster. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Redis Cluster. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -73,12 +75,15 @@ type PatchScheduleObservation struct { type PatchScheduleParameters struct { // the Weekday name - possible values include Monday, Tuesday, Wednesday etc. + // +kubebuilder:validation:Optional DayOfWeek *string `json:"dayOfWeek,omitempty" tf:"day_of_week,omitempty"` // The ISO 8601 timespan which specifies the amount of time the Redis Cache can be updated. Defaults to PT5H. + // +kubebuilder:validation:Optional MaintenanceWindow *string `json:"maintenanceWindow,omitempty" tf:"maintenance_window,omitempty"` // the Start Hour for maintenance in UTC - possible values range from 0 - 23. + // +kubebuilder:validation:Optional StartHourUtc *float64 `json:"startHourUtc,omitempty" tf:"start_hour_utc,omitempty"` } @@ -217,42 +222,55 @@ type RedisCacheObservation struct { type RedisCacheParameters struct { // The size of the Redis cache to deploy. Valid values for a SKU family of C (Basic/Standard) are 0, 1, 2, 3, 4, 5, 6, and for P (Premium) family are 1, 2, 3, 4, 5. + // +kubebuilder:validation:Optional Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` // Enable the non-SSL port (6379) - disabled by default. + // +kubebuilder:validation:Optional EnableNonSSLPort *bool `json:"enableNonSslPort,omitempty" tf:"enable_non_ssl_port,omitempty"` // The SKU family/pricing group to use. Valid values are C (for Basic/Standard SKU family) and P (for Premium) + // +kubebuilder:validation:Optional Family *string `json:"family,omitempty" tf:"family,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // The location of the resource group. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The minimum TLS version. Possible values are 1.0, 1.1 and 1.2. Defaults to 1.0. + // +kubebuilder:validation:Optional MinimumTLSVersion *string `json:"minimumTlsVersion,omitempty" tf:"minimum_tls_version,omitempty"` // A list of patch_schedule blocks as defined below. + // +kubebuilder:validation:Optional PatchSchedule []PatchScheduleParameters `json:"patchSchedule,omitempty" tf:"patch_schedule,omitempty"` // The Static IP Address to assign to the Redis Cache when hosted inside the Virtual Network. This argument implies the use of subnet_id. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PrivateStaticIPAddress *string `json:"privateStaticIpAddress,omitempty" tf:"private_static_ip_address,omitempty"` // Whether or not public network access is allowed for this Redis Cache. true means this resource could be accessed by both public and private endpoint. false means only private endpoint access is allowed. Defaults to true. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // A redis_configuration as defined below - with some limitations by SKU - defaults/details are shown below. + // +kubebuilder:validation:Optional RedisConfiguration []RedisConfigurationParameters `json:"redisConfiguration,omitempty" tf:"redis_configuration,omitempty"` // Redis version. Only major version needed. Valid values: 4, 6. + // +kubebuilder:validation:Optional RedisVersion *string `json:"redisVersion,omitempty" tf:"redis_version,omitempty"` // Amount of replicas to create per master for this Redis Cache. + // +kubebuilder:validation:Optional ReplicasPerMaster *float64 `json:"replicasPerMaster,omitempty" tf:"replicas_per_master,omitempty"` // Amount of replicas to create per primary for this Redis Cache. If both replicas_per_primary and replicas_per_master are set, they need to be equal. + // +kubebuilder:validation:Optional ReplicasPerPrimary *float64 `json:"replicasPerPrimary,omitempty" tf:"replicas_per_primary,omitempty"` // The name of the resource group in which to create the Redis instance. Changing this forces a new resource to be created. @@ -269,9 +287,11 @@ type RedisCacheParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Only available when using the Premium SKU The number of Shards to create on the Redis Cluster. + // +kubebuilder:validation:Optional ShardCount *float64 `json:"shardCount,omitempty" tf:"shard_count,omitempty"` // The SKU of Redis to use. Possible values are Basic, Standard and Premium. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // Only available when using the Premium SKU The ID of the Subnet within which the Redis Cache should be deployed. This Subnet must only contain Azure Cache for Redis instances without any other type of resources. Changing this forces a new resource to be created. @@ -289,12 +309,15 @@ type RedisCacheParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // A mapping of tenant settings to assign to the resource. + // +kubebuilder:validation:Optional TenantSettings map[string]*string `json:"tenantSettings,omitempty" tf:"tenant_settings,omitempty"` // Specifies a list of Availability Zones in which this Redis Cache should be located. Changing this forces a new Redis Cache to be created. + // +kubebuilder:validation:Optional Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } @@ -370,6 +393,7 @@ type RedisConfigurationObservation struct { type RedisConfigurationParameters struct { // Enable or disable AOF persistence for this Redis Cache. Defaults to false. + // +kubebuilder:validation:Optional AofBackupEnabled *bool `json:"aofBackupEnabled,omitempty" tf:"aof_backup_enabled,omitempty"` // First Storage Account connection string for AOF persistence. @@ -381,30 +405,39 @@ type RedisConfigurationParameters struct { AofStorageConnectionString1SecretRef *v1.SecretKeySelector `json:"aofStorageConnectionString1SecretRef,omitempty" tf:"-"` // If set to false, the Redis instance will be accessible without authentication. Defaults to true. + // +kubebuilder:validation:Optional EnableAuthentication *bool `json:"enableAuthentication,omitempty" tf:"enable_authentication,omitempty"` // Value in megabytes reserved to accommodate for memory fragmentation. Defaults are shown below. + // +kubebuilder:validation:Optional MaxfragmentationmemoryReserved *float64 `json:"maxfragmentationmemoryReserved,omitempty" tf:"maxfragmentationmemory_reserved,omitempty"` // The max-memory delta for this Redis instance. Defaults are shown below. + // +kubebuilder:validation:Optional MaxmemoryDelta *float64 `json:"maxmemoryDelta,omitempty" tf:"maxmemory_delta,omitempty"` // How Redis will select what to remove when maxmemory is reached. Defaults are shown below. Defaults to volatile-lru. + // +kubebuilder:validation:Optional MaxmemoryPolicy *string `json:"maxmemoryPolicy,omitempty" tf:"maxmemory_policy,omitempty"` // Value in megabytes reserved for non-cache usage e.g. failover. Defaults are shown below. + // +kubebuilder:validation:Optional MaxmemoryReserved *float64 `json:"maxmemoryReserved,omitempty" tf:"maxmemory_reserved,omitempty"` // Keyspace notifications allows clients to subscribe to Pub/Sub channels in order to receive events affecting the Redis data set in some way. Reference + // +kubebuilder:validation:Optional NotifyKeySpaceEvents *string `json:"notifyKeyspaceEvents,omitempty" tf:"notify_keyspace_events,omitempty"` // Is Backup Enabled? Only supported on Premium SKUs. Defaults to false. + // +kubebuilder:validation:Optional RdbBackupEnabled *bool `json:"rdbBackupEnabled,omitempty" tf:"rdb_backup_enabled,omitempty"` // The Backup Frequency in Minutes. Only supported on Premium SKUs. Possible values are: 15, 30, 60, 360, 720 and 1440. + // +kubebuilder:validation:Optional RdbBackupFrequency *float64 `json:"rdbBackupFrequency,omitempty" tf:"rdb_backup_frequency,omitempty"` // The maximum number of snapshots to create as a backup. Only supported for Premium SKUs. + // +kubebuilder:validation:Optional RdbBackupMaxSnapshotCount *float64 `json:"rdbBackupMaxSnapshotCount,omitempty" tf:"rdb_backup_max_snapshot_count,omitempty"` // The Connection String to the Storage Account. Only supported for Premium SKUs. In the format: DefaultEndpointsProtocol=https;BlobEndpoint=${azurerm_storage_account.example.primary_blob_endpoint};AccountName=${azurerm_storage_account.example.name};AccountKey=${azurerm_storage_account.example.primary_access_key}. diff --git a/apis/cache/v1beta1/zz_redisenterprisecluster_types.go b/apis/cache/v1beta1/zz_redisenterprisecluster_types.go index 5597e24b1..9f16b3f88 100755 --- a/apis/cache/v1beta1/zz_redisenterprisecluster_types.go +++ b/apis/cache/v1beta1/zz_redisenterprisecluster_types.go @@ -61,9 +61,11 @@ type RedisEnterpriseClusterObservation struct { type RedisEnterpriseClusterParameters struct { // The Azure Region where the Redis Enterprise Cluster should exist. Changing this forces a new Redis Enterprise Cluster to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The minimum TLS version. Possible values are 1.0, 1.1 and 1.2. Defaults to 1.2. Changing this forces a new Redis Enterprise Cluster to be created. + // +kubebuilder:validation:Optional MinimumTLSVersion *string `json:"minimumTlsVersion,omitempty" tf:"minimum_tls_version,omitempty"` // The name of the Resource Group where the Redis Enterprise Cluster should exist. Changing this forces a new Redis Enterprise Cluster to be created. @@ -80,12 +82,15 @@ type RedisEnterpriseClusterParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The sku_name is comprised of two segments separated by a hyphen (e.g. Enterprise_E10-2). The first segment of the sku_name defines the name of the SKU, possible values are Enterprise_E10, Enterprise_E20", Enterprise_E50, Enterprise_E100, EnterpriseFlash_F300, EnterpriseFlash_F700 or EnterpriseFlash_F1500. The second segment defines the capacity of the sku_name, possible values for Enteprise SKUs are (2, 4, 6, ...). Possible values for EnterpriseFlash SKUs are (3, 9, 15, ...). Changing this forces a new Redis Enterprise Cluster to be created. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // A mapping of tags which should be assigned to the Redis Enterprise Cluster. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies a list of Availability Zones in which this Redis Enterprise Cluster should be located. Changing this forces a new Redis Enterprise Cluster to be created. + // +kubebuilder:validation:Optional Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } diff --git a/apis/cache/v1beta1/zz_redisenterprisedatabase_types.go b/apis/cache/v1beta1/zz_redisenterprisedatabase_types.go index 4fcfd51ae..4fe3318b8 100755 --- a/apis/cache/v1beta1/zz_redisenterprisedatabase_types.go +++ b/apis/cache/v1beta1/zz_redisenterprisedatabase_types.go @@ -36,9 +36,11 @@ type ModuleObservation struct { type ModuleParameters struct { // Configuration options for the module (e.g. ERROR_RATE 0.00 INITIAL_SIZE 400). Changing this forces a new resource to be created. Defaults to "". + // +kubebuilder:validation:Optional Args *string `json:"args,omitempty" tf:"args,omitempty"` // The name which should be used for this module. Possible values are RedisBloom, RedisTimeSeries, RediSearch and RedisJSON. Changing this forces a new Redis Enterprise Database to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -102,6 +104,7 @@ type RedisEnterpriseDatabaseObservation struct { type RedisEnterpriseDatabaseParameters struct { // Specifies whether redis clients can connect using TLS-encrypted or plaintext redis protocols. Default is TLS-encrypted. Possible values are Encrypted and Plaintext. Defaults to Encrypted. Changing this forces a new Redis Enterprise Database to be created. + // +kubebuilder:validation:Optional ClientProtocol *string `json:"clientProtocol,omitempty" tf:"client_protocol,omitempty"` // The resource id of the Redis Enterprise Cluster to deploy this Redis Enterprise Database. Changing this forces a new Redis Enterprise Database to be created. @@ -119,21 +122,27 @@ type RedisEnterpriseDatabaseParameters struct { ClusterIDSelector *v1.Selector `json:"clusterIdSelector,omitempty" tf:"-"` // Clustering policy - default is OSSCluster. Specified at create time. Possible values are EnterpriseCluster and OSSCluster. Defaults to OSSCluster. Changing this forces a new Redis Enterprise Database to be created. + // +kubebuilder:validation:Optional ClusteringPolicy *string `json:"clusteringPolicy,omitempty" tf:"clustering_policy,omitempty"` // Redis eviction policy - default is VolatileLRU. Possible values are AllKeysLFU, AllKeysLRU, AllKeysRandom, VolatileLRU, VolatileLFU, VolatileTTL, VolatileRandom and NoEviction. Changing this forces a new Redis Enterprise Database to be created. + // +kubebuilder:validation:Optional EvictionPolicy *string `json:"evictionPolicy,omitempty" tf:"eviction_policy,omitempty"` // Nickname of the group of linked databases. Changing this force a new Redis Enterprise Geo Database to be created. + // +kubebuilder:validation:Optional LinkedDatabaseGroupNickname *string `json:"linkedDatabaseGroupNickname,omitempty" tf:"linked_database_group_nickname,omitempty"` // A list of database resources to link with this database with a maximum of 5. + // +kubebuilder:validation:Optional LinkedDatabaseID []*string `json:"linkedDatabaseId,omitempty" tf:"linked_database_id,omitempty"` // A module block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Module []ModuleParameters `json:"module,omitempty" tf:"module,omitempty"` // TCP port of the database endpoint. Specified at create time. Defaults to an available port. Changing this forces a new Redis Enterprise Database to be created. Defaults to 10000. + // +kubebuilder:validation:Optional Port *float64 `json:"port,omitempty" tf:"port,omitempty"` // The name of the Resource Group where the Redis Enterprise Database should exist. Changing this forces a new Redis Enterprise Database to be created. diff --git a/apis/cache/v1beta1/zz_redisfirewallrule_types.go b/apis/cache/v1beta1/zz_redisfirewallrule_types.go index d268e2c7f..9f8025ab2 100755 --- a/apis/cache/v1beta1/zz_redisfirewallrule_types.go +++ b/apis/cache/v1beta1/zz_redisfirewallrule_types.go @@ -43,6 +43,7 @@ type RedisFirewallRuleObservation struct { type RedisFirewallRuleParameters struct { // The highest IP address included in the range. + // +kubebuilder:validation:Optional EndIP *string `json:"endIp,omitempty" tf:"end_ip,omitempty"` // The name of the Redis Cache. Changing this forces a new resource to be created. @@ -72,6 +73,7 @@ type RedisFirewallRuleParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The lowest IP address included in the range + // +kubebuilder:validation:Optional StartIP *string `json:"startIp,omitempty" tf:"start_ip,omitempty"` } diff --git a/apis/cache/v1beta1/zz_redislinkedserver_types.go b/apis/cache/v1beta1/zz_redislinkedserver_types.go index e85248957..f42dc25e6 100755 --- a/apis/cache/v1beta1/zz_redislinkedserver_types.go +++ b/apis/cache/v1beta1/zz_redislinkedserver_types.go @@ -63,6 +63,7 @@ type RedisLinkedServerParameters struct { LinkedRedisCacheIDSelector *v1.Selector `json:"linkedRedisCacheIdSelector,omitempty" tf:"-"` // The location of the linked Redis cache. Changing this forces a new Redis to be created. + // +kubebuilder:validation:Optional LinkedRedisCacheLocation *string `json:"linkedRedisCacheLocation,omitempty" tf:"linked_redis_cache_location,omitempty"` // The name of the Resource Group where the Redis caches exists. Changing this forces a new Redis to be created. @@ -79,6 +80,7 @@ type RedisLinkedServerParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The role of the linked Redis cache (eg "Secondary"). Changing this forces a new Redis to be created. Possible values are Primary and Secondary. + // +kubebuilder:validation:Optional ServerRole *string `json:"serverRole,omitempty" tf:"server_role,omitempty"` // The name of Redis cache to link with. Changing this forces a new Redis to be created. (eg The primary role) diff --git a/apis/cdn/v1beta1/zz_endpoint_types.go b/apis/cdn/v1beta1/zz_endpoint_types.go index e3b8ba853..d2b9312c4 100755 --- a/apis/cdn/v1beta1/zz_endpoint_types.go +++ b/apis/cdn/v1beta1/zz_endpoint_types.go @@ -34,9 +34,11 @@ type CacheExpirationActionObservation struct { type CacheExpirationActionParameters struct { // The behavior of the cache key for query strings. Valid values are Exclude, ExcludeAll, Include and IncludeAll. + // +kubebuilder:validation:Optional Behavior *string `json:"behavior,omitempty" tf:"behavior,omitempty"` // Duration of the cache. Only allowed when behavior is set to Override or SetIfMissing. Format: [d.]hh:mm:ss + // +kubebuilder:validation:Optional Duration *string `json:"duration,omitempty" tf:"duration,omitempty"` } @@ -61,9 +63,11 @@ type CacheKeyQueryStringActionObservation struct { type CacheKeyQueryStringActionParameters struct { // The behavior of the cache key for query strings. Valid values are Exclude, ExcludeAll, Include and IncludeAll. + // +kubebuilder:validation:Optional Behavior *string `json:"behavior,omitempty" tf:"behavior,omitempty"` // Comma separated list of parameter values. + // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` } @@ -106,18 +110,23 @@ type CookiesConditionObservation struct { type CookiesConditionParameters struct { // List of string values. This is required if operator is not Any. + // +kubebuilder:validation:Optional MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // Defaults to false. + // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Header name. + // +kubebuilder:validation:Optional Selector *string `json:"selector,omitempty" tf:"selector,omitempty"` // A list of transforms. Valid values are Lowercase and Uppercase. + // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } @@ -262,69 +271,91 @@ type DeliveryRuleObservation struct { type DeliveryRuleParameters struct { // A cache_expiration_action block as defined above. + // +kubebuilder:validation:Optional CacheExpirationAction []CacheExpirationActionParameters `json:"cacheExpirationAction,omitempty" tf:"cache_expiration_action,omitempty"` // A cache_key_query_string_action block as defined above. + // +kubebuilder:validation:Optional CacheKeyQueryStringAction []CacheKeyQueryStringActionParameters `json:"cacheKeyQueryStringAction,omitempty" tf:"cache_key_query_string_action,omitempty"` // A cookies_condition block as defined above. + // +kubebuilder:validation:Optional CookiesCondition []CookiesConditionParameters `json:"cookiesCondition,omitempty" tf:"cookies_condition,omitempty"` // A device_condition block as defined below. + // +kubebuilder:validation:Optional DeviceCondition []DeviceConditionParameters `json:"deviceCondition,omitempty" tf:"device_condition,omitempty"` // A http_version_condition block as defined below. + // +kubebuilder:validation:Optional HTTPVersionCondition []HTTPVersionConditionParameters `json:"httpVersionCondition,omitempty" tf:"http_version_condition,omitempty"` // A modify_request_header_action block as defined below. + // +kubebuilder:validation:Optional ModifyRequestHeaderAction []ModifyRequestHeaderActionParameters `json:"modifyRequestHeaderAction,omitempty" tf:"modify_request_header_action,omitempty"` // A modify_response_header_action block as defined below. + // +kubebuilder:validation:Optional ModifyResponseHeaderAction []ModifyResponseHeaderActionParameters `json:"modifyResponseHeaderAction,omitempty" tf:"modify_response_header_action,omitempty"` // The Name which should be used for this Delivery Rule. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The order used for this rule. The order values should be sequential and begin at 1. + // +kubebuilder:validation:Optional Order *float64 `json:"order,omitempty" tf:"order,omitempty"` // A post_arg_condition block as defined below. + // +kubebuilder:validation:Optional PostArgCondition []PostArgConditionParameters `json:"postArgCondition,omitempty" tf:"post_arg_condition,omitempty"` // A query_string_condition block as defined below. + // +kubebuilder:validation:Optional QueryStringCondition []QueryStringConditionParameters `json:"queryStringCondition,omitempty" tf:"query_string_condition,omitempty"` // A remote_address_condition block as defined below. + // +kubebuilder:validation:Optional RemoteAddressCondition []RemoteAddressConditionParameters `json:"remoteAddressCondition,omitempty" tf:"remote_address_condition,omitempty"` // A request_body_condition block as defined below. + // +kubebuilder:validation:Optional RequestBodyCondition []RequestBodyConditionParameters `json:"requestBodyCondition,omitempty" tf:"request_body_condition,omitempty"` // A request_header_condition block as defined below. + // +kubebuilder:validation:Optional RequestHeaderCondition []RequestHeaderConditionParameters `json:"requestHeaderCondition,omitempty" tf:"request_header_condition,omitempty"` // A request_method_condition block as defined below. + // +kubebuilder:validation:Optional RequestMethodCondition []RequestMethodConditionParameters `json:"requestMethodCondition,omitempty" tf:"request_method_condition,omitempty"` // A request_scheme_condition block as defined below. + // +kubebuilder:validation:Optional RequestSchemeCondition []RequestSchemeConditionParameters `json:"requestSchemeCondition,omitempty" tf:"request_scheme_condition,omitempty"` // A request_uri_condition block as defined below. + // +kubebuilder:validation:Optional RequestURICondition []RequestURIConditionParameters `json:"requestUriCondition,omitempty" tf:"request_uri_condition,omitempty"` // A url_file_extension_condition block as defined below. + // +kubebuilder:validation:Optional URLFileExtensionCondition []URLFileExtensionConditionParameters `json:"urlFileExtensionCondition,omitempty" tf:"url_file_extension_condition,omitempty"` // A url_file_name_condition block as defined below. + // +kubebuilder:validation:Optional URLFileNameCondition []URLFileNameConditionParameters `json:"urlFileNameCondition,omitempty" tf:"url_file_name_condition,omitempty"` // A url_path_condition block as defined below. + // +kubebuilder:validation:Optional URLPathCondition []URLPathConditionParameters `json:"urlPathCondition,omitempty" tf:"url_path_condition,omitempty"` // A url_redirect_action block as defined below. + // +kubebuilder:validation:Optional URLRedirectAction []URLRedirectActionParameters `json:"urlRedirectAction,omitempty" tf:"url_redirect_action,omitempty"` // A url_rewrite_action block as defined below. + // +kubebuilder:validation:Optional URLRewriteAction []URLRewriteActionParameters `json:"urlRewriteAction,omitempty" tf:"url_rewrite_action,omitempty"` } @@ -355,12 +386,15 @@ type DeviceConditionObservation struct { type DeviceConditionParameters struct { // List of string values. This is required if operator is not Any. + // +kubebuilder:validation:Optional MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // Defaults to false. + // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` } @@ -475,42 +509,55 @@ type EndpointObservation struct { type EndpointParameters struct { // An array of strings that indicates a content types on which compression will be applied. The value for the elements should be MIME types. + // +kubebuilder:validation:Optional ContentTypesToCompress []*string `json:"contentTypesToCompress,omitempty" tf:"content_types_to_compress,omitempty"` // Rules for the rules engine. An endpoint can contain up until 4 of those rules that consist of conditions and actions. A delivery_rule blocks as defined below. + // +kubebuilder:validation:Optional DeliveryRule []DeliveryRuleParameters `json:"deliveryRule,omitempty" tf:"delivery_rule,omitempty"` // A set of Geo Filters for this CDN Endpoint. Each geo_filter block supports fields documented below. + // +kubebuilder:validation:Optional GeoFilter []GeoFilterParameters `json:"geoFilter,omitempty" tf:"geo_filter,omitempty"` // Actions that are valid for all resources regardless of any conditions. A global_delivery_rule block as defined below. + // +kubebuilder:validation:Optional GlobalDeliveryRule []GlobalDeliveryRuleParameters `json:"globalDeliveryRule,omitempty" tf:"global_delivery_rule,omitempty"` // Indicates whether compression is to be enabled. + // +kubebuilder:validation:Optional IsCompressionEnabled *bool `json:"isCompressionEnabled,omitempty" tf:"is_compression_enabled,omitempty"` // Defaults to true. + // +kubebuilder:validation:Optional IsHTTPAllowed *bool `json:"isHttpAllowed,omitempty" tf:"is_http_allowed,omitempty"` // Defaults to true. + // +kubebuilder:validation:Optional IsHTTPSAllowed *bool `json:"isHttpsAllowed,omitempty" tf:"is_https_allowed,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // What types of optimization should this CDN Endpoint optimize for? Possible values include DynamicSiteAcceleration, GeneralMediaStreaming, GeneralWebDelivery, LargeFileDownload and VideoOnDemandMediaStreaming. + // +kubebuilder:validation:Optional OptimizationType *string `json:"optimizationType,omitempty" tf:"optimization_type,omitempty"` // The set of origins of the CDN endpoint. When multiple origins exist, the first origin will be used as primary and rest will be used as failover options. Each origin block supports fields documented below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Origin []OriginParameters `json:"origin,omitempty" tf:"origin,omitempty"` // The host header CDN provider will send along with content requests to origins. + // +kubebuilder:validation:Optional OriginHostHeader *string `json:"originHostHeader,omitempty" tf:"origin_host_header,omitempty"` // The path used at for origin requests. + // +kubebuilder:validation:Optional OriginPath *string `json:"originPath,omitempty" tf:"origin_path,omitempty"` // the path to a file hosted on the origin which helps accelerate delivery of the dynamic content and calculate the most optimal routes for the CDN. This is relative to the origin_path. + // +kubebuilder:validation:Optional ProbePath *string `json:"probePath,omitempty" tf:"probe_path,omitempty"` // The CDN Profile to which to attach the CDN Endpoint. Changing this forces a new resource to be created. @@ -527,6 +574,7 @@ type EndpointParameters struct { ProfileNameSelector *v1.Selector `json:"profileNameSelector,omitempty" tf:"-"` // Sets query string caching behavior. Allowed values are IgnoreQueryString, BypassCaching and UseQueryString. NotSet value can be used for Premium Verizon CDN profile. Defaults to IgnoreQueryString. + // +kubebuilder:validation:Optional QuerystringCachingBehaviour *string `json:"querystringCachingBehaviour,omitempty" tf:"querystring_caching_behaviour,omitempty"` // The name of the resource group in which to create the CDN Endpoint. Changing this forces a new resource to be created. @@ -543,6 +591,7 @@ type EndpointParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -573,12 +622,15 @@ type GeoFilterObservation struct { type GeoFilterParameters struct { // The Action of the Geo Filter. Possible values include Allow and Block. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // A List of two letter country codes (e.g. US, GB) to be associated with this Geo Filter. + // +kubebuilder:validation:Optional CountryCodes []*string `json:"countryCodes,omitempty" tf:"country_codes,omitempty"` // The relative path applicable to geo filter. + // +kubebuilder:validation:Optional RelativePath *string `json:"relativePath,omitempty" tf:"relative_path,omitempty"` } @@ -603,9 +655,11 @@ type GlobalDeliveryRuleCacheExpirationActionObservation struct { type GlobalDeliveryRuleCacheExpirationActionParameters struct { // The behavior of the cache key for query strings. Valid values are Exclude, ExcludeAll, Include and IncludeAll. + // +kubebuilder:validation:Optional Behavior *string `json:"behavior,omitempty" tf:"behavior,omitempty"` // Duration of the cache. Only allowed when behavior is set to Override or SetIfMissing. Format: [d.]hh:mm:ss + // +kubebuilder:validation:Optional Duration *string `json:"duration,omitempty" tf:"duration,omitempty"` } @@ -630,9 +684,11 @@ type GlobalDeliveryRuleCacheKeyQueryStringActionObservation struct { type GlobalDeliveryRuleCacheKeyQueryStringActionParameters struct { // The behavior of the cache key for query strings. Valid values are Exclude, ExcludeAll, Include and IncludeAll. + // +kubebuilder:validation:Optional Behavior *string `json:"behavior,omitempty" tf:"behavior,omitempty"` // Comma separated list of parameter values. + // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` } @@ -684,12 +740,15 @@ type GlobalDeliveryRuleModifyRequestHeaderActionObservation struct { type GlobalDeliveryRuleModifyRequestHeaderActionParameters struct { // Action to be executed on a header value. Valid values are Append, Delete and Overwrite. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // The name of the origin. This is an arbitrary value. However, this value needs to be unique under the endpoint. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The value of the header. Only needed when action is set to Append or overwrite. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -720,12 +779,15 @@ type GlobalDeliveryRuleModifyResponseHeaderActionObservation struct { type GlobalDeliveryRuleModifyResponseHeaderActionParameters struct { // Action to be executed on a header value. Valid values are Append, Delete and Overwrite. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // The name of the origin. This is an arbitrary value. However, this value needs to be unique under the endpoint. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The value of the header. Only needed when action is set to Append or overwrite. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -753,21 +815,27 @@ type GlobalDeliveryRuleObservation struct { type GlobalDeliveryRuleParameters struct { // A cache_expiration_action block as defined above. + // +kubebuilder:validation:Optional CacheExpirationAction []GlobalDeliveryRuleCacheExpirationActionParameters `json:"cacheExpirationAction,omitempty" tf:"cache_expiration_action,omitempty"` // A cache_key_query_string_action block as defined above. + // +kubebuilder:validation:Optional CacheKeyQueryStringAction []GlobalDeliveryRuleCacheKeyQueryStringActionParameters `json:"cacheKeyQueryStringAction,omitempty" tf:"cache_key_query_string_action,omitempty"` // A modify_request_header_action block as defined below. + // +kubebuilder:validation:Optional ModifyRequestHeaderAction []GlobalDeliveryRuleModifyRequestHeaderActionParameters `json:"modifyRequestHeaderAction,omitempty" tf:"modify_request_header_action,omitempty"` // A modify_response_header_action block as defined below. + // +kubebuilder:validation:Optional ModifyResponseHeaderAction []GlobalDeliveryRuleModifyResponseHeaderActionParameters `json:"modifyResponseHeaderAction,omitempty" tf:"modify_response_header_action,omitempty"` // A url_redirect_action block as defined below. + // +kubebuilder:validation:Optional URLRedirectAction []GlobalDeliveryRuleURLRedirectActionParameters `json:"urlRedirectAction,omitempty" tf:"url_redirect_action,omitempty"` // A url_rewrite_action block as defined below. + // +kubebuilder:validation:Optional URLRewriteAction []GlobalDeliveryRuleURLRewriteActionParameters `json:"urlRewriteAction,omitempty" tf:"url_rewrite_action,omitempty"` } @@ -816,21 +884,27 @@ type GlobalDeliveryRuleURLRedirectActionObservation struct { type GlobalDeliveryRuleURLRedirectActionParameters struct { // Specifies the fragment part of the URL. This value must not start with a #. + // +kubebuilder:validation:Optional Fragment *string `json:"fragment,omitempty" tf:"fragment,omitempty"` // Specifies the hostname part of the URL. + // +kubebuilder:validation:Optional HostName *string `json:"hostname,omitempty" tf:"hostname,omitempty"` // Specifies the path part of the URL. This value must begin with a /. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` // Specifies the protocol part of the URL. Valid values are MatchRequest, Http and Https. + // +kubebuilder:validation:Optional Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` // Specifies the query string part of the URL. This value must not start with a ? or & and must be in = format separated by &. + // +kubebuilder:validation:Optional QueryString *string `json:"queryString,omitempty" tf:"query_string,omitempty"` // Type of the redirect. Valid values are Found, Moved, PermanentRedirect and TemporaryRedirect. + // +kubebuilder:validation:Optional RedirectType *string `json:"redirectType,omitempty" tf:"redirect_type,omitempty"` } @@ -861,12 +935,15 @@ type GlobalDeliveryRuleURLRewriteActionObservation struct { type GlobalDeliveryRuleURLRewriteActionParameters struct { // This value must start with a / and can't be longer than 260 characters. + // +kubebuilder:validation:Optional Destination *string `json:"destination,omitempty" tf:"destination,omitempty"` // Defaults to true. + // +kubebuilder:validation:Optional PreserveUnmatchedPath *bool `json:"preserveUnmatchedPath,omitempty" tf:"preserve_unmatched_path,omitempty"` // This value must start with a / and can't be longer than 260 characters. + // +kubebuilder:validation:Optional SourcePattern *string `json:"sourcePattern,omitempty" tf:"source_pattern,omitempty"` } @@ -897,12 +974,15 @@ type HTTPVersionConditionObservation struct { type HTTPVersionConditionParameters struct { // List of string values. This is required if operator is not Any. + // +kubebuilder:validation:Optional MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // Defaults to false. + // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` } @@ -933,12 +1013,15 @@ type ModifyRequestHeaderActionObservation struct { type ModifyRequestHeaderActionParameters struct { // Action to be executed on a header value. Valid values are Append, Delete and Overwrite. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // The name of the origin. This is an arbitrary value. However, this value needs to be unique under the endpoint. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The value of the header. Only needed when action is set to Append or overwrite. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -969,12 +1052,15 @@ type ModifyResponseHeaderActionObservation struct { type ModifyResponseHeaderActionParameters struct { // Action to be executed on a header value. Valid values are Append, Delete and Overwrite. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // The name of the origin. This is an arbitrary value. However, this value needs to be unique under the endpoint. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The value of the header. Only needed when action is set to Append or overwrite. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -1011,15 +1097,19 @@ type OriginObservation struct { type OriginParameters struct { // The HTTP port of the origin. Defaults to 80. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional HTTPPort *float64 `json:"httpPort,omitempty" tf:"http_port,omitempty"` // The HTTPS port of the origin. Defaults to 443. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional HTTPSPort *float64 `json:"httpsPort,omitempty" tf:"https_port,omitempty"` // A string that determines the hostname/IP address of the origin server. This string can be a domain name, Storage Account endpoint, Web App endpoint, IPv4 address or IPv6 address. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional HostName *string `json:"hostName,omitempty" tf:"host_name,omitempty"` // The name of the origin. This is an arbitrary value. However, this value needs to be unique under the endpoint. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -1062,18 +1152,23 @@ type PostArgConditionObservation struct { type PostArgConditionParameters struct { // List of string values. This is required if operator is not Any. + // +kubebuilder:validation:Optional MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // Defaults to false. + // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Header name. + // +kubebuilder:validation:Optional Selector *string `json:"selector,omitempty" tf:"selector,omitempty"` // A list of transforms. Valid values are Lowercase and Uppercase. + // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } @@ -1110,15 +1205,19 @@ type QueryStringConditionObservation struct { type QueryStringConditionParameters struct { // List of string values. This is required if operator is not Any. + // +kubebuilder:validation:Optional MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // Defaults to false. + // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of transforms. Valid values are Lowercase and Uppercase. + // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } @@ -1149,12 +1248,15 @@ type RemoteAddressConditionObservation struct { type RemoteAddressConditionParameters struct { // List of string values. This is required if operator is not Any. + // +kubebuilder:validation:Optional MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // Defaults to false. + // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` } @@ -1191,15 +1293,19 @@ type RequestBodyConditionObservation struct { type RequestBodyConditionParameters struct { // List of string values. This is required if operator is not Any. + // +kubebuilder:validation:Optional MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // Defaults to false. + // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of transforms. Valid values are Lowercase and Uppercase. + // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } @@ -1242,18 +1348,23 @@ type RequestHeaderConditionObservation struct { type RequestHeaderConditionParameters struct { // List of string values. This is required if operator is not Any. + // +kubebuilder:validation:Optional MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // Defaults to false. + // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Header name. + // +kubebuilder:validation:Optional Selector *string `json:"selector,omitempty" tf:"selector,omitempty"` // A list of transforms. Valid values are Lowercase and Uppercase. + // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } @@ -1284,12 +1395,15 @@ type RequestMethodConditionObservation struct { type RequestMethodConditionParameters struct { // List of string values. This is required if operator is not Any. + // +kubebuilder:validation:Optional MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // Defaults to false. + // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` } @@ -1320,12 +1434,15 @@ type RequestSchemeConditionObservation struct { type RequestSchemeConditionParameters struct { // List of string values. This is required if operator is not Any. + // +kubebuilder:validation:Optional MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // Defaults to false. + // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` } @@ -1362,15 +1479,19 @@ type RequestURIConditionObservation struct { type RequestURIConditionParameters struct { // List of string values. This is required if operator is not Any. + // +kubebuilder:validation:Optional MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // Defaults to false. + // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of transforms. Valid values are Lowercase and Uppercase. + // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } @@ -1407,15 +1528,19 @@ type URLFileExtensionConditionObservation struct { type URLFileExtensionConditionParameters struct { // List of string values. This is required if operator is not Any. + // +kubebuilder:validation:Optional MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // Defaults to false. + // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of transforms. Valid values are Lowercase and Uppercase. + // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } @@ -1452,15 +1577,19 @@ type URLFileNameConditionObservation struct { type URLFileNameConditionParameters struct { // List of string values. This is required if operator is not Any. + // +kubebuilder:validation:Optional MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // Defaults to false. + // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of transforms. Valid values are Lowercase and Uppercase. + // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } @@ -1497,15 +1626,19 @@ type URLPathConditionObservation struct { type URLPathConditionParameters struct { // List of string values. This is required if operator is not Any. + // +kubebuilder:validation:Optional MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // Defaults to false. + // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // Valid values are Any, BeginsWith, Contains, EndsWith, Equal, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual, RegEx and Wildcard. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of transforms. Valid values are Lowercase and Uppercase. + // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } @@ -1554,21 +1687,27 @@ type URLRedirectActionObservation struct { type URLRedirectActionParameters struct { // Specifies the fragment part of the URL. This value must not start with a #. + // +kubebuilder:validation:Optional Fragment *string `json:"fragment,omitempty" tf:"fragment,omitempty"` // Specifies the hostname part of the URL. + // +kubebuilder:validation:Optional HostName *string `json:"hostname,omitempty" tf:"hostname,omitempty"` // Specifies the path part of the URL. This value must begin with a /. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` // Specifies the protocol part of the URL. Valid values are MatchRequest, Http and Https. + // +kubebuilder:validation:Optional Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` // Specifies the query string part of the URL. This value must not start with a ? or & and must be in = format separated by &. + // +kubebuilder:validation:Optional QueryString *string `json:"queryString,omitempty" tf:"query_string,omitempty"` // Type of the redirect. Valid values are Found, Moved, PermanentRedirect and TemporaryRedirect. + // +kubebuilder:validation:Optional RedirectType *string `json:"redirectType,omitempty" tf:"redirect_type,omitempty"` } @@ -1599,12 +1738,15 @@ type URLRewriteActionObservation struct { type URLRewriteActionParameters struct { // This value must start with a / and can't be longer than 260 characters. + // +kubebuilder:validation:Optional Destination *string `json:"destination,omitempty" tf:"destination,omitempty"` // Defaults to true. + // +kubebuilder:validation:Optional PreserveUnmatchedPath *bool `json:"preserveUnmatchedPath,omitempty" tf:"preserve_unmatched_path,omitempty"` // This value must start with a / and can't be longer than 260 characters. + // +kubebuilder:validation:Optional SourcePattern *string `json:"sourcePattern,omitempty" tf:"source_pattern,omitempty"` } diff --git a/apis/cdn/v1beta1/zz_frontdoorcustomdomain_types.go b/apis/cdn/v1beta1/zz_frontdoorcustomdomain_types.go index 92778f879..4ee2e65ac 100755 --- a/apis/cdn/v1beta1/zz_frontdoorcustomdomain_types.go +++ b/apis/cdn/v1beta1/zz_frontdoorcustomdomain_types.go @@ -77,9 +77,11 @@ type FrontdoorCustomDomainParameters struct { DNSZoneIDSelector *v1.Selector `json:"dnsZoneIdSelector,omitempty" tf:"-"` // The host name of the domain. The host_name field must be the FQDN of your domain(e.g. contoso.fabrikam.com). Changing this forces a new Front Door Custom Domain to be created. + // +kubebuilder:validation:Optional HostName *string `json:"hostName,omitempty" tf:"host_name,omitempty"` // A tls block as defined below. + // +kubebuilder:validation:Optional TLS []TLSParameters `json:"tls,omitempty" tf:"tls,omitempty"` } @@ -110,12 +112,15 @@ type TLSObservation struct { type TLSParameters struct { // Resource ID of the Front Door Secret. + // +kubebuilder:validation:Optional CdnFrontdoorSecretID *string `json:"cdnFrontdoorSecretId,omitempty" tf:"cdn_frontdoor_secret_id,omitempty"` // Defines the source of the SSL certificate. Possible values include CustomerCertificate and ManagedCertificate. Defaults to ManagedCertificate. + // +kubebuilder:validation:Optional CertificateType *string `json:"certificateType,omitempty" tf:"certificate_type,omitempty"` // TLS protocol version that will be used for Https. Possible values include TLS10 and TLS12. Defaults to TLS12. + // +kubebuilder:validation:Optional MinimumTLSVersion *string `json:"minimumTlsVersion,omitempty" tf:"minimum_tls_version,omitempty"` } diff --git a/apis/cdn/v1beta1/zz_frontdoorendpoint_types.go b/apis/cdn/v1beta1/zz_frontdoorendpoint_types.go index b700a866f..101d97424 100755 --- a/apis/cdn/v1beta1/zz_frontdoorendpoint_types.go +++ b/apis/cdn/v1beta1/zz_frontdoorendpoint_types.go @@ -57,9 +57,11 @@ type FrontdoorEndpointParameters struct { CdnFrontdoorProfileIDSelector *v1.Selector `json:"cdnFrontdoorProfileIdSelector,omitempty" tf:"-"` // Specifies if this Front Door Endpoint is enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Specifies a mapping of tags which should be assigned to the Front Door Endpoint. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/cdn/v1beta1/zz_frontdoororigin_types.go b/apis/cdn/v1beta1/zz_frontdoororigin_types.go index 4f8f80ffc..278708a5b 100755 --- a/apis/cdn/v1beta1/zz_frontdoororigin_types.go +++ b/apis/cdn/v1beta1/zz_frontdoororigin_types.go @@ -96,18 +96,23 @@ type FrontdoorOriginParameters struct { CdnFrontdoorOriginGroupIDSelector *v1.Selector `json:"cdnFrontdoorOriginGroupIdSelector,omitempty" tf:"-"` // Specifies whether certificate name checks are enabled for this origin. + // +kubebuilder:validation:Optional CertificateNameCheckEnabled *bool `json:"certificateNameCheckEnabled,omitempty" tf:"certificate_name_check_enabled,omitempty"` // Should the origin be enabled? Possible values are true or false. Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The value of the HTTP port. Must be between 1 and 65535. Defaults to 80. + // +kubebuilder:validation:Optional HTTPPort *float64 `json:"httpPort,omitempty" tf:"http_port,omitempty"` // The value of the HTTPS port. Must be between 1 and 65535. Defaults to 443. + // +kubebuilder:validation:Optional HTTPSPort *float64 `json:"httpsPort,omitempty" tf:"https_port,omitempty"` // Should the origin be enabled? Possible values are true or false. Defaults to true. + // +kubebuilder:validation:Optional HealthProbesEnabled *bool `json:"healthProbesEnabled,omitempty" tf:"health_probes_enabled,omitempty"` // The IPv4 address, IPv6 address or Domain name of the Origin. @@ -139,12 +144,15 @@ type FrontdoorOriginParameters struct { OriginHostHeaderSelector *v1.Selector `json:"originHostHeaderSelector,omitempty" tf:"-"` // Priority of origin in given origin group for load balancing. Higher priorities will not be used for load balancing if any lower priority origin is healthy. Must be between 1 and 5 (inclusive). Defaults to 1. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // A private_link block as defined below. + // +kubebuilder:validation:Optional PrivateLink []PrivateLinkParameters `json:"privateLink,omitempty" tf:"private_link,omitempty"` // The weight of the origin in a given origin group for load balancing. Must be between 1 and 1000. Defaults to 500. + // +kubebuilder:validation:Optional Weight *float64 `json:"weight,omitempty" tf:"weight,omitempty"` } @@ -203,9 +211,11 @@ type PrivateLinkParameters struct { PrivateLinkTargetIDSelector *v1.Selector `json:"privateLinkTargetIdSelector,omitempty" tf:"-"` // Specifies the request message that will be submitted to the private_link_target_id when requesting the private link endpoint connection. Values must be between 1 and 140 characters in length. Defaults to Access request for CDN FrontDoor Private Link Origin. + // +kubebuilder:validation:Optional RequestMessage *string `json:"requestMessage,omitempty" tf:"request_message,omitempty"` // Specifies the type of target for this Private Link Endpoint. Possible values are blob, blob_secondary, web and sites. + // +kubebuilder:validation:Optional TargetType *string `json:"targetType,omitempty" tf:"target_type,omitempty"` } diff --git a/apis/cdn/v1beta1/zz_frontdoororigingroup_types.go b/apis/cdn/v1beta1/zz_frontdoororigingroup_types.go index 77db6ea64..136ee6403 100755 --- a/apis/cdn/v1beta1/zz_frontdoororigingroup_types.go +++ b/apis/cdn/v1beta1/zz_frontdoororigingroup_types.go @@ -66,15 +66,19 @@ type FrontdoorOriginGroupParameters struct { CdnFrontdoorProfileIDSelector *v1.Selector `json:"cdnFrontdoorProfileIdSelector,omitempty" tf:"-"` // A health_probe block as defined below. + // +kubebuilder:validation:Optional HealthProbe []HealthProbeParameters `json:"healthProbe,omitempty" tf:"health_probe,omitempty"` // A load_balancing block as defined below. + // +kubebuilder:validation:Optional LoadBalancing []LoadBalancingParameters `json:"loadBalancing,omitempty" tf:"load_balancing,omitempty"` // Specifies the amount of time which should elapse before shifting traffic to another endpoint when a healthy endpoint becomes unhealthy or a new endpoint is added. Possible values are between 0 and 50 minutes (inclusive). Default is 10 minutes. + // +kubebuilder:validation:Optional RestoreTrafficTimeToHealedOrNewEndpointInMinutes *float64 `json:"restoreTrafficTimeToHealedOrNewEndpointInMinutes,omitempty" tf:"restore_traffic_time_to_healed_or_new_endpoint_in_minutes,omitempty"` // Specifies whether session affinity should be enabled on this host. Defaults to true. + // +kubebuilder:validation:Optional SessionAffinityEnabled *bool `json:"sessionAffinityEnabled,omitempty" tf:"session_affinity_enabled,omitempty"` } @@ -111,15 +115,19 @@ type HealthProbeObservation struct { type HealthProbeParameters struct { // Specifies the number of seconds between health probes. Possible values are between 5 and 31536000 seconds (inclusive). + // +kubebuilder:validation:Optional IntervalInSeconds *float64 `json:"intervalInSeconds,omitempty" tf:"interval_in_seconds,omitempty"` // Specifies the path relative to the origin that is used to determine the health of the origin. Defaults to /. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` // Specifies the protocol to use for health probe. Possible values are Http and Https. + // +kubebuilder:validation:Optional Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` // Specifies the type of health probe request that is made. Possible values are GET and HEAD. Defaults to HEAD. + // +kubebuilder:validation:Optional RequestType *string `json:"requestType,omitempty" tf:"request_type,omitempty"` } @@ -150,12 +158,15 @@ type LoadBalancingObservation struct { type LoadBalancingParameters struct { // Specifies the additional latency in milliseconds for probes to fall into the lowest latency bucket. Possible values are between 0 and 1000 milliseconds (inclusive). Defaults to 50. + // +kubebuilder:validation:Optional AdditionalLatencyInMilliseconds *float64 `json:"additionalLatencyInMilliseconds,omitempty" tf:"additional_latency_in_milliseconds,omitempty"` // Specifies the number of samples to consider for load balancing decisions. Possible values are between 0 and 255 (inclusive). Defaults to 4. + // +kubebuilder:validation:Optional SampleSize *float64 `json:"sampleSize,omitempty" tf:"sample_size,omitempty"` // Specifies the number of samples within the sample period that must succeed. Possible values are between 0 and 255 (inclusive). Defaults to 3. + // +kubebuilder:validation:Optional SuccessfulSamplesRequired *float64 `json:"successfulSamplesRequired,omitempty" tf:"successful_samples_required,omitempty"` } diff --git a/apis/cdn/v1beta1/zz_frontdoorprofile_types.go b/apis/cdn/v1beta1/zz_frontdoorprofile_types.go index 1182c21e3..b752e8384 100755 --- a/apis/cdn/v1beta1/zz_frontdoorprofile_types.go +++ b/apis/cdn/v1beta1/zz_frontdoorprofile_types.go @@ -62,12 +62,15 @@ type FrontdoorProfileParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Specifies the maximum response timeout in seconds. Possible values are between 16 and 240 seconds (inclusive). Defaults to 120 seconds. + // +kubebuilder:validation:Optional ResponseTimeoutSeconds *float64 `json:"responseTimeoutSeconds,omitempty" tf:"response_timeout_seconds,omitempty"` // Specifies the SKU for this Front Door Profile. Possible values include Standard_AzureFrontDoor and Premium_AzureFrontDoor. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // Specifies a mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/cdn/v1beta1/zz_frontdoorroute_types.go b/apis/cdn/v1beta1/zz_frontdoorroute_types.go index 9ec20fbd5..4df0bad79 100755 --- a/apis/cdn/v1beta1/zz_frontdoorroute_types.go +++ b/apis/cdn/v1beta1/zz_frontdoorroute_types.go @@ -46,15 +46,19 @@ type CacheObservation struct { type CacheParameters struct { // Is content compression enabled? Possible values are true or false. Defaults to false. + // +kubebuilder:validation:Optional CompressionEnabled *bool `json:"compressionEnabled,omitempty" tf:"compression_enabled,omitempty"` // A list of one or more Content types (formerly known as MIME types) to compress. Possible values include application/eot, application/font, application/font-sfnt, application/javascript, application/json, application/opentype, application/otf, application/pkcs7-mime, application/truetype, application/ttf, application/vnd.ms-fontobject, application/xhtml+xml, application/xml, application/xml+rss, application/x-font-opentype, application/x-font-truetype, application/x-font-ttf, application/x-httpd-cgi, application/x-mpegurl, application/x-opentype, application/x-otf, application/x-perl, application/x-ttf, application/x-javascript, font/eot, font/ttf, font/otf, font/opentype, image/svg+xml, text/css, text/csv, text/html, text/javascript, text/js, text/plain, text/richtext, text/tab-separated-values, text/xml, text/x-script, text/x-component or text/x-java-source. + // +kubebuilder:validation:Optional ContentTypesToCompress []*string `json:"contentTypesToCompress,omitempty" tf:"content_types_to_compress,omitempty"` // Defines how the Front Door Route will cache requests that include query strings. Possible values include IgnoreQueryString, IgnoreSpecifiedQueryStrings, IncludeSpecifiedQueryStrings or UseQueryString. Defaults it IgnoreQueryString. + // +kubebuilder:validation:Optional QueryStringCachingBehavior *string `json:"queryStringCachingBehavior,omitempty" tf:"query_string_caching_behavior,omitempty"` // Query strings to include or ignore. + // +kubebuilder:validation:Optional QueryStrings []*string `json:"queryStrings,omitempty" tf:"query_strings,omitempty"` } @@ -133,6 +137,7 @@ type FrontdoorRouteObservation struct { type FrontdoorRouteParameters struct { // A cache block as defined below. + // +kubebuilder:validation:Optional Cache []CacheParameters `json:"cache,omitempty" tf:"cache,omitempty"` // The IDs of the Front Door Custom Domains which are associated with this Front Door Route. @@ -192,6 +197,7 @@ type FrontdoorRouteParameters struct { CdnFrontdoorOriginIdsSelector *v1.Selector `json:"cdnFrontdoorOriginIdsSelector,omitempty" tf:"-"` // A directory path on the Front Door Origin that can be used to retrieve content (e.g. contoso.cloudapp.net/originpath). + // +kubebuilder:validation:Optional CdnFrontdoorOriginPath *string `json:"cdnFrontdoorOriginPath,omitempty" tf:"cdn_frontdoor_origin_path,omitempty"` // A list of the Front Door Rule Set IDs which should be assigned to this Front Door Route. @@ -209,21 +215,27 @@ type FrontdoorRouteParameters struct { CdnFrontdoorRuleSetIdsSelector *v1.Selector `json:"cdnFrontdoorRuleSetIdsSelector,omitempty" tf:"-"` // Is this Front Door Route enabled? Possible values are true or false. Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The Protocol that will be use when forwarding traffic to backends. Possible values are HttpOnly, HttpsOnly or MatchRequest. + // +kubebuilder:validation:Optional ForwardingProtocol *string `json:"forwardingProtocol,omitempty" tf:"forwarding_protocol,omitempty"` // Automatically redirect HTTP traffic to HTTPS traffic? Possible values are true or false. Defaults to true. + // +kubebuilder:validation:Optional HTTPSRedirectEnabled *bool `json:"httpsRedirectEnabled,omitempty" tf:"https_redirect_enabled,omitempty"` // Should this Front Door Route be linked to the default endpoint? Possible values include true or false. Defaults to true. + // +kubebuilder:validation:Optional LinkToDefaultDomain *bool `json:"linkToDefaultDomain,omitempty" tf:"link_to_default_domain,omitempty"` // The route patterns of the rule. + // +kubebuilder:validation:Optional PatternsToMatch []*string `json:"patternsToMatch,omitempty" tf:"patterns_to_match,omitempty"` // One or more Protocols supported by this Front Door Route. Possible values are Http or Https. + // +kubebuilder:validation:Optional SupportedProtocols []*string `json:"supportedProtocols,omitempty" tf:"supported_protocols,omitempty"` } diff --git a/apis/cdn/v1beta1/zz_frontdoorrule_types.go b/apis/cdn/v1beta1/zz_frontdoorrule_types.go index 74251611d..f15831ee1 100755 --- a/apis/cdn/v1beta1/zz_frontdoorrule_types.go +++ b/apis/cdn/v1beta1/zz_frontdoorrule_types.go @@ -52,18 +52,23 @@ type ActionsObservation struct { type ActionsParameters struct { // A request_header_action block as defined below. + // +kubebuilder:validation:Optional RequestHeaderAction []RequestHeaderActionParameters `json:"requestHeaderAction,omitempty" tf:"request_header_action,omitempty"` // A response_header_action block as defined below. + // +kubebuilder:validation:Optional ResponseHeaderAction []ResponseHeaderActionParameters `json:"responseHeaderAction,omitempty" tf:"response_header_action,omitempty"` // A route_configuration_override_action block as defined below. + // +kubebuilder:validation:Optional RouteConfigurationOverrideAction []RouteConfigurationOverrideActionParameters `json:"routeConfigurationOverrideAction,omitempty" tf:"route_configuration_override_action,omitempty"` // A url_redirect_action block as defined below. You may not have a url_redirect_action and a url_rewrite_action defined in the same actions block. + // +kubebuilder:validation:Optional URLRedirectAction []ActionsURLRedirectActionParameters `json:"urlRedirectAction,omitempty" tf:"url_redirect_action,omitempty"` // A url_rewrite_action block as defined below. You may not have a url_rewrite_action and a url_redirect_action defined in the same actions block. + // +kubebuilder:validation:Optional URLRewriteAction []ActionsURLRewriteActionParameters `json:"urlRewriteAction,omitempty" tf:"url_rewrite_action,omitempty"` } @@ -112,21 +117,27 @@ type ActionsURLRedirectActionObservation struct { type ActionsURLRedirectActionParameters struct { // The fragment to use in the redirect. The value must be a string between 0 and 1024 characters in length, leave blank to preserve the incoming fragment. Defaults to an empty string. Defaults to "". + // +kubebuilder:validation:Optional DestinationFragment *string `json:"destinationFragment,omitempty" tf:"destination_fragment,omitempty"` // The host name you want the request to be redirected to. The value must be a string between 0 and 2048 characters in length, leave blank to preserve the incoming host. + // +kubebuilder:validation:Optional DestinationHostName *string `json:"destinationHostname,omitempty" tf:"destination_hostname,omitempty"` // The path to use in the redirect. The value must be a string and include the leading /, leave blank to preserve the incoming path. Defaults to an empty string. Defaults to "". + // +kubebuilder:validation:Optional DestinationPath *string `json:"destinationPath,omitempty" tf:"destination_path,omitempty"` // The query string used in the redirect URL. The value must be in the = or ={action_server_variable} format and must not include the leading ?, leave blank to preserve the incoming query string. Maximum allowed length for this field is 2048 characters. Defaults to an empty string. Defaults to "". + // +kubebuilder:validation:Optional QueryString *string `json:"queryString,omitempty" tf:"query_string,omitempty"` // The protocol the request will be redirected as. Possible values include MatchRequest, Http or Https. Defaults to MatchRequest. + // +kubebuilder:validation:Optional RedirectProtocol *string `json:"redirectProtocol,omitempty" tf:"redirect_protocol,omitempty"` // The response type to return to the requestor. Possible values include Moved, Found , TemporaryRedirect or PermanentRedirect. + // +kubebuilder:validation:Optional RedirectType *string `json:"redirectType,omitempty" tf:"redirect_type,omitempty"` } @@ -157,12 +168,15 @@ type ActionsURLRewriteActionObservation struct { type ActionsURLRewriteActionParameters struct { // The destination path to use in the rewrite. The destination path overwrites the source pattern. + // +kubebuilder:validation:Optional Destination *string `json:"destination,omitempty" tf:"destination,omitempty"` // Append the remaining path after the source pattern to the new destination path? Possible values true or false. Defaults to false. + // +kubebuilder:validation:Optional PreserveUnmatchedPath *bool `json:"preserveUnmatchedPath,omitempty" tf:"preserve_unmatched_path,omitempty"` // The source pattern in the URL path to replace. This uses prefix-based matching. For example, to match all URL paths use a forward slash "/" as the source pattern value. + // +kubebuilder:validation:Optional SourcePattern *string `json:"sourcePattern,omitempty" tf:"source_pattern,omitempty"` } @@ -193,12 +207,15 @@ type ClientPortConditionObservation struct { type ClientPortConditionParameters struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + // +kubebuilder:validation:Optional MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` } @@ -241,18 +258,23 @@ type ConditionsCookiesConditionObservation struct { type ConditionsCookiesConditionParameters struct { // A string value representing the name of the cookie. + // +kubebuilder:validation:Optional CookieName *string `json:"cookieName,omitempty" tf:"cookie_name,omitempty"` // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + // +kubebuilder:validation:Optional MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below. + // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } @@ -283,12 +305,15 @@ type ConditionsHTTPVersionConditionObservation struct { type ConditionsHTTPVersionConditionParameters struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + // +kubebuilder:validation:Optional MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` } @@ -415,60 +440,79 @@ type ConditionsObservation struct { type ConditionsParameters struct { // A client_port_condition block as defined below. + // +kubebuilder:validation:Optional ClientPortCondition []ClientPortConditionParameters `json:"clientPortCondition,omitempty" tf:"client_port_condition,omitempty"` // A cookies_condition block as defined below. + // +kubebuilder:validation:Optional CookiesCondition []ConditionsCookiesConditionParameters `json:"cookiesCondition,omitempty" tf:"cookies_condition,omitempty"` // A http_version_condition block as defined below. + // +kubebuilder:validation:Optional HTTPVersionCondition []ConditionsHTTPVersionConditionParameters `json:"httpVersionCondition,omitempty" tf:"http_version_condition,omitempty"` // A host_name_condition block as defined below. + // +kubebuilder:validation:Optional HostNameCondition []HostNameConditionParameters `json:"hostNameCondition,omitempty" tf:"host_name_condition,omitempty"` // A is_device_condition block as defined below. + // +kubebuilder:validation:Optional IsDeviceCondition []IsDeviceConditionParameters `json:"isDeviceCondition,omitempty" tf:"is_device_condition,omitempty"` // A post_args_condition block as defined below. + // +kubebuilder:validation:Optional PostArgsCondition []PostArgsConditionParameters `json:"postArgsCondition,omitempty" tf:"post_args_condition,omitempty"` // A query_string_condition block as defined below. + // +kubebuilder:validation:Optional QueryStringCondition []ConditionsQueryStringConditionParameters `json:"queryStringCondition,omitempty" tf:"query_string_condition,omitempty"` // A remote_address_condition block as defined below. + // +kubebuilder:validation:Optional RemoteAddressCondition []ConditionsRemoteAddressConditionParameters `json:"remoteAddressCondition,omitempty" tf:"remote_address_condition,omitempty"` // A request_body_condition block as defined below. + // +kubebuilder:validation:Optional RequestBodyCondition []ConditionsRequestBodyConditionParameters `json:"requestBodyCondition,omitempty" tf:"request_body_condition,omitempty"` // A request_header_condition block as defined below. + // +kubebuilder:validation:Optional RequestHeaderCondition []ConditionsRequestHeaderConditionParameters `json:"requestHeaderCondition,omitempty" tf:"request_header_condition,omitempty"` // A request_method_condition block as defined below. + // +kubebuilder:validation:Optional RequestMethodCondition []ConditionsRequestMethodConditionParameters `json:"requestMethodCondition,omitempty" tf:"request_method_condition,omitempty"` // A request_scheme_condition block as defined below. + // +kubebuilder:validation:Optional RequestSchemeCondition []ConditionsRequestSchemeConditionParameters `json:"requestSchemeCondition,omitempty" tf:"request_scheme_condition,omitempty"` // A request_uri_condition block as defined below. + // +kubebuilder:validation:Optional RequestURICondition []ConditionsRequestURIConditionParameters `json:"requestUriCondition,omitempty" tf:"request_uri_condition,omitempty"` // A ssl_protocol_condition block as defined below. + // +kubebuilder:validation:Optional SSLProtocolCondition []SSLProtocolConditionParameters `json:"sslProtocolCondition,omitempty" tf:"ssl_protocol_condition,omitempty"` // A server_port_condition block as defined below. + // +kubebuilder:validation:Optional ServerPortCondition []ServerPortConditionParameters `json:"serverPortCondition,omitempty" tf:"server_port_condition,omitempty"` // A socket_address_condition block as defined below. + // +kubebuilder:validation:Optional SocketAddressCondition []SocketAddressConditionParameters `json:"socketAddressCondition,omitempty" tf:"socket_address_condition,omitempty"` // A url_file_extension_condition block as defined below. + // +kubebuilder:validation:Optional URLFileExtensionCondition []ConditionsURLFileExtensionConditionParameters `json:"urlFileExtensionCondition,omitempty" tf:"url_file_extension_condition,omitempty"` // A url_filename_condition block as defined below. + // +kubebuilder:validation:Optional URLFilenameCondition []URLFilenameConditionParameters `json:"urlFilenameCondition,omitempty" tf:"url_filename_condition,omitempty"` // A url_path_condition block as defined below. + // +kubebuilder:validation:Optional URLPathCondition []ConditionsURLPathConditionParameters `json:"urlPathCondition,omitempty" tf:"url_path_condition,omitempty"` } @@ -505,15 +549,19 @@ type ConditionsQueryStringConditionObservation struct { type ConditionsQueryStringConditionParameters struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + // +kubebuilder:validation:Optional MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below. + // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } @@ -544,12 +592,15 @@ type ConditionsRemoteAddressConditionObservation struct { type ConditionsRemoteAddressConditionParameters struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + // +kubebuilder:validation:Optional MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` } @@ -586,15 +637,19 @@ type ConditionsRequestBodyConditionObservation struct { type ConditionsRequestBodyConditionParameters struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + // +kubebuilder:validation:Optional MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below. + // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } @@ -637,18 +692,23 @@ type ConditionsRequestHeaderConditionObservation struct { type ConditionsRequestHeaderConditionParameters struct { // The name of the header to modify. + // +kubebuilder:validation:Optional HeaderName *string `json:"headerName,omitempty" tf:"header_name,omitempty"` // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + // +kubebuilder:validation:Optional MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below. + // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } @@ -679,12 +739,15 @@ type ConditionsRequestMethodConditionObservation struct { type ConditionsRequestMethodConditionParameters struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + // +kubebuilder:validation:Optional MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` } @@ -715,12 +778,15 @@ type ConditionsRequestSchemeConditionObservation struct { type ConditionsRequestSchemeConditionParameters struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + // +kubebuilder:validation:Optional MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` } @@ -757,15 +823,19 @@ type ConditionsRequestURIConditionObservation struct { type ConditionsRequestURIConditionParameters struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + // +kubebuilder:validation:Optional MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below. + // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } @@ -802,15 +872,19 @@ type ConditionsURLFileExtensionConditionObservation struct { type ConditionsURLFileExtensionConditionParameters struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + // +kubebuilder:validation:Optional MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below. + // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } @@ -847,15 +921,19 @@ type ConditionsURLPathConditionObservation struct { type ConditionsURLPathConditionParameters struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + // +kubebuilder:validation:Optional MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below. + // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } @@ -901,9 +979,11 @@ type FrontdoorRuleObservation struct { type FrontdoorRuleParameters struct { // An actions block as defined below. + // +kubebuilder:validation:Optional Actions []ActionsParameters `json:"actions,omitempty" tf:"actions,omitempty"` // If this rule is a match should the rules engine continue processing the remaining rules or stop? Possible values are Continue and Stop. Defaults to Continue. + // +kubebuilder:validation:Optional BehaviorOnMatch *string `json:"behaviorOnMatch,omitempty" tf:"behavior_on_match,omitempty"` // The resource ID of the Front Door Rule Set for this Front Door Rule. Changing this forces a new Front Door Rule to be created. @@ -921,9 +1001,11 @@ type FrontdoorRuleParameters struct { CdnFrontdoorRuleSetIDSelector *v1.Selector `json:"cdnFrontdoorRuleSetIdSelector,omitempty" tf:"-"` // A conditions block as defined below. + // +kubebuilder:validation:Optional Conditions []ConditionsParameters `json:"conditions,omitempty" tf:"conditions,omitempty"` // The order in which the rules will be applied for the Front Door Endpoint. The order value should be sequential and begin at 1(e.g. 1, 2, 3...). A Front Door Rule with a lesser order value will be applied before a rule with a greater order value. + // +kubebuilder:validation:Optional Order *float64 `json:"order,omitempty" tf:"order,omitempty"` } @@ -960,15 +1042,19 @@ type HostNameConditionObservation struct { type HostNameConditionParameters struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + // +kubebuilder:validation:Optional MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below. + // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } @@ -999,12 +1085,15 @@ type IsDeviceConditionObservation struct { type IsDeviceConditionParameters struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + // +kubebuilder:validation:Optional MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` } @@ -1047,18 +1136,23 @@ type PostArgsConditionObservation struct { type PostArgsConditionParameters struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + // +kubebuilder:validation:Optional MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A string value representing the name of the POST argument. + // +kubebuilder:validation:Optional PostArgsName *string `json:"postArgsName,omitempty" tf:"post_args_name,omitempty"` // A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below. + // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } @@ -1089,12 +1183,15 @@ type RequestHeaderActionObservation struct { type RequestHeaderActionParameters struct { // The action to be taken on the specified header_name. Possible values include Append, Overwrite or Delete. + // +kubebuilder:validation:Optional HeaderAction *string `json:"headerAction,omitempty" tf:"header_action,omitempty"` // The name of the header to modify. + // +kubebuilder:validation:Optional HeaderName *string `json:"headerName,omitempty" tf:"header_name,omitempty"` // The value to append or overwrite. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -1125,12 +1222,15 @@ type ResponseHeaderActionObservation struct { type ResponseHeaderActionParameters struct { // The action to be taken on the specified header_name. Possible values include Append, Overwrite or Delete. + // +kubebuilder:validation:Optional HeaderAction *string `json:"headerAction,omitempty" tf:"header_action,omitempty"` // The name of the header to modify. + // +kubebuilder:validation:Optional HeaderName *string `json:"headerName,omitempty" tf:"header_name,omitempty"` // The value to append or overwrite. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -1182,9 +1282,11 @@ type RouteConfigurationOverrideActionObservation struct { type RouteConfigurationOverrideActionParameters struct { // HonorOrigin the Front Door will always honor origin response header directive. If the origin directive is missing, Front Door will cache contents anywhere from 1 to 3 days. OverrideAlways the TTL value returned from your Front Door Origin is overwritten with the value specified in the action. This behavior will only be applied if the response is cacheable. OverrideIfOriginMissing if no TTL value gets returned from your Front Door Origin, the rule sets the TTL to the value specified in the action. This behavior will only be applied if the response is cacheable. Disabled the Front Door will not cache the response contents, irrespective of Front Door Origin response directives. Possible values include HonorOrigin, OverrideAlways, OverrideIfOriginMissing or Disabled. + // +kubebuilder:validation:Optional CacheBehavior *string `json:"cacheBehavior,omitempty" tf:"cache_behavior,omitempty"` // When Cache behavior is set to Override or SetIfMissing, this field specifies the cache duration to use. The maximum duration is 366 days specified in the d.HH:MM:SS format(e.g. 365.23:59:59). If the desired maximum cache duration is less than 1 day then the maximum cache duration should be specified in the HH:MM:SS format(e.g. 23:59:59). + // +kubebuilder:validation:Optional CacheDuration *string `json:"cacheDuration,omitempty" tf:"cache_duration,omitempty"` // The Front Door Origin Group resource ID that the request should be routed to. This overrides the configuration specified in the Front Door Endpoint route. @@ -1202,15 +1304,19 @@ type RouteConfigurationOverrideActionParameters struct { CdnFrontdoorOriginGroupIDSelector *v1.Selector `json:"cdnFrontdoorOriginGroupIdSelector,omitempty" tf:"-"` // Should the Front Door dynamically compress the content? Possible values include true or false. + // +kubebuilder:validation:Optional CompressionEnabled *bool `json:"compressionEnabled,omitempty" tf:"compression_enabled,omitempty"` // The forwarding protocol the request will be redirected as. This overrides the configuration specified in the route to be associated with. Possible values include MatchRequest, HttpOnly or HttpsOnly. + // +kubebuilder:validation:Optional ForwardingProtocol *string `json:"forwardingProtocol,omitempty" tf:"forwarding_protocol,omitempty"` // IncludeSpecifiedQueryStrings query strings specified in the query_string_parameters field get included when the cache key gets generated. UseQueryString cache every unique URL, each unique URL will have its own cache key. IgnoreSpecifiedQueryStrings query strings specified in the query_string_parameters field get excluded when the cache key gets generated. IgnoreQueryString query strings aren't considered when the cache key gets generated. Possible values include IgnoreQueryString, UseQueryString, IgnoreSpecifiedQueryStrings or IncludeSpecifiedQueryStrings. + // +kubebuilder:validation:Optional QueryStringCachingBehavior *string `json:"queryStringCachingBehavior,omitempty" tf:"query_string_caching_behavior,omitempty"` // A list of query string parameter names. + // +kubebuilder:validation:Optional QueryStringParameters []*string `json:"queryStringParameters,omitempty" tf:"query_string_parameters,omitempty"` } @@ -1241,12 +1347,15 @@ type SSLProtocolConditionObservation struct { type SSLProtocolConditionParameters struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + // +kubebuilder:validation:Optional MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` } @@ -1277,12 +1386,15 @@ type ServerPortConditionObservation struct { type ServerPortConditionParameters struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + // +kubebuilder:validation:Optional MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` } @@ -1313,12 +1425,15 @@ type SocketAddressConditionObservation struct { type SocketAddressConditionParameters struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + // +kubebuilder:validation:Optional MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` } @@ -1355,15 +1470,19 @@ type URLFilenameConditionObservation struct { type URLFilenameConditionParameters struct { // One or more string or integer values(e.g. "1") representing the value of the request path to match. Don't include the leading slash (/). If multiple values are specified, they're evaluated using OR logic. + // +kubebuilder:validation:Optional MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // If true operator becomes the opposite of its value. Possible values true or false. Defaults to false. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // A Conditional operator. Possible values include Any, Equal, Contains, BeginsWith, EndsWith, LessThan, LessThanOrEqual, GreaterThan, GreaterThanOrEqual or RegEx. Details can be found in the Condition Operator List below. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A Conditional operator. Possible values include Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode or UrlEncode. Details can be found in the Condition Transform List below. + // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } diff --git a/apis/cdn/v1beta1/zz_profile_types.go b/apis/cdn/v1beta1/zz_profile_types.go index 021a8e9a5..e89313d91 100755 --- a/apis/cdn/v1beta1/zz_profile_types.go +++ b/apis/cdn/v1beta1/zz_profile_types.go @@ -46,6 +46,7 @@ type ProfileObservation struct { type ProfileParameters struct { // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the resource group in which to create the CDN Profile. Changing this forces a new resource to be created. @@ -62,9 +63,11 @@ type ProfileParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The pricing related information of current CDN profile. Accepted values are Standard_Akamai, Standard_ChinaCdn, Standard_Microsoft, Standard_Verizon or Premium_Verizon. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/certificateregistration/v1beta1/zz_appservicecertificateorder_types.go b/apis/certificateregistration/v1beta1/zz_appservicecertificateorder_types.go index a06ae6f3e..b2dcf631c 100755 --- a/apis/certificateregistration/v1beta1/zz_appservicecertificateorder_types.go +++ b/apis/certificateregistration/v1beta1/zz_appservicecertificateorder_types.go @@ -103,21 +103,27 @@ type AppServiceCertificateOrderObservation struct { type AppServiceCertificateOrderParameters struct { // true if the certificate should be automatically renewed when it expires; otherwise, false. Defaults to true. + // +kubebuilder:validation:Optional AutoRenew *bool `json:"autoRenew,omitempty" tf:"auto_renew,omitempty"` // Last CSR that was created for this order. + // +kubebuilder:validation:Optional Csr *string `json:"csr,omitempty" tf:"csr,omitempty"` // The Distinguished Name for the App Service Certificate Order. + // +kubebuilder:validation:Optional DistinguishedName *string `json:"distinguishedName,omitempty" tf:"distinguished_name,omitempty"` // Certificate key size. Defaults to 2048. + // +kubebuilder:validation:Optional KeySize *float64 `json:"keySize,omitempty" tf:"key_size,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. Currently the only valid value is global. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Certificate product type, such as Standard or WildCard. + // +kubebuilder:validation:Optional ProductType *string `json:"productType,omitempty" tf:"product_type,omitempty"` // The name of the resource group in which to create the certificate. Changing this forces a new resource to be created. @@ -134,9 +140,11 @@ type AppServiceCertificateOrderParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Duration in years (must be between 1 and 3). Defaults to 1. + // +kubebuilder:validation:Optional ValidityInYears *float64 `json:"validityInYears,omitempty" tf:"validity_in_years,omitempty"` } diff --git a/apis/cognitiveservices/v1beta1/zz_account_types.go b/apis/cognitiveservices/v1beta1/zz_account_types.go index e28e610bf..1018f028e 100755 --- a/apis/cognitiveservices/v1beta1/zz_account_types.go +++ b/apis/cognitiveservices/v1beta1/zz_account_types.go @@ -151,6 +151,7 @@ type AccountObservation struct { type AccountParameters struct { // If kind is TextAnalytics this specifies the ID of the Search service. + // +kubebuilder:validation:Optional CustomQuestionAnsweringSearchServiceID *string `json:"customQuestionAnsweringSearchServiceId,omitempty" tf:"custom_question_answering_search_service_id,omitempty"` // If kind is TextAnalytics this specifies the key of the Search service. @@ -158,51 +159,67 @@ type AccountParameters struct { CustomQuestionAnsweringSearchServiceKeySecretRef *v1.SecretKeySelector `json:"customQuestionAnsweringSearchServiceKeySecretRef,omitempty" tf:"-"` // The subdomain name used for token-based authentication. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional CustomSubdomainName *string `json:"customSubdomainName,omitempty" tf:"custom_subdomain_name,omitempty"` // A customer_managed_key block as documented below. + // +kubebuilder:validation:Optional CustomerManagedKey []CustomerManagedKeyParameters `json:"customerManagedKey,omitempty" tf:"customer_managed_key,omitempty"` // Whether to enable the dynamic throttling for this Cognitive Service Account. + // +kubebuilder:validation:Optional DynamicThrottlingEnabled *bool `json:"dynamicThrottlingEnabled,omitempty" tf:"dynamic_throttling_enabled,omitempty"` // List of FQDNs allowed for the Cognitive Account. + // +kubebuilder:validation:Optional Fqdns []*string `json:"fqdns,omitempty" tf:"fqdns,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // Specifies the type of Cognitive Service Account that should be created. Possible values are Academic, AnomalyDetector, Bing.Autosuggest, Bing.Autosuggest.v7, Bing.CustomSearch, Bing.Search, Bing.Search.v7, Bing.Speech, Bing.SpellCheck, Bing.SpellCheck.v7, CognitiveServices, ComputerVision, ContentModerator, CustomSpeech, CustomVision.Prediction, CustomVision.Training, Emotion, Face, FormRecognizer, ImmersiveReader, LUIS, LUIS.Authoring, MetricsAdvisor, OpenAI, Personalizer, QnAMaker, Recommendations, SpeakerRecognition, Speech, SpeechServices, SpeechTranslation, TextAnalytics, TextTranslation and WebLM. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Kind *string `json:"kind,omitempty" tf:"kind,omitempty"` // Whether local authentication methods is enabled for the Cognitive Account. Defaults to true. + // +kubebuilder:validation:Optional LocalAuthEnabled *bool `json:"localAuthEnabled,omitempty" tf:"local_auth_enabled,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The Azure AD Client ID (Application ID). This attribute is only set when kind is MetricsAdvisor. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional MetricsAdvisorAADClientID *string `json:"metricsAdvisorAadClientId,omitempty" tf:"metrics_advisor_aad_client_id,omitempty"` // The Azure AD Tenant ID. This attribute is only set when kind is MetricsAdvisor. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional MetricsAdvisorAADTenantID *string `json:"metricsAdvisorAadTenantId,omitempty" tf:"metrics_advisor_aad_tenant_id,omitempty"` // The super user of Metrics Advisor. This attribute is only set when kind is MetricsAdvisor. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional MetricsAdvisorSuperUserName *string `json:"metricsAdvisorSuperUserName,omitempty" tf:"metrics_advisor_super_user_name,omitempty"` // The website name of Metrics Advisor. This attribute is only set when kind is MetricsAdvisor. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional MetricsAdvisorWebsiteName *string `json:"metricsAdvisorWebsiteName,omitempty" tf:"metrics_advisor_website_name,omitempty"` // A network_acls block as defined below. + // +kubebuilder:validation:Optional NetworkAcls []NetworkAclsParameters `json:"networkAcls,omitempty" tf:"network_acls,omitempty"` // Whether outbound network access is restricted for the Cognitive Account. Defaults to false. + // +kubebuilder:validation:Optional OutboundNetworkAccessRestricted *bool `json:"outboundNetworkAccessRestricted,omitempty" tf:"outbound_network_access_restricted,omitempty"` // Whether public network access is allowed for the Cognitive Account. Defaults to true. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // A URL to link a QnAMaker cognitive account to a QnA runtime. + // +kubebuilder:validation:Optional QnaRuntimeEndpoint *string `json:"qnaRuntimeEndpoint,omitempty" tf:"qna_runtime_endpoint,omitempty"` // The name of the resource group in which the Cognitive Service Account is created. Changing this forces a new resource to be created. @@ -219,12 +236,15 @@ type AccountParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Specifies the SKU Name for this Cognitive Service Account. Possible values are F0, F1, S0, S, S1, S2, S3, S4, S5, S6, P0, P1, P2, E0 and DC0. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // A storage block as defined below. + // +kubebuilder:validation:Optional Storage []StorageParameters `json:"storage,omitempty" tf:"storage,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -249,9 +269,11 @@ type CustomerManagedKeyObservation struct { type CustomerManagedKeyParameters struct { // The Client ID of the User Assigned Identity that has access to the key. This property only needs to be specified when there're multiple identities attached to the Cognitive Account. + // +kubebuilder:validation:Optional IdentityClientID *string `json:"identityClientId,omitempty" tf:"identity_client_id,omitempty"` // The ID of the Key Vault Key which should be used to Encrypt the data in this Cognitive Account. + // +kubebuilder:validation:Optional KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"` } @@ -282,9 +304,11 @@ type IdentityObservation struct { type IdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Cognitive Account. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Cognitive Account. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -315,12 +339,15 @@ type NetworkAclsObservation struct { type NetworkAclsParameters struct { // The Default Action to use when no rules match from ip_rules / virtual_network_rules. Possible values are Allow and Deny. + // +kubebuilder:validation:Optional DefaultAction *string `json:"defaultAction,omitempty" tf:"default_action,omitempty"` // One or more IP Addresses, or CIDR Blocks which should be able to access the Cognitive Account. + // +kubebuilder:validation:Optional IPRules []*string `json:"ipRules,omitempty" tf:"ip_rules,omitempty"` // A virtual_network_rules block as defined below. + // +kubebuilder:validation:Optional VirtualNetworkRules []VirtualNetworkRulesParameters `json:"virtualNetworkRules,omitempty" tf:"virtual_network_rules,omitempty"` } @@ -345,9 +372,11 @@ type StorageObservation struct { type StorageParameters struct { // The client ID of the managed identity associated with the storage resource. + // +kubebuilder:validation:Optional IdentityClientID *string `json:"identityClientId,omitempty" tf:"identity_client_id,omitempty"` // Full resource id of a Microsoft.Storage resource. + // +kubebuilder:validation:Optional StorageAccountID *string `json:"storageAccountId,omitempty" tf:"storage_account_id,omitempty"` } @@ -369,6 +398,7 @@ type VirtualNetworkRulesObservation struct { type VirtualNetworkRulesParameters struct { // Whether ignore missing vnet service endpoint or not. Default to false. + // +kubebuilder:validation:Optional IgnoreMissingVnetServiceEndpoint *bool `json:"ignoreMissingVnetServiceEndpoint,omitempty" tf:"ignore_missing_vnet_service_endpoint,omitempty"` // The ID of the subnet which should be able to access this Cognitive Account. diff --git a/apis/communication/v1beta1/zz_service_types.go b/apis/communication/v1beta1/zz_service_types.go index ccd6177b1..3af999840 100755 --- a/apis/communication/v1beta1/zz_service_types.go +++ b/apis/communication/v1beta1/zz_service_types.go @@ -52,6 +52,7 @@ type ServiceObservation struct { type ServiceParameters struct { // The location where the Communication service stores its data at rest. Possible values are Africa, Asia Pacific, Australia, Brazil, Canada, Europe, France, Germany, India, Japan, Korea, Norway, Switzerland, UAE, UK and United States. Defaults to United States. Changing this forces a new Communication Service to be created. + // +kubebuilder:validation:Optional DataLocation *string `json:"dataLocation,omitempty" tf:"data_location,omitempty"` // The name of the Resource Group where the Communication Service should exist. Changing this forces a new Communication Service to be created. @@ -68,6 +69,7 @@ type ServiceParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the Communication Service. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/compute/v1beta1/zz_availabilityset_types.go b/apis/compute/v1beta1/zz_availabilityset_types.go index 9cd90c67a..94fefe471 100755 --- a/apis/compute/v1beta1/zz_availabilityset_types.go +++ b/apis/compute/v1beta1/zz_availabilityset_types.go @@ -64,18 +64,23 @@ type AvailabilitySetObservation struct { type AvailabilitySetParameters struct { // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies whether the availability set is managed or not. Possible values are true (to specify aligned) or false (to specify classic). Default is true. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Managed *bool `json:"managed,omitempty" tf:"managed,omitempty"` // Specifies the number of fault domains that are used. Defaults to 3. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PlatformFaultDomainCount *float64 `json:"platformFaultDomainCount,omitempty" tf:"platform_fault_domain_count,omitempty"` // Specifies the number of update domains that are used. Defaults to 5. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PlatformUpdateDomainCount *float64 `json:"platformUpdateDomainCount,omitempty" tf:"platform_update_domain_count,omitempty"` // The ID of the Proximity Placement Group to which this Virtual Machine should be assigned. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ProximityPlacementGroupID *string `json:"proximityPlacementGroupId,omitempty" tf:"proximity_placement_group_id,omitempty"` // The name of the resource group in which to create the availability set. Changing this forces a new resource to be created. @@ -92,6 +97,7 @@ type AvailabilitySetParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/compute/v1beta1/zz_capacityreservation_types.go b/apis/compute/v1beta1/zz_capacityreservation_types.go index 006c8bf87..272dcf977 100755 --- a/apis/compute/v1beta1/zz_capacityreservation_types.go +++ b/apis/compute/v1beta1/zz_capacityreservation_types.go @@ -60,12 +60,15 @@ type CapacityReservationParameters struct { CapacityReservationGroupIDSelector *v1.Selector `json:"capacityReservationGroupIdSelector,omitempty" tf:"-"` // A sku block as defined below. + // +kubebuilder:validation:Optional Sku []SkuParameters `json:"sku,omitempty" tf:"sku,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the Availability Zone for this Capacity Reservation. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` } @@ -90,9 +93,11 @@ type SkuObservation struct { type SkuParameters struct { // Specifies the number of instances to be reserved. It must be a positive integer and not exceed the quota in the subscription. + // +kubebuilder:validation:Optional Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` // Name of the sku, such as Standard_F2. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } diff --git a/apis/compute/v1beta1/zz_capacityreservationgroup_types.go b/apis/compute/v1beta1/zz_capacityreservationgroup_types.go index 41cb3e892..a82d774cf 100755 --- a/apis/compute/v1beta1/zz_capacityreservationgroup_types.go +++ b/apis/compute/v1beta1/zz_capacityreservationgroup_types.go @@ -46,6 +46,7 @@ type CapacityReservationGroupObservation struct { type CapacityReservationGroupParameters struct { // The Azure location where the Capacity Reservation Group exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the name of the resource group the Capacity Reservation Group is located in. Changing this forces a new resource to be created. @@ -62,9 +63,11 @@ type CapacityReservationGroupParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies a list of Availability Zones for this Capacity Reservation Group. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } diff --git a/apis/compute/v1beta1/zz_dedicatedhost_types.go b/apis/compute/v1beta1/zz_dedicatedhost_types.go index 33a42de3a..dcc4ee0da 100755 --- a/apis/compute/v1beta1/zz_dedicatedhost_types.go +++ b/apis/compute/v1beta1/zz_dedicatedhost_types.go @@ -64,6 +64,7 @@ type DedicatedHostObservation struct { type DedicatedHostParameters struct { // Should the Dedicated Host automatically be replaced in case of a Hardware Failure? Defaults to true. + // +kubebuilder:validation:Optional AutoReplaceOnFailure *bool `json:"autoReplaceOnFailure,omitempty" tf:"auto_replace_on_failure,omitempty"` // Specifies the ID of the Dedicated Host Group where the Dedicated Host should exist. Changing this forces a new resource to be created. @@ -71,18 +72,23 @@ type DedicatedHostParameters struct { DedicatedHostGroupID *string `json:"dedicatedHostGroupId" tf:"dedicated_host_group_id,omitempty"` // Specifies the software license type that will be applied to the VMs deployed on the Dedicated Host. Possible values are None, Windows_Server_Hybrid and Windows_Server_Perpetual. Defaults to None. + // +kubebuilder:validation:Optional LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"` // Specify the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specify the fault domain of the Dedicated Host Group in which to create the Dedicated Host. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PlatformFaultDomain *float64 `json:"platformFaultDomain,omitempty" tf:"platform_fault_domain,omitempty"` // Specify the SKU name of the Dedicated Host. Possible values are DADSv5-Type1, DASv4-Type1, DASv4-Type2, DASv5-Type1, DCSv2-Type1, DDSv4-Type1, DDSv4-Type2, DDSv5-Type1, DSv3-Type1, DSv3-Type2, DSv3-Type3, DSv3-Type4, DSv4-Type1, DSv4-Type2, DSv5-Type1, EADSv5-Type1, EASv4-Type1, EASv4-Type2, EASv5-Type1, EDSv4-Type1, EDSv4-Type2, EDSv5-Type1, ESv3-Type1, ESv3-Type2, ESv3-Type3, ESv3-Type4, ESv4-Type1, ESv4-Type2, ESv5-Type1, FSv2-Type2, FSv2-Type3, FSv2-Type4, FXmds-Type1, LSv2-Type1, LSv3-Type1, MDMSv2MedMem-Type1, MDSv2MedMem-Type1, MMSv2MedMem-Type1, MS-Type1, MSm-Type1, MSmv2-Type1, MSv2-Type1, MSv2MedMem-Type1, NVASv4-Type1 and NVSv3-Type1. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/compute/v1beta1/zz_diskaccess_types.go b/apis/compute/v1beta1/zz_diskaccess_types.go index 10219f180..c7b5a4937 100755 --- a/apis/compute/v1beta1/zz_diskaccess_types.go +++ b/apis/compute/v1beta1/zz_diskaccess_types.go @@ -40,6 +40,7 @@ type DiskAccessObservation struct { type DiskAccessParameters struct { // The Azure Region where the Disk Access should exist. Changing this forces a new Disk to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the Resource Group where the Disk Access should exist. Changing this forces a new Disk Access to be created. @@ -56,6 +57,7 @@ type DiskAccessParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the Disk Access. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/compute/v1beta1/zz_diskencryptionset_types.go b/apis/compute/v1beta1/zz_diskencryptionset_types.go index a494dccf2..a39893660 100755 --- a/apis/compute/v1beta1/zz_diskencryptionset_types.go +++ b/apis/compute/v1beta1/zz_diskencryptionset_types.go @@ -67,15 +67,19 @@ type DiskEncryptionSetObservation struct { type DiskEncryptionSetParameters struct { // Boolean flag to specify whether Azure Disk Encryption Set automatically rotates encryption Key to latest version. + // +kubebuilder:validation:Optional AutoKeyRotationEnabled *bool `json:"autoKeyRotationEnabled,omitempty" tf:"auto_key_rotation_enabled,omitempty"` // The type of key used to encrypt the data of the disk. Possible values are EncryptionAtRestWithCustomerKey, EncryptionAtRestWithPlatformAndCustomerKeys and ConfidentialVmEncryptedWithCustomerKey. Defaults to EncryptionAtRestWithCustomerKey. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional EncryptionType *string `json:"encryptionType,omitempty" tf:"encryption_type,omitempty"` // Multi-tenant application client id to access key vault in a different tenant. + // +kubebuilder:validation:Optional FederatedClientID *string `json:"federatedClientId,omitempty" tf:"federated_client_id,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // Specifies the URL to a Key Vault Key (either from a Key Vault Key, or the Key URL for the Key Vault Secret). @@ -93,6 +97,7 @@ type DiskEncryptionSetParameters struct { KeyVaultKeyIDSelector *v1.Selector `json:"keyVaultKeyIdSelector,omitempty" tf:"-"` // Specifies the Azure Region where the Disk Encryption Set exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the name of the Resource Group where the Disk Encryption Set should exist. Changing this forces a new resource to be created. @@ -109,6 +114,7 @@ type DiskEncryptionSetParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the Disk Encryption Set. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -139,9 +145,11 @@ type IdentityObservation struct { type IdentityParameters struct { // A list of User Assigned Managed Identity IDs to be assigned to this Disk Encryption Set. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // The type of Managed Service Identity that is configured on this Disk Encryption Set. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/compute/v1beta1/zz_galleryapplication_types.go b/apis/compute/v1beta1/zz_galleryapplication_types.go index ae0f2adb0..724a76b9f 100755 --- a/apis/compute/v1beta1/zz_galleryapplication_types.go +++ b/apis/compute/v1beta1/zz_galleryapplication_types.go @@ -76,12 +76,15 @@ type GalleryApplicationObservation struct { type GalleryApplicationParameters struct { // A description of the Gallery Application. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The end of life date in RFC3339 format of the Gallery Application. + // +kubebuilder:validation:Optional EndOfLifeDate *string `json:"endOfLifeDate,omitempty" tf:"end_of_life_date,omitempty"` // The End User Licence Agreement of the Gallery Application. + // +kubebuilder:validation:Optional Eula *string `json:"eula,omitempty" tf:"eula,omitempty"` // The ID of the Shared Image Gallery. Changing this forces a new resource to be created. @@ -99,18 +102,23 @@ type GalleryApplicationParameters struct { GalleryIDSelector *v1.Selector `json:"galleryIdSelector,omitempty" tf:"-"` // The Azure Region where the Gallery Application exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The URI containing the Privacy Statement associated with the Gallery Application. + // +kubebuilder:validation:Optional PrivacyStatementURI *string `json:"privacyStatementUri,omitempty" tf:"privacy_statement_uri,omitempty"` // The URI containing the Release Notes associated with the Gallery Application. + // +kubebuilder:validation:Optional ReleaseNoteURI *string `json:"releaseNoteUri,omitempty" tf:"release_note_uri,omitempty"` // The type of the Operating System supported for the Gallery Application. Possible values are Linux and Windows. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SupportedOsType *string `json:"supportedOsType,omitempty" tf:"supported_os_type,omitempty"` // A mapping of tags to assign to the Gallery Application. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/compute/v1beta1/zz_galleryapplicationversion_types.go b/apis/compute/v1beta1/zz_galleryapplicationversion_types.go index cdf24c470..3f3e8a3bb 100755 --- a/apis/compute/v1beta1/zz_galleryapplicationversion_types.go +++ b/apis/compute/v1beta1/zz_galleryapplicationversion_types.go @@ -82,12 +82,15 @@ type GalleryApplicationVersionObservation struct { type GalleryApplicationVersionParameters struct { // Should the Gallery Application reports health. Defaults to false. + // +kubebuilder:validation:Optional EnableHealthCheck *bool `json:"enableHealthCheck,omitempty" tf:"enable_health_check,omitempty"` // The end of life date in RFC3339 format of the Gallery Application Version. + // +kubebuilder:validation:Optional EndOfLifeDate *string `json:"endOfLifeDate,omitempty" tf:"end_of_life_date,omitempty"` // Should the Gallery Application Version be excluded from the latest filter? If set to true this Gallery Application Version won't be returned for the latest version. Defaults to false. + // +kubebuilder:validation:Optional ExcludeFromLatest *bool `json:"excludeFromLatest,omitempty" tf:"exclude_from_latest,omitempty"` // The ID of the Gallery Application. Changing this forces a new resource to be created. @@ -105,21 +108,27 @@ type GalleryApplicationVersionParameters struct { GalleryApplicationIDSelector *v1.Selector `json:"galleryApplicationIdSelector,omitempty" tf:"-"` // The Azure Region where the Gallery Application Version exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // A manage_action block as defined below. + // +kubebuilder:validation:Optional ManageAction []ManageActionParameters `json:"manageAction,omitempty" tf:"manage_action,omitempty"` // The version name of the Gallery Application Version, such as 1.0.0. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A source block as defined below. + // +kubebuilder:validation:Optional Source []SourceParameters `json:"source,omitempty" tf:"source,omitempty"` // A mapping of tags to assign to the Gallery Application Version. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // One or more target_region blocks as defined below. + // +kubebuilder:validation:Optional TargetRegion []TargetRegionParameters `json:"targetRegion,omitempty" tf:"target_region,omitempty"` } @@ -150,12 +159,15 @@ type ManageActionObservation struct { type ManageActionParameters struct { // The command to install the Gallery Application. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Install *string `json:"install,omitempty" tf:"install,omitempty"` // The command to remove the Gallery Application. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Remove *string `json:"remove,omitempty" tf:"remove,omitempty"` // The command to update the Gallery Application. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Update *string `json:"update,omitempty" tf:"update,omitempty"` } @@ -177,6 +189,7 @@ type SourceObservation struct { type SourceParameters struct { // The Storage Blob URI of the default configuration. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DefaultConfigurationLink *string `json:"defaultConfigurationLink,omitempty" tf:"default_configuration_link,omitempty"` // The Storage Blob URI of the source application package. Changing this forces a new resource to be created. @@ -232,9 +245,11 @@ type TargetRegionParameters struct { NameSelector *v1.Selector `json:"nameSelector,omitempty" tf:"-"` // The number of replicas of the Gallery Application Version to be created per region. Possible values are between 1 and 10. + // +kubebuilder:validation:Optional RegionalReplicaCount *float64 `json:"regionalReplicaCount,omitempty" tf:"regional_replica_count,omitempty"` // The storage account type for the Gallery Application Version. Possible values are Standard_LRS, Premium_LRS and Standard_ZRS. Defaults to Standard_LRS. + // +kubebuilder:validation:Optional StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"` } diff --git a/apis/compute/v1beta1/zz_image_types.go b/apis/compute/v1beta1/zz_image_types.go index 41109a2f6..a5a60fd0f 100755 --- a/apis/compute/v1beta1/zz_image_types.go +++ b/apis/compute/v1beta1/zz_image_types.go @@ -52,18 +52,23 @@ type DataDiskObservation struct { type DataDiskParameters struct { // Specifies the URI in Azure storage of the blob that you want to use to create the image. + // +kubebuilder:validation:Optional BlobURI *string `json:"blobUri,omitempty" tf:"blob_uri,omitempty"` // Specifies the caching mode as ReadWrite, ReadOnly, or None. The default is None. + // +kubebuilder:validation:Optional Caching *string `json:"caching,omitempty" tf:"caching,omitempty"` // Specifies the logical unit number of the data disk. + // +kubebuilder:validation:Optional Lun *float64 `json:"lun,omitempty" tf:"lun,omitempty"` // Specifies the ID of the managed disk resource that you want to use to create the image. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ManagedDiskID *string `json:"managedDiskId,omitempty" tf:"managed_disk_id,omitempty"` // Specifies the size of the image to be created. The target size can't be smaller than the source size. + // +kubebuilder:validation:Optional SizeGb *float64 `json:"sizeGb,omitempty" tf:"size_gb,omitempty"` } @@ -127,16 +132,20 @@ type ImageObservation struct { type ImageParameters struct { // One or more data_disk elements as defined below. + // +kubebuilder:validation:Optional DataDisk []DataDiskParameters `json:"dataDisk,omitempty" tf:"data_disk,omitempty"` // The HyperVGenerationType of the VirtualMachine created from the image as V1, V2. The default is V1. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional HyperVGeneration *string `json:"hyperVGeneration,omitempty" tf:"hyper_v_generation,omitempty"` // Specified the supported Azure location where the resource exists. Changing this forces a new resource to be created. // Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // One or more os_disk elements as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional OsDisk []OsDiskParameters `json:"osDisk,omitempty" tf:"os_disk,omitempty"` // The name of the resource group in which to create. Changing this forces a new resource to be created. @@ -154,12 +163,15 @@ type ImageParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The Virtual Machine ID from which to create the image. + // +kubebuilder:validation:Optional SourceVirtualMachineID *string `json:"sourceVirtualMachineId,omitempty" tf:"source_virtual_machine_id,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Is zone resiliency enabled? Defaults to false. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ZoneResilient *bool `json:"zoneResilient,omitempty" tf:"zone_resilient,omitempty"` } @@ -208,21 +220,27 @@ type OsDiskObservation struct { type OsDiskParameters struct { // Specifies the URI in Azure storage of the blob that you want to use to create the image. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional BlobURI *string `json:"blobUri,omitempty" tf:"blob_uri,omitempty"` // Specifies the caching mode as ReadWrite, ReadOnly, or None. The default is None. + // +kubebuilder:validation:Optional Caching *string `json:"caching,omitempty" tf:"caching,omitempty"` // Specifies the ID of the managed disk resource that you want to use to create the image. + // +kubebuilder:validation:Optional ManagedDiskID *string `json:"managedDiskId,omitempty" tf:"managed_disk_id,omitempty"` // Specifies the state of the operating system contained in the blob. Currently, the only value is Generalized. Possible values are Generalized and Specialized. + // +kubebuilder:validation:Optional OsState *string `json:"osState,omitempty" tf:"os_state,omitempty"` // Specifies the type of operating system contained in the virtual machine image. Possible values are: Windows or Linux. + // +kubebuilder:validation:Optional OsType *string `json:"osType,omitempty" tf:"os_type,omitempty"` // Specifies the size of the image to be created. The target size can't be smaller than the source size. + // +kubebuilder:validation:Optional SizeGb *float64 `json:"sizeGb,omitempty" tf:"size_gb,omitempty"` } diff --git a/apis/compute/v1beta1/zz_linuxvirtualmachine_types.go b/apis/compute/v1beta1/zz_linuxvirtualmachine_types.go index 5b93184d4..48c0185c1 100755 --- a/apis/compute/v1beta1/zz_linuxvirtualmachine_types.go +++ b/apis/compute/v1beta1/zz_linuxvirtualmachine_types.go @@ -28,6 +28,7 @@ type AdditionalCapabilitiesObservation struct { type AdditionalCapabilitiesParameters struct { // Should the capacity to enable Data Disks of the UltraSSD_LRS storage account type be supported on this Virtual Machine? Defaults to false. + // +kubebuilder:validation:Optional UltraSsdEnabled *bool `json:"ultraSsdEnabled,omitempty" tf:"ultra_ssd_enabled,omitempty"` } @@ -52,9 +53,11 @@ type AdminSSHKeyObservation struct { type AdminSSHKeyParameters struct { // The Public Key which should be used for authentication, which needs to be at least 2048-bit and in ssh-rsa format. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PublicKey *string `json:"publicKey,omitempty" tf:"public_key,omitempty"` // The Username for which this Public SSH Key should be configured. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } @@ -73,6 +76,7 @@ type BootDiagnosticsObservation struct { type BootDiagnosticsParameters struct { // The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor. + // +kubebuilder:validation:Optional StorageAccountURI *string `json:"storageAccountUri,omitempty" tf:"storage_account_uri,omitempty"` } @@ -91,6 +95,7 @@ type CertificateObservation struct { type CertificateParameters struct { // The Secret URL of a Key Vault Certificate. + // +kubebuilder:validation:Optional URL *string `json:"url,omitempty" tf:"url,omitempty"` } @@ -115,9 +120,11 @@ type DiffDiskSettingsObservation struct { type DiffDiskSettingsParameters struct { // Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is Local. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Option *string `json:"option,omitempty" tf:"option,omitempty"` // Specifies where to store the Ephemeral Disk. Possible values are CacheDisk and ResourceDisk. Defaults to CacheDisk. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Placement *string `json:"placement,omitempty" tf:"placement,omitempty"` } @@ -154,15 +161,19 @@ type LinuxVirtualMachineGalleryApplicationObservation struct { type LinuxVirtualMachineGalleryApplicationParameters struct { // Specifies the URI to an Azure Blob that will replace the default configuration for the package if provided. + // +kubebuilder:validation:Optional ConfigurationBlobURI *string `json:"configurationBlobUri,omitempty" tf:"configuration_blob_uri,omitempty"` // Specifies the order in which the packages have to be installed. Possible values are between 0 and 2,147,483,647. + // +kubebuilder:validation:Optional Order *float64 `json:"order,omitempty" tf:"order,omitempty"` // Specifies a passthrough value for more generic context. This field can be any valid string value. + // +kubebuilder:validation:Optional Tag *string `json:"tag,omitempty" tf:"tag,omitempty"` // Specifies the Gallery Application Version resource ID. + // +kubebuilder:validation:Optional VersionID *string `json:"versionId,omitempty" tf:"version_id,omitempty"` } @@ -193,9 +204,11 @@ type LinuxVirtualMachineIdentityObservation struct { type LinuxVirtualMachineIdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Linux Virtual Machine. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Linux Virtual Machine. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -526,36 +539,46 @@ type LinuxVirtualMachineOsDiskObservation struct { type LinuxVirtualMachineOsDiskParameters struct { // The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite. + // +kubebuilder:validation:Optional Caching *string `json:"caching,omitempty" tf:"caching,omitempty"` // A diff_disk_settings block as defined above. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DiffDiskSettings []DiffDiskSettingsParameters `json:"diffDiskSettings,omitempty" tf:"diff_disk_settings,omitempty"` // The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id. + // +kubebuilder:validation:Optional DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"` // The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine is sourced from. + // +kubebuilder:validation:Optional DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"` // The name which should be used for the Internal OS Disk. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk when the Virtual Machine is a Confidential VM. Conflicts with disk_encryption_set_id. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SecureVMDiskEncryptionSetID *string `json:"secureVmDiskEncryptionSetId,omitempty" tf:"secure_vm_disk_encryption_set_id,omitempty"` // Encryption Type when the Virtual Machine is a Confidential VM. Possible values are VMGuestStateOnly and DiskWithVMGuestState. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SecurityEncryptionType *string `json:"securityEncryptionType,omitempty" tf:"security_encryption_type,omitempty"` // The Type of Storage Account which should back this the Internal OS Disk. Possible values are Standard_LRS, StandardSSD_LRS, Premium_LRS, StandardSSD_ZRS and Premium_ZRS. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"` // Should Write Accelerator be Enabled for this OS Disk? Defaults to false. + // +kubebuilder:validation:Optional WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"` } type LinuxVirtualMachineParameters struct { // A additional_capabilities block as defined below. + // +kubebuilder:validation:Optional AdditionalCapabilities []AdditionalCapabilitiesParameters `json:"additionalCapabilities,omitempty" tf:"additional_capabilities,omitempty"` // The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created. @@ -563,24 +586,31 @@ type LinuxVirtualMachineParameters struct { AdminPasswordSecretRef *v1.SecretKeySelector `json:"adminPasswordSecretRef,omitempty" tf:"-"` // One or more admin_ssh_key blocks as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional AdminSSHKey []AdminSSHKeyParameters `json:"adminSshKey,omitempty" tf:"admin_ssh_key,omitempty"` // The username of the local administrator used for the Virtual Machine. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"` // Should Extension Operations be allowed on this Virtual Machine? Defaults to true. + // +kubebuilder:validation:Optional AllowExtensionOperations *bool `json:"allowExtensionOperations,omitempty" tf:"allow_extension_operations,omitempty"` // Specifies the ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional AvailabilitySetID *string `json:"availabilitySetId,omitempty" tf:"availability_set_id,omitempty"` // A boot_diagnostics block as defined below. + // +kubebuilder:validation:Optional BootDiagnostics []BootDiagnosticsParameters `json:"bootDiagnostics,omitempty" tf:"boot_diagnostics,omitempty"` // Specifies the ID of the Capacity Reservation Group which the Virtual Machine should be allocated to. + // +kubebuilder:validation:Optional CapacityReservationGroupID *string `json:"capacityReservationGroupId,omitempty" tf:"capacity_reservation_group_id,omitempty"` // Specifies the Hostname which should be used for this Virtual Machine. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name, then you must specify computer_name. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ComputerName *string `json:"computerName,omitempty" tf:"computer_name,omitempty"` // The Base64-Encoded Custom Data which should be used for this Virtual Machine. Changing this forces a new resource to be created. @@ -588,39 +618,51 @@ type LinuxVirtualMachineParameters struct { CustomDataSecretRef *v1.SecretKeySelector `json:"customDataSecretRef,omitempty" tf:"-"` // The ID of a Dedicated Host Group that this Linux Virtual Machine should be run within. Conflicts with dedicated_host_id. + // +kubebuilder:validation:Optional DedicatedHostGroupID *string `json:"dedicatedHostGroupId,omitempty" tf:"dedicated_host_group_id,omitempty"` // The ID of a Dedicated Host where this machine should be run on. Conflicts with dedicated_host_group_id. + // +kubebuilder:validation:Optional DedicatedHostID *string `json:"dedicatedHostId,omitempty" tf:"dedicated_host_id,omitempty"` // Should Password Authentication be disabled on this Virtual Machine? Defaults to true. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DisablePasswordAuthentication *bool `json:"disablePasswordAuthentication,omitempty" tf:"disable_password_authentication,omitempty"` // Specifies the Edge Zone within the Azure Region where this Linux Virtual Machine should exist. Changing this forces a new Linux Virtual Machine to be created. + // +kubebuilder:validation:Optional EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"` // Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host? + // +kubebuilder:validation:Optional EncryptionAtHostEnabled *bool `json:"encryptionAtHostEnabled,omitempty" tf:"encryption_at_host_enabled,omitempty"` // Specifies what should happen when the Virtual Machine is evicted for price reasons when using a Spot instance. Possible values are Deallocate and Delete. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional EvictionPolicy *string `json:"evictionPolicy,omitempty" tf:"eviction_policy,omitempty"` // Specifies the duration allocated for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. Defaults to 90 minutes (PT1H30M). + // +kubebuilder:validation:Optional ExtensionsTimeBudget *string `json:"extensionsTimeBudget,omitempty" tf:"extensions_time_budget,omitempty"` // One or more gallery_application blocks as defined below. + // +kubebuilder:validation:Optional GalleryApplication []LinuxVirtualMachineGalleryApplicationParameters `json:"galleryApplication,omitempty" tf:"gallery_application,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []LinuxVirtualMachineIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // Specifies the BYOL Type for this Virtual Machine. Possible values are RHEL_BYOS and SLES_BYOS. + // +kubebuilder:validation:Optional LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"` // The Azure location where the Linux Virtual Machine should exist. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The maximum price you're willing to pay for this Virtual Machine, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machine will be evicted using the eviction_policy. Defaults to -1, which means that the Virtual Machine should not be evicted for price reasons. + // +kubebuilder:validation:Optional MaxBidPrice *float64 `json:"maxBidPrice,omitempty" tf:"max_bid_price,omitempty"` // . A list of Network Interface IDs which should be attached to this Virtual Machine. The first Network Interface ID in this list will be the Primary Network Interface on the Virtual Machine. @@ -638,27 +680,35 @@ type LinuxVirtualMachineParameters struct { NetworkInterfaceIdsSelector *v1.Selector `json:"networkInterfaceIdsSelector,omitempty" tf:"-"` // A os_disk block as defined below. + // +kubebuilder:validation:Optional OsDisk []LinuxVirtualMachineOsDiskParameters `json:"osDisk,omitempty" tf:"os_disk,omitempty"` // Specifies the mode of VM Guest Patching for the Virtual Machine. Possible values are AutomaticByPlatform or ImageDefault. Defaults to ImageDefault. + // +kubebuilder:validation:Optional PatchAssessmentMode *string `json:"patchAssessmentMode,omitempty" tf:"patch_assessment_mode,omitempty"` // Specifies the mode of in-guest patching to this Linux Virtual Machine. Possible values are AutomaticByPlatform and ImageDefault. Defaults to ImageDefault. For more information on patch modes please see the product documentation. + // +kubebuilder:validation:Optional PatchMode *string `json:"patchMode,omitempty" tf:"patch_mode,omitempty"` // A plan block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Plan []PlanParameters `json:"plan,omitempty" tf:"plan,omitempty"` // Specifies the Platform Fault Domain in which this Linux Virtual Machine should be created. Defaults to -1, which means this will be automatically assigned to a fault domain that best maintains balance across the available fault domains. Changing this forces a new Linux Virtual Machine to be created. + // +kubebuilder:validation:Optional PlatformFaultDomain *float64 `json:"platformFaultDomain,omitempty" tf:"platform_fault_domain,omitempty"` // Specifies the priority of this Virtual Machine. Possible values are Regular and Spot. Defaults to Regular. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Priority *string `json:"priority,omitempty" tf:"priority,omitempty"` // Should the Azure VM Agent be provisioned on this Virtual Machine? Defaults to true. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ProvisionVMAgent *bool `json:"provisionVmAgent,omitempty" tf:"provision_vm_agent,omitempty"` // The ID of the Proximity Placement Group which the Virtual Machine should be assigned to. + // +kubebuilder:validation:Optional ProximityPlacementGroupID *string `json:"proximityPlacementGroupId,omitempty" tf:"proximity_placement_group_id,omitempty"` // The name of the Resource Group in which the Linux Virtual Machine should be exist. Changing this forces a new resource to be created. @@ -675,36 +725,47 @@ type LinuxVirtualMachineParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // One or more secret blocks as defined below. + // +kubebuilder:validation:Optional Secret []SecretParameters `json:"secret,omitempty" tf:"secret,omitempty"` // Specifies whether secure boot should be enabled on the virtual machine. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SecureBootEnabled *bool `json:"secureBootEnabled,omitempty" tf:"secure_boot_enabled,omitempty"` // The SKU which should be used for this Virtual Machine, such as Standard_F2. + // +kubebuilder:validation:Optional Size *string `json:"size,omitempty" tf:"size,omitempty"` // The ID of the Image which this Virtual Machine should be created from. Changing this forces a new resource to be created. Possible Image ID types include Image IDs, Shared Image IDs, Shared Image Version IDs, Community Gallery Image IDs, Community Gallery Image Version IDs, Shared Gallery Image IDs and Shared Gallery Image Version IDs. + // +kubebuilder:validation:Optional SourceImageID *string `json:"sourceImageId,omitempty" tf:"source_image_id,omitempty"` // A source_image_reference block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SourceImageReference []SourceImageReferenceParameters `json:"sourceImageReference,omitempty" tf:"source_image_reference,omitempty"` // A mapping of tags which should be assigned to this Virtual Machine. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // A termination_notification block as defined below. + // +kubebuilder:validation:Optional TerminationNotification []TerminationNotificationParameters `json:"terminationNotification,omitempty" tf:"termination_notification,omitempty"` // The Base64-Encoded User Data which should be used for this Virtual Machine. + // +kubebuilder:validation:Optional UserData *string `json:"userData,omitempty" tf:"user_data,omitempty"` // Specifies the Orchestrated Virtual Machine Scale Set that this Virtual Machine should be created within. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VirtualMachineScaleSetID *string `json:"virtualMachineScaleSetId,omitempty" tf:"virtual_machine_scale_set_id,omitempty"` // Specifies whether vTPM should be enabled on the virtual machine. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VtpmEnabled *bool `json:"vtpmEnabled,omitempty" tf:"vtpm_enabled,omitempty"` // Specifies the Availability Zones in which this Linux Virtual Machine should be located. Changing this forces a new Linux Virtual Machine to be created. + // +kubebuilder:validation:Optional Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` } @@ -735,12 +796,15 @@ type PlanObservation struct { type PlanParameters struct { // Specifies the Name of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the Product of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Product *string `json:"product,omitempty" tf:"product,omitempty"` // Specifies the Publisher of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` } @@ -765,9 +829,11 @@ type SecretObservation struct { type SecretParameters struct { // One or more certificate blocks as defined above. + // +kubebuilder:validation:Optional Certificate []CertificateParameters `json:"certificate,omitempty" tf:"certificate,omitempty"` // The ID of the Key Vault from which all Secrets should be sourced. + // +kubebuilder:validation:Optional KeyVaultID *string `json:"keyVaultId,omitempty" tf:"key_vault_id,omitempty"` } @@ -804,15 +870,19 @@ type SourceImageReferenceObservation struct { type SourceImageReferenceParameters struct { // Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Offer *string `json:"offer,omitempty" tf:"offer,omitempty"` // Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` // Specifies the SKU of the image used to create the virtual machines. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // Specifies the version of the image used to create the virtual machines. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` } @@ -837,9 +907,11 @@ type TerminationNotificationObservation struct { type TerminationNotificationParameters struct { // Should the termination notification be enabled on this Virtual Machine? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M. + // +kubebuilder:validation:Optional Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"` } diff --git a/apis/compute/v1beta1/zz_linuxvirtualmachinescaleset_types.go b/apis/compute/v1beta1/zz_linuxvirtualmachinescaleset_types.go index 776f43e66..ee7568936 100755 --- a/apis/compute/v1beta1/zz_linuxvirtualmachinescaleset_types.go +++ b/apis/compute/v1beta1/zz_linuxvirtualmachinescaleset_types.go @@ -34,9 +34,11 @@ type AutomaticInstanceRepairObservation struct { type AutomaticInstanceRepairParameters struct { // Should the automatic instance repair be enabled on this Virtual Machine Scale Set? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Amount of time (in minutes, between 30 and 90, defaults to 30 minutes) for which automatic repairs will be delayed. The grace period starts right after the VM is found unhealthy. The time duration should be specified in ISO 8601 format. Defaults to PT30M. + // +kubebuilder:validation:Optional GracePeriod *string `json:"gracePeriod,omitempty" tf:"grace_period,omitempty"` } @@ -61,9 +63,11 @@ type AutomaticOsUpgradePolicyObservation struct { type AutomaticOsUpgradePolicyParameters struct { // Should automatic rollbacks be disabled? + // +kubebuilder:validation:Optional DisableAutomaticRollback *bool `json:"disableAutomaticRollback,omitempty" tf:"disable_automatic_rollback,omitempty"` // Should OS Upgrades automatically be applied to Scale Set instances in a rolling fashion when a newer version of the OS Image becomes available? + // +kubebuilder:validation:Optional EnableAutomaticOsUpgrade *bool `json:"enableAutomaticOsUpgrade,omitempty" tf:"enable_automatic_os_upgrade,omitempty"` } @@ -136,18 +140,23 @@ type ExtensionObservation struct { type ExtensionParameters struct { // Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to true. + // +kubebuilder:validation:Optional AutoUpgradeMinorVersion *bool `json:"autoUpgradeMinorVersion,omitempty" tf:"auto_upgrade_minor_version,omitempty"` // Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension? + // +kubebuilder:validation:Optional AutomaticUpgradeEnabled *bool `json:"automaticUpgradeEnabled,omitempty" tf:"automatic_upgrade_enabled,omitempty"` // A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed. + // +kubebuilder:validation:Optional ForceUpdateTag *string `json:"forceUpdateTag,omitempty" tf:"force_update_tag,omitempty"` // The name for the Virtual Machine Scale Set Extension. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A protected_settings_from_key_vault block as defined below. + // +kubebuilder:validation:Optional ProtectedSettingsFromKeyVault []ProtectedSettingsFromKeyVaultParameters `json:"protectedSettingsFromKeyVault,omitempty" tf:"protected_settings_from_key_vault,omitempty"` // A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension. @@ -155,18 +164,23 @@ type ExtensionParameters struct { ProtectedSettingsSecretRef *v1.SecretKeySelector `json:"protectedSettingsSecretRef,omitempty" tf:"-"` // An ordered list of Extension names which this should be provisioned after. + // +kubebuilder:validation:Optional ProvisionAfterExtensions []*string `json:"provisionAfterExtensions,omitempty" tf:"provision_after_extensions,omitempty"` // Specifies the Publisher of the Extension. + // +kubebuilder:validation:Optional Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` // A JSON String which specifies Settings for the Extension. + // +kubebuilder:validation:Optional Settings *string `json:"settings,omitempty" tf:"settings,omitempty"` // Specifies the Type of the Extension. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // Specifies the version of the extension to use, available versions can be found using the Azure CLI. + // +kubebuilder:validation:Optional TypeHandlerVersion *string `json:"typeHandlerVersion,omitempty" tf:"type_handler_version,omitempty"` } @@ -197,15 +211,20 @@ type GalleryApplicationsObservation struct { } type GalleryApplicationsParameters struct { + + // +kubebuilder:validation:Optional ConfigurationReferenceBlobURI *string `json:"configurationReferenceBlobUri,omitempty" tf:"configuration_reference_blob_uri,omitempty"` // Specifies the order in which the packages have to be installed. Possible values are between 0 and 2,147,483,647. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Order *float64 `json:"order,omitempty" tf:"order,omitempty"` // The ID of the Linux Virtual Machine Scale Set. + // +kubebuilder:validation:Optional PackageReferenceID *string `json:"packageReferenceId,omitempty" tf:"package_reference_id,omitempty"` // The IP Tag associated with the Public IP, such as SQL or Storage. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Tag *string `json:"tag,omitempty" tf:"tag,omitempty"` } @@ -269,24 +288,31 @@ type IPConfigurationObservation struct { type IPConfigurationParameters struct { // A list of Backend Address Pools ID's from a Application Gateway which this Virtual Machine Scale Set should be connected to. + // +kubebuilder:validation:Optional ApplicationGatewayBackendAddressPoolIds []*string `json:"applicationGatewayBackendAddressPoolIds,omitempty" tf:"application_gateway_backend_address_pool_ids,omitempty"` // A list of Application Security Group ID's which this Virtual Machine Scale Set should be connected to. + // +kubebuilder:validation:Optional ApplicationSecurityGroupIds []*string `json:"applicationSecurityGroupIds,omitempty" tf:"application_security_group_ids,omitempty"` // A list of Backend Address Pools ID's from a Load Balancer which this Virtual Machine Scale Set should be connected to. + // +kubebuilder:validation:Optional LoadBalancerBackendAddressPoolIds []*string `json:"loadBalancerBackendAddressPoolIds,omitempty" tf:"load_balancer_backend_address_pool_ids,omitempty"` // A list of NAT Rule ID's from a Load Balancer which this Virtual Machine Scale Set should be connected to. + // +kubebuilder:validation:Optional LoadBalancerInboundNATRulesIds []*string `json:"loadBalancerInboundNatRulesIds,omitempty" tf:"load_balancer_inbound_nat_rules_ids,omitempty"` // The Name of the Public IP Address Configuration. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Is this the Primary IP Configuration? + // +kubebuilder:validation:Optional Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"` // A public_ip_address block as defined below. + // +kubebuilder:validation:Optional PublicIPAddress []PublicIPAddressParameters `json:"publicIpAddress,omitempty" tf:"public_ip_address,omitempty"` // The ID of the Subnet which this IP Configuration should be connected to. @@ -304,6 +330,7 @@ type IPConfigurationParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // Specifies the version of the image used to create the virtual machines. + // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` } @@ -328,9 +355,11 @@ type IPTagObservation struct { type IPTagParameters struct { // The IP Tag associated with the Public IP, such as SQL or Storage. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Tag *string `json:"tag,omitempty" tf:"tag,omitempty"` // The Type of IP Tag, such as FirstPartyUsage. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -349,6 +378,7 @@ type LinuxVirtualMachineScaleSetAdditionalCapabilitiesObservation struct { type LinuxVirtualMachineScaleSetAdditionalCapabilitiesParameters struct { // Should the capacity to enable Data Disks of the UltraSSD_LRS storage account type be supported on this Virtual Machine Scale Set? Possible values are true or false. Defaults to false. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional UltraSsdEnabled *bool `json:"ultraSsdEnabled,omitempty" tf:"ultra_ssd_enabled,omitempty"` } @@ -373,9 +403,11 @@ type LinuxVirtualMachineScaleSetAdminSSHKeyObservation struct { type LinuxVirtualMachineScaleSetAdminSSHKeyParameters struct { // The Public Key which should be used for authentication, which needs to be at least 2048-bit and in ssh-rsa format. + // +kubebuilder:validation:Optional PublicKey *string `json:"publicKey,omitempty" tf:"public_key,omitempty"` // The Username for which this Public SSH Key should be configured. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } @@ -394,6 +426,7 @@ type LinuxVirtualMachineScaleSetBootDiagnosticsObservation struct { type LinuxVirtualMachineScaleSetBootDiagnosticsParameters struct { // The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor. + // +kubebuilder:validation:Optional StorageAccountURI *string `json:"storageAccountUri,omitempty" tf:"storage_account_uri,omitempty"` } @@ -466,33 +499,43 @@ type LinuxVirtualMachineScaleSetDataDiskObservation struct { type LinuxVirtualMachineScaleSetDataDiskParameters struct { // The type of Caching which should be used for this Data Disk. Possible values are None, ReadOnly and ReadWrite. + // +kubebuilder:validation:Optional Caching *string `json:"caching,omitempty" tf:"caching,omitempty"` // The create option which should be used for this Data Disk. Possible values are Empty and FromImage. Defaults to Empty. (FromImage should only be used if the source image includes data disks). + // +kubebuilder:validation:Optional CreateOption *string `json:"createOption,omitempty" tf:"create_option,omitempty"` // The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"` // The size of the Data Disk which should be created. + // +kubebuilder:validation:Optional DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"` // The Logical Unit Number of the Data Disk, which must be unique within the Virtual Machine. + // +kubebuilder:validation:Optional Lun *float64 `json:"lun,omitempty" tf:"lun,omitempty"` // The name of the Data Disk. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Type of Storage Account which should back this Data Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS, PremiumV2_LRS, Premium_ZRS and UltraSSD_LRS. + // +kubebuilder:validation:Optional StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"` // Specifies the Read-Write IOPS for this Data Disk. Only settable when storage_account_type is PremiumV2_LRS or UltraSSD_LRS. + // +kubebuilder:validation:Optional UltraSsdDiskIopsReadWrite *float64 `json:"ultraSsdDiskIopsReadWrite,omitempty" tf:"ultra_ssd_disk_iops_read_write,omitempty"` // Specifies the bandwidth in MB per second for this Data Disk. Only settable when storage_account_type is PremiumV2_LRS or UltraSSD_LRS. + // +kubebuilder:validation:Optional UltraSsdDiskMbpsReadWrite *float64 `json:"ultraSsdDiskMbpsReadWrite,omitempty" tf:"ultra_ssd_disk_mbps_read_write,omitempty"` // Should Write Accelerator be Enabled for this OS Disk? Defaults to false. + // +kubebuilder:validation:Optional WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"` } @@ -529,15 +572,19 @@ type LinuxVirtualMachineScaleSetGalleryApplicationObservation struct { type LinuxVirtualMachineScaleSetGalleryApplicationParameters struct { // Specifies the URI to an Azure Blob that will replace the default configuration for the package if provided. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ConfigurationBlobURI *string `json:"configurationBlobUri,omitempty" tf:"configuration_blob_uri,omitempty"` // Specifies the order in which the packages have to be installed. Possible values are between 0 and 2,147,483,647. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Order *float64 `json:"order,omitempty" tf:"order,omitempty"` // Specifies a passthrough value for more generic context. This field can be any valid string value. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Tag *string `json:"tag,omitempty" tf:"tag,omitempty"` // Specifies the Gallery Application Version resource ID. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VersionID *string `json:"versionId,omitempty" tf:"version_id,omitempty"` } @@ -568,9 +615,11 @@ type LinuxVirtualMachineScaleSetIdentityObservation struct { type LinuxVirtualMachineScaleSetIdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Linux Virtual Machine Scale Set. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Linux Virtual Machine Scale Set. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -946,33 +995,42 @@ type LinuxVirtualMachineScaleSetOsDiskObservation struct { type LinuxVirtualMachineScaleSetOsDiskParameters struct { // The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite. + // +kubebuilder:validation:Optional Caching *string `json:"caching,omitempty" tf:"caching,omitempty"` // A diff_disk_settings block as defined above. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DiffDiskSettings []OsDiskDiffDiskSettingsParameters `json:"diffDiskSettings,omitempty" tf:"diff_disk_settings,omitempty"` // The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"` // The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine Scale Set is sourced from. + // +kubebuilder:validation:Optional DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"` // The ID of the Disk Encryption Set which should be used to Encrypt the OS Disk when the Virtual Machine Scale Set is Confidential VMSS. Conflicts with disk_encryption_set_id. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SecureVMDiskEncryptionSetID *string `json:"secureVmDiskEncryptionSetId,omitempty" tf:"secure_vm_disk_encryption_set_id,omitempty"` // Encryption Type when the Virtual Machine Scale Set is Confidential VMSS. Possible values are VMGuestStateOnly and DiskWithVMGuestState. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SecurityEncryptionType *string `json:"securityEncryptionType,omitempty" tf:"security_encryption_type,omitempty"` // The Type of Storage Account which should back this the Internal OS Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS and Premium_ZRS. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"` // Should Write Accelerator be Enabled for this OS Disk? Defaults to false. + // +kubebuilder:validation:Optional WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"` } type LinuxVirtualMachineScaleSetParameters struct { // An additional_capabilities block as defined below. + // +kubebuilder:validation:Optional AdditionalCapabilities []LinuxVirtualMachineScaleSetAdditionalCapabilitiesParameters `json:"additionalCapabilities,omitempty" tf:"additional_capabilities,omitempty"` // The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created. @@ -980,24 +1038,31 @@ type LinuxVirtualMachineScaleSetParameters struct { AdminPasswordSecretRef *v1.SecretKeySelector `json:"adminPasswordSecretRef,omitempty" tf:"-"` // One or more admin_ssh_key blocks as defined below. + // +kubebuilder:validation:Optional AdminSSHKey []LinuxVirtualMachineScaleSetAdminSSHKeyParameters `json:"adminSshKey,omitempty" tf:"admin_ssh_key,omitempty"` // The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"` // An automatic_instance_repair block as defined below. To enable the automatic instance repair, this Virtual Machine Scale Set must have a valid health_probe_id or an Application Health Extension. + // +kubebuilder:validation:Optional AutomaticInstanceRepair []AutomaticInstanceRepairParameters `json:"automaticInstanceRepair,omitempty" tf:"automatic_instance_repair,omitempty"` // An automatic_os_upgrade_policy block as defined below. This can only be specified when upgrade_mode is set to either Automatic or Rolling. + // +kubebuilder:validation:Optional AutomaticOsUpgradePolicy []AutomaticOsUpgradePolicyParameters `json:"automaticOsUpgradePolicy,omitempty" tf:"automatic_os_upgrade_policy,omitempty"` // A boot_diagnostics block as defined below. + // +kubebuilder:validation:Optional BootDiagnostics []LinuxVirtualMachineScaleSetBootDiagnosticsParameters `json:"bootDiagnostics,omitempty" tf:"boot_diagnostics,omitempty"` // Specifies the ID of the Capacity Reservation Group which the Virtual Machine Scale Set should be allocated to. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional CapacityReservationGroupID *string `json:"capacityReservationGroupId,omitempty" tf:"capacity_reservation_group_id,omitempty"` // The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name_prefix, then you must specify computer_name_prefix. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ComputerNamePrefix *string `json:"computerNamePrefix,omitempty" tf:"computer_name_prefix,omitempty"` // The Base64-Encoded Custom Data which should be used for this Virtual Machine Scale Set. @@ -1005,77 +1070,102 @@ type LinuxVirtualMachineScaleSetParameters struct { CustomDataSecretRef *v1.SecretKeySelector `json:"customDataSecretRef,omitempty" tf:"-"` // One or more data_disk blocks as defined below. + // +kubebuilder:validation:Optional DataDisk []LinuxVirtualMachineScaleSetDataDiskParameters `json:"dataDisk,omitempty" tf:"data_disk,omitempty"` // Should Password Authentication be disabled on this Virtual Machine Scale Set? Defaults to true. + // +kubebuilder:validation:Optional DisablePasswordAuthentication *bool `json:"disablePasswordAuthentication,omitempty" tf:"disable_password_authentication,omitempty"` // Should Virtual Machine Extensions be run on Overprovisioned Virtual Machines in the Scale Set? Defaults to false. + // +kubebuilder:validation:Optional DoNotRunExtensionsOnOverprovisionedMachines *bool `json:"doNotRunExtensionsOnOverprovisionedMachines,omitempty" tf:"do_not_run_extensions_on_overprovisioned_machines,omitempty"` // Specifies the Edge Zone within the Azure Region where this Linux Virtual Machine Scale Set should exist. Changing this forces a new Linux Virtual Machine Scale Set to be created. + // +kubebuilder:validation:Optional EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"` // Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host? + // +kubebuilder:validation:Optional EncryptionAtHostEnabled *bool `json:"encryptionAtHostEnabled,omitempty" tf:"encryption_at_host_enabled,omitempty"` // Specifies the eviction policy for Virtual Machines in this Scale Set. Possible values are Deallocate and Delete. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional EvictionPolicy *string `json:"evictionPolicy,omitempty" tf:"eviction_policy,omitempty"` // One or more extension blocks as defined below + // +kubebuilder:validation:Optional Extension []ExtensionParameters `json:"extension,omitempty" tf:"extension,omitempty"` // Should extension operations be allowed on the Virtual Machine Scale Set? Possible values are true or false. Defaults to true. Changing this forces a new Linux Virtual Machine Scale Set to be created. + // +kubebuilder:validation:Optional ExtensionOperationsEnabled *bool `json:"extensionOperationsEnabled,omitempty" tf:"extension_operations_enabled,omitempty"` // Specifies the duration allocated for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. Defaults to 90 minutes (PT1H30M). + // +kubebuilder:validation:Optional ExtensionsTimeBudget *string `json:"extensionsTimeBudget,omitempty" tf:"extensions_time_budget,omitempty"` // One or more gallery_application blocks as defined below. + // +kubebuilder:validation:Optional GalleryApplication []LinuxVirtualMachineScaleSetGalleryApplicationParameters `json:"galleryApplication,omitempty" tf:"gallery_application,omitempty"` + // +kubebuilder:validation:Optional GalleryApplications []GalleryApplicationsParameters `json:"galleryApplications,omitempty" tf:"gallery_applications,omitempty"` // The ID of a Load Balancer Probe which should be used to determine the health of an instance. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling. + // +kubebuilder:validation:Optional HealthProbeID *string `json:"healthProbeId,omitempty" tf:"health_probe_id,omitempty"` // Specifies the ID of the dedicated host group that the virtual machine scale set resides in. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional HostGroupID *string `json:"hostGroupId,omitempty" tf:"host_group_id,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []LinuxVirtualMachineScaleSetIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // The number of Virtual Machines in the Scale Set. Defaults to 0. + // +kubebuilder:validation:Optional Instances *float64 `json:"instances,omitempty" tf:"instances,omitempty"` // The Azure location where the Linux Virtual Machine Scale Set should exist. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The maximum price you're willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the eviction_policy. Defaults to -1, which means that each Virtual Machine in this Scale Set should not be evicted for price reasons. + // +kubebuilder:validation:Optional MaxBidPrice *float64 `json:"maxBidPrice,omitempty" tf:"max_bid_price,omitempty"` // One or more network_interface blocks as defined below. + // +kubebuilder:validation:Optional NetworkInterface []NetworkInterfaceParameters `json:"networkInterface,omitempty" tf:"network_interface,omitempty"` // An os_disk block as defined below. + // +kubebuilder:validation:Optional OsDisk []LinuxVirtualMachineScaleSetOsDiskParameters `json:"osDisk,omitempty" tf:"os_disk,omitempty"` // Should Azure over-provision Virtual Machines in this Scale Set? This means that multiple Virtual Machines will be provisioned and Azure will keep the instances which become available first - which improves provisioning success rates and improves deployment time. You're not billed for these over-provisioned VM's and they don't count towards the Subscription Quota. Defaults to true. + // +kubebuilder:validation:Optional Overprovision *bool `json:"overprovision,omitempty" tf:"overprovision,omitempty"` // A plan block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Plan []LinuxVirtualMachineScaleSetPlanParameters `json:"plan,omitempty" tf:"plan,omitempty"` // Specifies the number of fault domains that are used by this Linux Virtual Machine Scale Set. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PlatformFaultDomainCount *float64 `json:"platformFaultDomainCount,omitempty" tf:"platform_fault_domain_count,omitempty"` // The Priority of this Virtual Machine Scale Set. Possible values are Regular and Spot. Defaults to Regular. Changing this value forces a new resource. + // +kubebuilder:validation:Optional Priority *string `json:"priority,omitempty" tf:"priority,omitempty"` // Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to true. Changing this value forces a new resource to be created. + // +kubebuilder:validation:Optional ProvisionVMAgent *bool `json:"provisionVmAgent,omitempty" tf:"provision_vm_agent,omitempty"` // The ID of the Proximity Placement Group in which the Virtual Machine Scale Set should be assigned to. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ProximityPlacementGroupID *string `json:"proximityPlacementGroupId,omitempty" tf:"proximity_placement_group_id,omitempty"` // The name of the Resource Group in which the Linux Virtual Machine Scale Set should be exist. Changing this forces a new resource to be created. @@ -1092,54 +1182,71 @@ type LinuxVirtualMachineScaleSetParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A rolling_upgrade_policy block as defined below. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional RollingUpgradePolicy []RollingUpgradePolicyParameters `json:"rollingUpgradePolicy,omitempty" tf:"rolling_upgrade_policy,omitempty"` // A scale_in block as defined below. + // +kubebuilder:validation:Optional ScaleIn []ScaleInParameters `json:"scaleIn,omitempty" tf:"scale_in,omitempty"` // One or more secret blocks as defined below. + // +kubebuilder:validation:Optional Secret []LinuxVirtualMachineScaleSetSecretParameters `json:"secret,omitempty" tf:"secret,omitempty"` // Specifies whether secure boot should be enabled on the virtual machine. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SecureBootEnabled *bool `json:"secureBootEnabled,omitempty" tf:"secure_boot_enabled,omitempty"` // Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Defaults to true. + // +kubebuilder:validation:Optional SinglePlacementGroup *bool `json:"singlePlacementGroup,omitempty" tf:"single_placement_group,omitempty"` // The Virtual Machine SKU for the Scale Set, such as Standard_F2. + // +kubebuilder:validation:Optional Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // The ID of an Image which each Virtual Machine in this Scale Set should be based on. Possible Image ID types include Image IDs, Shared Image IDs, Shared Image Version IDs, Community Gallery Image IDs, Community Gallery Image Version IDs, Shared Gallery Image IDs and Shared Gallery Image Version IDs. + // +kubebuilder:validation:Optional SourceImageID *string `json:"sourceImageId,omitempty" tf:"source_image_id,omitempty"` // A source_image_reference block as defined below. + // +kubebuilder:validation:Optional SourceImageReference []LinuxVirtualMachineScaleSetSourceImageReferenceParameters `json:"sourceImageReference,omitempty" tf:"source_image_reference,omitempty"` // A spot_restore block as defined below. + // +kubebuilder:validation:Optional SpotRestore []SpotRestoreParameters `json:"spotRestore,omitempty" tf:"spot_restore,omitempty"` // A mapping of tags which should be assigned to this Virtual Machine Scale Set. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // A terminate_notification block as defined below. + // +kubebuilder:validation:Optional TerminateNotification []TerminateNotificationParameters `json:"terminateNotification,omitempty" tf:"terminate_notification,omitempty"` // A termination_notification block as defined below. + // +kubebuilder:validation:Optional TerminationNotification []LinuxVirtualMachineScaleSetTerminationNotificationParameters `json:"terminationNotification,omitempty" tf:"termination_notification,omitempty"` // Specifies how Upgrades (e.g. changing the Image/SKU) should be performed to Virtual Machine Instances. Possible values are Automatic, Manual and Rolling. Defaults to Manual. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional UpgradeMode *string `json:"upgradeMode,omitempty" tf:"upgrade_mode,omitempty"` // The Base64-Encoded User Data which should be used for this Virtual Machine Scale Set. + // +kubebuilder:validation:Optional UserData *string `json:"userData,omitempty" tf:"user_data,omitempty"` // Specifies whether vTPM should be enabled on the virtual machine. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VtpmEnabled *bool `json:"vtpmEnabled,omitempty" tf:"vtpm_enabled,omitempty"` // Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to false. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ZoneBalance *bool `json:"zoneBalance,omitempty" tf:"zone_balance,omitempty"` // Specifies a list of Availability Zones in which this Linux Virtual Machine Scale Set should be located. Changing this forces a new Linux Virtual Machine Scale Set to be created. + // +kubebuilder:validation:Optional Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } @@ -1170,12 +1277,15 @@ type LinuxVirtualMachineScaleSetPlanObservation struct { type LinuxVirtualMachineScaleSetPlanParameters struct { // Specifies the name of the image from the marketplace. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the product of the image from the marketplace. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Product *string `json:"product,omitempty" tf:"product,omitempty"` // Specifies the publisher of the image. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` } @@ -1200,9 +1310,11 @@ type LinuxVirtualMachineScaleSetSecretObservation struct { type LinuxVirtualMachineScaleSetSecretParameters struct { // One or more certificate blocks as defined above. + // +kubebuilder:validation:Optional Certificate []SecretCertificateParameters `json:"certificate,omitempty" tf:"certificate,omitempty"` // The ID of the Key Vault from which all Secrets should be sourced. + // +kubebuilder:validation:Optional KeyVaultID *string `json:"keyVaultId,omitempty" tf:"key_vault_id,omitempty"` } @@ -1239,15 +1351,19 @@ type LinuxVirtualMachineScaleSetSourceImageReferenceObservation struct { type LinuxVirtualMachineScaleSetSourceImageReferenceParameters struct { // Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Offer *string `json:"offer,omitempty" tf:"offer,omitempty"` // Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` // Specifies the SKU of the image used to create the virtual machines. + // +kubebuilder:validation:Optional Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // Specifies the version of the image used to create the virtual machines. + // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` } @@ -1272,9 +1388,11 @@ type LinuxVirtualMachineScaleSetTerminationNotificationObservation struct { type LinuxVirtualMachineScaleSetTerminationNotificationParameters struct { // Should the termination notification be enabled on this Virtual Machine Scale Set? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M. + // +kubebuilder:validation:Optional Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"` } @@ -1329,24 +1447,31 @@ type NetworkInterfaceObservation struct { type NetworkInterfaceParameters struct { // A list of IP Addresses of DNS Servers which should be assigned to the Network Interface. + // +kubebuilder:validation:Optional DNSServers []*string `json:"dnsServers,omitempty" tf:"dns_servers,omitempty"` // Does this Network Interface support Accelerated Networking? Defaults to false. + // +kubebuilder:validation:Optional EnableAcceleratedNetworking *bool `json:"enableAcceleratedNetworking,omitempty" tf:"enable_accelerated_networking,omitempty"` // Does this Network Interface support IP Forwarding? Defaults to false. + // +kubebuilder:validation:Optional EnableIPForwarding *bool `json:"enableIpForwarding,omitempty" tf:"enable_ip_forwarding,omitempty"` // One or more ip_configuration blocks as defined above. + // +kubebuilder:validation:Optional IPConfiguration []IPConfigurationParameters `json:"ipConfiguration,omitempty" tf:"ip_configuration,omitempty"` // The Name which should be used for this Network Interface. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID of a Network Security Group which should be assigned to this Network Interface. + // +kubebuilder:validation:Optional NetworkSecurityGroupID *string `json:"networkSecurityGroupId,omitempty" tf:"network_security_group_id,omitempty"` // Is this the Primary IP Configuration? + // +kubebuilder:validation:Optional Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"` } @@ -1371,9 +1496,11 @@ type OsDiskDiffDiskSettingsObservation struct { type OsDiskDiffDiskSettingsParameters struct { // Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is Local. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Option *string `json:"option,omitempty" tf:"option,omitempty"` // Specifies where to store the Ephemeral Disk. Possible values are CacheDisk and ResourceDisk. Defaults to CacheDisk. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Placement *string `json:"placement,omitempty" tf:"placement,omitempty"` } @@ -1398,9 +1525,11 @@ type ProtectedSettingsFromKeyVaultObservation struct { type ProtectedSettingsFromKeyVaultParameters struct { // The URL to the Key Vault Secret which stores the protected settings. + // +kubebuilder:validation:Optional SecretURL *string `json:"secretUrl,omitempty" tf:"secret_url,omitempty"` // The ID of the source Key Vault. + // +kubebuilder:validation:Optional SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"` } @@ -1449,21 +1578,27 @@ type PublicIPAddressObservation struct { type PublicIPAddressParameters struct { // The Prefix which should be used for the Domain Name Label for each Virtual Machine Instance. Azure concatenates the Domain Name Label and Virtual Machine Index to create a unique Domain Name Label for each Virtual Machine. + // +kubebuilder:validation:Optional DomainNameLabel *string `json:"domainNameLabel,omitempty" tf:"domain_name_label,omitempty"` // One or more ip_tag blocks as defined above. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional IPTag []IPTagParameters `json:"ipTag,omitempty" tf:"ip_tag,omitempty"` // The Idle Timeout in Minutes for the Public IP Address. Possible values are in the range 4 to 32. + // +kubebuilder:validation:Optional IdleTimeoutInMinutes *float64 `json:"idleTimeoutInMinutes,omitempty" tf:"idle_timeout_in_minutes,omitempty"` // The Name of the Public IP Address Configuration. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID of the Public IP Address Prefix from where Public IP Addresses should be allocated. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PublicIPPrefixID *string `json:"publicIpPrefixId,omitempty" tf:"public_ip_prefix_id,omitempty"` // Specifies the version of the image used to create the virtual machines. + // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` } @@ -1512,21 +1647,27 @@ type RollingUpgradePolicyObservation struct { type RollingUpgradePolicyParameters struct { // Should the Virtual Machine Scale Set ignore the Azure Zone boundaries when constructing upgrade batches? Possible values are true or false. + // +kubebuilder:validation:Optional CrossZoneUpgradesEnabled *bool `json:"crossZoneUpgradesEnabled,omitempty" tf:"cross_zone_upgrades_enabled,omitempty"` // The maximum percent of total virtual machine instances that will be upgraded simultaneously by the rolling upgrade in one batch. As this is a maximum, unhealthy instances in previous or future batches can cause the percentage of instances in a batch to decrease to ensure higher reliability. + // +kubebuilder:validation:Optional MaxBatchInstancePercent *float64 `json:"maxBatchInstancePercent,omitempty" tf:"max_batch_instance_percent,omitempty"` // The maximum percentage of the total virtual machine instances in the scale set that can be simultaneously unhealthy, either as a result of being upgraded, or by being found in an unhealthy state by the virtual machine health checks before the rolling upgrade aborts. This constraint will be checked prior to starting any batch. + // +kubebuilder:validation:Optional MaxUnhealthyInstancePercent *float64 `json:"maxUnhealthyInstancePercent,omitempty" tf:"max_unhealthy_instance_percent,omitempty"` // The maximum percentage of upgraded virtual machine instances that can be found to be in an unhealthy state. This check will happen after each batch is upgraded. If this percentage is ever exceeded, the rolling update aborts. + // +kubebuilder:validation:Optional MaxUnhealthyUpgradedInstancePercent *float64 `json:"maxUnhealthyUpgradedInstancePercent,omitempty" tf:"max_unhealthy_upgraded_instance_percent,omitempty"` // The wait time between completing the update for all virtual machines in one batch and starting the next batch. The time duration should be specified in ISO 8601 format. + // +kubebuilder:validation:Optional PauseTimeBetweenBatches *string `json:"pauseTimeBetweenBatches,omitempty" tf:"pause_time_between_batches,omitempty"` // Upgrade all unhealthy instances in a scale set before any healthy instances. Possible values are true or false. + // +kubebuilder:validation:Optional PrioritizeUnhealthyInstancesEnabled *bool `json:"prioritizeUnhealthyInstancesEnabled,omitempty" tf:"prioritize_unhealthy_instances_enabled,omitempty"` } @@ -1551,9 +1692,11 @@ type ScaleInObservation struct { type ScaleInParameters struct { // Should the virtual machines chosen for removal be force deleted when the virtual machine scale set is being scaled-in? Possible values are true or false. Defaults to false. + // +kubebuilder:validation:Optional ForceDeletionEnabled *bool `json:"forceDeletionEnabled,omitempty" tf:"force_deletion_enabled,omitempty"` // The scale-in policy rule that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled in. Possible values for the scale-in policy rules are Default, NewestVM and OldestVM, defaults to Default. For more information about scale in policy, please refer to this doc. + // +kubebuilder:validation:Optional Rule *string `json:"rule,omitempty" tf:"rule,omitempty"` } @@ -1572,6 +1715,7 @@ type SecretCertificateObservation struct { type SecretCertificateParameters struct { // The Secret URL of a Key Vault Certificate. + // +kubebuilder:validation:Optional URL *string `json:"url,omitempty" tf:"url,omitempty"` } @@ -1596,9 +1740,11 @@ type SpotRestoreObservation struct { type SpotRestoreParameters struct { // Should the Spot-Try-Restore feature be enabled? The Spot-Try-Restore feature will attempt to automatically restore the evicted Spot Virtual Machine Scale Set VM instances opportunistically based on capacity availability and pricing constraints. Possible values are true or false. Defaults to false. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The length of time that the Virtual Machine Scale Set should attempt to restore the Spot VM instances which have been evicted. The time duration should be between 15 minutes and 120 minutes (inclusive). The time duration should be specified in the ISO 8601 format. Defaults to 90 minutes (e.g. PT1H30M). Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"` } @@ -1623,9 +1769,11 @@ type TerminateNotificationObservation struct { type TerminateNotificationParameters struct { // Should the terminate notification be enabled on this Virtual Machine Scale Set? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M. + // +kubebuilder:validation:Optional Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"` } diff --git a/apis/compute/v1beta1/zz_manageddisk_types.go b/apis/compute/v1beta1/zz_manageddisk_types.go index ace3ef9b4..eced89d00 100755 --- a/apis/compute/v1beta1/zz_manageddisk_types.go +++ b/apis/compute/v1beta1/zz_manageddisk_types.go @@ -34,9 +34,11 @@ type DiskEncryptionKeyObservation struct { type DiskEncryptionKeyParameters struct { // The URL to the Key Vault Secret used as the Disk Encryption Key. This can be found as id on the azurerm_key_vault_secret resource. + // +kubebuilder:validation:Optional SecretURL *string `json:"secretUrl,omitempty" tf:"secret_url,omitempty"` // The ID of the source Key Vault. This can be found as id on the azurerm_key_vault resource. + // +kubebuilder:validation:Optional SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"` } @@ -65,11 +67,14 @@ type EncryptionSettingsObservation struct { type EncryptionSettingsParameters struct { // A disk_encryption_key block as defined above. + // +kubebuilder:validation:Optional DiskEncryptionKey []DiskEncryptionKeyParameters `json:"diskEncryptionKey,omitempty" tf:"disk_encryption_key,omitempty"` + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // A key_encryption_key block as defined below. + // +kubebuilder:validation:Optional KeyEncryptionKey []KeyEncryptionKeyParameters `json:"keyEncryptionKey,omitempty" tf:"key_encryption_key,omitempty"` } @@ -94,9 +99,11 @@ type KeyEncryptionKeyObservation struct { type KeyEncryptionKeyParameters struct { // The URL to the Key Vault Key used as the Key Encryption Key. This can be found as id on the azurerm_key_vault_key resource. + // +kubebuilder:validation:Optional KeyURL *string `json:"keyUrl,omitempty" tf:"key_url,omitempty"` // The ID of the source Key Vault. This can be found as id on the azurerm_key_vault resource. + // +kubebuilder:validation:Optional SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"` } @@ -298,63 +305,83 @@ type ManagedDiskObservation struct { type ManagedDiskParameters struct { // The method to use when creating the managed disk. Changing this forces a new resource to be created. Possible values include: + // +kubebuilder:validation:Optional CreateOption *string `json:"createOption,omitempty" tf:"create_option,omitempty"` // The ID of the disk access resource for using private endpoints on disks. + // +kubebuilder:validation:Optional DiskAccessID *string `json:"diskAccessId,omitempty" tf:"disk_access_id,omitempty"` // The ID of a Disk Encryption Set which should be used to encrypt this Managed Disk. Conflicts with secure_vm_disk_encryption_set_id. + // +kubebuilder:validation:Optional DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"` // The number of IOPS allowed across all VMs mounting the shared disk as read-only; only settable for UltraSSD disks and PremiumV2 disks with shared disk enabled. One operation can transfer between 4k and 256k bytes. + // +kubebuilder:validation:Optional DiskIopsReadOnly *float64 `json:"diskIopsReadOnly,omitempty" tf:"disk_iops_read_only,omitempty"` // The number of IOPS allowed for this disk; only settable for UltraSSD disks and PremiumV2 disks. One operation can transfer between 4k and 256k bytes. + // +kubebuilder:validation:Optional DiskIopsReadWrite *float64 `json:"diskIopsReadWrite,omitempty" tf:"disk_iops_read_write,omitempty"` // The bandwidth allowed across all VMs mounting the shared disk as read-only; only settable for UltraSSD disks and PremiumV2 disks with shared disk enabled. MBps means millions of bytes per second. + // +kubebuilder:validation:Optional DiskMbpsReadOnly *float64 `json:"diskMbpsReadOnly,omitempty" tf:"disk_mbps_read_only,omitempty"` // The bandwidth allowed for this disk; only settable for UltraSSD disks and PremiumV2 disks. MBps means millions of bytes per second. + // +kubebuilder:validation:Optional DiskMbpsReadWrite *float64 `json:"diskMbpsReadWrite,omitempty" tf:"disk_mbps_read_write,omitempty"` // Specifies the size of the managed disk to create in gigabytes. If create_option is Copy or FromImage, then the value must be equal to or greater than the source's size. The size can only be increased. + // +kubebuilder:validation:Optional DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"` // Specifies the Edge Zone within the Azure Region where this Managed Disk should exist. Changing this forces a new Managed Disk to be created. + // +kubebuilder:validation:Optional EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"` // A encryption_settings block as defined below. + // +kubebuilder:validation:Optional EncryptionSettings []EncryptionSettingsParameters `json:"encryptionSettings,omitempty" tf:"encryption_settings,omitempty"` // ID of a Gallery Image Version to copy when create_option is FromImage. This field cannot be specified if image_reference_id is specified. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional GalleryImageReferenceID *string `json:"galleryImageReferenceId,omitempty" tf:"gallery_image_reference_id,omitempty"` // The HyperV Generation of the Disk when the source of an Import or Copy operation targets a source that contains an operating system. Possible values are V1 and V2. For ImportSecure it must be set to V2. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional HyperVGeneration *string `json:"hyperVGeneration,omitempty" tf:"hyper_v_generation,omitempty"` // ID of an existing platform/marketplace disk image to copy when create_option is FromImage. This field cannot be specified if gallery_image_reference_id is specified. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ImageReferenceID *string `json:"imageReferenceId,omitempty" tf:"image_reference_id,omitempty"` // Specified the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Logical Sector Size. Possible values are: 512 and 4096. Defaults to 4096. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional LogicalSectorSize *float64 `json:"logicalSectorSize,omitempty" tf:"logical_sector_size,omitempty"` // The maximum number of VMs that can attach to the disk at the same time. Value greater than one indicates a disk that can be mounted on multiple VMs at the same time. + // +kubebuilder:validation:Optional MaxShares *float64 `json:"maxShares,omitempty" tf:"max_shares,omitempty"` // Policy for accessing the disk via network. Allowed values are AllowAll, AllowPrivate, and DenyAll. + // +kubebuilder:validation:Optional NetworkAccessPolicy *string `json:"networkAccessPolicy,omitempty" tf:"network_access_policy,omitempty"` // Specifies if On-Demand Bursting is enabled for the Managed Disk. + // +kubebuilder:validation:Optional OnDemandBurstingEnabled *bool `json:"onDemandBurstingEnabled,omitempty" tf:"on_demand_bursting_enabled,omitempty"` // Specify a value when the source of an Import, ImportSecure or Copy operation targets a source that contains an operating system. Valid values are Linux or Windows. + // +kubebuilder:validation:Optional OsType *string `json:"osType,omitempty" tf:"os_type,omitempty"` // Whether it is allowed to access the disk via public network. Defaults to true. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // The name of the Resource Group where the Managed Disk should exist. Changing this forces a new resource to be created. @@ -371,9 +398,11 @@ type ManagedDiskParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk when the Virtual Machine is a Confidential VM. Conflicts with disk_encryption_set_id. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SecureVMDiskEncryptionSetID *string `json:"secureVmDiskEncryptionSetId,omitempty" tf:"secure_vm_disk_encryption_set_id,omitempty"` // Security Type of the Managed Disk when it is used for a Confidential VM. Possible values are ConfidentialVM_VMGuestStateOnlyEncryptedWithPlatformKey, ConfidentialVM_DiskEncryptedWithPlatformKey and ConfidentialVM_DiskEncryptedWithCustomerKey. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SecurityType *string `json:"securityType,omitempty" tf:"security_type,omitempty"` // The ID of an existing Managed Disk or Snapshot to copy when create_option is Copy or the recovery point to restore when create_option is Restore. Changing this forces a new resource to be created. @@ -391,27 +420,35 @@ type ManagedDiskParameters struct { SourceResourceIDSelector *v1.Selector `json:"sourceResourceIdSelector,omitempty" tf:"-"` // URI to a valid VHD file to be used when create_option is Import or ImportSecure. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SourceURI *string `json:"sourceUri,omitempty" tf:"source_uri,omitempty"` // The ID of the Storage Account where the source_uri is located. Required when create_option is set to Import or ImportSecure. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional StorageAccountID *string `json:"storageAccountId,omitempty" tf:"storage_account_id,omitempty"` // The type of storage to use for the managed disk. Possible values are Standard_LRS, StandardSSD_ZRS, Premium_LRS, PremiumV2_LRS, Premium_ZRS, StandardSSD_LRS or UltraSSD_LRS. + // +kubebuilder:validation:Optional StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The disk performance tier to use. Possible values are documented here. This feature is currently supported only for premium SSDs. + // +kubebuilder:validation:Optional Tier *string `json:"tier,omitempty" tf:"tier,omitempty"` // Specifies if Trusted Launch is enabled for the Managed Disk. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional TrustedLaunchEnabled *bool `json:"trustedLaunchEnabled,omitempty" tf:"trusted_launch_enabled,omitempty"` // Specifies the size of the managed disk to create in bytes. Required when create_option is Upload. The value must be equal to the source disk to be copied in bytes. Source disk size could be calculated with ls -l or wc -c. More information can be found at Copy a managed disk. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional UploadSizeBytes *float64 `json:"uploadSizeBytes,omitempty" tf:"upload_size_bytes,omitempty"` // Specifies the Availability Zone in which this Managed Disk should be located. Changing this property forces a new resource to be created. + // +kubebuilder:validation:Optional Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` } diff --git a/apis/compute/v1beta1/zz_manageddisksastoken_types.go b/apis/compute/v1beta1/zz_manageddisksastoken_types.go index 580bb50fe..abc79a969 100755 --- a/apis/compute/v1beta1/zz_manageddisksastoken_types.go +++ b/apis/compute/v1beta1/zz_manageddisksastoken_types.go @@ -40,9 +40,11 @@ type ManagedDiskSASTokenObservation struct { type ManagedDiskSASTokenParameters struct { // The level of access required on the disk. Supported are Read, Write. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional AccessLevel *string `json:"accessLevel,omitempty" tf:"access_level,omitempty"` // The duration for which the export should be allowed. Should be between 30 & 4294967295 seconds. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DurationInSeconds *float64 `json:"durationInSeconds,omitempty" tf:"duration_in_seconds,omitempty"` // The ID of an existing Managed Disk which should be exported. Changing this forces a new resource to be created. diff --git a/apis/compute/v1beta1/zz_orchestratedvirtualmachinescaleset_types.go b/apis/compute/v1beta1/zz_orchestratedvirtualmachinescaleset_types.go index 8593ca7e6..5508093fa 100755 --- a/apis/compute/v1beta1/zz_orchestratedvirtualmachinescaleset_types.go +++ b/apis/compute/v1beta1/zz_orchestratedvirtualmachinescaleset_types.go @@ -34,9 +34,11 @@ type ExtensionProtectedSettingsFromKeyVaultObservation struct { type ExtensionProtectedSettingsFromKeyVaultParameters struct { // The URL to the Key Vault Secret which stores the protected settings. + // +kubebuilder:validation:Optional SecretURL *string `json:"secretUrl,omitempty" tf:"secret_url,omitempty"` // The ID of the source Key Vault. + // +kubebuilder:validation:Optional SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"` } @@ -91,24 +93,31 @@ type IPConfigurationPublicIPAddressObservation struct { type IPConfigurationPublicIPAddressParameters struct { // The Prefix which should be used for the Domain Name Label for each Virtual Machine Instance. Azure concatenates the Domain Name Label and Virtual Machine Index to create a unique Domain Name Label for each Virtual Machine. Valid values must be between 1 and 26 characters long, start with a lower case letter, end with a lower case letter or number and contains only a-z, 0-9 and hyphens. + // +kubebuilder:validation:Optional DomainNameLabel *string `json:"domainNameLabel,omitempty" tf:"domain_name_label,omitempty"` // One or more ip_tag blocks as defined above. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional IPTag []PublicIPAddressIPTagParameters `json:"ipTag,omitempty" tf:"ip_tag,omitempty"` // The Idle Timeout in Minutes for the Public IP Address. Possible values are in the range 4 to 32. + // +kubebuilder:validation:Optional IdleTimeoutInMinutes *float64 `json:"idleTimeoutInMinutes,omitempty" tf:"idle_timeout_in_minutes,omitempty"` // The Name of the Public IP Address Configuration. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID of the Public IP Address Prefix from where Public IP Addresses should be allocated. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PublicIPPrefixID *string `json:"publicIpPrefixId,omitempty" tf:"public_ip_prefix_id,omitempty"` // The name of the SKU to be used by this Orcestrated Virtual Machine Scale Set. Valid values include: any of the General purpose, Compute optimized, Memory optimized, Storage optimized, GPU optimized, FPGA optimized, High performance, or Previous generation virtual machine SKUs. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // Specifies the version of the image used to create the virtual machines. + // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` } @@ -133,9 +142,11 @@ type LinuxConfigurationAdminSSHKeyObservation struct { type LinuxConfigurationAdminSSHKeyParameters struct { // The Public Key which should be used for authentication, which needs to be at least 2048-bit and in ssh-rsa format. + // +kubebuilder:validation:Optional PublicKey *string `json:"publicKey,omitempty" tf:"public_key,omitempty"` // The Username for which this Public SSH Key should be configured. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } @@ -200,27 +211,35 @@ type LinuxConfigurationParameters struct { AdminPasswordSecretRef *v1.SecretKeySelector `json:"adminPasswordSecretRef,omitempty" tf:"-"` // A admin_ssh_key block as documented below. + // +kubebuilder:validation:Optional AdminSSHKey []LinuxConfigurationAdminSSHKeyParameters `json:"adminSshKey,omitempty" tf:"admin_ssh_key,omitempty"` // The username of the local administrator on each Orchestrated Virtual Machine Scale Set instance. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"` // The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name_prefix, then you must specify computer_name_prefix. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ComputerNamePrefix *string `json:"computerNamePrefix,omitempty" tf:"computer_name_prefix,omitempty"` // When an admin_password is specified disable_password_authentication must be set to false. Defaults to true. + // +kubebuilder:validation:Optional DisablePasswordAuthentication *bool `json:"disablePasswordAuthentication,omitempty" tf:"disable_password_authentication,omitempty"` // Specifies the mode of VM Guest Patching for the virtual machines that are associated to the Orchestrated Virtual Machine Scale Set. Possible values are AutomaticByPlatform or ImageDefault. Defaults to ImageDefault. + // +kubebuilder:validation:Optional PatchAssessmentMode *string `json:"patchAssessmentMode,omitempty" tf:"patch_assessment_mode,omitempty"` // Specifies the mode of in-guest patching of this Windows Virtual Machine. Possible values are Manual, AutomaticByOS and AutomaticByPlatform. Defaults to AutomaticByOS. For more information on patch modes please see the product documentation. + // +kubebuilder:validation:Optional PatchMode *string `json:"patchMode,omitempty" tf:"patch_mode,omitempty"` // Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to true. Changing this value forces a new resource to be created. + // +kubebuilder:validation:Optional ProvisionVMAgent *bool `json:"provisionVmAgent,omitempty" tf:"provision_vm_agent,omitempty"` // One or more secret blocks as defined below. + // +kubebuilder:validation:Optional Secret []LinuxConfigurationSecretParameters `json:"secret,omitempty" tf:"secret,omitempty"` } @@ -239,6 +258,7 @@ type LinuxConfigurationSecretCertificateObservation struct { type LinuxConfigurationSecretCertificateParameters struct { // The Secret URL of a Key Vault Certificate. + // +kubebuilder:validation:Optional URL *string `json:"url,omitempty" tf:"url,omitempty"` } @@ -263,9 +283,11 @@ type LinuxConfigurationSecretObservation struct { type LinuxConfigurationSecretParameters struct { // One or more certificate blocks as defined below. + // +kubebuilder:validation:Optional Certificate []LinuxConfigurationSecretCertificateParameters `json:"certificate,omitempty" tf:"certificate,omitempty"` // The ID of the Key Vault from which all Secrets should be sourced. + // +kubebuilder:validation:Optional KeyVaultID *string `json:"keyVaultId,omitempty" tf:"key_vault_id,omitempty"` } @@ -323,21 +345,27 @@ type NetworkInterfaceIPConfigurationObservation struct { type NetworkInterfaceIPConfigurationParameters struct { // A list of Backend Address Pools IDs from a Application Gateway which this Orchestrated Virtual Machine Scale Set should be connected to. + // +kubebuilder:validation:Optional ApplicationGatewayBackendAddressPoolIds []*string `json:"applicationGatewayBackendAddressPoolIds,omitempty" tf:"application_gateway_backend_address_pool_ids,omitempty"` // A list of Application Security Group IDs which this Orchestrated Virtual Machine Scale Set should be connected to. + // +kubebuilder:validation:Optional ApplicationSecurityGroupIds []*string `json:"applicationSecurityGroupIds,omitempty" tf:"application_security_group_ids,omitempty"` // A list of Backend Address Pools IDs from a Load Balancer which this Orchestrated Virtual Machine Scale Set should be connected to. + // +kubebuilder:validation:Optional LoadBalancerBackendAddressPoolIds []*string `json:"loadBalancerBackendAddressPoolIds,omitempty" tf:"load_balancer_backend_address_pool_ids,omitempty"` // The Name of the Public IP Address Configuration. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Is this the Primary IP Configuration? Possible values are true and false. Defaults to false. + // +kubebuilder:validation:Optional Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"` // A public_ip_address block as defined below. + // +kubebuilder:validation:Optional PublicIPAddress []IPConfigurationPublicIPAddressParameters `json:"publicIpAddress,omitempty" tf:"public_ip_address,omitempty"` // The ID of the Subnet which this IP Configuration should be connected to. @@ -355,6 +383,7 @@ type NetworkInterfaceIPConfigurationParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // Specifies the version of the image used to create the virtual machines. + // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` } @@ -373,6 +402,7 @@ type OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesObservation struct type OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesParameters struct { // Should the capacity to enable Data Disks of the UltraSSD_LRS storage account type be supported on this Orchestrated Virtual Machine Scale Set? Defaults to false. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional UltraSsdEnabled *bool `json:"ultraSsdEnabled,omitempty" tf:"ultra_ssd_enabled,omitempty"` } @@ -397,9 +427,11 @@ type OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairObservation struct type OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairParameters struct { // Should the automatic instance repair be enabled on this Orchestrated Virtual Machine Scale Set? Possible values are true and false. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Amount of time for which automatic repairs will be delayed. The grace period starts right after the VM is found unhealthy. Possible values are between 30 and 90 minutes. Defaults to 30 minutes. The time duration should be specified in ISO 8601 format (e.g. PT30M to PT90M). + // +kubebuilder:validation:Optional GracePeriod *string `json:"gracePeriod,omitempty" tf:"grace_period,omitempty"` } @@ -418,6 +450,7 @@ type OrchestratedVirtualMachineScaleSetBootDiagnosticsObservation struct { type OrchestratedVirtualMachineScaleSetBootDiagnosticsParameters struct { // The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor. By including a boot_diagnostics block without passing the storage_account_uri field will cause the API to utilize a Managed Storage Account to store the Boot Diagnostics output. + // +kubebuilder:validation:Optional StorageAccountURI *string `json:"storageAccountUri,omitempty" tf:"storage_account_uri,omitempty"` } @@ -480,28 +513,37 @@ type OrchestratedVirtualMachineScaleSetDataDiskObservation struct { type OrchestratedVirtualMachineScaleSetDataDiskParameters struct { // The type of Caching which should be used for this Data Disk. Possible values are None, ReadOnly and ReadWrite. + // +kubebuilder:validation:Optional Caching *string `json:"caching,omitempty" tf:"caching,omitempty"` // The create option which should be used for this Data Disk. Possible values are Empty and FromImage. Defaults to Empty. (FromImage should only be used if the source image includes data disks). + // +kubebuilder:validation:Optional CreateOption *string `json:"createOption,omitempty" tf:"create_option,omitempty"` // The ID of the Disk Encryption Set which should be used to encrypt the Data Disk. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"` // The size of the Data Disk which should be created. + // +kubebuilder:validation:Optional DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"` // The Logical Unit Number of the Data Disk, which must be unique within the Virtual Machine. + // +kubebuilder:validation:Optional Lun *float64 `json:"lun,omitempty" tf:"lun,omitempty"` // The Type of Storage Account which should back this Data Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS, PremiumV2_LRS, Premium_ZRS and UltraSSD_LRS. + // +kubebuilder:validation:Optional StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"` + // +kubebuilder:validation:Optional UltraSsdDiskIopsReadWrite *float64 `json:"ultraSsdDiskIopsReadWrite,omitempty" tf:"ultra_ssd_disk_iops_read_write,omitempty"` + // +kubebuilder:validation:Optional UltraSsdDiskMbpsReadWrite *float64 `json:"ultraSsdDiskMbpsReadWrite,omitempty" tf:"ultra_ssd_disk_mbps_read_write,omitempty"` // Specifies if Write Accelerator is enabled on the Data Disk. Defaults to false. + // +kubebuilder:validation:Optional WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"` } @@ -574,21 +616,27 @@ type OrchestratedVirtualMachineScaleSetExtensionObservation struct { type OrchestratedVirtualMachineScaleSetExtensionParameters struct { // Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to true. + // +kubebuilder:validation:Optional AutoUpgradeMinorVersionEnabled *bool `json:"autoUpgradeMinorVersionEnabled,omitempty" tf:"auto_upgrade_minor_version_enabled,omitempty"` // An ordered list of Extension names which Orchestrated Virtual Machine Scale Set should provision after VM creation. + // +kubebuilder:validation:Optional ExtensionsToProvisionAfterVMCreation []*string `json:"extensionsToProvisionAfterVmCreation,omitempty" tf:"extensions_to_provision_after_vm_creation,omitempty"` // Should failures from the extension be suppressed? Possible values are true or false. + // +kubebuilder:validation:Optional FailureSuppressionEnabled *bool `json:"failureSuppressionEnabled,omitempty" tf:"failure_suppression_enabled,omitempty"` // A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed. + // +kubebuilder:validation:Optional ForceExtensionExecutionOnChange *string `json:"forceExtensionExecutionOnChange,omitempty" tf:"force_extension_execution_on_change,omitempty"` // The name for the Virtual Machine Scale Set Extension. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A protected_settings_from_key_vault block as defined below. + // +kubebuilder:validation:Optional ProtectedSettingsFromKeyVault []ExtensionProtectedSettingsFromKeyVaultParameters `json:"protectedSettingsFromKeyVault,omitempty" tf:"protected_settings_from_key_vault,omitempty"` // A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension. @@ -596,15 +644,19 @@ type OrchestratedVirtualMachineScaleSetExtensionParameters struct { ProtectedSettingsSecretRef *v1.SecretKeySelector `json:"protectedSettingsSecretRef,omitempty" tf:"-"` // Specifies the Publisher of the Extension. + // +kubebuilder:validation:Optional Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` // A JSON String which specifies Settings for the Extension. + // +kubebuilder:validation:Optional Settings *string `json:"settings,omitempty" tf:"settings,omitempty"` // Specifies the Type of the Extension. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // Specifies the version of the extension to use, available versions can be found using the Azure CLI. + // +kubebuilder:validation:Optional TypeHandlerVersion *string `json:"typeHandlerVersion,omitempty" tf:"type_handler_version,omitempty"` } @@ -629,9 +681,11 @@ type OrchestratedVirtualMachineScaleSetIdentityObservation struct { type OrchestratedVirtualMachineScaleSetIdentityParameters struct { // Specifies a list of User Managed Identity IDs to be assigned to this Orchestrated Windows Virtual Machine Scale Set. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // The type of Managed Identity that should be configured on this Orchestrated Windows Virtual Machine Scale Set. Only possible value is UserAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -782,24 +836,31 @@ type OrchestratedVirtualMachineScaleSetNetworkInterfaceObservation struct { type OrchestratedVirtualMachineScaleSetNetworkInterfaceParameters struct { // A list of IP Addresses of DNS Servers which should be assigned to the Network Interface. + // +kubebuilder:validation:Optional DNSServers []*string `json:"dnsServers,omitempty" tf:"dns_servers,omitempty"` // Does this Network Interface support Accelerated Networking? Possible values are true and false. Defaults to false. + // +kubebuilder:validation:Optional EnableAcceleratedNetworking *bool `json:"enableAcceleratedNetworking,omitempty" tf:"enable_accelerated_networking,omitempty"` // Does this Network Interface support IP Forwarding? Possible values are true and false. Defaults to false. + // +kubebuilder:validation:Optional EnableIPForwarding *bool `json:"enableIpForwarding,omitempty" tf:"enable_ip_forwarding,omitempty"` // One or more ip_configuration blocks as defined above. + // +kubebuilder:validation:Optional IPConfiguration []NetworkInterfaceIPConfigurationParameters `json:"ipConfiguration,omitempty" tf:"ip_configuration,omitempty"` // The Name which should be used for this Network Interface. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID of a Network Security Group which should be assigned to this Network Interface. + // +kubebuilder:validation:Optional NetworkSecurityGroupID *string `json:"networkSecurityGroupId,omitempty" tf:"network_security_group_id,omitempty"` // Is this the Primary IP Configuration? Possible values are true and false. Defaults to false. + // +kubebuilder:validation:Optional Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"` } @@ -929,9 +990,11 @@ type OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsObservation struct type OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsParameters struct { // Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is Local. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Option *string `json:"option,omitempty" tf:"option,omitempty"` // Specifies where to store the Ephemeral Disk. Possible values are CacheDisk and ResourceDisk. Defaults to CacheDisk. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Placement *string `json:"placement,omitempty" tf:"placement,omitempty"` } @@ -980,93 +1043,122 @@ type OrchestratedVirtualMachineScaleSetOsDiskObservation struct { type OrchestratedVirtualMachineScaleSetOsDiskParameters struct { // The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite. + // +kubebuilder:validation:Optional Caching *string `json:"caching,omitempty" tf:"caching,omitempty"` // A diff_disk_settings block as defined above. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DiffDiskSettings []OrchestratedVirtualMachineScaleSetOsDiskDiffDiskSettingsParameters `json:"diffDiskSettings,omitempty" tf:"diff_disk_settings,omitempty"` // The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"` // The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine Scale Set is sourced from. + // +kubebuilder:validation:Optional DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"` // The Type of Storage Account which should back this the Internal OS Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS and Premium_ZRS. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"` // Specifies if Write Accelerator is enabled on the OS Disk. Defaults to false. + // +kubebuilder:validation:Optional WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"` } type OrchestratedVirtualMachineScaleSetParameters struct { // An additional_capabilities block as defined below. + // +kubebuilder:validation:Optional AdditionalCapabilities []OrchestratedVirtualMachineScaleSetAdditionalCapabilitiesParameters `json:"additionalCapabilities,omitempty" tf:"additional_capabilities,omitempty"` // An automatic_instance_repair block as defined below. + // +kubebuilder:validation:Optional AutomaticInstanceRepair []OrchestratedVirtualMachineScaleSetAutomaticInstanceRepairParameters `json:"automaticInstanceRepair,omitempty" tf:"automatic_instance_repair,omitempty"` // A boot_diagnostics block as defined below. + // +kubebuilder:validation:Optional BootDiagnostics []OrchestratedVirtualMachineScaleSetBootDiagnosticsParameters `json:"bootDiagnostics,omitempty" tf:"boot_diagnostics,omitempty"` // Specifies the ID of the Capacity Reservation Group which the Virtual Machine Scale Set should be allocated to. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional CapacityReservationGroupID *string `json:"capacityReservationGroupId,omitempty" tf:"capacity_reservation_group_id,omitempty"` // One or more data_disk blocks as defined below. + // +kubebuilder:validation:Optional DataDisk []OrchestratedVirtualMachineScaleSetDataDiskParameters `json:"dataDisk,omitempty" tf:"data_disk,omitempty"` // Should disks attached to this Virtual Machine Scale Set be encrypted by enabling Encryption at Host? + // +kubebuilder:validation:Optional EncryptionAtHostEnabled *bool `json:"encryptionAtHostEnabled,omitempty" tf:"encryption_at_host_enabled,omitempty"` // The Policy which should be used Virtual Machines are Evicted from the Scale Set. Possible values are Deallocate and Delete. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional EvictionPolicy *string `json:"evictionPolicy,omitempty" tf:"eviction_policy,omitempty"` // One or more extension blocks as defined below + // +kubebuilder:validation:Optional Extension []OrchestratedVirtualMachineScaleSetExtensionParameters `json:"extension,omitempty" tf:"extension,omitempty"` // Should extension operations be allowed on the Virtual Machine Scale Set? Possible values are true or false. Defaults to true. Changing this forces a new Orchestrated Virtual Machine Scale Set to be created. + // +kubebuilder:validation:Optional ExtensionOperationsEnabled *bool `json:"extensionOperationsEnabled,omitempty" tf:"extension_operations_enabled,omitempty"` // Specifies the time alloted for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. The default value is 90 minutes (PT1H30M). + // +kubebuilder:validation:Optional ExtensionsTimeBudget *string `json:"extensionsTimeBudget,omitempty" tf:"extensions_time_budget,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []OrchestratedVirtualMachineScaleSetIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // The number of Virtual Machines in the Orcestrated Virtual Machine Scale Set. + // +kubebuilder:validation:Optional Instances *float64 `json:"instances,omitempty" tf:"instances,omitempty"` // Specifies the type of on-premise license (also known as Azure Hybrid Use Benefit) which should be used for this Orchestrated Virtual Machine Scale Set. Possible values are None, Windows_Client and Windows_Server. + // +kubebuilder:validation:Optional LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"` // The Azure location where the Orchestrated Virtual Machine Scale Set should exist. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The maximum price you're willing to pay for each Orchestrated Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the eviction_policy. Defaults to -1, which means that each Virtual Machine in the Orchestrated Scale Set should not be evicted for price reasons. + // +kubebuilder:validation:Optional MaxBidPrice *float64 `json:"maxBidPrice,omitempty" tf:"max_bid_price,omitempty"` // One or more network_interface blocks as defined below. + // +kubebuilder:validation:Optional NetworkInterface []OrchestratedVirtualMachineScaleSetNetworkInterfaceParameters `json:"networkInterface,omitempty" tf:"network_interface,omitempty"` // An os_disk block as defined below. + // +kubebuilder:validation:Optional OsDisk []OrchestratedVirtualMachineScaleSetOsDiskParameters `json:"osDisk,omitempty" tf:"os_disk,omitempty"` // An os_profile block as defined below. + // +kubebuilder:validation:Optional OsProfile []OsProfileParameters `json:"osProfile,omitempty" tf:"os_profile,omitempty"` // A plan block as documented below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Plan []OrchestratedVirtualMachineScaleSetPlanParameters `json:"plan,omitempty" tf:"plan,omitempty"` // Specifies the number of fault domains that are used by this Orchestrated Virtual Machine Scale Set. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PlatformFaultDomainCount *float64 `json:"platformFaultDomainCount,omitempty" tf:"platform_fault_domain_count,omitempty"` // The Priority of this Orchestrated Virtual Machine Scale Set. Possible values are Regular and Spot. Defaults to Regular. Changing this value forces a new resource. + // +kubebuilder:validation:Optional Priority *string `json:"priority,omitempty" tf:"priority,omitempty"` // a priority_mix block as defined below + // +kubebuilder:validation:Optional PriorityMix []PriorityMixParameters `json:"priorityMix,omitempty" tf:"priority_mix,omitempty"` // The ID of the Proximity Placement Group which the Orchestrated Virtual Machine should be assigned to. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ProximityPlacementGroupID *string `json:"proximityPlacementGroupId,omitempty" tf:"proximity_placement_group_id,omitempty"` // The name of the Resource Group in which the Orchestrated Virtual Machine Scale Set should exist. Changing this forces a new resource to be created. @@ -1083,21 +1175,27 @@ type OrchestratedVirtualMachineScaleSetParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Possible values are true or false. + // +kubebuilder:validation:Optional SinglePlacementGroup *bool `json:"singlePlacementGroup,omitempty" tf:"single_placement_group,omitempty"` // The name of the SKU to be used by this Orcestrated Virtual Machine Scale Set. Valid values include: any of the General purpose, Compute optimized, Memory optimized, Storage optimized, GPU optimized, FPGA optimized, High performance, or Previous generation virtual machine SKUs. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // The ID of an Image which each Virtual Machine in this Scale Set should be based on. Possible Image ID types include Image IDs, Shared Image IDs, Shared Image Version IDs, Community Gallery Image IDs, Community Gallery Image Version IDs, Shared Gallery Image IDs and Shared Gallery Image Version IDs. + // +kubebuilder:validation:Optional SourceImageID *string `json:"sourceImageId,omitempty" tf:"source_image_id,omitempty"` // A source_image_reference block as defined below. + // +kubebuilder:validation:Optional SourceImageReference []OrchestratedVirtualMachineScaleSetSourceImageReferenceParameters `json:"sourceImageReference,omitempty" tf:"source_image_reference,omitempty"` // A mapping of tags which should be assigned to this Orchestrated Virtual Machine Scale Set. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // A termination_notification block as defined below. + // +kubebuilder:validation:Optional TerminationNotification []OrchestratedVirtualMachineScaleSetTerminationNotificationParameters `json:"terminationNotification,omitempty" tf:"termination_notification,omitempty"` // The Base64-Encoded User Data which should be used for this Virtual Machine Scale Set. @@ -1105,9 +1203,11 @@ type OrchestratedVirtualMachineScaleSetParameters struct { UserDataBase64SecretRef *v1.SecretKeySelector `json:"userDataBase64SecretRef,omitempty" tf:"-"` // Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to false. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ZoneBalance *bool `json:"zoneBalance,omitempty" tf:"zone_balance,omitempty"` // Specifies a list of Availability Zones in which this Orchestrated Virtual Machine should be located. Changing this forces a new Orchestrated Virtual Machine to be created. + // +kubebuilder:validation:Optional Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } @@ -1138,12 +1238,15 @@ type OrchestratedVirtualMachineScaleSetPlanObservation struct { type OrchestratedVirtualMachineScaleSetPlanParameters struct { // Specifies the name of the image from the marketplace. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the product of the image from the marketplace. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Product *string `json:"product,omitempty" tf:"product,omitempty"` // Specifies the publisher of the image. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` } @@ -1180,15 +1283,19 @@ type OrchestratedVirtualMachineScaleSetSourceImageReferenceObservation struct { type OrchestratedVirtualMachineScaleSetSourceImageReferenceParameters struct { // Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Offer *string `json:"offer,omitempty" tf:"offer,omitempty"` // Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` // Specifies the SKU of the image used to create the virtual machines. + // +kubebuilder:validation:Optional Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // Specifies the version of the image used to create the virtual machines. + // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` } @@ -1213,9 +1320,11 @@ type OrchestratedVirtualMachineScaleSetTerminationNotificationObservation struct type OrchestratedVirtualMachineScaleSetTerminationNotificationParameters struct { // Should the termination notification be enabled on this Virtual Machine Scale Set? Possible values true or false + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M. + // +kubebuilder:validation:Optional Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"` } @@ -1244,9 +1353,11 @@ type OsProfileParameters struct { CustomDataSecretRef *v1.SecretKeySelector `json:"customDataSecretRef,omitempty" tf:"-"` // A linux_configuration block as documented below. + // +kubebuilder:validation:Optional LinuxConfiguration []LinuxConfigurationParameters `json:"linuxConfiguration,omitempty" tf:"linux_configuration,omitempty"` // A windows_configuration block as documented below. + // +kubebuilder:validation:Optional WindowsConfiguration []WindowsConfigurationParameters `json:"windowsConfiguration,omitempty" tf:"windows_configuration,omitempty"` } @@ -1271,9 +1382,11 @@ type PriorityMixObservation struct { type PriorityMixParameters struct { // Specifies the base number of VMs of Regular priority that will be created before any VMs of priority Spot are created. Possible values are integers between 0 and 1000. Defaults to 0. + // +kubebuilder:validation:Optional BaseRegularCount *float64 `json:"baseRegularCount,omitempty" tf:"base_regular_count,omitempty"` // Specifies the desired percentage of VM instances that are of Regular priority after the base count has been reached. Possible values are integers between 0 and 100. Defaults to 0. + // +kubebuilder:validation:Optional RegularPercentageAboveBase *float64 `json:"regularPercentageAboveBase,omitempty" tf:"regular_percentage_above_base,omitempty"` } @@ -1298,9 +1411,11 @@ type PublicIPAddressIPTagObservation struct { type PublicIPAddressIPTagParameters struct { // The IP Tag associated with the Public IP, such as SQL or Storage. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Tag *string `json:"tag,omitempty" tf:"tag,omitempty"` // The Type of IP Tag, such as FirstPartyUsage. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -1377,33 +1492,43 @@ type WindowsConfigurationParameters struct { AdminPasswordSecretRef v1.SecretKeySelector `json:"adminPasswordSecretRef" tf:"-"` // The username of the local administrator on each Orchestrated Virtual Machine Scale Set instance. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"` // The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name_prefix, then you must specify computer_name_prefix. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ComputerNamePrefix *string `json:"computerNamePrefix,omitempty" tf:"computer_name_prefix,omitempty"` // Are automatic updates enabled for this Virtual Machine? Defaults to true. + // +kubebuilder:validation:Optional EnableAutomaticUpdates *bool `json:"enableAutomaticUpdates,omitempty" tf:"enable_automatic_updates,omitempty"` // Should the VM be patched without requiring a reboot? Possible values are true or false. Defaults to false. For more information about hot patching please see the product documentation. + // +kubebuilder:validation:Optional HotpatchingEnabled *bool `json:"hotpatchingEnabled,omitempty" tf:"hotpatching_enabled,omitempty"` // Specifies the mode of VM Guest Patching for the virtual machines that are associated to the Orchestrated Virtual Machine Scale Set. Possible values are AutomaticByPlatform or ImageDefault. Defaults to ImageDefault. + // +kubebuilder:validation:Optional PatchAssessmentMode *string `json:"patchAssessmentMode,omitempty" tf:"patch_assessment_mode,omitempty"` // Specifies the mode of in-guest patching of this Windows Virtual Machine. Possible values are Manual, AutomaticByOS and AutomaticByPlatform. Defaults to AutomaticByOS. For more information on patch modes please see the product documentation. + // +kubebuilder:validation:Optional PatchMode *string `json:"patchMode,omitempty" tf:"patch_mode,omitempty"` // Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to true. Changing this value forces a new resource to be created. + // +kubebuilder:validation:Optional ProvisionVMAgent *bool `json:"provisionVmAgent,omitempty" tf:"provision_vm_agent,omitempty"` // One or more secret blocks as defined below. + // +kubebuilder:validation:Optional Secret []WindowsConfigurationSecretParameters `json:"secret,omitempty" tf:"secret,omitempty"` // Specifies the time zone of the virtual machine, the possible values are defined here. + // +kubebuilder:validation:Optional Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` // One or more winrm_listener blocks as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional WinrmListener []WinrmListenerParameters `json:"winrmListener,omitempty" tf:"winrm_listener,omitempty"` } @@ -1428,9 +1553,11 @@ type WindowsConfigurationSecretCertificateObservation struct { type WindowsConfigurationSecretCertificateParameters struct { // The certificate store on the Virtual Machine where the certificate should be added. + // +kubebuilder:validation:Optional Store *string `json:"store,omitempty" tf:"store,omitempty"` // The Secret URL of a Key Vault Certificate. + // +kubebuilder:validation:Optional URL *string `json:"url,omitempty" tf:"url,omitempty"` } @@ -1455,9 +1582,11 @@ type WindowsConfigurationSecretObservation struct { type WindowsConfigurationSecretParameters struct { // One or more certificate blocks as defined below. + // +kubebuilder:validation:Optional Certificate []WindowsConfigurationSecretCertificateParameters `json:"certificate,omitempty" tf:"certificate,omitempty"` // The ID of the Key Vault from which all Secrets should be sourced. + // +kubebuilder:validation:Optional KeyVaultID *string `json:"keyVaultId,omitempty" tf:"key_vault_id,omitempty"` } @@ -1482,9 +1611,11 @@ type WinrmListenerObservation struct { type WinrmListenerParameters struct { // The Secret URL of a Key Vault Certificate, which must be specified when protocol is set to Https. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional CertificateURL *string `json:"certificateUrl,omitempty" tf:"certificate_url,omitempty"` // Specifies the protocol of listener. Possible values are Http or Https. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` } diff --git a/apis/compute/v1beta1/zz_proximityplacementgroup_types.go b/apis/compute/v1beta1/zz_proximityplacementgroup_types.go index a9238a988..2c73c8e72 100755 --- a/apis/compute/v1beta1/zz_proximityplacementgroup_types.go +++ b/apis/compute/v1beta1/zz_proximityplacementgroup_types.go @@ -52,9 +52,11 @@ type ProximityPlacementGroupObservation struct { type ProximityPlacementGroupParameters struct { // Specifies the supported sizes of Virtual Machines that can be created in the Proximity Placement Group. + // +kubebuilder:validation:Optional AllowedVMSizes []*string `json:"allowedVmSizes,omitempty" tf:"allowed_vm_sizes,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the resource group in which to create the availability set. Changing this forces a new resource to be created. @@ -71,9 +73,11 @@ type ProximityPlacementGroupParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the supported zone of the Proximity Placement Group. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` } diff --git a/apis/compute/v1beta1/zz_sharedimage_types.go b/apis/compute/v1beta1/zz_sharedimage_types.go index b32c3e420..3463c7b79 100755 --- a/apis/compute/v1beta1/zz_sharedimage_types.go +++ b/apis/compute/v1beta1/zz_sharedimage_types.go @@ -40,12 +40,15 @@ type IdentifierObservation struct { type IdentifierParameters struct { // The Offer Name for this Shared Image. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Offer *string `json:"offer,omitempty" tf:"offer,omitempty"` // The Publisher Name for this Gallery Image. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` // The Name of the SKU for this Gallery Image. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` } @@ -76,12 +79,15 @@ type PurchasePlanObservation struct { type PurchasePlanParameters struct { // The Purchase Plan Name for this Shared Image. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Purchase Plan Product for this Gallery Image. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Product *string `json:"product,omitempty" tf:"product,omitempty"` // The Purchase Plan Publisher for this Gallery Image. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` } @@ -235,27 +241,35 @@ type SharedImageObservation struct { type SharedImageParameters struct { // Specifies if the Shared Image supports Accelerated Network. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional AcceleratedNetworkSupportEnabled *bool `json:"acceleratedNetworkSupportEnabled,omitempty" tf:"accelerated_network_support_enabled,omitempty"` // CPU architecture supported by an OS. Possible values are x64 and Arm64. Defaults to x64. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Architecture *string `json:"architecture,omitempty" tf:"architecture,omitempty"` // Specifies if Confidential Virtual Machines enabled. It will enable all the features of trusted, with higher confidentiality features for isolate machines or encrypted data. Available for Gen2 machines. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ConfidentialVMEnabled *bool `json:"confidentialVmEnabled,omitempty" tf:"confidential_vm_enabled,omitempty"` // Specifies if supports creation of both Confidential virtual machines and Gen2 virtual machines with standard security from a compatible Gen2 OS disk VHD or Gen2 Managed image. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ConfidentialVMSupported *bool `json:"confidentialVmSupported,omitempty" tf:"confidential_vm_supported,omitempty"` // A description of this Shared Image. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // One or more Disk Types not allowed for the Image. Possible values include Standard_LRS and Premium_LRS. + // +kubebuilder:validation:Optional DiskTypesNotAllowed []*string `json:"diskTypesNotAllowed,omitempty" tf:"disk_types_not_allowed,omitempty"` // The end of life date in RFC3339 format of the Image. + // +kubebuilder:validation:Optional EndOfLifeDate *string `json:"endOfLifeDate,omitempty" tf:"end_of_life_date,omitempty"` // The End User Licence Agreement for the Shared Image. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Eula *string `json:"eula,omitempty" tf:"eula,omitempty"` // Specifies the name of the Shared Image Gallery in which this Shared Image should exist. Changing this forces a new resource to be created. @@ -272,36 +286,47 @@ type SharedImageParameters struct { GalleryNameSelector *v1.Selector `json:"galleryNameSelector,omitempty" tf:"-"` // The generation of HyperV that the Virtual Machine used to create the Shared Image is based on. Possible values are V1 and V2. Defaults to V1. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional HyperVGeneration *string `json:"hyperVGeneration,omitempty" tf:"hyper_v_generation,omitempty"` // An identifier block as defined below. + // +kubebuilder:validation:Optional Identifier []IdentifierParameters `json:"identifier,omitempty" tf:"identifier,omitempty"` // Specifies the supported Azure location where the Shared Image Gallery exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Maximum memory in GB recommended for the Image. + // +kubebuilder:validation:Optional MaxRecommendedMemoryInGb *float64 `json:"maxRecommendedMemoryInGb,omitempty" tf:"max_recommended_memory_in_gb,omitempty"` // Maximum count of vCPUs recommended for the Image. + // +kubebuilder:validation:Optional MaxRecommendedVcpuCount *float64 `json:"maxRecommendedVcpuCount,omitempty" tf:"max_recommended_vcpu_count,omitempty"` // Minimum memory in GB recommended for the Image. + // +kubebuilder:validation:Optional MinRecommendedMemoryInGb *float64 `json:"minRecommendedMemoryInGb,omitempty" tf:"min_recommended_memory_in_gb,omitempty"` // Minimum count of vCPUs recommended for the Image. + // +kubebuilder:validation:Optional MinRecommendedVcpuCount *float64 `json:"minRecommendedVcpuCount,omitempty" tf:"min_recommended_vcpu_count,omitempty"` // The type of Operating System present in this Shared Image. Possible values are Linux and Windows. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional OsType *string `json:"osType,omitempty" tf:"os_type,omitempty"` // The URI containing the Privacy Statement associated with this Shared Image. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PrivacyStatementURI *string `json:"privacyStatementUri,omitempty" tf:"privacy_statement_uri,omitempty"` // A purchase_plan block as defined below. + // +kubebuilder:validation:Optional PurchasePlan []PurchasePlanParameters `json:"purchasePlan,omitempty" tf:"purchase_plan,omitempty"` // The URI containing the Release Notes associated with this Shared Image. + // +kubebuilder:validation:Optional ReleaseNoteURI *string `json:"releaseNoteUri,omitempty" tf:"release_note_uri,omitempty"` // The name of the resource group in which the Shared Image Gallery exists. Changing this forces a new resource to be created. @@ -318,12 +343,15 @@ type SharedImageParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Specifies that the Operating System used inside this Image has not been Generalized (for example, sysprep on Windows has not been run). Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Specialized *bool `json:"specialized,omitempty" tf:"specialized,omitempty"` // A mapping of tags to assign to the Shared Image. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies if Trusted Launch has to be enabled for the Virtual Machine created from the Shared Image. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional TrustedLaunchEnabled *bool `json:"trustedLaunchEnabled,omitempty" tf:"trusted_launch_enabled,omitempty"` } diff --git a/apis/compute/v1beta1/zz_sharedimagegallery_types.go b/apis/compute/v1beta1/zz_sharedimagegallery_types.go index 73e55b3d7..724973afe 100755 --- a/apis/compute/v1beta1/zz_sharedimagegallery_types.go +++ b/apis/compute/v1beta1/zz_sharedimagegallery_types.go @@ -49,9 +49,11 @@ type SharedImageGalleryObservation struct { type SharedImageGalleryParameters struct { // A description for this Shared Image Gallery. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the resource group in which to create the Shared Image Gallery. Changing this forces a new resource to be created. @@ -68,6 +70,7 @@ type SharedImageGalleryParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the Shared Image Gallery. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/compute/v1beta1/zz_snapshot_types.go b/apis/compute/v1beta1/zz_snapshot_types.go index 281d60dd0..93ae9e081 100755 --- a/apis/compute/v1beta1/zz_snapshot_types.go +++ b/apis/compute/v1beta1/zz_snapshot_types.go @@ -34,9 +34,11 @@ type EncryptionSettingsDiskEncryptionKeyObservation struct { type EncryptionSettingsDiskEncryptionKeyParameters struct { // The URL to the Key Vault Secret used as the Disk Encryption Key. This can be found as id on the azurerm_key_vault_secret resource. + // +kubebuilder:validation:Optional SecretURL *string `json:"secretUrl,omitempty" tf:"secret_url,omitempty"` // The ID of the source Key Vault. This can be found as id on the azurerm_key_vault resource. + // +kubebuilder:validation:Optional SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"` } @@ -61,9 +63,11 @@ type EncryptionSettingsKeyEncryptionKeyObservation struct { type EncryptionSettingsKeyEncryptionKeyParameters struct { // The URL to the Key Vault Key used as the Key Encryption Key. This can be found as id on the azurerm_key_vault_key resource. + // +kubebuilder:validation:Optional KeyURL *string `json:"keyUrl,omitempty" tf:"key_url,omitempty"` // The ID of the source Key Vault. This can be found as id on the azurerm_key_vault resource. + // +kubebuilder:validation:Optional SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"` } @@ -92,11 +96,14 @@ type SnapshotEncryptionSettingsObservation struct { type SnapshotEncryptionSettingsParameters struct { // A disk_encryption_key block as defined below. + // +kubebuilder:validation:Optional DiskEncryptionKey []EncryptionSettingsDiskEncryptionKeyParameters `json:"diskEncryptionKey,omitempty" tf:"disk_encryption_key,omitempty"` + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // A key_encryption_key block as defined below. + // +kubebuilder:validation:Optional KeyEncryptionKey []EncryptionSettingsKeyEncryptionKeyParameters `json:"keyEncryptionKey,omitempty" tf:"key_encryption_key,omitempty"` } @@ -169,18 +176,23 @@ type SnapshotObservation struct { type SnapshotParameters struct { // Indicates how the snapshot is to be created. Possible values are Copy or Import. + // +kubebuilder:validation:Optional CreateOption *string `json:"createOption,omitempty" tf:"create_option,omitempty"` // The size of the Snapshotted Disk in GB. + // +kubebuilder:validation:Optional DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"` // A encryption_settings block as defined below. + // +kubebuilder:validation:Optional EncryptionSettings []SnapshotEncryptionSettingsParameters `json:"encryptionSettings,omitempty" tf:"encryption_settings,omitempty"` // Specifies if the Snapshot is incremental. + // +kubebuilder:validation:Optional IncrementalEnabled *bool `json:"incrementalEnabled,omitempty" tf:"incremental_enabled,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the resource group in which to create the Snapshot. Changing this forces a new resource to be created. @@ -197,6 +209,7 @@ type SnapshotParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Specifies a reference to an existing snapshot, when create_option is Copy. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SourceResourceID *string `json:"sourceResourceId,omitempty" tf:"source_resource_id,omitempty"` // Specifies the URI to a Managed or Unmanaged Disk. Changing this forces a new resource to be created. @@ -214,9 +227,11 @@ type SnapshotParameters struct { SourceURISelector *v1.Selector `json:"sourceUriSelector,omitempty" tf:"-"` // Specifies the ID of an storage account. Used with source_uri to allow authorization during import of unmanaged blobs from a different subscription. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional StorageAccountID *string `json:"storageAccountId,omitempty" tf:"storage_account_id,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/compute/v1beta1/zz_sshpublickey_types.go b/apis/compute/v1beta1/zz_sshpublickey_types.go index e1b838fde..366411173 100755 --- a/apis/compute/v1beta1/zz_sshpublickey_types.go +++ b/apis/compute/v1beta1/zz_sshpublickey_types.go @@ -46,9 +46,11 @@ type SSHPublicKeyObservation struct { type SSHPublicKeyParameters struct { // The Azure Region where the SSH Public Key should exist. Changing this forces a new SSH Public Key to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // SSH public key used to authenticate to a virtual machine through ssh. the provided public key needs to be at least 2048-bit and in ssh-rsa format. + // +kubebuilder:validation:Optional PublicKey *string `json:"publicKey,omitempty" tf:"public_key,omitempty"` // The name of the Resource Group where the SSH Public Key should exist. Changing this forces a new SSH Public Key to be created. @@ -65,6 +67,7 @@ type SSHPublicKeyParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the SSH Public Key. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/compute/v1beta1/zz_windowsvirtualmachine_types.go b/apis/compute/v1beta1/zz_windowsvirtualmachine_types.go index d2e397177..e1fcc7675 100755 --- a/apis/compute/v1beta1/zz_windowsvirtualmachine_types.go +++ b/apis/compute/v1beta1/zz_windowsvirtualmachine_types.go @@ -32,6 +32,7 @@ type AdditionalUnattendContentParameters struct { ContentSecretRef v1.SecretKeySelector `json:"contentSecretRef" tf:"-"` // The name of the setting to which the content applies. Possible values are AutoLogon and FirstLogonCommands. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Setting *string `json:"setting,omitempty" tf:"setting,omitempty"` } @@ -50,6 +51,7 @@ type WindowsVirtualMachineAdditionalCapabilitiesObservation struct { type WindowsVirtualMachineAdditionalCapabilitiesParameters struct { // Should the capacity to enable Data Disks of the UltraSSD_LRS storage account type be supported on this Virtual Machine? Defaults to false. + // +kubebuilder:validation:Optional UltraSsdEnabled *bool `json:"ultraSsdEnabled,omitempty" tf:"ultra_ssd_enabled,omitempty"` } @@ -68,6 +70,7 @@ type WindowsVirtualMachineBootDiagnosticsObservation struct { type WindowsVirtualMachineBootDiagnosticsParameters struct { // The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor. + // +kubebuilder:validation:Optional StorageAccountURI *string `json:"storageAccountUri,omitempty" tf:"storage_account_uri,omitempty"` } @@ -104,15 +107,19 @@ type WindowsVirtualMachineGalleryApplicationObservation struct { type WindowsVirtualMachineGalleryApplicationParameters struct { // Specifies the URI to an Azure Blob that will replace the default configuration for the package if provided. + // +kubebuilder:validation:Optional ConfigurationBlobURI *string `json:"configurationBlobUri,omitempty" tf:"configuration_blob_uri,omitempty"` // Specifies the order in which the packages have to be installed. Possible values are between 0 and 2,147,483,647. + // +kubebuilder:validation:Optional Order *float64 `json:"order,omitempty" tf:"order,omitempty"` // Specifies a passthrough value for more generic context. This field can be any valid string value. + // +kubebuilder:validation:Optional Tag *string `json:"tag,omitempty" tf:"tag,omitempty"` // Specifies the Gallery Application Version resource ID. + // +kubebuilder:validation:Optional VersionID *string `json:"versionId,omitempty" tf:"version_id,omitempty"` } @@ -143,9 +150,11 @@ type WindowsVirtualMachineIdentityObservation struct { type WindowsVirtualMachineIdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Windows Virtual Machine. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Windows Virtual Machine. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -452,9 +461,11 @@ type WindowsVirtualMachineOsDiskDiffDiskSettingsObservation struct { type WindowsVirtualMachineOsDiskDiffDiskSettingsParameters struct { // Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is Local. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Option *string `json:"option,omitempty" tf:"option,omitempty"` // Specifies where to store the Ephemeral Disk. Possible values are CacheDisk and ResourceDisk. Defaults to CacheDisk. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Placement *string `json:"placement,omitempty" tf:"placement,omitempty"` } @@ -521,39 +532,50 @@ type WindowsVirtualMachineOsDiskObservation struct { type WindowsVirtualMachineOsDiskParameters struct { // The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite. + // +kubebuilder:validation:Optional Caching *string `json:"caching,omitempty" tf:"caching,omitempty"` // A diff_disk_settings block as defined above. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DiffDiskSettings []WindowsVirtualMachineOsDiskDiffDiskSettingsParameters `json:"diffDiskSettings,omitempty" tf:"diff_disk_settings,omitempty"` // The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id. + // +kubebuilder:validation:Optional DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"` // The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine is sourced from. + // +kubebuilder:validation:Optional DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"` // The name which should be used for the Internal OS Disk. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID of the Disk Encryption Set which should be used to Encrypt this OS Disk when the Virtual Machine is a Confidential VM. Conflicts with disk_encryption_set_id. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SecureVMDiskEncryptionSetID *string `json:"secureVmDiskEncryptionSetId,omitempty" tf:"secure_vm_disk_encryption_set_id,omitempty"` // Encryption Type when the Virtual Machine is a Confidential VM. Possible values are VMGuestStateOnly and DiskWithVMGuestState. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SecurityEncryptionType *string `json:"securityEncryptionType,omitempty" tf:"security_encryption_type,omitempty"` // The Type of Storage Account which should back this the Internal OS Disk. Possible values are Standard_LRS, StandardSSD_LRS, Premium_LRS, StandardSSD_ZRS and Premium_ZRS. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"` // Should Write Accelerator be Enabled for this OS Disk? Defaults to false. + // +kubebuilder:validation:Optional WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"` } type WindowsVirtualMachineParameters struct { // A additional_capabilities block as defined below. + // +kubebuilder:validation:Optional AdditionalCapabilities []WindowsVirtualMachineAdditionalCapabilitiesParameters `json:"additionalCapabilities,omitempty" tf:"additional_capabilities,omitempty"` // One or more additional_unattend_content blocks as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional AdditionalUnattendContent []AdditionalUnattendContentParameters `json:"additionalUnattendContent,omitempty" tf:"additional_unattend_content,omitempty"` // The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created. @@ -561,21 +583,27 @@ type WindowsVirtualMachineParameters struct { AdminPasswordSecretRef v1.SecretKeySelector `json:"adminPasswordSecretRef" tf:"-"` // The username of the local administrator used for the Virtual Machine. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"` // Should Extension Operations be allowed on this Virtual Machine? Defaults to true. + // +kubebuilder:validation:Optional AllowExtensionOperations *bool `json:"allowExtensionOperations,omitempty" tf:"allow_extension_operations,omitempty"` // Specifies the ID of the Availability Set in which the Virtual Machine should exist. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional AvailabilitySetID *string `json:"availabilitySetId,omitempty" tf:"availability_set_id,omitempty"` // A boot_diagnostics block as defined below. + // +kubebuilder:validation:Optional BootDiagnostics []WindowsVirtualMachineBootDiagnosticsParameters `json:"bootDiagnostics,omitempty" tf:"boot_diagnostics,omitempty"` // Specifies the ID of the Capacity Reservation Group which the Virtual Machine should be allocated to. + // +kubebuilder:validation:Optional CapacityReservationGroupID *string `json:"capacityReservationGroupId,omitempty" tf:"capacity_reservation_group_id,omitempty"` // Specifies the Hostname which should be used for this Virtual Machine. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name, then you must specify computer_name. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ComputerName *string `json:"computerName,omitempty" tf:"computer_name,omitempty"` // The Base64-Encoded Custom Data which should be used for this Virtual Machine. Changing this forces a new resource to be created. @@ -583,42 +611,55 @@ type WindowsVirtualMachineParameters struct { CustomDataSecretRef *v1.SecretKeySelector `json:"customDataSecretRef,omitempty" tf:"-"` // The ID of a Dedicated Host Group that this Windows Virtual Machine should be run within. Conflicts with dedicated_host_id. + // +kubebuilder:validation:Optional DedicatedHostGroupID *string `json:"dedicatedHostGroupId,omitempty" tf:"dedicated_host_group_id,omitempty"` // The ID of a Dedicated Host where this machine should be run on. Conflicts with dedicated_host_group_id. + // +kubebuilder:validation:Optional DedicatedHostID *string `json:"dedicatedHostId,omitempty" tf:"dedicated_host_id,omitempty"` // Specifies the Edge Zone within the Azure Region where this Windows Virtual Machine should exist. Changing this forces a new Windows Virtual Machine to be created. + // +kubebuilder:validation:Optional EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"` // Specifies if Automatic Updates are Enabled for the Windows Virtual Machine. Changing this forces a new resource to be created. Defaults to true. + // +kubebuilder:validation:Optional EnableAutomaticUpdates *bool `json:"enableAutomaticUpdates,omitempty" tf:"enable_automatic_updates,omitempty"` // Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host? + // +kubebuilder:validation:Optional EncryptionAtHostEnabled *bool `json:"encryptionAtHostEnabled,omitempty" tf:"encryption_at_host_enabled,omitempty"` // Specifies what should happen when the Virtual Machine is evicted for price reasons when using a Spot instance. Possible values are Deallocate and Delete. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional EvictionPolicy *string `json:"evictionPolicy,omitempty" tf:"eviction_policy,omitempty"` // Specifies the duration allocated for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. Defaults to 90 minutes (PT1H30M). + // +kubebuilder:validation:Optional ExtensionsTimeBudget *string `json:"extensionsTimeBudget,omitempty" tf:"extensions_time_budget,omitempty"` // One or more gallery_application blocks as defined below. + // +kubebuilder:validation:Optional GalleryApplication []WindowsVirtualMachineGalleryApplicationParameters `json:"galleryApplication,omitempty" tf:"gallery_application,omitempty"` // Should the VM be patched without requiring a reboot? Possible values are true or false. Defaults to false. For more information about hot patching please see the product documentation. + // +kubebuilder:validation:Optional HotpatchingEnabled *bool `json:"hotpatchingEnabled,omitempty" tf:"hotpatching_enabled,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []WindowsVirtualMachineIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // Specifies the type of on-premise license (also known as Azure Hybrid Use Benefit) which should be used for this Virtual Machine. Possible values are None, Windows_Client and Windows_Server. + // +kubebuilder:validation:Optional LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"` // The Azure location where the Windows Virtual Machine should exist. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The maximum price you're willing to pay for this Virtual Machine, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machine will be evicted using the eviction_policy. Defaults to -1, which means that the Virtual Machine should not be evicted for price reasons. + // +kubebuilder:validation:Optional MaxBidPrice *float64 `json:"maxBidPrice,omitempty" tf:"max_bid_price,omitempty"` // . A list of Network Interface IDs which should be attached to this Virtual Machine. The first Network Interface ID in this list will be the Primary Network Interface on the Virtual Machine. @@ -636,27 +677,35 @@ type WindowsVirtualMachineParameters struct { NetworkInterfaceIdsSelector *v1.Selector `json:"networkInterfaceIdsSelector,omitempty" tf:"-"` // A os_disk block as defined below. + // +kubebuilder:validation:Optional OsDisk []WindowsVirtualMachineOsDiskParameters `json:"osDisk,omitempty" tf:"os_disk,omitempty"` // Specifies the mode of VM Guest Patching for the Virtual Machine. Possible values are AutomaticByPlatform or ImageDefault. Defaults to ImageDefault. + // +kubebuilder:validation:Optional PatchAssessmentMode *string `json:"patchAssessmentMode,omitempty" tf:"patch_assessment_mode,omitempty"` // Specifies the mode of in-guest patching to this Windows Virtual Machine. Possible values are Manual, AutomaticByOS and AutomaticByPlatform. Defaults to AutomaticByOS. For more information on patch modes please see the product documentation. + // +kubebuilder:validation:Optional PatchMode *string `json:"patchMode,omitempty" tf:"patch_mode,omitempty"` // A plan block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Plan []WindowsVirtualMachinePlanParameters `json:"plan,omitempty" tf:"plan,omitempty"` // Specifies the Platform Fault Domain in which this Windows Virtual Machine should be created. Defaults to -1, which means this will be automatically assigned to a fault domain that best maintains balance across the available fault domains. Changing this forces a new Windows Virtual Machine to be created. + // +kubebuilder:validation:Optional PlatformFaultDomain *float64 `json:"platformFaultDomain,omitempty" tf:"platform_fault_domain,omitempty"` // Specifies the priority of this Virtual Machine. Possible values are Regular and Spot. Defaults to Regular. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Priority *string `json:"priority,omitempty" tf:"priority,omitempty"` // Should the Azure VM Agent be provisioned on this Virtual Machine? Defaults to true. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ProvisionVMAgent *bool `json:"provisionVmAgent,omitempty" tf:"provision_vm_agent,omitempty"` // The ID of the Proximity Placement Group which the Virtual Machine should be assigned to. + // +kubebuilder:validation:Optional ProximityPlacementGroupID *string `json:"proximityPlacementGroupId,omitempty" tf:"proximity_placement_group_id,omitempty"` // The name of the Resource Group in which the Windows Virtual Machine should be exist. Changing this forces a new resource to be created. @@ -673,42 +722,55 @@ type WindowsVirtualMachineParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // One or more secret blocks as defined below. + // +kubebuilder:validation:Optional Secret []WindowsVirtualMachineSecretParameters `json:"secret,omitempty" tf:"secret,omitempty"` // Specifies if Secure Boot and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SecureBootEnabled *bool `json:"secureBootEnabled,omitempty" tf:"secure_boot_enabled,omitempty"` // The SKU which should be used for this Virtual Machine, such as Standard_F2. + // +kubebuilder:validation:Optional Size *string `json:"size,omitempty" tf:"size,omitempty"` // The ID of the Image which this Virtual Machine should be created from. Changing this forces a new resource to be created. Possible Image ID types include Image IDs, Shared Image IDs, Shared Image Version IDs, Community Gallery Image IDs, Community Gallery Image Version IDs, Shared Gallery Image IDs and Shared Gallery Image Version IDs. + // +kubebuilder:validation:Optional SourceImageID *string `json:"sourceImageId,omitempty" tf:"source_image_id,omitempty"` // A source_image_reference block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SourceImageReference []WindowsVirtualMachineSourceImageReferenceParameters `json:"sourceImageReference,omitempty" tf:"source_image_reference,omitempty"` // A mapping of tags which should be assigned to this Virtual Machine. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // A termination_notification block as defined below. + // +kubebuilder:validation:Optional TerminationNotification []WindowsVirtualMachineTerminationNotificationParameters `json:"terminationNotification,omitempty" tf:"termination_notification,omitempty"` // Specifies the Time Zone which should be used by the Virtual Machine, the possible values are defined here. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` // The Base64-Encoded User Data which should be used for this Virtual Machine. + // +kubebuilder:validation:Optional UserData *string `json:"userData,omitempty" tf:"user_data,omitempty"` // Specifies the Orchestrated Virtual Machine Scale Set that this Virtual Machine should be created within. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VirtualMachineScaleSetID *string `json:"virtualMachineScaleSetId,omitempty" tf:"virtual_machine_scale_set_id,omitempty"` // Specifies if vTPM (virtual Trusted Platform Module) and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VtpmEnabled *bool `json:"vtpmEnabled,omitempty" tf:"vtpm_enabled,omitempty"` // One or more winrm_listener blocks as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional WinrmListener []WindowsVirtualMachineWinrmListenerParameters `json:"winrmListener,omitempty" tf:"winrm_listener,omitempty"` // * zones - Specifies the Availability Zone in which this Windows Virtual Machine should be located. Changing this forces a new Windows Virtual Machine to be created. + // +kubebuilder:validation:Optional Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` } @@ -739,12 +801,15 @@ type WindowsVirtualMachinePlanObservation struct { type WindowsVirtualMachinePlanParameters struct { // Specifies the Name of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the Product of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Product *string `json:"product,omitempty" tf:"product,omitempty"` // Specifies the Publisher of the Marketplace Image this Virtual Machine should be created from. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` } @@ -769,9 +834,11 @@ type WindowsVirtualMachineSecretCertificateObservation struct { type WindowsVirtualMachineSecretCertificateParameters struct { // The certificate store on the Virtual Machine where the certificate should be added. + // +kubebuilder:validation:Optional Store *string `json:"store,omitempty" tf:"store,omitempty"` // The Secret URL of a Key Vault Certificate. + // +kubebuilder:validation:Optional URL *string `json:"url,omitempty" tf:"url,omitempty"` } @@ -796,9 +863,11 @@ type WindowsVirtualMachineSecretObservation struct { type WindowsVirtualMachineSecretParameters struct { // One or more certificate blocks as defined above. + // +kubebuilder:validation:Optional Certificate []WindowsVirtualMachineSecretCertificateParameters `json:"certificate,omitempty" tf:"certificate,omitempty"` // The ID of the Key Vault from which all Secrets should be sourced. + // +kubebuilder:validation:Optional KeyVaultID *string `json:"keyVaultId,omitempty" tf:"key_vault_id,omitempty"` } @@ -835,15 +904,19 @@ type WindowsVirtualMachineSourceImageReferenceObservation struct { type WindowsVirtualMachineSourceImageReferenceParameters struct { // Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Offer *string `json:"offer,omitempty" tf:"offer,omitempty"` // Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` // Specifies the SKU of the image used to create the virtual machines. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // Specifies the version of the image used to create the virtual machines. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` } @@ -868,9 +941,11 @@ type WindowsVirtualMachineTerminationNotificationObservation struct { type WindowsVirtualMachineTerminationNotificationParameters struct { // Should the termination notification be enabled on this Virtual Machine? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M. + // +kubebuilder:validation:Optional Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"` } @@ -895,9 +970,11 @@ type WindowsVirtualMachineWinrmListenerObservation struct { type WindowsVirtualMachineWinrmListenerParameters struct { // The Secret URL of a Key Vault Certificate, which must be specified when protocol is set to Https. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional CertificateURL *string `json:"certificateUrl,omitempty" tf:"certificate_url,omitempty"` // Specifies the protocol of listener. Possible values are Http or Https. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` } diff --git a/apis/compute/v1beta1/zz_windowsvirtualmachinescaleset_types.go b/apis/compute/v1beta1/zz_windowsvirtualmachinescaleset_types.go index fff3f11df..0b4681806 100755 --- a/apis/compute/v1beta1/zz_windowsvirtualmachinescaleset_types.go +++ b/apis/compute/v1beta1/zz_windowsvirtualmachinescaleset_types.go @@ -34,9 +34,11 @@ type IPConfigurationPublicIPAddressIPTagObservation struct { type IPConfigurationPublicIPAddressIPTagParameters struct { // The IP Tag associated with the Public IP, such as SQL or Storage. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Tag *string `json:"tag,omitempty" tf:"tag,omitempty"` // The Type of IP Tag, such as FirstPartyUsage. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -85,21 +87,27 @@ type NetworkInterfaceIPConfigurationPublicIPAddressObservation struct { type NetworkInterfaceIPConfigurationPublicIPAddressParameters struct { // The Prefix which should be used for the Domain Name Label for each Virtual Machine Instance. Azure concatenates the Domain Name Label and Virtual Machine Index to create a unique Domain Name Label for each Virtual Machine. + // +kubebuilder:validation:Optional DomainNameLabel *string `json:"domainNameLabel,omitempty" tf:"domain_name_label,omitempty"` // One or more ip_tag blocks as defined above. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional IPTag []IPConfigurationPublicIPAddressIPTagParameters `json:"ipTag,omitempty" tf:"ip_tag,omitempty"` // The Idle Timeout in Minutes for the Public IP Address. Possible values are in the range 4 to 32. + // +kubebuilder:validation:Optional IdleTimeoutInMinutes *float64 `json:"idleTimeoutInMinutes,omitempty" tf:"idle_timeout_in_minutes,omitempty"` // The Name of the Public IP Address Configuration. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID of the Public IP Address Prefix from where Public IP Addresses should be allocated. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PublicIPPrefixID *string `json:"publicIpPrefixId,omitempty" tf:"public_ip_prefix_id,omitempty"` // Specifies the version of the image used to create the virtual machines. + // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` } @@ -118,6 +126,7 @@ type WindowsVirtualMachineScaleSetAdditionalCapabilitiesObservation struct { type WindowsVirtualMachineScaleSetAdditionalCapabilitiesParameters struct { // Should the capacity to enable Data Disks of the UltraSSD_LRS storage account type be supported on this Virtual Machine Scale Set? Possible values are true or false. Defaults to false. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional UltraSsdEnabled *bool `json:"ultraSsdEnabled,omitempty" tf:"ultra_ssd_enabled,omitempty"` } @@ -140,6 +149,7 @@ type WindowsVirtualMachineScaleSetAdditionalUnattendContentParameters struct { ContentSecretRef v1.SecretKeySelector `json:"contentSecretRef" tf:"-"` // The name of the setting to which the content applies. Possible values are AutoLogon and FirstLogonCommands. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Setting *string `json:"setting,omitempty" tf:"setting,omitempty"` } @@ -164,9 +174,11 @@ type WindowsVirtualMachineScaleSetAutomaticInstanceRepairObservation struct { type WindowsVirtualMachineScaleSetAutomaticInstanceRepairParameters struct { // Should the automatic instance repair be enabled on this Virtual Machine Scale Set? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Amount of time (in minutes, between 30 and 90, defaults to 30 minutes) for which automatic repairs will be delayed. The grace period starts right after the VM is found unhealthy. The time duration should be specified in ISO 8601 format. Defaults to PT30M. + // +kubebuilder:validation:Optional GracePeriod *string `json:"gracePeriod,omitempty" tf:"grace_period,omitempty"` } @@ -191,9 +203,11 @@ type WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyObservation struct { type WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyParameters struct { // Should automatic rollbacks be disabled? + // +kubebuilder:validation:Optional DisableAutomaticRollback *bool `json:"disableAutomaticRollback,omitempty" tf:"disable_automatic_rollback,omitempty"` // Should OS Upgrades automatically be applied to Scale Set instances in a rolling fashion when a newer version of the OS Image becomes available? + // +kubebuilder:validation:Optional EnableAutomaticOsUpgrade *bool `json:"enableAutomaticOsUpgrade,omitempty" tf:"enable_automatic_os_upgrade,omitempty"` } @@ -212,6 +226,7 @@ type WindowsVirtualMachineScaleSetBootDiagnosticsObservation struct { type WindowsVirtualMachineScaleSetBootDiagnosticsParameters struct { // The Primary/Secondary Endpoint for the Azure Storage Account which should be used to store Boot Diagnostics, including Console Output and Screenshots from the Hypervisor. + // +kubebuilder:validation:Optional StorageAccountURI *string `json:"storageAccountUri,omitempty" tf:"storage_account_uri,omitempty"` } @@ -284,33 +299,43 @@ type WindowsVirtualMachineScaleSetDataDiskObservation struct { type WindowsVirtualMachineScaleSetDataDiskParameters struct { // The type of Caching which should be used for this Data Disk. Possible values are None, ReadOnly and ReadWrite. + // +kubebuilder:validation:Optional Caching *string `json:"caching,omitempty" tf:"caching,omitempty"` // The create option which should be used for this Data Disk. Possible values are Empty and FromImage. Defaults to Empty. (FromImage should only be used if the source image includes data disks). + // +kubebuilder:validation:Optional CreateOption *string `json:"createOption,omitempty" tf:"create_option,omitempty"` // The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"` // The size of the Data Disk which should be created. + // +kubebuilder:validation:Optional DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"` // The Logical Unit Number of the Data Disk, which must be unique within the Virtual Machine. + // +kubebuilder:validation:Optional Lun *float64 `json:"lun,omitempty" tf:"lun,omitempty"` // The name of the Data Disk. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Type of Storage Account which should back this Data Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS, PremiumV2_LRS, Premium_ZRS and UltraSSD_LRS. + // +kubebuilder:validation:Optional StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"` // Specifies the Read-Write IOPS for this Data Disk. Only settable when storage_account_type is PremiumV2_LRS or UltraSSD_LRS. + // +kubebuilder:validation:Optional UltraSsdDiskIopsReadWrite *float64 `json:"ultraSsdDiskIopsReadWrite,omitempty" tf:"ultra_ssd_disk_iops_read_write,omitempty"` // Specifies the bandwidth in MB per second for this Data Disk. Only settable when storage_account_type is PremiumV2_LRS or UltraSSD_LRS. + // +kubebuilder:validation:Optional UltraSsdDiskMbpsReadWrite *float64 `json:"ultraSsdDiskMbpsReadWrite,omitempty" tf:"ultra_ssd_disk_mbps_read_write,omitempty"` // Should Write Accelerator be Enabled for this OS Disk? Defaults to false. + // +kubebuilder:validation:Optional WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"` } @@ -383,18 +408,23 @@ type WindowsVirtualMachineScaleSetExtensionObservation struct { type WindowsVirtualMachineScaleSetExtensionParameters struct { // Should the latest version of the Extension be used at Deployment Time, if one is available? This won't auto-update the extension on existing installation. Defaults to true. + // +kubebuilder:validation:Optional AutoUpgradeMinorVersion *bool `json:"autoUpgradeMinorVersion,omitempty" tf:"auto_upgrade_minor_version,omitempty"` // Should the Extension be automatically updated whenever the Publisher releases a new version of this VM Extension? + // +kubebuilder:validation:Optional AutomaticUpgradeEnabled *bool `json:"automaticUpgradeEnabled,omitempty" tf:"automatic_upgrade_enabled,omitempty"` // A value which, when different to the previous value can be used to force-run the Extension even if the Extension Configuration hasn't changed. + // +kubebuilder:validation:Optional ForceUpdateTag *string `json:"forceUpdateTag,omitempty" tf:"force_update_tag,omitempty"` // The name for the Virtual Machine Scale Set Extension. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A protected_settings_from_key_vault block as defined below. + // +kubebuilder:validation:Optional ProtectedSettingsFromKeyVault []WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultParameters `json:"protectedSettingsFromKeyVault,omitempty" tf:"protected_settings_from_key_vault,omitempty"` // A JSON String which specifies Sensitive Settings (such as Passwords) for the Extension. @@ -402,18 +432,23 @@ type WindowsVirtualMachineScaleSetExtensionParameters struct { ProtectedSettingsSecretRef *v1.SecretKeySelector `json:"protectedSettingsSecretRef,omitempty" tf:"-"` // An ordered list of Extension names which this should be provisioned after. + // +kubebuilder:validation:Optional ProvisionAfterExtensions []*string `json:"provisionAfterExtensions,omitempty" tf:"provision_after_extensions,omitempty"` // Specifies the Publisher of the Extension. + // +kubebuilder:validation:Optional Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` // A JSON String which specifies Settings for the Extension. + // +kubebuilder:validation:Optional Settings *string `json:"settings,omitempty" tf:"settings,omitempty"` // Specifies the Type of the Extension. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // Specifies the version of the extension to use, available versions can be found using the Azure CLI. + // +kubebuilder:validation:Optional TypeHandlerVersion *string `json:"typeHandlerVersion,omitempty" tf:"type_handler_version,omitempty"` } @@ -438,9 +473,11 @@ type WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultObservat type WindowsVirtualMachineScaleSetExtensionProtectedSettingsFromKeyVaultParameters struct { // The URL to the Key Vault Secret which stores the protected settings. + // +kubebuilder:validation:Optional SecretURL *string `json:"secretUrl,omitempty" tf:"secret_url,omitempty"` // The ID of the source Key Vault. + // +kubebuilder:validation:Optional SourceVaultID *string `json:"sourceVaultId,omitempty" tf:"source_vault_id,omitempty"` } @@ -477,15 +514,19 @@ type WindowsVirtualMachineScaleSetGalleryApplicationObservation struct { type WindowsVirtualMachineScaleSetGalleryApplicationParameters struct { // Specifies the URI to an Azure Blob that will replace the default configuration for the package if provided. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ConfigurationBlobURI *string `json:"configurationBlobUri,omitempty" tf:"configuration_blob_uri,omitempty"` // Specifies the order in which the packages have to be installed. Possible values are between 0 and 2,147,483,647. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Order *float64 `json:"order,omitempty" tf:"order,omitempty"` // Specifies a passthrough value for more generic context. This field can be any valid string value. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Tag *string `json:"tag,omitempty" tf:"tag,omitempty"` // Specifies the Gallery Application Version resource ID. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VersionID *string `json:"versionId,omitempty" tf:"version_id,omitempty"` } @@ -516,15 +557,20 @@ type WindowsVirtualMachineScaleSetGalleryApplicationsObservation struct { } type WindowsVirtualMachineScaleSetGalleryApplicationsParameters struct { + + // +kubebuilder:validation:Optional ConfigurationReferenceBlobURI *string `json:"configurationReferenceBlobUri,omitempty" tf:"configuration_reference_blob_uri,omitempty"` // Specifies the order in which the packages have to be installed. Possible values are between 0 and 2,147,483,647. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Order *float64 `json:"order,omitempty" tf:"order,omitempty"` // The ID of the Windows Virtual Machine Scale Set. + // +kubebuilder:validation:Optional PackageReferenceID *string `json:"packageReferenceId,omitempty" tf:"package_reference_id,omitempty"` // The IP Tag associated with the Public IP, such as SQL or Storage. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Tag *string `json:"tag,omitempty" tf:"tag,omitempty"` } @@ -555,9 +601,11 @@ type WindowsVirtualMachineScaleSetIdentityObservation struct { type WindowsVirtualMachineScaleSetIdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Windows Virtual Machine Scale Set. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Windows Virtual Machine Scale Set. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -785,24 +833,31 @@ type WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationObservation str type WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationParameters struct { // A list of Backend Address Pools ID's from a Application Gateway which this Virtual Machine Scale Set should be connected to. + // +kubebuilder:validation:Optional ApplicationGatewayBackendAddressPoolIds []*string `json:"applicationGatewayBackendAddressPoolIds,omitempty" tf:"application_gateway_backend_address_pool_ids,omitempty"` // A list of Application Security Group ID's which this Virtual Machine Scale Set should be connected to. + // +kubebuilder:validation:Optional ApplicationSecurityGroupIds []*string `json:"applicationSecurityGroupIds,omitempty" tf:"application_security_group_ids,omitempty"` // A list of Backend Address Pools ID's from a Load Balancer which this Virtual Machine Scale Set should be connected to. + // +kubebuilder:validation:Optional LoadBalancerBackendAddressPoolIds []*string `json:"loadBalancerBackendAddressPoolIds,omitempty" tf:"load_balancer_backend_address_pool_ids,omitempty"` // A list of NAT Rule ID's from a Load Balancer which this Virtual Machine Scale Set should be connected to. + // +kubebuilder:validation:Optional LoadBalancerInboundNATRulesIds []*string `json:"loadBalancerInboundNatRulesIds,omitempty" tf:"load_balancer_inbound_nat_rules_ids,omitempty"` // The Name of the Public IP Address Configuration. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Is this the Primary IP Configuration? + // +kubebuilder:validation:Optional Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"` // A public_ip_address block as defined below. + // +kubebuilder:validation:Optional PublicIPAddress []NetworkInterfaceIPConfigurationPublicIPAddressParameters `json:"publicIpAddress,omitempty" tf:"public_ip_address,omitempty"` // The ID of the Subnet which this IP Configuration should be connected to. @@ -820,6 +875,7 @@ type WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationParameters stru SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // Specifies the version of the image used to create the virtual machines. + // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` } @@ -874,24 +930,31 @@ type WindowsVirtualMachineScaleSetNetworkInterfaceObservation struct { type WindowsVirtualMachineScaleSetNetworkInterfaceParameters struct { // A list of IP Addresses of DNS Servers which should be assigned to the Network Interface. + // +kubebuilder:validation:Optional DNSServers []*string `json:"dnsServers,omitempty" tf:"dns_servers,omitempty"` // Does this Network Interface support Accelerated Networking? Defaults to false. + // +kubebuilder:validation:Optional EnableAcceleratedNetworking *bool `json:"enableAcceleratedNetworking,omitempty" tf:"enable_accelerated_networking,omitempty"` // Does this Network Interface support IP Forwarding? Defaults to false. + // +kubebuilder:validation:Optional EnableIPForwarding *bool `json:"enableIpForwarding,omitempty" tf:"enable_ip_forwarding,omitempty"` // One or more ip_configuration blocks as defined above. + // +kubebuilder:validation:Optional IPConfiguration []WindowsVirtualMachineScaleSetNetworkInterfaceIPConfigurationParameters `json:"ipConfiguration,omitempty" tf:"ip_configuration,omitempty"` // The Name which should be used for this Network Interface. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID of a Network Security Group which should be assigned to this Network Interface. + // +kubebuilder:validation:Optional NetworkSecurityGroupID *string `json:"networkSecurityGroupId,omitempty" tf:"network_security_group_id,omitempty"` // Is this the Primary IP Configuration? + // +kubebuilder:validation:Optional Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"` } @@ -1089,9 +1152,11 @@ type WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsObservation struct { type WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsParameters struct { // Specifies the Ephemeral Disk Settings for the OS Disk. At this time the only possible value is Local. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Option *string `json:"option,omitempty" tf:"option,omitempty"` // Specifies where to store the Ephemeral Disk. Possible values are CacheDisk and ResourceDisk. Defaults to CacheDisk. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Placement *string `json:"placement,omitempty" tf:"placement,omitempty"` } @@ -1152,36 +1217,46 @@ type WindowsVirtualMachineScaleSetOsDiskObservation struct { type WindowsVirtualMachineScaleSetOsDiskParameters struct { // The Type of Caching which should be used for the Internal OS Disk. Possible values are None, ReadOnly and ReadWrite. + // +kubebuilder:validation:Optional Caching *string `json:"caching,omitempty" tf:"caching,omitempty"` // A diff_disk_settings block as defined above. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DiffDiskSettings []WindowsVirtualMachineScaleSetOsDiskDiffDiskSettingsParameters `json:"diffDiskSettings,omitempty" tf:"diff_disk_settings,omitempty"` // The ID of the Disk Encryption Set which should be used to encrypt this OS Disk. Conflicts with secure_vm_disk_encryption_set_id. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"` // The Size of the Internal OS Disk in GB, if you wish to vary from the size used in the image this Virtual Machine Scale Set is sourced from. + // +kubebuilder:validation:Optional DiskSizeGb *float64 `json:"diskSizeGb,omitempty" tf:"disk_size_gb,omitempty"` // The ID of the Disk Encryption Set which should be used to Encrypt the OS Disk when the Virtual Machine Scale Set is Confidential VMSS. Conflicts with disk_encryption_set_id. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SecureVMDiskEncryptionSetID *string `json:"secureVmDiskEncryptionSetId,omitempty" tf:"secure_vm_disk_encryption_set_id,omitempty"` // Encryption Type when the Virtual Machine Scale Set is Confidential VMSS. Possible values are VMGuestStateOnly and DiskWithVMGuestState. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SecurityEncryptionType *string `json:"securityEncryptionType,omitempty" tf:"security_encryption_type,omitempty"` // The Type of Storage Account which should back this the Internal OS Disk. Possible values include Standard_LRS, StandardSSD_LRS, StandardSSD_ZRS, Premium_LRS and Premium_ZRS. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"` // Should Write Accelerator be Enabled for this OS Disk? Defaults to false. + // +kubebuilder:validation:Optional WriteAcceleratorEnabled *bool `json:"writeAcceleratorEnabled,omitempty" tf:"write_accelerator_enabled,omitempty"` } type WindowsVirtualMachineScaleSetParameters struct { // An additional_capabilities block as defined below. + // +kubebuilder:validation:Optional AdditionalCapabilities []WindowsVirtualMachineScaleSetAdditionalCapabilitiesParameters `json:"additionalCapabilities,omitempty" tf:"additional_capabilities,omitempty"` // One or more additional_unattend_content blocks as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional AdditionalUnattendContent []WindowsVirtualMachineScaleSetAdditionalUnattendContentParameters `json:"additionalUnattendContent,omitempty" tf:"additional_unattend_content,omitempty"` // The Password which should be used for the local-administrator on this Virtual Machine. Changing this forces a new resource to be created. @@ -1189,21 +1264,27 @@ type WindowsVirtualMachineScaleSetParameters struct { AdminPasswordSecretRef v1.SecretKeySelector `json:"adminPasswordSecretRef" tf:"-"` // The username of the local administrator on each Virtual Machine Scale Set instance. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"` // An automatic_instance_repair block as defined below. To enable the automatic instance repair, this Virtual Machine Scale Set must have a valid health_probe_id or an Application Health Extension. + // +kubebuilder:validation:Optional AutomaticInstanceRepair []WindowsVirtualMachineScaleSetAutomaticInstanceRepairParameters `json:"automaticInstanceRepair,omitempty" tf:"automatic_instance_repair,omitempty"` // An automatic_os_upgrade_policy block as defined below. This can only be specified when upgrade_mode is set to either Automatic or Rolling. + // +kubebuilder:validation:Optional AutomaticOsUpgradePolicy []WindowsVirtualMachineScaleSetAutomaticOsUpgradePolicyParameters `json:"automaticOsUpgradePolicy,omitempty" tf:"automatic_os_upgrade_policy,omitempty"` // A boot_diagnostics block as defined below. + // +kubebuilder:validation:Optional BootDiagnostics []WindowsVirtualMachineScaleSetBootDiagnosticsParameters `json:"bootDiagnostics,omitempty" tf:"boot_diagnostics,omitempty"` // Specifies the ID of the Capacity Reservation Group which the Virtual Machine Scale Set should be allocated to. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional CapacityReservationGroupID *string `json:"capacityReservationGroupId,omitempty" tf:"capacity_reservation_group_id,omitempty"` // The prefix which should be used for the name of the Virtual Machines in this Scale Set. If unspecified this defaults to the value for the name field. If the value of the name field is not a valid computer_name_prefix, then you must specify computer_name_prefix. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ComputerNamePrefix *string `json:"computerNamePrefix,omitempty" tf:"computer_name_prefix,omitempty"` // The Base64-Encoded Custom Data which should be used for this Virtual Machine Scale Set. @@ -1211,80 +1292,106 @@ type WindowsVirtualMachineScaleSetParameters struct { CustomDataSecretRef *v1.SecretKeySelector `json:"customDataSecretRef,omitempty" tf:"-"` // One or more data_disk blocks as defined below. + // +kubebuilder:validation:Optional DataDisk []WindowsVirtualMachineScaleSetDataDiskParameters `json:"dataDisk,omitempty" tf:"data_disk,omitempty"` // Should Virtual Machine Extensions be run on Overprovisioned Virtual Machines in the Scale Set? Defaults to false. + // +kubebuilder:validation:Optional DoNotRunExtensionsOnOverprovisionedMachines *bool `json:"doNotRunExtensionsOnOverprovisionedMachines,omitempty" tf:"do_not_run_extensions_on_overprovisioned_machines,omitempty"` // Specifies the Edge Zone within the Azure Region where this Windows Virtual Machine Scale Set should exist. Changing this forces a new Windows Virtual Machine Scale Set to be created. + // +kubebuilder:validation:Optional EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"` // Are automatic updates enabled for this Virtual Machine? Defaults to true. + // +kubebuilder:validation:Optional EnableAutomaticUpdates *bool `json:"enableAutomaticUpdates,omitempty" tf:"enable_automatic_updates,omitempty"` // Should all of the disks (including the temp disk) attached to this Virtual Machine be encrypted by enabling Encryption at Host? + // +kubebuilder:validation:Optional EncryptionAtHostEnabled *bool `json:"encryptionAtHostEnabled,omitempty" tf:"encryption_at_host_enabled,omitempty"` // Specifies the eviction policy for Virtual Machines in this Scale Set. Possible values are Deallocate and Delete. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional EvictionPolicy *string `json:"evictionPolicy,omitempty" tf:"eviction_policy,omitempty"` // One or more extension blocks as defined below + // +kubebuilder:validation:Optional Extension []WindowsVirtualMachineScaleSetExtensionParameters `json:"extension,omitempty" tf:"extension,omitempty"` // Should extension operations be allowed on the Virtual Machine Scale Set? Possible values are true or false. Defaults to true. Changing this forces a new Windows Virtual Machine Scale Set to be created. + // +kubebuilder:validation:Optional ExtensionOperationsEnabled *bool `json:"extensionOperationsEnabled,omitempty" tf:"extension_operations_enabled,omitempty"` // Specifies the duration allocated for all extensions to start. The time duration should be between 15 minutes and 120 minutes (inclusive) and should be specified in ISO 8601 format. Defaults to 90 minutes (PT1H30M). + // +kubebuilder:validation:Optional ExtensionsTimeBudget *string `json:"extensionsTimeBudget,omitempty" tf:"extensions_time_budget,omitempty"` // One or more gallery_application blocks as defined below. + // +kubebuilder:validation:Optional GalleryApplication []WindowsVirtualMachineScaleSetGalleryApplicationParameters `json:"galleryApplication,omitempty" tf:"gallery_application,omitempty"` + // +kubebuilder:validation:Optional GalleryApplications []WindowsVirtualMachineScaleSetGalleryApplicationsParameters `json:"galleryApplications,omitempty" tf:"gallery_applications,omitempty"` // The ID of a Load Balancer Probe which should be used to determine the health of an instance. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling. + // +kubebuilder:validation:Optional HealthProbeID *string `json:"healthProbeId,omitempty" tf:"health_probe_id,omitempty"` // Specifies the ID of the dedicated host group that the virtual machine scale set resides in. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional HostGroupID *string `json:"hostGroupId,omitempty" tf:"host_group_id,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []WindowsVirtualMachineScaleSetIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // The number of Virtual Machines in the Scale Set. + // +kubebuilder:validation:Optional Instances *float64 `json:"instances,omitempty" tf:"instances,omitempty"` // Specifies the type of on-premise license (also known as Azure Hybrid Use Benefit) which should be used for this Virtual Machine Scale Set. Possible values are None, Windows_Client and Windows_Server. + // +kubebuilder:validation:Optional LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"` // The Azure location where the Windows Virtual Machine Scale Set should exist. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The maximum price you're willing to pay for each Virtual Machine in this Scale Set, in US Dollars; which must be greater than the current spot price. If this bid price falls below the current spot price the Virtual Machines in the Scale Set will be evicted using the eviction_policy. Defaults to -1, which means that each Virtual Machine in the Scale Set should not be evicted for price reasons. + // +kubebuilder:validation:Optional MaxBidPrice *float64 `json:"maxBidPrice,omitempty" tf:"max_bid_price,omitempty"` // One or more network_interface blocks as defined below. + // +kubebuilder:validation:Optional NetworkInterface []WindowsVirtualMachineScaleSetNetworkInterfaceParameters `json:"networkInterface,omitempty" tf:"network_interface,omitempty"` // An os_disk block as defined below. + // +kubebuilder:validation:Optional OsDisk []WindowsVirtualMachineScaleSetOsDiskParameters `json:"osDisk,omitempty" tf:"os_disk,omitempty"` // Should Azure over-provision Virtual Machines in this Scale Set? This means that multiple Virtual Machines will be provisioned and Azure will keep the instances which become available first - which improves provisioning success rates and improves deployment time. You're not billed for these over-provisioned VM's and they don't count towards the Subscription Quota. Defaults to true. + // +kubebuilder:validation:Optional Overprovision *bool `json:"overprovision,omitempty" tf:"overprovision,omitempty"` // A plan block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Plan []WindowsVirtualMachineScaleSetPlanParameters `json:"plan,omitempty" tf:"plan,omitempty"` // Specifies the number of fault domains that are used by this Linux Virtual Machine Scale Set. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PlatformFaultDomainCount *float64 `json:"platformFaultDomainCount,omitempty" tf:"platform_fault_domain_count,omitempty"` // The Priority of this Virtual Machine Scale Set. Possible values are Regular and Spot. Defaults to Regular. Changing this value forces a new resource. + // +kubebuilder:validation:Optional Priority *string `json:"priority,omitempty" tf:"priority,omitempty"` // Should the Azure VM Agent be provisioned on each Virtual Machine in the Scale Set? Defaults to true. Changing this value forces a new resource to be created. + // +kubebuilder:validation:Optional ProvisionVMAgent *bool `json:"provisionVmAgent,omitempty" tf:"provision_vm_agent,omitempty"` // The ID of the Proximity Placement Group in which the Virtual Machine Scale Set should be assigned to. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ProximityPlacementGroupID *string `json:"proximityPlacementGroupId,omitempty" tf:"proximity_placement_group_id,omitempty"` // The name of the Resource Group in which the Windows Virtual Machine Scale Set should be exist. Changing this forces a new resource to be created. @@ -1301,63 +1408,83 @@ type WindowsVirtualMachineScaleSetParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A rolling_upgrade_policy block as defined below. This is Required and can only be specified when upgrade_mode is set to Automatic or Rolling. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional RollingUpgradePolicy []WindowsVirtualMachineScaleSetRollingUpgradePolicyParameters `json:"rollingUpgradePolicy,omitempty" tf:"rolling_upgrade_policy,omitempty"` // A scale_in block as defined below. + // +kubebuilder:validation:Optional ScaleIn []WindowsVirtualMachineScaleSetScaleInParameters `json:"scaleIn,omitempty" tf:"scale_in,omitempty"` // Deprecated: scaleInPolicy will be removed in favour of the scaleIn code block. + // +kubebuilder:validation:Optional ScaleInPolicy *string `json:"scaleInPolicy,omitempty" tf:"scale_in_policy,omitempty"` // One or more secret blocks as defined below. + // +kubebuilder:validation:Optional Secret []WindowsVirtualMachineScaleSetSecretParameters `json:"secret,omitempty" tf:"secret,omitempty"` // Specifies if Secure Boot and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SecureBootEnabled *bool `json:"secureBootEnabled,omitempty" tf:"secure_boot_enabled,omitempty"` // Should this Virtual Machine Scale Set be limited to a Single Placement Group, which means the number of instances will be capped at 100 Virtual Machines. Defaults to true. + // +kubebuilder:validation:Optional SinglePlacementGroup *bool `json:"singlePlacementGroup,omitempty" tf:"single_placement_group,omitempty"` // The Virtual Machine SKU for the Scale Set, such as Standard_F2. + // +kubebuilder:validation:Optional Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // The ID of an Image which each Virtual Machine in this Scale Set should be based on. Possible Image ID types include Image IDs, Shared Image IDs, Shared Image Version IDs, Community Gallery Image IDs, Community Gallery Image Version IDs, Shared Gallery Image IDs and Shared Gallery Image Version IDs. + // +kubebuilder:validation:Optional SourceImageID *string `json:"sourceImageId,omitempty" tf:"source_image_id,omitempty"` // A source_image_reference block as defined below. + // +kubebuilder:validation:Optional SourceImageReference []WindowsVirtualMachineScaleSetSourceImageReferenceParameters `json:"sourceImageReference,omitempty" tf:"source_image_reference,omitempty"` // A spot_restore block as defined below. + // +kubebuilder:validation:Optional SpotRestore []WindowsVirtualMachineScaleSetSpotRestoreParameters `json:"spotRestore,omitempty" tf:"spot_restore,omitempty"` // A mapping of tags which should be assigned to this Virtual Machine Scale Set. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // A terminate_notification block as defined below. + // +kubebuilder:validation:Optional TerminateNotification []WindowsVirtualMachineScaleSetTerminateNotificationParameters `json:"terminateNotification,omitempty" tf:"terminate_notification,omitempty"` // A termination_notification block as defined below. + // +kubebuilder:validation:Optional TerminationNotification []WindowsVirtualMachineScaleSetTerminationNotificationParameters `json:"terminationNotification,omitempty" tf:"termination_notification,omitempty"` // Specifies the time zone of the virtual machine, the possible values are defined here. + // +kubebuilder:validation:Optional Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` // Specifies how Upgrades (e.g. changing the Image/SKU) should be performed to Virtual Machine Instances. Possible values are Automatic, Manual and Rolling. Defaults to Manual. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional UpgradeMode *string `json:"upgradeMode,omitempty" tf:"upgrade_mode,omitempty"` // The Base64-Encoded User Data which should be used for this Virtual Machine Scale Set. + // +kubebuilder:validation:Optional UserData *string `json:"userData,omitempty" tf:"user_data,omitempty"` // Specifies if vTPM (Virtual Trusted Platform Module) and Trusted Launch is enabled for the Virtual Machine. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VtpmEnabled *bool `json:"vtpmEnabled,omitempty" tf:"vtpm_enabled,omitempty"` // One or more winrm_listener blocks as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional WinrmListener []WindowsVirtualMachineScaleSetWinrmListenerParameters `json:"winrmListener,omitempty" tf:"winrm_listener,omitempty"` // Should the Virtual Machines in this Scale Set be strictly evenly distributed across Availability Zones? Defaults to false. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ZoneBalance *bool `json:"zoneBalance,omitempty" tf:"zone_balance,omitempty"` // Specifies a list of Availability Zones in which this Windows Virtual Machine Scale Set should be located. Changing this forces a new Windows Virtual Machine Scale Set to be created. + // +kubebuilder:validation:Optional Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } @@ -1388,12 +1515,15 @@ type WindowsVirtualMachineScaleSetPlanObservation struct { type WindowsVirtualMachineScaleSetPlanParameters struct { // Specifies the name of the image from the marketplace. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the product of the image from the marketplace. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Product *string `json:"product,omitempty" tf:"product,omitempty"` // Specifies the publisher of the image. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` } @@ -1442,21 +1572,27 @@ type WindowsVirtualMachineScaleSetRollingUpgradePolicyObservation struct { type WindowsVirtualMachineScaleSetRollingUpgradePolicyParameters struct { // Should the Virtual Machine Scale Set ignore the Azure Zone boundaries when constructing upgrade batches? Possible values are true or false. + // +kubebuilder:validation:Optional CrossZoneUpgradesEnabled *bool `json:"crossZoneUpgradesEnabled,omitempty" tf:"cross_zone_upgrades_enabled,omitempty"` // The maximum percent of total virtual machine instances that will be upgraded simultaneously by the rolling upgrade in one batch. As this is a maximum, unhealthy instances in previous or future batches can cause the percentage of instances in a batch to decrease to ensure higher reliability. + // +kubebuilder:validation:Optional MaxBatchInstancePercent *float64 `json:"maxBatchInstancePercent,omitempty" tf:"max_batch_instance_percent,omitempty"` // The maximum percentage of the total virtual machine instances in the scale set that can be simultaneously unhealthy, either as a result of being upgraded, or by being found in an unhealthy state by the virtual machine health checks before the rolling upgrade aborts. This constraint will be checked prior to starting any batch. + // +kubebuilder:validation:Optional MaxUnhealthyInstancePercent *float64 `json:"maxUnhealthyInstancePercent,omitempty" tf:"max_unhealthy_instance_percent,omitempty"` // The maximum percentage of upgraded virtual machine instances that can be found to be in an unhealthy state. This check will happen after each batch is upgraded. If this percentage is ever exceeded, the rolling update aborts. + // +kubebuilder:validation:Optional MaxUnhealthyUpgradedInstancePercent *float64 `json:"maxUnhealthyUpgradedInstancePercent,omitempty" tf:"max_unhealthy_upgraded_instance_percent,omitempty"` // The wait time between completing the update for all virtual machines in one batch and starting the next batch. The time duration should be specified in ISO 8601 format. + // +kubebuilder:validation:Optional PauseTimeBetweenBatches *string `json:"pauseTimeBetweenBatches,omitempty" tf:"pause_time_between_batches,omitempty"` // Upgrade all unhealthy instances in a scale set before any healthy instances. Possible values are true or false. + // +kubebuilder:validation:Optional PrioritizeUnhealthyInstancesEnabled *bool `json:"prioritizeUnhealthyInstancesEnabled,omitempty" tf:"prioritize_unhealthy_instances_enabled,omitempty"` } @@ -1481,9 +1617,11 @@ type WindowsVirtualMachineScaleSetScaleInObservation struct { type WindowsVirtualMachineScaleSetScaleInParameters struct { // Should the virtual machines chosen for removal be force deleted when the virtual machine scale set is being scaled-in? Possible values are true or false. Defaults to false. + // +kubebuilder:validation:Optional ForceDeletionEnabled *bool `json:"forceDeletionEnabled,omitempty" tf:"force_deletion_enabled,omitempty"` // The scale-in policy rule that decides which virtual machines are chosen for removal when a Virtual Machine Scale Set is scaled in. Possible values for the scale-in policy rules are Default, NewestVM and OldestVM, defaults to Default. For more information about scale in policy, please refer to this doc. + // +kubebuilder:validation:Optional Rule *string `json:"rule,omitempty" tf:"rule,omitempty"` } @@ -1508,9 +1646,11 @@ type WindowsVirtualMachineScaleSetSecretCertificateObservation struct { type WindowsVirtualMachineScaleSetSecretCertificateParameters struct { // The certificate store on the Virtual Machine where the certificate should be added. + // +kubebuilder:validation:Optional Store *string `json:"store,omitempty" tf:"store,omitempty"` // The Secret URL of a Key Vault Certificate. + // +kubebuilder:validation:Optional URL *string `json:"url,omitempty" tf:"url,omitempty"` } @@ -1535,9 +1675,11 @@ type WindowsVirtualMachineScaleSetSecretObservation struct { type WindowsVirtualMachineScaleSetSecretParameters struct { // One or more certificate blocks as defined above. + // +kubebuilder:validation:Optional Certificate []WindowsVirtualMachineScaleSetSecretCertificateParameters `json:"certificate,omitempty" tf:"certificate,omitempty"` // The ID of the Key Vault from which all Secrets should be sourced. + // +kubebuilder:validation:Optional KeyVaultID *string `json:"keyVaultId,omitempty" tf:"key_vault_id,omitempty"` } @@ -1574,15 +1716,19 @@ type WindowsVirtualMachineScaleSetSourceImageReferenceObservation struct { type WindowsVirtualMachineScaleSetSourceImageReferenceParameters struct { // Specifies the offer of the image used to create the virtual machines. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Offer *string `json:"offer,omitempty" tf:"offer,omitempty"` // Specifies the publisher of the image used to create the virtual machines. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` // Specifies the SKU of the image used to create the virtual machines. + // +kubebuilder:validation:Optional Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // Specifies the version of the image used to create the virtual machines. + // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` } @@ -1607,9 +1753,11 @@ type WindowsVirtualMachineScaleSetSpotRestoreObservation struct { type WindowsVirtualMachineScaleSetSpotRestoreParameters struct { // Should the Spot-Try-Restore feature be enabled? The Spot-Try-Restore feature will attempt to automatically restore the evicted Spot Virtual Machine Scale Set VM instances opportunistically based on capacity availability and pricing constraints. Possible values are true or false. Defaults to false. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The length of time that the Virtual Machine Scale Set should attempt to restore the Spot VM instances which have been evicted. The time duration should be between 15 minutes and 120 minutes (inclusive). The time duration should be specified in the ISO 8601 format. Defaults to 90 minutes (e.g. PT1H30M). Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"` } @@ -1634,9 +1782,11 @@ type WindowsVirtualMachineScaleSetTerminateNotificationObservation struct { type WindowsVirtualMachineScaleSetTerminateNotificationParameters struct { // Should the terminate notification be enabled on this Virtual Machine Scale Set? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M. + // +kubebuilder:validation:Optional Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"` } @@ -1661,9 +1811,11 @@ type WindowsVirtualMachineScaleSetTerminationNotificationObservation struct { type WindowsVirtualMachineScaleSetTerminationNotificationParameters struct { // Should the termination notification be enabled on this Virtual Machine Scale Set? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Length of time (in minutes, between 5 and 15) a notification to be sent to the VM on the instance metadata server till the VM gets deleted. The time duration should be specified in ISO 8601 format. Defaults to PT5M. + // +kubebuilder:validation:Optional Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"` } @@ -1688,9 +1840,11 @@ type WindowsVirtualMachineScaleSetWinrmListenerObservation struct { type WindowsVirtualMachineScaleSetWinrmListenerParameters struct { // The Secret URL of a Key Vault Certificate, which must be specified when protocol is set to Https. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional CertificateURL *string `json:"certificateUrl,omitempty" tf:"certificate_url,omitempty"` // The Protocol of the WinRM Listener. Possible values are Http and Https. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` } diff --git a/apis/confidentialledger/v1beta1/zz_ledger_types.go b/apis/confidentialledger/v1beta1/zz_ledger_types.go index 461f24641..eb8fecf7d 100755 --- a/apis/confidentialledger/v1beta1/zz_ledger_types.go +++ b/apis/confidentialledger/v1beta1/zz_ledger_types.go @@ -40,12 +40,15 @@ type AzureadBasedServicePrincipalObservation struct { type AzureadBasedServicePrincipalParameters struct { // Specifies the Ledger Role to grant this AzureAD Service Principal. Possible values are Administrator, Contributor and Reader. + // +kubebuilder:validation:Optional LedgerRoleName *string `json:"ledgerRoleName,omitempty" tf:"ledger_role_name,omitempty"` // Specifies the Principal ID of the AzureAD Service Principal. + // +kubebuilder:validation:Optional PrincipalID *string `json:"principalId,omitempty" tf:"principal_id,omitempty"` // Specifies the Tenant ID for this AzureAD Service Principal. + // +kubebuilder:validation:Optional TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` } @@ -70,9 +73,11 @@ type CertificateBasedSecurityPrincipalObservation struct { type CertificateBasedSecurityPrincipalParameters struct { // Specifies the Ledger Role to grant this Certificate Security Principal. Possible values are Administrator, Contributor and Reader. + // +kubebuilder:validation:Optional LedgerRoleName *string `json:"ledgerRoleName,omitempty" tf:"ledger_role_name,omitempty"` // The public key, in PEM format, of the certificate used by this identity to authenticate with the Confidential Ledger. + // +kubebuilder:validation:Optional PemPublicKey *string `json:"pemPublicKey,omitempty" tf:"pem_public_key,omitempty"` } @@ -127,15 +132,19 @@ type LedgerObservation struct { type LedgerParameters struct { // A list of azuread_based_service_principal blocks as defined below. + // +kubebuilder:validation:Optional AzureadBasedServicePrincipal []AzureadBasedServicePrincipalParameters `json:"azureadBasedServicePrincipal,omitempty" tf:"azuread_based_service_principal,omitempty"` // A list of certificate_based_security_principal blocks as defined below. + // +kubebuilder:validation:Optional CertificateBasedSecurityPrincipal []CertificateBasedSecurityPrincipalParameters `json:"certificateBasedSecurityPrincipal,omitempty" tf:"certificate_based_security_principal,omitempty"` // Specifies the type of Confidential Ledger. Possible values are Private and Public. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional LedgerType *string `json:"ledgerType,omitempty" tf:"ledger_type,omitempty"` // Specifies the supported Azure location where the Confidential Ledger exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the Resource Group where the Confidential Ledger exists. Changing this forces a new resource to be created. @@ -152,6 +161,7 @@ type LedgerParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the Confidential Ledger. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/consumption/v1beta1/zz_budgetmanagementgroup_types.go b/apis/consumption/v1beta1/zz_budgetmanagementgroup_types.go index 5c7417db8..98dcf0394 100755 --- a/apis/consumption/v1beta1/zz_budgetmanagementgroup_types.go +++ b/apis/consumption/v1beta1/zz_budgetmanagementgroup_types.go @@ -70,12 +70,15 @@ type BudgetManagementGroupObservation struct { type BudgetManagementGroupParameters struct { // The total amount of cost to track with the budget. + // +kubebuilder:validation:Optional Amount *float64 `json:"amount,omitempty" tf:"amount,omitempty"` // The ETag of the Management Group Consumption Budget. + // +kubebuilder:validation:Optional Etag *string `json:"etag,omitempty" tf:"etag,omitempty"` // A filter block as defined below. + // +kubebuilder:validation:Optional Filter []FilterParameters `json:"filter,omitempty" tf:"filter,omitempty"` // The ID of the Management Group. Changing this forces a new resource to be created. @@ -93,15 +96,19 @@ type BudgetManagementGroupParameters struct { ManagementGroupIDSelector *v1.Selector `json:"managementGroupIdSelector,omitempty" tf:"-"` // The name which should be used for this Management Group Consumption Budget. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // One or more notification blocks as defined below. + // +kubebuilder:validation:Optional Notification []NotificationParameters `json:"notification,omitempty" tf:"notification,omitempty"` // The time covered by a budget. Tracking of the amount will be reset based on the time grain. Must be one of BillingAnnual, BillingMonth, BillingQuarter, Annually, Monthly and Quarterly. Defaults to Monthly. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional TimeGrain *string `json:"timeGrain,omitempty" tf:"time_grain,omitempty"` // A time_period block as defined below. + // +kubebuilder:validation:Optional TimePeriod []TimePeriodParameters `json:"timePeriod,omitempty" tf:"time_period,omitempty"` } @@ -132,12 +139,15 @@ type DimensionObservation struct { type DimensionParameters struct { // The name of the tag to use for the filter. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The operator to use for comparison. The allowed values are In. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Specifies a list of values for the tag. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -168,12 +178,15 @@ type FilterObservation struct { type FilterParameters struct { // One or more dimension blocks as defined below to filter the budget on. + // +kubebuilder:validation:Optional Dimension []DimensionParameters `json:"dimension,omitempty" tf:"dimension,omitempty"` // A not block as defined below to filter the budget on. This is deprecated as the API no longer supports it and will be removed in version 4.0 of the provider. + // +kubebuilder:validation:Optional Not []NotParameters `json:"not,omitempty" tf:"not,omitempty"` // One or more tag blocks as defined below to filter the budget on. + // +kubebuilder:validation:Optional Tag []FilterTagParameters `json:"tag,omitempty" tf:"tag,omitempty"` } @@ -204,12 +217,15 @@ type FilterTagObservation struct { type FilterTagParameters struct { // The name of the tag to use for the filter. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The operator to use for comparison. The allowed values are In. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Specifies a list of values for the tag. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -240,12 +256,15 @@ type NotDimensionObservation struct { type NotDimensionParameters struct { // The name of the tag to use for the filter. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The operator to use for comparison. The allowed values are In. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Specifies a list of values for the tag. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -270,9 +289,11 @@ type NotObservation struct { type NotParameters struct { // One dimension block as defined below to filter the budget on. Conflicts with tag. + // +kubebuilder:validation:Optional Dimension []NotDimensionParameters `json:"dimension,omitempty" tf:"dimension,omitempty"` // One tag block as defined below to filter the budget on. Conflicts with dimension. + // +kubebuilder:validation:Optional Tag []TagParameters `json:"tag,omitempty" tf:"tag,omitempty"` } @@ -315,18 +336,23 @@ type NotificationObservation struct { type NotificationParameters struct { // Specifies a list of email addresses to send the budget notification to when the threshold is exceeded. + // +kubebuilder:validation:Optional ContactEmails []*string `json:"contactEmails,omitempty" tf:"contact_emails,omitempty"` // Should the notification be enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The comparison operator for the notification. Must be one of EqualTo, GreaterThan, or GreaterThanOrEqualTo. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Threshold value associated with a notification. Notification is sent when the cost exceeded the threshold. It is always percent and has to be between 0 and 1000. + // +kubebuilder:validation:Optional Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"` // The type of threshold for the notification. This determines whether the notification is triggered by forecasted costs or actual costs. The allowed values are Actual and Forecasted. Default is Actual. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ThresholdType *string `json:"thresholdType,omitempty" tf:"threshold_type,omitempty"` } @@ -357,12 +383,15 @@ type TagObservation struct { type TagParameters struct { // The name of the tag to use for the filter. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The operator to use for comparison. The allowed values are In. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Specifies a list of values for the tag. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -387,9 +416,11 @@ type TimePeriodObservation struct { type TimePeriodParameters struct { // The end date for the budget. If not set this will be 10 years after the start date. + // +kubebuilder:validation:Optional EndDate *string `json:"endDate,omitempty" tf:"end_date,omitempty"` // The start date for the budget. The start date must be first of the month and should be less than the end date. Budget start date must be on or after June 1, 2017. Future start date should not be more than twelve months. Past start date should be selected within the timegrain period. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional StartDate *string `json:"startDate,omitempty" tf:"start_date,omitempty"` } diff --git a/apis/consumption/v1beta1/zz_budgetresourcegroup_types.go b/apis/consumption/v1beta1/zz_budgetresourcegroup_types.go index 5cd14bdcf..37a98a646 100755 --- a/apis/consumption/v1beta1/zz_budgetresourcegroup_types.go +++ b/apis/consumption/v1beta1/zz_budgetresourcegroup_types.go @@ -40,12 +40,15 @@ type BudgetResourceGroupFilterObservation struct { type BudgetResourceGroupFilterParameters struct { // One or more dimension blocks as defined below to filter the budget on. + // +kubebuilder:validation:Optional Dimension []FilterDimensionParameters `json:"dimension,omitempty" tf:"dimension,omitempty"` // A not block as defined below to filter the budget on. This is deprecated as the API no longer supports it and will be removed in version 4.0 of the provider. + // +kubebuilder:validation:Optional Not []FilterNotParameters `json:"not,omitempty" tf:"not,omitempty"` // One or more tag blocks as defined below to filter the budget on. + // +kubebuilder:validation:Optional Tag []BudgetResourceGroupFilterTagParameters `json:"tag,omitempty" tf:"tag,omitempty"` } @@ -76,12 +79,15 @@ type BudgetResourceGroupFilterTagObservation struct { type BudgetResourceGroupFilterTagParameters struct { // The name of the tag to use for the filter. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The operator to use for comparison. The allowed values are In. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Specifies a list of values for the tag. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -160,24 +166,31 @@ type BudgetResourceGroupNotificationObservation struct { type BudgetResourceGroupNotificationParameters struct { // Specifies a list of email addresses to send the budget notification to when the threshold is exceeded. + // +kubebuilder:validation:Optional ContactEmails []*string `json:"contactEmails,omitempty" tf:"contact_emails,omitempty"` // Specifies a list of Action Group IDs to send the budget notification to when the threshold is exceeded. + // +kubebuilder:validation:Optional ContactGroups []*string `json:"contactGroups,omitempty" tf:"contact_groups,omitempty"` // Specifies a list of contact roles to send the budget notification to when the threshold is exceeded. + // +kubebuilder:validation:Optional ContactRoles []*string `json:"contactRoles,omitempty" tf:"contact_roles,omitempty"` // Should the notification be enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The comparison operator for the notification. Must be one of EqualTo, GreaterThan, or GreaterThanOrEqualTo. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Threshold value associated with a notification. Notification is sent when the cost exceeded the threshold. It is always percent and has to be between 0 and 1000. + // +kubebuilder:validation:Optional Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"` // The type of threshold for the notification. This determines whether the notification is triggered by forecasted costs or actual costs. The allowed values are Actual and Forecasted. Default is Actual. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ThresholdType *string `json:"thresholdType,omitempty" tf:"threshold_type,omitempty"` } @@ -214,18 +227,23 @@ type BudgetResourceGroupObservation struct { type BudgetResourceGroupParameters struct { // The total amount of cost to track with the budget. + // +kubebuilder:validation:Optional Amount *float64 `json:"amount,omitempty" tf:"amount,omitempty"` // The ETag of the Resource Group Consumption Budget + // +kubebuilder:validation:Optional Etag *string `json:"etag,omitempty" tf:"etag,omitempty"` // A filter block as defined below. + // +kubebuilder:validation:Optional Filter []BudgetResourceGroupFilterParameters `json:"filter,omitempty" tf:"filter,omitempty"` // The name which should be used for this Resource Group Consumption Budget. Changing this forces a new Resource Group Consumption Budget to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // One or more notification blocks as defined below. + // +kubebuilder:validation:Optional Notification []BudgetResourceGroupNotificationParameters `json:"notification,omitempty" tf:"notification,omitempty"` // The ID of the Resource Group to create the consumption budget for in the form of /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/resourceGroup1. Changing this forces a new Resource Group Consumption Budget to be created. @@ -243,9 +261,11 @@ type BudgetResourceGroupParameters struct { ResourceGroupIDSelector *v1.Selector `json:"resourceGroupIdSelector,omitempty" tf:"-"` // The time covered by a budget. Tracking of the amount will be reset based on the time grain. Must be one of BillingAnnual, BillingMonth, BillingQuarter, Annually, Monthly and Quarterly. Defaults to Monthly. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional TimeGrain *string `json:"timeGrain,omitempty" tf:"time_grain,omitempty"` // A time_period block as defined below. + // +kubebuilder:validation:Optional TimePeriod []BudgetResourceGroupTimePeriodParameters `json:"timePeriod,omitempty" tf:"time_period,omitempty"` } @@ -270,9 +290,11 @@ type BudgetResourceGroupTimePeriodObservation struct { type BudgetResourceGroupTimePeriodParameters struct { // The end date for the budget. If not set this will be 10 years after the start date. + // +kubebuilder:validation:Optional EndDate *string `json:"endDate,omitempty" tf:"end_date,omitempty"` // The start date for the budget. The start date must be first of the month and should be less than the end date. Budget start date must be on or after June 1, 2017. Future start date should not be more than twelve months. Past start date should be selected within the timegrain period. Changing this forces a new Resource Group Consumption Budget to be created. + // +kubebuilder:validation:Optional StartDate *string `json:"startDate,omitempty" tf:"start_date,omitempty"` } @@ -303,12 +325,15 @@ type FilterDimensionObservation struct { type FilterDimensionParameters struct { // The name of the tag to use for the filter. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The operator to use for comparison. The allowed values are In. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Specifies a list of values for the tag. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -339,12 +364,15 @@ type FilterNotDimensionObservation struct { type FilterNotDimensionParameters struct { // The name of the tag to use for the filter. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The operator to use for comparison. The allowed values are In. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Specifies a list of values for the tag. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -369,9 +397,11 @@ type FilterNotObservation struct { type FilterNotParameters struct { // One dimension block as defined below to filter the budget on. Conflicts with tag. + // +kubebuilder:validation:Optional Dimension []FilterNotDimensionParameters `json:"dimension,omitempty" tf:"dimension,omitempty"` // One tag block as defined below to filter the budget on. Conflicts with dimension. + // +kubebuilder:validation:Optional Tag []NotTagParameters `json:"tag,omitempty" tf:"tag,omitempty"` } @@ -402,12 +432,15 @@ type NotTagObservation struct { type NotTagParameters struct { // The name of the tag to use for the filter. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The operator to use for comparison. The allowed values are In. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Specifies a list of values for the tag. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } diff --git a/apis/consumption/v1beta1/zz_budgetsubscription_types.go b/apis/consumption/v1beta1/zz_budgetsubscription_types.go index 95b86c9ee..e81f1abba 100755 --- a/apis/consumption/v1beta1/zz_budgetsubscription_types.go +++ b/apis/consumption/v1beta1/zz_budgetsubscription_types.go @@ -40,12 +40,15 @@ type BudgetSubscriptionFilterDimensionObservation struct { type BudgetSubscriptionFilterDimensionParameters struct { // The name of the tag to use for the filter. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The operator to use for comparison. The allowed values are In. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Specifies a list of values for the tag. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -88,12 +91,15 @@ type BudgetSubscriptionFilterNotDimensionObservation struct { type BudgetSubscriptionFilterNotDimensionParameters struct { // The name of the tag to use for the filter. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The operator to use for comparison. The allowed values are In. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Specifies a list of values for the tag. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -118,9 +124,11 @@ type BudgetSubscriptionFilterNotObservation struct { type BudgetSubscriptionFilterNotParameters struct { // One dimension block as defined below to filter the budget on. Conflicts with tag. + // +kubebuilder:validation:Optional Dimension []BudgetSubscriptionFilterNotDimensionParameters `json:"dimension,omitempty" tf:"dimension,omitempty"` // One tag block as defined below to filter the budget on. Conflicts with dimension. + // +kubebuilder:validation:Optional Tag []FilterNotTagParameters `json:"tag,omitempty" tf:"tag,omitempty"` } @@ -139,12 +147,15 @@ type BudgetSubscriptionFilterObservation struct { type BudgetSubscriptionFilterParameters struct { // One or more dimension blocks as defined below to filter the budget on. + // +kubebuilder:validation:Optional Dimension []BudgetSubscriptionFilterDimensionParameters `json:"dimension,omitempty" tf:"dimension,omitempty"` // A not block as defined below to filter the budget on. This is deprecated as the API no longer supports it and will be removed in version 4.0 of the provider. + // +kubebuilder:validation:Optional Not []BudgetSubscriptionFilterNotParameters `json:"not,omitempty" tf:"not,omitempty"` // One or more tag blocks as defined below to filter the budget on. + // +kubebuilder:validation:Optional Tag []BudgetSubscriptionFilterTagParameters `json:"tag,omitempty" tf:"tag,omitempty"` } @@ -175,12 +186,15 @@ type BudgetSubscriptionFilterTagObservation struct { type BudgetSubscriptionFilterTagParameters struct { // The name of the tag to use for the filter. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The operator to use for comparison. The allowed values are In. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Specifies a list of values for the tag. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -256,6 +270,7 @@ type BudgetSubscriptionNotificationObservation struct { type BudgetSubscriptionNotificationParameters struct { // Specifies a list of email addresses to send the budget notification to when the threshold is exceeded. + // +kubebuilder:validation:Optional ContactEmails []*string `json:"contactEmails,omitempty" tf:"contact_emails,omitempty"` // Specifies a list of Action Group IDs to send the budget notification to when the threshold is exceeded. @@ -273,18 +288,23 @@ type BudgetSubscriptionNotificationParameters struct { ContactGroupsSelector *v1.Selector `json:"contactGroupsSelector,omitempty" tf:"-"` // Specifies a list of contact roles to send the budget notification to when the threshold is exceeded. + // +kubebuilder:validation:Optional ContactRoles []*string `json:"contactRoles,omitempty" tf:"contact_roles,omitempty"` // Should the notification be enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The comparison operator for the notification. Must be one of EqualTo, GreaterThan, or GreaterThanOrEqualTo. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Threshold value associated with a notification. Notification is sent when the cost exceeded the threshold. It is always percent and has to be between 0 and 1000. + // +kubebuilder:validation:Optional Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"` // The type of threshold for the notification. This determines whether the notification is triggered by forecasted costs or actual costs. The allowed values are Actual and Forecasted. Default is Actual. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ThresholdType *string `json:"thresholdType,omitempty" tf:"threshold_type,omitempty"` } @@ -318,24 +338,31 @@ type BudgetSubscriptionObservation struct { type BudgetSubscriptionParameters struct { // The total amount of cost to track with the budget. + // +kubebuilder:validation:Optional Amount *float64 `json:"amount,omitempty" tf:"amount,omitempty"` // The ETag of the Subscription Consumption Budget. + // +kubebuilder:validation:Optional Etag *string `json:"etag,omitempty" tf:"etag,omitempty"` // A filter block as defined below. + // +kubebuilder:validation:Optional Filter []BudgetSubscriptionFilterParameters `json:"filter,omitempty" tf:"filter,omitempty"` // One or more notification blocks as defined below. + // +kubebuilder:validation:Optional Notification []BudgetSubscriptionNotificationParameters `json:"notification,omitempty" tf:"notification,omitempty"` // The ID of the Subscription for which to create a Consumption Budget. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SubscriptionID *string `json:"subscriptionId,omitempty" tf:"subscription_id,omitempty"` // The time covered by a budget. Tracking of the amount will be reset based on the time grain. Must be one of BillingAnnual, BillingMonth, BillingQuarter, Annually, Monthly and Quarterly. Defaults to Monthly. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional TimeGrain *string `json:"timeGrain,omitempty" tf:"time_grain,omitempty"` // A time_period block as defined below. + // +kubebuilder:validation:Optional TimePeriod []BudgetSubscriptionTimePeriodParameters `json:"timePeriod,omitempty" tf:"time_period,omitempty"` } @@ -360,9 +387,11 @@ type BudgetSubscriptionTimePeriodObservation struct { type BudgetSubscriptionTimePeriodParameters struct { // The end date for the budget. If not set this will be 10 years after the start date. + // +kubebuilder:validation:Optional EndDate *string `json:"endDate,omitempty" tf:"end_date,omitempty"` // The start date for the budget. The start date must be first of the month and should be less than the end date. Budget start date must be on or after June 1, 2017. Future start date should not be more than twelve months. Past start date should be selected within the timegrain period. Changing this forces a new Subscription Consumption Budget to be created. + // +kubebuilder:validation:Optional StartDate *string `json:"startDate,omitempty" tf:"start_date,omitempty"` } @@ -393,12 +422,15 @@ type FilterNotTagObservation struct { type FilterNotTagParameters struct { // The name of the tag to use for the filter. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The operator to use for comparison. The allowed values are In. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Specifies a list of values for the tag. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } diff --git a/apis/containerregistry/v1beta1/zz_agentpool_types.go b/apis/containerregistry/v1beta1/zz_agentpool_types.go index 0fb7c5e63..d59d8a51b 100755 --- a/apis/containerregistry/v1beta1/zz_agentpool_types.go +++ b/apis/containerregistry/v1beta1/zz_agentpool_types.go @@ -71,9 +71,11 @@ type AgentPoolParameters struct { ContainerRegistryNameSelector *v1.Selector `json:"containerRegistryNameSelector,omitempty" tf:"-"` // VMSS instance count. Defaults to 1. + // +kubebuilder:validation:Optional InstanceCount *float64 `json:"instanceCount,omitempty" tf:"instance_count,omitempty"` // The Azure Region where the Azure Container Registry Agent Pool should exist. Changing this forces a new Azure Container Registry Agent Pool to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the Resource Group where the Azure Container Registry Agent Pool should exist. Changing this forces a new Azure Container Registry Agent Pool to be created. @@ -90,9 +92,11 @@ type AgentPoolParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the Azure Container Registry Agent Pool. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Sets the VM your agent pool will run on. Valid values are: S1 (2 vCPUs, 3 GiB RAM), S2 (4 vCPUs, 8 GiB RAM), S3 (8 vCPUs, 16 GiB RAM) or I6 (64 vCPUs, 216 GiB RAM, Isolated). Defaults to S1. Changing this forces a new Azure Container Registry Agent Pool to be created. + // +kubebuilder:validation:Optional Tier *string `json:"tier,omitempty" tf:"tier,omitempty"` // The ID of the Virtual Network Subnet Resource where the agent machines will be running. Changing this forces a new Azure Container Registry Agent Pool to be created. diff --git a/apis/containerregistry/v1beta1/zz_containerconnectedregistry_types.go b/apis/containerregistry/v1beta1/zz_containerconnectedregistry_types.go index a8224334e..0d4d061f4 100755 --- a/apis/containerregistry/v1beta1/zz_containerconnectedregistry_types.go +++ b/apis/containerregistry/v1beta1/zz_containerconnectedregistry_types.go @@ -85,9 +85,11 @@ type ContainerConnectedRegistryObservation struct { type ContainerConnectedRegistryParameters struct { // Should the log auditing be enabled? + // +kubebuilder:validation:Optional AuditLogEnabled *bool `json:"auditLogEnabled,omitempty" tf:"audit_log_enabled,omitempty"` // Specifies a list of IDs of Container Registry Tokens, which are meant to be used by the clients to connect to the Connected Registry. + // +kubebuilder:validation:Optional ClientTokenIds []*string `json:"clientTokenIds,omitempty" tf:"client_token_ids,omitempty"` // The ID of the Container Registry that this Connected Registry will reside in. Changing this forces a new Container Connected Registry to be created. @@ -105,21 +107,27 @@ type ContainerConnectedRegistryParameters struct { ContainerRegistryIDSelector *v1.Selector `json:"containerRegistryIdSelector,omitempty" tf:"-"` // The verbosity of the logs. Possible values are None, Debug, Information, Warning and Error. + // +kubebuilder:validation:Optional LogLevel *string `json:"logLevel,omitempty" tf:"log_level,omitempty"` // The mode of the Connected Registry. Possible values are Mirror, ReadOnly, ReadWrite and Registry. Changing this forces a new Container Connected Registry to be created. + // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // One or more notification blocks as defined below. + // +kubebuilder:validation:Optional Notification []NotificationParameters `json:"notification,omitempty" tf:"notification,omitempty"` // The ID of the parent registry. This can be either a Container Registry ID or a Connected Registry ID. Changing this forces a new Container Connected Registry to be created. + // +kubebuilder:validation:Optional ParentRegistryID *string `json:"parentRegistryId,omitempty" tf:"parent_registry_id,omitempty"` // The period of time (in form of ISO8601) for which a message is available to sync before it is expired. Allowed range is from P1D to P90D. + // +kubebuilder:validation:Optional SyncMessageTTL *string `json:"syncMessageTtl,omitempty" tf:"sync_message_ttl,omitempty"` // The cron expression indicating the schedule that the Connected Registry will sync with its parent. Defaults to * * * * *. + // +kubebuilder:validation:Optional SyncSchedule *string `json:"syncSchedule,omitempty" tf:"sync_schedule,omitempty"` // The ID of the Container Registry Token which is used for synchronizing the Connected Registry. Changing this forces a new Container Connected Registry to be created. @@ -137,6 +145,7 @@ type ContainerConnectedRegistryParameters struct { SyncTokenIDSelector *v1.Selector `json:"syncTokenIdSelector,omitempty" tf:"-"` // The time window (in form of ISO8601) during which sync is enabled for each schedule occurrence. Allowed range is from PT3H to P7D. + // +kubebuilder:validation:Optional SyncWindow *string `json:"syncWindow,omitempty" tf:"sync_window,omitempty"` } @@ -173,15 +182,19 @@ type NotificationObservation struct { type NotificationParameters struct { // The action of the artifact that wants to be subscribed for the Connected Registry. Possible values are push, delete and * (i.e. any). + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // The digest of the artifact that wants to be subscribed for the Connected Registry. + // +kubebuilder:validation:Optional Digest *string `json:"digest,omitempty" tf:"digest,omitempty"` // The name of the artifact that wants to be subscribed for the Connected Registry. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The tag of the artifact that wants to be subscribed for the Connected Registry. + // +kubebuilder:validation:Optional Tag *string `json:"tag,omitempty" tf:"tag,omitempty"` } diff --git a/apis/containerregistry/v1beta1/zz_registry_types.go b/apis/containerregistry/v1beta1/zz_registry_types.go index 70957ce3c..2ad8317b9 100755 --- a/apis/containerregistry/v1beta1/zz_registry_types.go +++ b/apis/containerregistry/v1beta1/zz_registry_types.go @@ -37,6 +37,7 @@ type EncryptionObservation struct { type EncryptionParameters struct { // Boolean value that indicates whether encryption is enabled. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled"` // The client ID of the managed identity associated with the encryption key. @@ -54,6 +55,7 @@ type EncryptionParameters struct { IdentityClientIDSelector *v1.Selector `json:"identityClientIdSelector,omitempty" tf:"-"` // The ID of the Key Vault Key. + // +kubebuilder:validation:Optional KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id"` } @@ -90,15 +92,19 @@ type GeoreplicationsObservation struct { type GeoreplicationsParameters struct { // A location where the container registry should be geo-replicated. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Whether regional endpoint is enabled for this Container Registry? + // +kubebuilder:validation:Optional RegionalEndpointEnabled *bool `json:"regionalEndpointEnabled,omitempty" tf:"regional_endpoint_enabled,omitempty"` // A mapping of tags to assign to this replication location. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Whether zone redundancy is enabled for this Container Registry? Changing this forces a new resource to be created. Defaults to false. + // +kubebuilder:validation:Optional ZoneRedundancyEnabled *bool `json:"zoneRedundancyEnabled,omitempty" tf:"zone_redundancy_enabled,omitempty"` } @@ -123,9 +129,11 @@ type IPRuleObservation struct { type IPRuleParameters struct { // The behaviour for requests matching this rule. At this time the only supported value is Allow + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action"` // The CIDR block from which requests will match the rule. + // +kubebuilder:validation:Optional IPRange *string `json:"ipRange,omitempty" tf:"ip_range"` } @@ -156,9 +164,11 @@ type IdentityObservation struct { type IdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Container Registry. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Container Registry. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -189,12 +199,15 @@ type NetworkRuleSetObservation struct { type NetworkRuleSetParameters struct { // The behaviour for requests matching no rules. Either Allow or Deny. Defaults to Allow + // +kubebuilder:validation:Optional DefaultAction *string `json:"defaultAction,omitempty" tf:"default_action"` // One or more ip_rule blocks as defined below. + // +kubebuilder:validation:Optional IPRule []IPRuleParameters `json:"ipRule,omitempty" tf:"ip_rule"` // One or more virtual_network blocks as defined below. + // +kubebuilder:validation:Optional VirtualNetwork []VirtualNetworkParameters `json:"virtualNetwork,omitempty" tf:"virtual_network"` } @@ -321,39 +334,51 @@ type RegistryObservation struct { type RegistryParameters struct { // Specifies whether the admin user is enabled. Defaults to false. + // +kubebuilder:validation:Optional AdminEnabled *bool `json:"adminEnabled,omitempty" tf:"admin_enabled,omitempty"` // Whether allows anonymous (unauthenticated) pull access to this Container Registry? This is only supported on resources with the Standard or Premium SKU. + // +kubebuilder:validation:Optional AnonymousPullEnabled *bool `json:"anonymousPullEnabled,omitempty" tf:"anonymous_pull_enabled,omitempty"` // Whether to enable dedicated data endpoints for this Container Registry? This is only supported on resources with the Premium SKU. + // +kubebuilder:validation:Optional DataEndpointEnabled *bool `json:"dataEndpointEnabled,omitempty" tf:"data_endpoint_enabled,omitempty"` // An encryption block as documented below. + // +kubebuilder:validation:Optional Encryption []EncryptionParameters `json:"encryption,omitempty" tf:"encryption,omitempty"` // Boolean value that indicates whether export policy is enabled. Defaults to true. In order to set it to false, make sure the public_network_access_enabled is also set to false. + // +kubebuilder:validation:Optional ExportPolicyEnabled *bool `json:"exportPolicyEnabled,omitempty" tf:"export_policy_enabled,omitempty"` // A georeplications block as documented below. + // +kubebuilder:validation:Optional Georeplications []GeoreplicationsParameters `json:"georeplications,omitempty" tf:"georeplications,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Whether to allow trusted Azure services to access a network restricted Container Registry? Possible values are None and AzureServices. Defaults to AzureServices. + // +kubebuilder:validation:Optional NetworkRuleBypassOption *string `json:"networkRuleBypassOption,omitempty" tf:"network_rule_bypass_option,omitempty"` // A network_rule_set block as documented below. + // +kubebuilder:validation:Optional NetworkRuleSet []NetworkRuleSetParameters `json:"networkRuleSet,omitempty" tf:"network_rule_set,omitempty"` // Whether public network access is allowed for the container registry. Defaults to true. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // Boolean value that indicates whether quarantine policy is enabled. + // +kubebuilder:validation:Optional QuarantinePolicyEnabled *bool `json:"quarantinePolicyEnabled,omitempty" tf:"quarantine_policy_enabled,omitempty"` // The name of the resource group in which to create the Container Registry. Changing this forces a new resource to be created. @@ -370,18 +395,23 @@ type RegistryParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A retention_policy block as documented below. + // +kubebuilder:validation:Optional RetentionPolicy []RetentionPolicyParameters `json:"retentionPolicy,omitempty" tf:"retention_policy,omitempty"` // The SKU name of the container registry. Possible values are Basic, Standard and Premium. + // +kubebuilder:validation:Optional Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // A trust_policy block as documented below. + // +kubebuilder:validation:Optional TrustPolicy []TrustPolicyParameters `json:"trustPolicy,omitempty" tf:"trust_policy,omitempty"` // Whether zone redundancy is enabled for this Container Registry? Changing this forces a new resource to be created. Defaults to false. + // +kubebuilder:validation:Optional ZoneRedundancyEnabled *bool `json:"zoneRedundancyEnabled,omitempty" tf:"zone_redundancy_enabled,omitempty"` } @@ -406,9 +436,11 @@ type RetentionPolicyObservation struct { type RetentionPolicyParameters struct { // The number of days to retain an untagged manifest after which it gets purged. Default is 7. + // +kubebuilder:validation:Optional Days *float64 `json:"days,omitempty" tf:"days"` // Boolean value that indicates whether the policy is enabled. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled"` } @@ -427,6 +459,7 @@ type TrustPolicyObservation struct { type TrustPolicyParameters struct { // Boolean value that indicates whether the policy is enabled. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled"` } @@ -448,6 +481,7 @@ type VirtualNetworkObservation struct { type VirtualNetworkParameters struct { // The behaviour for requests matching this rule. At this time the only supported value is Allow + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action"` // The subnet id from which requests will match the rule. diff --git a/apis/containerregistry/v1beta1/zz_scopemap_types.go b/apis/containerregistry/v1beta1/zz_scopemap_types.go index 8d046e0ab..378e9cfb9 100755 --- a/apis/containerregistry/v1beta1/zz_scopemap_types.go +++ b/apis/containerregistry/v1beta1/zz_scopemap_types.go @@ -43,6 +43,7 @@ type ScopeMapObservation struct { type ScopeMapParameters struct { // A list of actions to attach to the scope map (e.g. repo/content/read, repo2/content/delete). + // +kubebuilder:validation:Optional Actions []*string `json:"actions,omitempty" tf:"actions,omitempty"` // The name of the Container Registry. Changing this forces a new resource to be created. @@ -59,6 +60,7 @@ type ScopeMapParameters struct { ContainerRegistryNameSelector *v1.Selector `json:"containerRegistryNameSelector,omitempty" tf:"-"` // The description of the Container Registry. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The name of the resource group in which to create the Container Registry token. Changing this forces a new resource to be created. diff --git a/apis/containerregistry/v1beta1/zz_token_types.go b/apis/containerregistry/v1beta1/zz_token_types.go index c77c1f0d9..6ebc51eb1 100755 --- a/apis/containerregistry/v1beta1/zz_token_types.go +++ b/apis/containerregistry/v1beta1/zz_token_types.go @@ -53,6 +53,7 @@ type TokenParameters struct { ContainerRegistryNameSelector *v1.Selector `json:"containerRegistryNameSelector,omitempty" tf:"-"` // Should the Container Registry token be enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The name of the resource group in which to create the Container Registry token. Changing this forces a new resource to be created. diff --git a/apis/containerregistry/v1beta1/zz_tokenpassword_types.go b/apis/containerregistry/v1beta1/zz_tokenpassword_types.go index 9bd7607ce..af0a81568 100755 --- a/apis/containerregistry/v1beta1/zz_tokenpassword_types.go +++ b/apis/containerregistry/v1beta1/zz_tokenpassword_types.go @@ -28,6 +28,7 @@ type Password1Observation struct { type Password1Parameters struct { // The expiration date of the password in RFC3339 format. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Expiry *string `json:"expiry,omitempty" tf:"expiry,omitempty"` } @@ -46,6 +47,7 @@ type Password2Observation struct { type Password2Parameters struct { // The expiration date of the password in RFC3339 format. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Expiry *string `json:"expiry,omitempty" tf:"expiry,omitempty"` } @@ -90,9 +92,11 @@ type TokenPasswordParameters struct { ContainerRegistryTokenIDSelector *v1.Selector `json:"containerRegistryTokenIdSelector,omitempty" tf:"-"` // One password block as defined below. + // +kubebuilder:validation:Optional Password1 []Password1Parameters `json:"password1,omitempty" tf:"password1,omitempty"` // One password block as defined below. + // +kubebuilder:validation:Optional Password2 []Password2Parameters `json:"password2,omitempty" tf:"password2,omitempty"` } diff --git a/apis/containerregistry/v1beta1/zz_webhook_types.go b/apis/containerregistry/v1beta1/zz_webhook_types.go index 72ce75d63..29fb45e89 100755 --- a/apis/containerregistry/v1beta1/zz_webhook_types.go +++ b/apis/containerregistry/v1beta1/zz_webhook_types.go @@ -73,12 +73,15 @@ type WebhookObservation struct { type WebhookParameters struct { // A list of actions that trigger the Webhook to post notifications. At least one action needs to be specified. Valid values are: push, delete, quarantine, chart_push, chart_delete + // +kubebuilder:validation:Optional Actions []*string `json:"actions,omitempty" tf:"actions,omitempty"` // Custom headers that will be added to the webhook notifications request. + // +kubebuilder:validation:Optional CustomHeaders map[string]*string `json:"customHeaders,omitempty" tf:"custom_headers,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The Name of Container registry this Webhook belongs to. Changing this forces a new resource to be created. @@ -108,15 +111,19 @@ type WebhookParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Specifies the scope of repositories that can trigger an event. For example, foo:* means events for all tags under repository foo. foo:bar means events for 'foo:bar' only. foo is equivalent to foo:latest. Empty means all events. Defaults to "". + // +kubebuilder:validation:Optional Scope *string `json:"scope,omitempty" tf:"scope,omitempty"` // Specifies the service URI for the Webhook to post notifications. + // +kubebuilder:validation:Optional ServiceURI *string `json:"serviceUri,omitempty" tf:"service_uri,omitempty"` // Specifies if this Webhook triggers notifications or not. Valid values: enabled and disabled. Default is enabled. + // +kubebuilder:validation:Optional Status *string `json:"status,omitempty" tf:"status,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/containerservice/v1beta1/zz_kubernetescluster_types.go b/apis/containerservice/v1beta1/zz_kubernetescluster_types.go index bea5fded9..ca1d0a84a 100755 --- a/apis/containerservice/v1beta1/zz_kubernetescluster_types.go +++ b/apis/containerservice/v1beta1/zz_kubernetescluster_types.go @@ -37,6 +37,7 @@ type APIServerAccessProfileObservation struct { type APIServerAccessProfileParameters struct { // Set of authorized IP ranges to allow access to API server, e.g. ["198.51.100.0/24"]. + // +kubebuilder:validation:Optional AuthorizedIPRanges []*string `json:"authorizedIpRanges,omitempty" tf:"authorized_ip_ranges,omitempty"` // The ID of the Subnet where the API server endpoint is delegated to. @@ -54,6 +55,7 @@ type APIServerAccessProfileParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // Should API Server VNet Integration be enabled? For more details please visit Use API Server VNet Integration. + // +kubebuilder:validation:Optional VnetIntegrationEnabled *bool `json:"vnetIntegrationEnabled,omitempty" tf:"vnet_integration_enabled,omitempty"` } @@ -106,9 +108,11 @@ type AllowedObservation struct { type AllowedParameters struct { // A day in a week. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday and Saturday. + // +kubebuilder:validation:Optional Day *string `json:"day,omitempty" tf:"day,omitempty"` // An array of hour slots in a day. For example, specifying 1 will allow maintenance from 1:00am to 2:00am. Specifying 1, 2 will allow maintenance from 1:00am to 3:00m. Possible values are between 0 and 23. + // +kubebuilder:validation:Optional Hours []*float64 `json:"hours,omitempty" tf:"hours,omitempty"` } @@ -223,54 +227,71 @@ type AutoScalerProfileObservation struct { type AutoScalerProfileParameters struct { // Detect similar node groups and balance the number of nodes between them. Defaults to false. + // +kubebuilder:validation:Optional BalanceSimilarNodeGroups *bool `json:"balanceSimilarNodeGroups,omitempty" tf:"balance_similar_node_groups,omitempty"` // Maximum number of empty nodes that can be deleted at the same time. Defaults to 10. + // +kubebuilder:validation:Optional EmptyBulkDeleteMax *string `json:"emptyBulkDeleteMax,omitempty" tf:"empty_bulk_delete_max,omitempty"` // Expander to use. Possible values are least-waste, priority, most-pods and random. Defaults to random. + // +kubebuilder:validation:Optional Expander *string `json:"expander,omitempty" tf:"expander,omitempty"` // Maximum number of seconds the cluster autoscaler waits for pod termination when trying to scale down a node. Defaults to 600. + // +kubebuilder:validation:Optional MaxGracefulTerminationSec *string `json:"maxGracefulTerminationSec,omitempty" tf:"max_graceful_termination_sec,omitempty"` // Maximum time the autoscaler waits for a node to be provisioned. Defaults to 15m. + // +kubebuilder:validation:Optional MaxNodeProvisioningTime *string `json:"maxNodeProvisioningTime,omitempty" tf:"max_node_provisioning_time,omitempty"` // Maximum Number of allowed unready nodes. Defaults to 3. + // +kubebuilder:validation:Optional MaxUnreadyNodes *float64 `json:"maxUnreadyNodes,omitempty" tf:"max_unready_nodes,omitempty"` // Maximum percentage of unready nodes the cluster autoscaler will stop if the percentage is exceeded. Defaults to 45. + // +kubebuilder:validation:Optional MaxUnreadyPercentage *float64 `json:"maxUnreadyPercentage,omitempty" tf:"max_unready_percentage,omitempty"` // For scenarios like burst/batch scale where you don't want CA to act before the kubernetes scheduler could schedule all the pods, you can tell CA to ignore unscheduled pods before they're a certain age. Defaults to 10s. + // +kubebuilder:validation:Optional NewPodScaleUpDelay *string `json:"newPodScaleUpDelay,omitempty" tf:"new_pod_scale_up_delay,omitempty"` // How long after the scale up of AKS nodes the scale down evaluation resumes. Defaults to 10m. + // +kubebuilder:validation:Optional ScaleDownDelayAfterAdd *string `json:"scaleDownDelayAfterAdd,omitempty" tf:"scale_down_delay_after_add,omitempty"` // How long after node deletion that scale down evaluation resumes. Defaults to the value used for scan_interval. + // +kubebuilder:validation:Optional ScaleDownDelayAfterDelete *string `json:"scaleDownDelayAfterDelete,omitempty" tf:"scale_down_delay_after_delete,omitempty"` // How long after scale down failure that scale down evaluation resumes. Defaults to 3m. + // +kubebuilder:validation:Optional ScaleDownDelayAfterFailure *string `json:"scaleDownDelayAfterFailure,omitempty" tf:"scale_down_delay_after_failure,omitempty"` // How long a node should be unneeded before it is eligible for scale down. Defaults to 10m. + // +kubebuilder:validation:Optional ScaleDownUnneeded *string `json:"scaleDownUnneeded,omitempty" tf:"scale_down_unneeded,omitempty"` // How long an unready node should be unneeded before it is eligible for scale down. Defaults to 20m. + // +kubebuilder:validation:Optional ScaleDownUnready *string `json:"scaleDownUnready,omitempty" tf:"scale_down_unready,omitempty"` // Node utilization level, defined as sum of requested resources divided by capacity, below which a node can be considered for scale down. Defaults to 0.5. + // +kubebuilder:validation:Optional ScaleDownUtilizationThreshold *string `json:"scaleDownUtilizationThreshold,omitempty" tf:"scale_down_utilization_threshold,omitempty"` // How often the AKS Cluster should be re-evaluated for scale up/down. Defaults to 10s. + // +kubebuilder:validation:Optional ScanInterval *string `json:"scanInterval,omitempty" tf:"scan_interval,omitempty"` // If true cluster autoscaler will never delete nodes with pods with local storage, for example, EmptyDir or HostPath. Defaults to true. + // +kubebuilder:validation:Optional SkipNodesWithLocalStorage *bool `json:"skipNodesWithLocalStorage,omitempty" tf:"skip_nodes_with_local_storage,omitempty"` // If true cluster autoscaler will never delete nodes with pods from kube-system (except for DaemonSet or mirror pods). Defaults to true. + // +kubebuilder:validation:Optional SkipNodesWithSystemPods *bool `json:"skipNodesWithSystemPods,omitempty" tf:"skip_nodes_with_system_pods,omitempty"` } @@ -319,18 +340,23 @@ type AzureActiveDirectoryRoleBasedAccessControlObservation struct { type AzureActiveDirectoryRoleBasedAccessControlParameters struct { // A list of Object IDs of Azure Active Directory Groups which should have Admin Role on the Cluster. + // +kubebuilder:validation:Optional AdminGroupObjectIds []*string `json:"adminGroupObjectIds,omitempty" tf:"admin_group_object_ids,omitempty"` // Is Role Based Access Control based on Azure AD enabled? + // +kubebuilder:validation:Optional AzureRbacEnabled *bool `json:"azureRbacEnabled,omitempty" tf:"azure_rbac_enabled,omitempty"` // The Client ID of an Azure Active Directory Application. + // +kubebuilder:validation:Optional ClientAppID *string `json:"clientAppId,omitempty" tf:"client_app_id,omitempty"` // Is the Azure Active Directory integration Managed, meaning that Azure will create/manage the Service Principal used for integration. + // +kubebuilder:validation:Optional Managed *bool `json:"managed,omitempty" tf:"managed,omitempty"` // The Server ID of an Azure Active Directory Application. + // +kubebuilder:validation:Optional ServerAppID *string `json:"serverAppId,omitempty" tf:"server_app_id,omitempty"` // The Server Secret of an Azure Active Directory Application. @@ -338,6 +364,7 @@ type AzureActiveDirectoryRoleBasedAccessControlParameters struct { ServerAppSecretSecretRef *v1.SecretKeySelector `json:"serverAppSecretSecretRef,omitempty" tf:"-"` // The Tenant ID used for Azure Active Directory Application. If this isn't specified the Tenant ID of the current Subscription is used. + // +kubebuilder:validation:Optional TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` } @@ -356,6 +383,7 @@ type ConfidentialComputingObservation struct { type ConfidentialComputingParameters struct { // Should the SGX quote helper be enabled? + // +kubebuilder:validation:Optional SgxQuoteHelperEnabled *bool `json:"sgxQuoteHelperEnabled,omitempty" tf:"sgx_quote_helper_enabled,omitempty"` } @@ -602,78 +630,103 @@ type DefaultNodePoolObservation struct { type DefaultNodePoolParameters struct { // Specifies the ID of the Capacity Reservation Group within which this AKS Cluster should be created. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional CapacityReservationGroupID *string `json:"capacityReservationGroupId,omitempty" tf:"capacity_reservation_group_id,omitempty"` // Specifies whether to trust a Custom CA. + // +kubebuilder:validation:Optional CustomCATrustEnabled *bool `json:"customCaTrustEnabled,omitempty" tf:"custom_ca_trust_enabled,omitempty"` // Should the Kubernetes Auto Scaler be enabled for this Node Pool? + // +kubebuilder:validation:Optional EnableAutoScaling *bool `json:"enableAutoScaling,omitempty" tf:"enable_auto_scaling,omitempty"` // Should the nodes in the Default Node Pool have host encryption enabled? Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional EnableHostEncryption *bool `json:"enableHostEncryption,omitempty" tf:"enable_host_encryption,omitempty"` // Should nodes in this Node Pool have a Public IP Address? Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional EnableNodePublicIP *bool `json:"enableNodePublicIp,omitempty" tf:"enable_node_public_ip,omitempty"` // Should the nodes in this Node Pool have Federal Information Processing Standard enabled? Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional FipsEnabled *bool `json:"fipsEnabled,omitempty" tf:"fips_enabled,omitempty"` // Specifies the ID of the Host Group within which this AKS Cluster should be created. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional HostGroupID *string `json:"hostGroupId,omitempty" tf:"host_group_id,omitempty"` // A kubelet_config block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional KubeletConfig []KubeletConfigParameters `json:"kubeletConfig,omitempty" tf:"kubelet_config,omitempty"` // The type of disk used by kubelet. Possible values are OS and Temporary. + // +kubebuilder:validation:Optional KubeletDiskType *string `json:"kubeletDiskType,omitempty" tf:"kubelet_disk_type,omitempty"` // A linux_os_config block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional LinuxOsConfig []LinuxOsConfigParameters `json:"linuxOsConfig,omitempty" tf:"linux_os_config,omitempty"` // The maximum number of nodes which should exist in this Node Pool. If specified this must be between 1 and 1000. + // +kubebuilder:validation:Optional MaxCount *float64 `json:"maxCount,omitempty" tf:"max_count,omitempty"` // The maximum number of pods that can run on each agent. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional MaxPods *float64 `json:"maxPods,omitempty" tf:"max_pods,omitempty"` // A base64-encoded string which will be written to /etc/motd after decoding. This allows customization of the message of the day for Linux nodes. It cannot be specified for Windows nodes and must be a static string (i.e. will be printed raw and not executed as a script). Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional MessageOfTheDay *string `json:"messageOfTheDay,omitempty" tf:"message_of_the_day,omitempty"` // The minimum number of nodes which should exist in this Node Pool. If specified this must be between 1 and 1000. + // +kubebuilder:validation:Optional MinCount *float64 `json:"minCount,omitempty" tf:"min_count,omitempty"` // The name which should be used for the default Kubernetes Node Pool. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The initial number of nodes which should exist in this Node Pool. If specified this must be between 1 and 1000 and between min_count and max_count. + // +kubebuilder:validation:Optional NodeCount *float64 `json:"nodeCount,omitempty" tf:"node_count,omitempty"` // A map of Kubernetes labels which should be applied to nodes in the Default Node Pool. + // +kubebuilder:validation:Optional NodeLabels map[string]*string `json:"nodeLabels,omitempty" tf:"node_labels,omitempty"` // A node_network_profile block as documented below. + // +kubebuilder:validation:Optional NodeNetworkProfile []NodeNetworkProfileParameters `json:"nodeNetworkProfile,omitempty" tf:"node_network_profile,omitempty"` // Resource ID for the Public IP Addresses Prefix for the nodes in this Node Pool. enable_node_public_ip should be true. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NodePublicIPPrefixID *string `json:"nodePublicIpPrefixId,omitempty" tf:"node_public_ip_prefix_id,omitempty"` // A list of the taints added to new nodes during node pool create and scale. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NodeTaints []*string `json:"nodeTaints,omitempty" tf:"node_taints,omitempty"` // Enabling this option will taint default node pool with CriticalAddonsOnly=true:NoSchedule taint. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional OnlyCriticalAddonsEnabled *bool `json:"onlyCriticalAddonsEnabled,omitempty" tf:"only_critical_addons_enabled,omitempty"` // Version of Kubernetes used for the Agents. If not specified, the default node pool will be created with the version specified by kubernetes_version. If both are unspecified, the latest recommended version will be used at provisioning time (but won't auto-upgrade). AKS does not require an exact patch version to be specified, minor version aliases such as 1.22 are also supported. - The minor version's latest GA patch is automatically chosen in that case. More details can be found in the documentation. + // +kubebuilder:validation:Optional OrchestratorVersion *string `json:"orchestratorVersion,omitempty" tf:"orchestrator_version,omitempty"` // The size of the OS Disk which should be used for each agent in the Node Pool. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional OsDiskSizeGb *float64 `json:"osDiskSizeGb,omitempty" tf:"os_disk_size_gb,omitempty"` // The type of disk which should be used for the Operating System. Possible values are Ephemeral and Managed. Defaults to Managed. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional OsDiskType *string `json:"osDiskType,omitempty" tf:"os_disk_type,omitempty"` // Specifies the OS SKU used by the agent pool. Possible values include: Ubuntu, CBLMariner, Mariner, Windows2019, Windows2022. If not specified, the default is Ubuntu if OSType=Linux or Windows2019 if OSType=Windows. And the default Windows OSSKU will be changed to Windows2022 after Windows2019 is deprecated. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional OsSku *string `json:"osSku,omitempty" tf:"os_sku,omitempty"` // The ID of the Subnet where the pods in the default Node Pool should exist. Changing this forces a new resource to be created. @@ -691,27 +744,35 @@ type DefaultNodePoolParameters struct { PodSubnetIDSelector *v1.Selector `json:"podSubnetIdSelector,omitempty" tf:"-"` // The ID of the Proximity Placement Group. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ProximityPlacementGroupID *string `json:"proximityPlacementGroupId,omitempty" tf:"proximity_placement_group_id,omitempty"` // Specifies the autoscaling behaviour of the Kubernetes Cluster. Allowed values are Delete and Deallocate. Defaults to Delete. + // +kubebuilder:validation:Optional ScaleDownMode *string `json:"scaleDownMode,omitempty" tf:"scale_down_mode,omitempty"` // A mapping of tags to assign to the Node Pool. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the name of the temporary node pool used to cycle the default node pool for VM resizing. + // +kubebuilder:validation:Optional TemporaryNameForRotation *string `json:"temporaryNameForRotation,omitempty" tf:"temporary_name_for_rotation,omitempty"` // The type of Node Pool which should be created. Possible values are AvailabilitySet and VirtualMachineScaleSets. Defaults to VirtualMachineScaleSets. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // Used to specify whether the UltraSSD is enabled in the Default Node Pool. Defaults to false. See the documentation for more information. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional UltraSsdEnabled *bool `json:"ultraSsdEnabled,omitempty" tf:"ultra_ssd_enabled,omitempty"` // A upgrade_settings block as documented below. + // +kubebuilder:validation:Optional UpgradeSettings []UpgradeSettingsParameters `json:"upgradeSettings,omitempty" tf:"upgrade_settings,omitempty"` // The size of the Virtual Machine, such as Standard_DS2_v2. + // +kubebuilder:validation:Optional VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` // The ID of a Subnet where the Kubernetes Node Pool should exist. Changing this forces a new resource to be created. @@ -729,9 +790,11 @@ type DefaultNodePoolParameters struct { VnetSubnetIDSelector *v1.Selector `json:"vnetSubnetIdSelector,omitempty" tf:"-"` // Specifies the workload runtime used by the node pool. Possible values are OCIContainer and KataMshvVmIsolation. + // +kubebuilder:validation:Optional WorkloadRuntime *string `json:"workloadRuntime,omitempty" tf:"workload_runtime,omitempty"` // Specifies a list of Availability Zones in which this Kubernetes Cluster should be located. Changing this forces a new Kubernetes Cluster to be created. + // +kubebuilder:validation:Optional Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } @@ -756,9 +819,11 @@ type GmsaObservation struct { type GmsaParameters struct { // Specifies the DNS server for Windows gMSA. Set this to an empty string if you have configured the DNS server in the VNet which was used to create the managed cluster. + // +kubebuilder:validation:Optional DNSServer *string `json:"dnsServer,omitempty" tf:"dns_server,omitempty"` // Specifies the root domain name for Windows gMSA. Set this to an empty string if you have configured the DNS server in the VNet which was used to create the managed cluster. + // +kubebuilder:validation:Optional RootDomain *string `json:"rootDomain,omitempty" tf:"root_domain,omitempty"` } @@ -789,12 +854,15 @@ type HTTPProxyConfigObservation struct { type HTTPProxyConfigParameters struct { // The proxy address to be used when communicating over HTTP. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional HTTPProxy *string `json:"httpProxy,omitempty" tf:"http_proxy,omitempty"` // The proxy address to be used when communicating over HTTPS. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional HTTPSProxy *string `json:"httpsProxy,omitempty" tf:"https_proxy,omitempty"` // The list of domains that will not use the proxy for communication. + // +kubebuilder:validation:Optional NoProxy []*string `json:"noProxy,omitempty" tf:"no_proxy,omitempty"` // The base64 encoded alternative CA certificate content in PEM format. @@ -829,9 +897,11 @@ type IdentityObservation struct { type IdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Kubernetes Cluster. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Kubernetes Cluster. Possible values are SystemAssigned or UserAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -889,12 +959,15 @@ type IngressApplicationGatewayObservation struct { type IngressApplicationGatewayParameters struct { // The ID of the Application Gateway to integrate with the ingress controller of this Kubernetes Cluster. See this page for further details. + // +kubebuilder:validation:Optional GatewayID *string `json:"gatewayId,omitempty" tf:"gateway_id,omitempty"` // The name of the Application Gateway to be used or created in the Nodepool Resource Group, which in turn will be integrated with the ingress controller of this Kubernetes Cluster. See this page for further details. + // +kubebuilder:validation:Optional GatewayName *string `json:"gatewayName,omitempty" tf:"gateway_name,omitempty"` // The subnet CIDR to be used to create an Application Gateway, which in turn will be integrated with the ingress controller of this Kubernetes Cluster. See this page for further details. + // +kubebuilder:validation:Optional SubnetCidr *string `json:"subnetCidr,omitempty" tf:"subnet_cidr,omitempty"` // The ID of the subnet on which to create an Application Gateway, which in turn will be integrated with the ingress controller of this Kubernetes Cluster. See this page for further details. @@ -933,9 +1006,11 @@ type KeyManagementServiceObservation struct { type KeyManagementServiceParameters struct { // Identifier of Azure Key Vault key. See key identifier format for more details. When Azure Key Vault key management service is enabled, this field is required and must be a valid key identifier. When enabled is false, leave the field empty. + // +kubebuilder:validation:Optional KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"` // Network access of the key vault Network access of key vault. The possible values are Public and Private. Public means the key vault allows public access from all networks. Private means the key vault disables public access and enables private link. The default value is Public. + // +kubebuilder:validation:Optional KeyVaultNetworkAccess *string `json:"keyVaultNetworkAccess,omitempty" tf:"key_vault_network_access,omitempty"` } @@ -963,9 +1038,11 @@ type KeyVaultSecretsProviderObservation struct { type KeyVaultSecretsProviderParameters struct { // Should the secret store CSI driver on the AKS cluster be enabled? + // +kubebuilder:validation:Optional SecretRotationEnabled *bool `json:"secretRotationEnabled,omitempty" tf:"secret_rotation_enabled,omitempty"` // The interval to poll for secret rotation. This attribute is only set when secret_rotation is true and defaults to 2m. + // +kubebuilder:validation:Optional SecretRotationInterval *string `json:"secretRotationInterval,omitempty" tf:"secret_rotation_interval,omitempty"` } @@ -1068,33 +1145,43 @@ type KubeletConfigObservation struct { type KubeletConfigParameters struct { // Specifies the allow list of unsafe sysctls command or patterns (ending in *). Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional AllowedUnsafeSysctls []*string `json:"allowedUnsafeSysctls,omitempty" tf:"allowed_unsafe_sysctls,omitempty"` // Is CPU CFS quota enforcement for containers enabled? Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional CPUCfsQuotaEnabled *bool `json:"cpuCfsQuotaEnabled,omitempty" tf:"cpu_cfs_quota_enabled,omitempty"` // Specifies the CPU CFS quota period value. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional CPUCfsQuotaPeriod *string `json:"cpuCfsQuotaPeriod,omitempty" tf:"cpu_cfs_quota_period,omitempty"` // Specifies the CPU Manager policy to use. Possible values are none and static, Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional CPUManagerPolicy *string `json:"cpuManagerPolicy,omitempty" tf:"cpu_manager_policy,omitempty"` // Specifies the maximum number of container log files that can be present for a container. must be at least 2. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ContainerLogMaxLine *float64 `json:"containerLogMaxLine,omitempty" tf:"container_log_max_line,omitempty"` // Specifies the maximum size (e.g. 10MB) of container log file before it is rotated. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ContainerLogMaxSizeMb *float64 `json:"containerLogMaxSizeMb,omitempty" tf:"container_log_max_size_mb,omitempty"` // Specifies the percent of disk usage above which image garbage collection is always run. Must be between 0 and 100. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ImageGcHighThreshold *float64 `json:"imageGcHighThreshold,omitempty" tf:"image_gc_high_threshold,omitempty"` // Specifies the percent of disk usage lower than which image garbage collection is never run. Must be between 0 and 100. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ImageGcLowThreshold *float64 `json:"imageGcLowThreshold,omitempty" tf:"image_gc_low_threshold,omitempty"` // Specifies the maximum number of processes per pod. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PodMaxPid *float64 `json:"podMaxPid,omitempty" tf:"pod_max_pid,omitempty"` // Specifies the Topology Manager policy to use. Possible values are none, best-effort, restricted or single-numa-node. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional TopologyManagerPolicy *string `json:"topologyManagerPolicy,omitempty" tf:"topology_manager_policy,omitempty"` } @@ -1125,12 +1212,15 @@ type KubeletIdentityObservation struct { type KubeletIdentityParameters struct { // The Client ID of the user-defined Managed Identity to be assigned to the Kubelets. If not specified a Managed Identity is created automatically. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The Object ID of the user-defined Managed Identity assigned to the Kubelets.If not specified a Managed Identity is created automatically. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ObjectID *string `json:"objectId,omitempty" tf:"object_id,omitempty"` // The ID of the User Assigned Identity assigned to the Kubelets. If not specified a Managed Identity is created automatically. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional UserAssignedIdentityID *string `json:"userAssignedIdentityId,omitempty" tf:"user_assigned_identity_id,omitempty"` } @@ -1462,113 +1552,150 @@ type KubernetesClusterObservation struct { type KubernetesClusterParameters struct { // An api_server_access_profile block as defined below. + // +kubebuilder:validation:Optional APIServerAccessProfile []APIServerAccessProfileParameters `json:"apiServerAccessProfile,omitempty" tf:"api_server_access_profile,omitempty"` // Deprecated in favor of `spec.forProvider.apiServerAccessProfile[0].authorizedIpRanges` + // +kubebuilder:validation:Optional APIServerAuthorizedIPRanges []*string `json:"apiServerAuthorizedIpRanges,omitempty" tf:"api_server_authorized_ip_ranges,omitempty"` // A aci_connector_linux block as defined below. For more details, please visit Create and configure an AKS cluster to use virtual nodes. + // +kubebuilder:validation:Optional AciConnectorLinux []AciConnectorLinuxParameters `json:"aciConnectorLinux,omitempty" tf:"aci_connector_linux,omitempty"` // A auto_scaler_profile block as defined below. + // +kubebuilder:validation:Optional AutoScalerProfile []AutoScalerProfileParameters `json:"autoScalerProfile,omitempty" tf:"auto_scaler_profile,omitempty"` // The upgrade channel for this Kubernetes Cluster. Possible values are patch, rapid, node-image and stable. Omitting this field sets this value to none. + // +kubebuilder:validation:Optional AutomaticChannelUpgrade *string `json:"automaticChannelUpgrade,omitempty" tf:"automatic_channel_upgrade,omitempty"` // A azure_active_directory_role_based_access_control block as defined below. + // +kubebuilder:validation:Optional AzureActiveDirectoryRoleBasedAccessControl []AzureActiveDirectoryRoleBasedAccessControlParameters `json:"azureActiveDirectoryRoleBasedAccessControl,omitempty" tf:"azure_active_directory_role_based_access_control,omitempty"` // Should the Azure Policy Add-On be enabled? For more details please visit Understand Azure Policy for Azure Kubernetes Service + // +kubebuilder:validation:Optional AzurePolicyEnabled *bool `json:"azurePolicyEnabled,omitempty" tf:"azure_policy_enabled,omitempty"` // A confidential_computing block as defined below. For more details please the documentation + // +kubebuilder:validation:Optional ConfidentialComputing []ConfidentialComputingParameters `json:"confidentialComputing,omitempty" tf:"confidential_computing,omitempty"` // DNS prefix specified when creating the managed cluster. Possible values must begin and end with a letter or number, contain only letters, numbers, and hyphens and be between 1 and 54 characters in length. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DNSPrefix *string `json:"dnsPrefix,omitempty" tf:"dns_prefix,omitempty"` // Specifies the DNS prefix to use with private clusters. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DNSPrefixPrivateCluster *string `json:"dnsPrefixPrivateCluster,omitempty" tf:"dns_prefix_private_cluster,omitempty"` // A default_node_pool block as defined below. + // +kubebuilder:validation:Optional DefaultNodePool []DefaultNodePoolParameters `json:"defaultNodePool,omitempty" tf:"default_node_pool,omitempty"` // The ID of the Disk Encryption Set which should be used for the Nodes and Volumes. More information can be found in the documentation. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DiskEncryptionSetID *string `json:"diskEncryptionSetId,omitempty" tf:"disk_encryption_set_id,omitempty"` // Specifies the Edge Zone within the Azure Region where this Managed Kubernetes Cluster should exist. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"` + // +kubebuilder:validation:Optional EnablePodSecurityPolicy *bool `json:"enablePodSecurityPolicy,omitempty" tf:"enable_pod_security_policy,omitempty"` // Should HTTP Application Routing be enabled? + // +kubebuilder:validation:Optional HTTPApplicationRoutingEnabled *bool `json:"httpApplicationRoutingEnabled,omitempty" tf:"http_application_routing_enabled,omitempty"` // A http_proxy_config block as defined below. + // +kubebuilder:validation:Optional HTTPProxyConfig []HTTPProxyConfigParameters `json:"httpProxyConfig,omitempty" tf:"http_proxy_config,omitempty"` // An identity block as defined below. One of either identity or service_principal must be specified. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // Specifies whether Image Cleaner is enabled. + // +kubebuilder:validation:Optional ImageCleanerEnabled *bool `json:"imageCleanerEnabled,omitempty" tf:"image_cleaner_enabled,omitempty"` // Specifies the interval in hours when images should be cleaned up. Defaults to 48. + // +kubebuilder:validation:Optional ImageCleanerIntervalHours *float64 `json:"imageCleanerIntervalHours,omitempty" tf:"image_cleaner_interval_hours,omitempty"` // An ingress_application_gateway block as defined below. + // +kubebuilder:validation:Optional IngressApplicationGateway []IngressApplicationGatewayParameters `json:"ingressApplicationGateway,omitempty" tf:"ingress_application_gateway,omitempty"` // A key_management_service block as defined below. For more details, please visit Key Management Service (KMS) etcd encryption to an AKS cluster. + // +kubebuilder:validation:Optional KeyManagementService []KeyManagementServiceParameters `json:"keyManagementService,omitempty" tf:"key_management_service,omitempty"` // A key_vault_secrets_provider block as defined below. + // +kubebuilder:validation:Optional KeyVaultSecretsProvider []KeyVaultSecretsProviderParameters `json:"keyVaultSecretsProvider,omitempty" tf:"key_vault_secrets_provider,omitempty"` // A kubelet_identity block as defined below. + // +kubebuilder:validation:Optional KubeletIdentity []KubeletIdentityParameters `json:"kubeletIdentity,omitempty" tf:"kubelet_identity,omitempty"` // Version of Kubernetes specified when creating the AKS managed cluster. If not specified, the latest recommended version will be used at provisioning time (but won't auto-upgrade). AKS does not require an exact patch version to be specified, minor version aliases such as 1.22 are also supported. - The minor version's latest GA patch is automatically chosen in that case. More details can be found in the documentation. + // +kubebuilder:validation:Optional KubernetesVersion *string `json:"kubernetesVersion,omitempty" tf:"kubernetes_version,omitempty"` // A linux_profile block as defined below. + // +kubebuilder:validation:Optional LinuxProfile []LinuxProfileParameters `json:"linuxProfile,omitempty" tf:"linux_profile,omitempty"` // If true local accounts will be disabled. See the documentation for more information. + // +kubebuilder:validation:Optional LocalAccountDisabled *bool `json:"localAccountDisabled,omitempty" tf:"local_account_disabled,omitempty"` // The location where the Managed Kubernetes Cluster should be created. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // A maintenance_window block as defined below. + // +kubebuilder:validation:Optional MaintenanceWindow []MaintenanceWindowParameters `json:"maintenanceWindow,omitempty" tf:"maintenance_window,omitempty"` // A microsoft_defender block as defined below. + // +kubebuilder:validation:Optional MicrosoftDefender []MicrosoftDefenderParameters `json:"microsoftDefender,omitempty" tf:"microsoft_defender,omitempty"` // Specifies a Prometheus add-on profile for the Kubernetes Cluster. A monitor_metrics block as defined below. + // +kubebuilder:validation:Optional MonitorMetrics []MonitorMetricsParameters `json:"monitorMetrics,omitempty" tf:"monitor_metrics,omitempty"` // A network_profile block as defined below. + // +kubebuilder:validation:Optional NetworkProfile []NetworkProfileParameters `json:"networkProfile,omitempty" tf:"network_profile,omitempty"` // The auto-generated Resource Group which contains the resources for this Managed Kubernetes Cluster. + // +kubebuilder:validation:Optional NodeResourceGroup *string `json:"nodeResourceGroup,omitempty" tf:"node_resource_group,omitempty"` // Enable or Disable the OIDC issuer URL + // +kubebuilder:validation:Optional OidcIssuerEnabled *bool `json:"oidcIssuerEnabled,omitempty" tf:"oidc_issuer_enabled,omitempty"` // An oms_agent block as defined below. + // +kubebuilder:validation:Optional OmsAgent []OmsAgentParameters `json:"omsAgent,omitempty" tf:"oms_agent,omitempty"` // Is Open Service Mesh enabled? For more details, please visit Open Service Mesh for AKS. + // +kubebuilder:validation:Optional OpenServiceMeshEnabled *bool `json:"openServiceMeshEnabled,omitempty" tf:"open_service_mesh_enabled,omitempty"` // Should this Kubernetes Cluster have its API server only exposed on internal IP addresses? This provides a Private IP Address for the Kubernetes API on the Virtual Network where the Kubernetes Cluster is located. Defaults to false. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PrivateClusterEnabled *bool `json:"privateClusterEnabled,omitempty" tf:"private_cluster_enabled,omitempty"` // Specifies whether a Public FQDN for this Private Cluster should be added. Defaults to false. + // +kubebuilder:validation:Optional PrivateClusterPublicFqdnEnabled *bool `json:"privateClusterPublicFqdnEnabled,omitempty" tf:"private_cluster_public_fqdn_enabled,omitempty"` // Either the ID of Private DNS Zone which should be delegated to this Cluster, System to have AKS manage this or None. In case of None you will need to bring your own DNS server and set up resolving, otherwise, the cluster will have issues after provisioning. Changing this forces a new resource to be created. @@ -1586,6 +1713,7 @@ type KubernetesClusterParameters struct { PrivateDNSZoneIDSelector *v1.Selector `json:"privateDnsZoneIdSelector,omitempty" tf:"-"` // Whether public network access is allowed for this Kubernetes Cluster. Defaults to true. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // Specifies the Resource Group where the Managed Kubernetes Cluster should exist. Changing this forces a new resource to be created. @@ -1602,36 +1730,47 @@ type KubernetesClusterParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Whether Role Based Access Control for the Kubernetes Cluster should be enabled. Defaults to true. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional RoleBasedAccessControlEnabled *bool `json:"roleBasedAccessControlEnabled,omitempty" tf:"role_based_access_control_enabled,omitempty"` // Whether to enable run command for the cluster or not. Defaults to true. + // +kubebuilder:validation:Optional RunCommandEnabled *bool `json:"runCommandEnabled,omitempty" tf:"run_command_enabled,omitempty"` // A service_mesh_profile block as defined below. + // +kubebuilder:validation:Optional ServiceMeshProfile []ServiceMeshProfileParameters `json:"serviceMeshProfile,omitempty" tf:"service_mesh_profile,omitempty"` // A service_principal block as documented below. One of either identity or service_principal must be specified. + // +kubebuilder:validation:Optional ServicePrincipal []ServicePrincipalParameters `json:"servicePrincipal,omitempty" tf:"service_principal,omitempty"` // The SKU Tier that should be used for this Kubernetes Cluster. Possible values are Free, and Standard (which includes the Uptime SLA). Defaults to Free. + // +kubebuilder:validation:Optional SkuTier *string `json:"skuTier,omitempty" tf:"sku_tier,omitempty"` // A storage_profile block as defined below. + // +kubebuilder:validation:Optional StorageProfile []StorageProfileParameters `json:"storageProfile,omitempty" tf:"storage_profile,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // A web_app_routing block as defined below. + // +kubebuilder:validation:Optional WebAppRouting []WebAppRoutingParameters `json:"webAppRouting,omitempty" tf:"web_app_routing,omitempty"` // A windows_profile block as defined below. + // +kubebuilder:validation:Optional WindowsProfile []WindowsProfileParameters `json:"windowsProfile,omitempty" tf:"windows_profile,omitempty"` // A workload_autoscaler_profile block defined below. + // +kubebuilder:validation:Optional WorkloadAutoscalerProfile []WorkloadAutoscalerProfileParameters `json:"workloadAutoscalerProfile,omitempty" tf:"workload_autoscaler_profile,omitempty"` // Specifies whether Azure AD Workload Identity should be enabled for the Cluster. Defaults to false. + // +kubebuilder:validation:Optional WorkloadIdentityEnabled *bool `json:"workloadIdentityEnabled,omitempty" tf:"workload_identity_enabled,omitempty"` } @@ -1668,15 +1807,19 @@ type LinuxOsConfigObservation struct { type LinuxOsConfigParameters struct { // Specifies the size of the swap file on each node in MB. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SwapFileSizeMb *float64 `json:"swapFileSizeMb,omitempty" tf:"swap_file_size_mb,omitempty"` // A sysctl_config block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SysctlConfig []SysctlConfigParameters `json:"sysctlConfig,omitempty" tf:"sysctl_config,omitempty"` // specifies the defrag configuration for Transparent Huge Page. Possible values are always, defer, defer+madvise, madvise and never. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional TransparentHugePageDefrag *string `json:"transparentHugePageDefrag,omitempty" tf:"transparent_huge_page_defrag,omitempty"` // Specifies the Transparent Huge Page enabled configuration. Possible values are always, madvise and never. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional TransparentHugePageEnabled *string `json:"transparentHugePageEnabled,omitempty" tf:"transparent_huge_page_enabled,omitempty"` } @@ -1701,9 +1844,11 @@ type LinuxProfileObservation struct { type LinuxProfileParameters struct { // The Admin Username for the Cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"` // An ssh_key block. Only one is currently allowed. Changing this will update the key on all node pools. More information can be found in the documentation. + // +kubebuilder:validation:Optional SSHKey []SSHKeyParameters `json:"sshKey,omitempty" tf:"ssh_key,omitempty"` } @@ -1755,21 +1900,27 @@ type LoadBalancerProfileObservation struct { type LoadBalancerProfileParameters struct { // Desired outbound flow idle timeout in minutes for the cluster load balancer. Must be between 4 and 120 inclusive. Defaults to 4. + // +kubebuilder:validation:Optional IdleTimeoutInMinutes *float64 `json:"idleTimeoutInMinutes,omitempty" tf:"idle_timeout_in_minutes,omitempty"` // Count of desired managed outbound IPs for the cluster load balancer. Must be between 1 and 100 inclusive. + // +kubebuilder:validation:Optional ManagedOutboundIPCount *float64 `json:"managedOutboundIpCount,omitempty" tf:"managed_outbound_ip_count,omitempty"` // The desired number of IPv6 outbound IPs created and managed by Azure for the cluster load balancer. Must be in the range of 1 to 100 (inclusive). The default value is 0 for single-stack and 1 for dual-stack. + // +kubebuilder:validation:Optional ManagedOutboundIPv6Count *float64 `json:"managedOutboundIpv6Count,omitempty" tf:"managed_outbound_ipv6_count,omitempty"` // The ID of the Public IP Addresses which should be used for outbound communication for the cluster load balancer. + // +kubebuilder:validation:Optional OutboundIPAddressIds []*string `json:"outboundIpAddressIds,omitempty" tf:"outbound_ip_address_ids,omitempty"` // The ID of the outbound Public IP Address Prefixes which should be used for the cluster load balancer. + // +kubebuilder:validation:Optional OutboundIPPrefixIds []*string `json:"outboundIpPrefixIds,omitempty" tf:"outbound_ip_prefix_ids,omitempty"` // Number of desired SNAT port for each VM in the clusters load balancer. Must be between 0 and 64000 inclusive. Defaults to 0. + // +kubebuilder:validation:Optional OutboundPortsAllocated *float64 `json:"outboundPortsAllocated,omitempty" tf:"outbound_ports_allocated,omitempty"` } @@ -1794,9 +1945,11 @@ type MaintenanceWindowObservation struct { type MaintenanceWindowParameters struct { // One or more allowed blocks as defined below. + // +kubebuilder:validation:Optional Allowed []AllowedParameters `json:"allowed,omitempty" tf:"allowed,omitempty"` // One or more not_allowed block as defined below. + // +kubebuilder:validation:Optional NotAllowed []NotAllowedParameters `json:"notAllowed,omitempty" tf:"not_allowed,omitempty"` } @@ -1815,6 +1968,7 @@ type MicrosoftDefenderObservation struct { type MicrosoftDefenderParameters struct { // Specifies the ID of the Log Analytics Workspace where the audit logs collected by Microsoft Defender should be sent to. + // +kubebuilder:validation:Optional LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` } @@ -1839,9 +1993,11 @@ type MonitorMetricsObservation struct { type MonitorMetricsParameters struct { // Specifies a comma-separated list of Kubernetes annotation keys that will be used in the resource's labels metric. + // +kubebuilder:validation:Optional AnnotationsAllowed *string `json:"annotationsAllowed,omitempty" tf:"annotations_allowed,omitempty"` // Specifies a Comma-separated list of additional Kubernetes label keys that will be used in the resource's labels metric. + // +kubebuilder:validation:Optional LabelsAllowed *string `json:"labelsAllowed,omitempty" tf:"labels_allowed,omitempty"` } @@ -1869,9 +2025,11 @@ type NATGatewayProfileObservation struct { type NATGatewayProfileParameters struct { // Desired outbound flow idle timeout in minutes for the cluster load balancer. Must be between 4 and 120 inclusive. Defaults to 4. + // +kubebuilder:validation:Optional IdleTimeoutInMinutes *float64 `json:"idleTimeoutInMinutes,omitempty" tf:"idle_timeout_in_minutes,omitempty"` // Count of desired managed outbound IPs for the cluster load balancer. Must be between 1 and 100 inclusive. + // +kubebuilder:validation:Optional ManagedOutboundIPCount *float64 `json:"managedOutboundIpCount,omitempty" tf:"managed_outbound_ip_count,omitempty"` } @@ -1980,51 +2138,67 @@ type NetworkProfileObservation struct { type NetworkProfileParameters struct { // IP address within the Kubernetes service address range that will be used by cluster service discovery (kube-dns). Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DNSServiceIP *string `json:"dnsServiceIp,omitempty" tf:"dns_service_ip,omitempty"` // IP address (in CIDR notation) used as the Docker bridge IP address on nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DockerBridgeCidr *string `json:"dockerBridgeCidr,omitempty" tf:"docker_bridge_cidr,omitempty"` // Specifies the eBPF data plane used for building the Kubernetes network. Possible value is cilium. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional EbpfDataPlane *string `json:"ebpfDataPlane,omitempty" tf:"ebpf_data_plane,omitempty"` // Specifies a list of IP versions the Kubernetes Cluster will use to assign IP addresses to its nodes and pods. Possible values are IPv4 and/or IPv6. IPv4 must always be specified. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional IPVersions []*string `json:"ipVersions,omitempty" tf:"ip_versions,omitempty"` // A load_balancer_profile block as defined below. This can only be specified when load_balancer_sku is set to standard. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional LoadBalancerProfile []LoadBalancerProfileParameters `json:"loadBalancerProfile,omitempty" tf:"load_balancer_profile,omitempty"` // Specifies the SKU of the Load Balancer used for this Kubernetes Cluster. Possible values are basic and standard. Defaults to standard. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional LoadBalancerSku *string `json:"loadBalancerSku,omitempty" tf:"load_balancer_sku,omitempty"` // A nat_gateway_profile block as defined below. + // +kubebuilder:validation:Optional NATGatewayProfile []NATGatewayProfileParameters `json:"natGatewayProfile,omitempty" tf:"nat_gateway_profile,omitempty"` // Network mode to be used with Azure CNI. Possible values are bridge and transparent. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetworkMode *string `json:"networkMode,omitempty" tf:"network_mode,omitempty"` // Network plugin to use for networking. Currently supported values are azure, kubenet and none. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetworkPlugin *string `json:"networkPlugin,omitempty" tf:"network_plugin,omitempty"` // Specifies the network plugin mode used for building the Kubernetes network. Possible value is Overlay. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetworkPluginMode *string `json:"networkPluginMode,omitempty" tf:"network_plugin_mode,omitempty"` // Sets up network policy to be used with Azure CNI. Network policy allows us to control the traffic flow between pods. Currently supported values are calico and azure. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetworkPolicy *string `json:"networkPolicy,omitempty" tf:"network_policy,omitempty"` // The outbound (egress) routing method which should be used for this Kubernetes Cluster. Possible values are loadBalancer, userDefinedRouting, managedNATGateway and userAssignedNATGateway. Defaults to loadBalancer. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional OutboundType *string `json:"outboundType,omitempty" tf:"outbound_type,omitempty"` // The CIDR to use for pod IP addresses. This field can only be set when network_plugin is set to kubenet. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PodCidr *string `json:"podCidr,omitempty" tf:"pod_cidr,omitempty"` // A list of CIDRs to use for pod IP addresses. For single-stack networking a single IPv4 CIDR is expected. For dual-stack networking an IPv4 and IPv6 CIDR are expected. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PodCidrs []*string `json:"podCidrs,omitempty" tf:"pod_cidrs,omitempty"` // The Network Range used by the Kubernetes service. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ServiceCidr *string `json:"serviceCidr,omitempty" tf:"service_cidr,omitempty"` // A list of CIDRs to use for Kubernetes services. For single-stack networking a single IPv4 CIDR is expected. For dual-stack networking an IPv4 and IPv6 CIDR are expected. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ServiceCidrs []*string `json:"serviceCidrs,omitempty" tf:"service_cidrs,omitempty"` } @@ -2043,6 +2217,7 @@ type NodeNetworkProfileObservation struct { type NodeNetworkProfileParameters struct { // Specifies a mapping of tags to the instance-level public IPs. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NodePublicIPTags map[string]*string `json:"nodePublicIpTags,omitempty" tf:"node_public_ip_tags,omitempty"` } @@ -2067,9 +2242,11 @@ type NotAllowedObservation struct { type NotAllowedParameters struct { // The end of a time span, formatted as an RFC3339 string. + // +kubebuilder:validation:Optional End *string `json:"end,omitempty" tf:"end,omitempty"` // The start of a time span, formatted as an RFC3339 string. + // +kubebuilder:validation:Optional Start *string `json:"start,omitempty" tf:"start,omitempty"` } @@ -2115,9 +2292,11 @@ type OmsAgentObservation struct { type OmsAgentParameters struct { // The ID of the Log Analytics Workspace which the OMS Agent should send data to. + // +kubebuilder:validation:Optional LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` // Is managed identity authentication for monitoring enabled? + // +kubebuilder:validation:Optional MsiAuthForMonitoringEnabled *bool `json:"msiAuthForMonitoringEnabled,omitempty" tf:"msi_auth_for_monitoring_enabled,omitempty"` } @@ -2136,6 +2315,7 @@ type SSHKeyObservation struct { type SSHKeyParameters struct { // The Public SSH Key used to access the cluster. + // +kubebuilder:validation:Optional KeyData *string `json:"keyData,omitempty" tf:"key_data,omitempty"` } @@ -2172,6 +2352,7 @@ type ServiceMeshProfileObservation struct { type ServiceMeshProfileParameters struct { // The mode of the service mesh. Possible value is Istio. + // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` } @@ -2190,6 +2371,7 @@ type ServicePrincipalObservation struct { type ServicePrincipalParameters struct { // The Client ID for the Service Principal. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The Client Secret for the Service Principal. @@ -2236,18 +2418,23 @@ type StorageProfileObservation struct { type StorageProfileParameters struct { // Is the Blob CSI driver enabled? Defaults to false. + // +kubebuilder:validation:Optional BlobDriverEnabled *bool `json:"blobDriverEnabled,omitempty" tf:"blob_driver_enabled,omitempty"` // Is the Disk CSI driver enabled? Defaults to true. + // +kubebuilder:validation:Optional DiskDriverEnabled *bool `json:"diskDriverEnabled,omitempty" tf:"disk_driver_enabled,omitempty"` // Disk CSI Driver version to be used. Possible values are v1 and v2. Defaults to v1. + // +kubebuilder:validation:Optional DiskDriverVersion *string `json:"diskDriverVersion,omitempty" tf:"disk_driver_version,omitempty"` // Is the File CSI driver enabled? Defaults to true. + // +kubebuilder:validation:Optional FileDriverEnabled *bool `json:"fileDriverEnabled,omitempty" tf:"file_driver_enabled,omitempty"` // Is the Snapshot Controller enabled? Defaults to true. + // +kubebuilder:validation:Optional SnapshotControllerEnabled *bool `json:"snapshotControllerEnabled,omitempty" tf:"snapshot_controller_enabled,omitempty"` } @@ -2434,90 +2621,119 @@ type SysctlConfigObservation struct { type SysctlConfigParameters struct { // The sysctl setting fs.aio-max-nr. Must be between 65536 and 6553500. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional FsAioMaxNr *float64 `json:"fsAioMaxNr,omitempty" tf:"fs_aio_max_nr,omitempty"` // The sysctl setting fs.file-max. Must be between 8192 and 12000500. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional FsFileMax *float64 `json:"fsFileMax,omitempty" tf:"fs_file_max,omitempty"` // The sysctl setting fs.inotify.max_user_watches. Must be between 781250 and 2097152. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional FsInotifyMaxUserWatches *float64 `json:"fsInotifyMaxUserWatches,omitempty" tf:"fs_inotify_max_user_watches,omitempty"` // The sysctl setting fs.nr_open. Must be between 8192 and 20000500. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional FsNrOpen *float64 `json:"fsNrOpen,omitempty" tf:"fs_nr_open,omitempty"` // The sysctl setting kernel.threads-max. Must be between 20 and 513785. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional KernelThreadsMax *float64 `json:"kernelThreadsMax,omitempty" tf:"kernel_threads_max,omitempty"` // The sysctl setting net.core.netdev_max_backlog. Must be between 1000 and 3240000. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetCoreNetdevMaxBacklog *float64 `json:"netCoreNetdevMaxBacklog,omitempty" tf:"net_core_netdev_max_backlog,omitempty"` // The sysctl setting net.core.optmem_max. Must be between 20480 and 4194304. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetCoreOptmemMax *float64 `json:"netCoreOptmemMax,omitempty" tf:"net_core_optmem_max,omitempty"` // The sysctl setting net.core.rmem_default. Must be between 212992 and 134217728. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetCoreRmemDefault *float64 `json:"netCoreRmemDefault,omitempty" tf:"net_core_rmem_default,omitempty"` // The sysctl setting net.core.rmem_max. Must be between 212992 and 134217728. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetCoreRmemMax *float64 `json:"netCoreRmemMax,omitempty" tf:"net_core_rmem_max,omitempty"` // The sysctl setting net.core.somaxconn. Must be between 4096 and 3240000. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetCoreSomaxconn *float64 `json:"netCoreSomaxconn,omitempty" tf:"net_core_somaxconn,omitempty"` // The sysctl setting net.core.wmem_default. Must be between 212992 and 134217728. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetCoreWmemDefault *float64 `json:"netCoreWmemDefault,omitempty" tf:"net_core_wmem_default,omitempty"` // The sysctl setting net.core.wmem_max. Must be between 212992 and 134217728. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetCoreWmemMax *float64 `json:"netCoreWmemMax,omitempty" tf:"net_core_wmem_max,omitempty"` // The sysctl setting net.ipv4.ip_local_port_range max value. Must be between 1024 and 60999. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetIPv4IPLocalPortRangeMax *float64 `json:"netIpv4IpLocalPortRangeMax,omitempty" tf:"net_ipv4_ip_local_port_range_max,omitempty"` // The sysctl setting net.ipv4.ip_local_port_range min value. Must be between 1024 and 60999. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetIPv4IPLocalPortRangeMin *float64 `json:"netIpv4IpLocalPortRangeMin,omitempty" tf:"net_ipv4_ip_local_port_range_min,omitempty"` // The sysctl setting net.ipv4.neigh.default.gc_thresh1. Must be between 128 and 80000. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetIPv4NeighDefaultGcThresh1 *float64 `json:"netIpv4NeighDefaultGcThresh1,omitempty" tf:"net_ipv4_neigh_default_gc_thresh1,omitempty"` // The sysctl setting net.ipv4.neigh.default.gc_thresh2. Must be between 512 and 90000. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetIPv4NeighDefaultGcThresh2 *float64 `json:"netIpv4NeighDefaultGcThresh2,omitempty" tf:"net_ipv4_neigh_default_gc_thresh2,omitempty"` // The sysctl setting net.ipv4.neigh.default.gc_thresh3. Must be between 1024 and 100000. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetIPv4NeighDefaultGcThresh3 *float64 `json:"netIpv4NeighDefaultGcThresh3,omitempty" tf:"net_ipv4_neigh_default_gc_thresh3,omitempty"` // The sysctl setting net.ipv4.tcp_fin_timeout. Must be between 5 and 120. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetIPv4TCPFinTimeout *float64 `json:"netIpv4TcpFinTimeout,omitempty" tf:"net_ipv4_tcp_fin_timeout,omitempty"` // The sysctl setting net.ipv4.tcp_keepalive_intvl. Must be between 10 and 75. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetIPv4TCPKeepaliveIntvl *float64 `json:"netIpv4TcpKeepaliveIntvl,omitempty" tf:"net_ipv4_tcp_keepalive_intvl,omitempty"` // The sysctl setting net.ipv4.tcp_keepalive_probes. Must be between 1 and 15. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetIPv4TCPKeepaliveProbes *float64 `json:"netIpv4TcpKeepaliveProbes,omitempty" tf:"net_ipv4_tcp_keepalive_probes,omitempty"` // The sysctl setting net.ipv4.tcp_keepalive_time. Must be between 30 and 432000. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetIPv4TCPKeepaliveTime *float64 `json:"netIpv4TcpKeepaliveTime,omitempty" tf:"net_ipv4_tcp_keepalive_time,omitempty"` // The sysctl setting net.ipv4.tcp_max_syn_backlog. Must be between 128 and 3240000. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetIPv4TCPMaxSynBacklog *float64 `json:"netIpv4TcpMaxSynBacklog,omitempty" tf:"net_ipv4_tcp_max_syn_backlog,omitempty"` // The sysctl setting net.ipv4.tcp_max_tw_buckets. Must be between 8000 and 1440000. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetIPv4TCPMaxTwBuckets *float64 `json:"netIpv4TcpMaxTwBuckets,omitempty" tf:"net_ipv4_tcp_max_tw_buckets,omitempty"` // The sysctl setting net.ipv4.tcp_tw_reuse. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetIPv4TCPTwReuse *bool `json:"netIpv4TcpTwReuse,omitempty" tf:"net_ipv4_tcp_tw_reuse,omitempty"` // The sysctl setting net.netfilter.nf_conntrack_buckets. Must be between 65536 and 147456. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetNetfilterNfConntrackBuckets *float64 `json:"netNetfilterNfConntrackBuckets,omitempty" tf:"net_netfilter_nf_conntrack_buckets,omitempty"` // The sysctl setting net.netfilter.nf_conntrack_max. Must be between 131072 and 1048576. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetNetfilterNfConntrackMax *float64 `json:"netNetfilterNfConntrackMax,omitempty" tf:"net_netfilter_nf_conntrack_max,omitempty"` // The sysctl setting vm.max_map_count. Must be between 65530 and 262144. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VMMaxMapCount *float64 `json:"vmMaxMapCount,omitempty" tf:"vm_max_map_count,omitempty"` // The sysctl setting vm.swappiness. Must be between 0 and 100. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VMSwappiness *float64 `json:"vmSwappiness,omitempty" tf:"vm_swappiness,omitempty"` // The sysctl setting vm.vfs_cache_pressure. Must be between 0 and 100. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VMVfsCachePressure *float64 `json:"vmVfsCachePressure,omitempty" tf:"vm_vfs_cache_pressure,omitempty"` } @@ -2536,6 +2752,7 @@ type UpgradeSettingsObservation struct { type UpgradeSettingsParameters struct { // The maximum number or percentage of nodes which will be added to the Node Pool size during an upgrade. + // +kubebuilder:validation:Optional MaxSurge *string `json:"maxSurge,omitempty" tf:"max_surge,omitempty"` } @@ -2554,6 +2771,7 @@ type WebAppRoutingObservation struct { type WebAppRoutingParameters struct { // Specifies the ID of the DNS Zone in which DNS entries are created for applications deployed to the cluster when Web App Routing is enabled. For Bring-Your-Own DNS zones this property should be set to an empty string "". + // +kubebuilder:validation:Optional DNSZoneID *string `json:"dnsZoneId,omitempty" tf:"dns_zone_id,omitempty"` } @@ -2588,12 +2806,15 @@ type WindowsProfileParameters struct { AdminPasswordSecretRef *v1.SecretKeySelector `json:"adminPasswordSecretRef,omitempty" tf:"-"` // The Admin Username for Windows VMs. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"` // A gmsa block as defined below. + // +kubebuilder:validation:Optional Gmsa []GmsaParameters `json:"gmsa,omitempty" tf:"gmsa,omitempty"` // Specifies the type of on-premise license which should be used for Node Pool Windows Virtual Machine. At this time the only possible value is Windows_Server. + // +kubebuilder:validation:Optional License *string `json:"license,omitempty" tf:"license,omitempty"` } @@ -2624,9 +2845,11 @@ type WorkloadAutoscalerProfileObservation struct { type WorkloadAutoscalerProfileParameters struct { // Specifies whether KEDA Autoscaler can be used for workloads. + // +kubebuilder:validation:Optional KedaEnabled *bool `json:"kedaEnabled,omitempty" tf:"keda_enabled,omitempty"` // Specifies whether Vertical Pod Autoscaler should be enabled. + // +kubebuilder:validation:Optional VerticalPodAutoscalerEnabled *bool `json:"verticalPodAutoscalerEnabled,omitempty" tf:"vertical_pod_autoscaler_enabled,omitempty"` } diff --git a/apis/containerservice/v1beta1/zz_kubernetesclusternodepool_types.go b/apis/containerservice/v1beta1/zz_kubernetesclusternodepool_types.go index 8c1bc8e53..ca2c4fd46 100755 --- a/apis/containerservice/v1beta1/zz_kubernetesclusternodepool_types.go +++ b/apis/containerservice/v1beta1/zz_kubernetesclusternodepool_types.go @@ -199,33 +199,43 @@ type KubernetesClusterNodePoolKubeletConfigObservation struct { type KubernetesClusterNodePoolKubeletConfigParameters struct { // Specifies the allow list of unsafe sysctls command or patterns (ending in *). Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional AllowedUnsafeSysctls []*string `json:"allowedUnsafeSysctls,omitempty" tf:"allowed_unsafe_sysctls,omitempty"` // Is CPU CFS quota enforcement for containers enabled? Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional CPUCfsQuotaEnabled *bool `json:"cpuCfsQuotaEnabled,omitempty" tf:"cpu_cfs_quota_enabled,omitempty"` // Specifies the CPU CFS quota period value. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional CPUCfsQuotaPeriod *string `json:"cpuCfsQuotaPeriod,omitempty" tf:"cpu_cfs_quota_period,omitempty"` // Specifies the CPU Manager policy to use. Possible values are none and static, Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional CPUManagerPolicy *string `json:"cpuManagerPolicy,omitempty" tf:"cpu_manager_policy,omitempty"` // Specifies the maximum number of container log files that can be present for a container. must be at least 2. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ContainerLogMaxLine *float64 `json:"containerLogMaxLine,omitempty" tf:"container_log_max_line,omitempty"` // Specifies the maximum size (e.g. 10MB) of container log file before it is rotated. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ContainerLogMaxSizeMb *float64 `json:"containerLogMaxSizeMb,omitempty" tf:"container_log_max_size_mb,omitempty"` // Specifies the percent of disk usage above which image garbage collection is always run. Must be between 0 and 100. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ImageGcHighThreshold *float64 `json:"imageGcHighThreshold,omitempty" tf:"image_gc_high_threshold,omitempty"` // Specifies the percent of disk usage lower than which image garbage collection is never run. Must be between 0 and 100. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ImageGcLowThreshold *float64 `json:"imageGcLowThreshold,omitempty" tf:"image_gc_low_threshold,omitempty"` // Specifies the maximum number of processes per pod. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PodMaxPid *float64 `json:"podMaxPid,omitempty" tf:"pod_max_pid,omitempty"` // Specifies the Topology Manager policy to use. Possible values are none, best-effort, restricted or single-numa-node. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional TopologyManagerPolicy *string `json:"topologyManagerPolicy,omitempty" tf:"topology_manager_policy,omitempty"` } @@ -262,15 +272,19 @@ type KubernetesClusterNodePoolLinuxOsConfigObservation struct { type KubernetesClusterNodePoolLinuxOsConfigParameters struct { // Specifies the size of swap file on each node in MB. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SwapFileSizeMb *float64 `json:"swapFileSizeMb,omitempty" tf:"swap_file_size_mb,omitempty"` // A sysctl_config block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SysctlConfig []LinuxOsConfigSysctlConfigParameters `json:"sysctlConfig,omitempty" tf:"sysctl_config,omitempty"` // specifies the defrag configuration for Transparent Huge Page. Possible values are always, defer, defer+madvise, madvise and never. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional TransparentHugePageDefrag *string `json:"transparentHugePageDefrag,omitempty" tf:"transparent_huge_page_defrag,omitempty"` // Specifies the Transparent Huge Page enabled configuration. Possible values are always, madvise and never. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional TransparentHugePageEnabled *string `json:"transparentHugePageEnabled,omitempty" tf:"transparent_huge_page_enabled,omitempty"` } @@ -289,6 +303,7 @@ type KubernetesClusterNodePoolNodeNetworkProfileObservation struct { type KubernetesClusterNodePoolNodeNetworkProfileParameters struct { // Specifies a mapping of tags to the instance-level public IPs. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NodePublicIPTags map[string]*string `json:"nodePublicIpTags,omitempty" tf:"node_public_ip_tags,omitempty"` } @@ -424,33 +439,43 @@ type KubernetesClusterNodePoolObservation struct { type KubernetesClusterNodePoolParameters struct { // Specifies the ID of the Capacity Reservation Group where this Node Pool should exist. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional CapacityReservationGroupID *string `json:"capacityReservationGroupId,omitempty" tf:"capacity_reservation_group_id,omitempty"` // Specifies whether to trust a Custom CA. + // +kubebuilder:validation:Optional CustomCATrustEnabled *bool `json:"customCaTrustEnabled,omitempty" tf:"custom_ca_trust_enabled,omitempty"` // Whether to enable auto-scaler. + // +kubebuilder:validation:Optional EnableAutoScaling *bool `json:"enableAutoScaling,omitempty" tf:"enable_auto_scaling,omitempty"` // Should the nodes in this Node Pool have host encryption enabled? Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional EnableHostEncryption *bool `json:"enableHostEncryption,omitempty" tf:"enable_host_encryption,omitempty"` // Should each node have a Public IP Address? Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional EnableNodePublicIP *bool `json:"enableNodePublicIp,omitempty" tf:"enable_node_public_ip,omitempty"` // The Eviction Policy which should be used for Virtual Machines within the Virtual Machine Scale Set powering this Node Pool. Possible values are Deallocate and Delete. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional EvictionPolicy *string `json:"evictionPolicy,omitempty" tf:"eviction_policy,omitempty"` // Should the nodes in this Node Pool have Federal Information Processing Standard enabled? Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional FipsEnabled *bool `json:"fipsEnabled,omitempty" tf:"fips_enabled,omitempty"` // The fully qualified resource ID of the Dedicated Host Group to provision virtual machines from. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional HostGroupID *string `json:"hostGroupId,omitempty" tf:"host_group_id,omitempty"` // A kubelet_config block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional KubeletConfig []KubernetesClusterNodePoolKubeletConfigParameters `json:"kubeletConfig,omitempty" tf:"kubelet_config,omitempty"` // The type of disk used by kubelet. Possible values are OS and Temporary. + // +kubebuilder:validation:Optional KubeletDiskType *string `json:"kubeletDiskType,omitempty" tf:"kubelet_disk_type,omitempty"` // The ID of the Kubernetes Cluster where this Node Pool should exist. Changing this forces a new resource to be created. @@ -468,51 +493,67 @@ type KubernetesClusterNodePoolParameters struct { KubernetesClusterIDSelector *v1.Selector `json:"kubernetesClusterIdSelector,omitempty" tf:"-"` // A linux_os_config block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional LinuxOsConfig []KubernetesClusterNodePoolLinuxOsConfigParameters `json:"linuxOsConfig,omitempty" tf:"linux_os_config,omitempty"` // The maximum number of nodes which should exist within this Node Pool. Valid values are between 0 and 1000 and must be greater than or equal to min_count. + // +kubebuilder:validation:Optional MaxCount *float64 `json:"maxCount,omitempty" tf:"max_count,omitempty"` // The maximum number of pods that can run on each agent. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional MaxPods *float64 `json:"maxPods,omitempty" tf:"max_pods,omitempty"` // A base64-encoded string which will be written to /etc/motd after decoding. This allows customization of the message of the day for Linux nodes. It cannot be specified for Windows nodes and must be a static string (i.e. will be printed raw and not executed as a script). Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional MessageOfTheDay *string `json:"messageOfTheDay,omitempty" tf:"message_of_the_day,omitempty"` // The minimum number of nodes which should exist within this Node Pool. Valid values are between 0 and 1000 and must be less than or equal to max_count. + // +kubebuilder:validation:Optional MinCount *float64 `json:"minCount,omitempty" tf:"min_count,omitempty"` // Should this Node Pool be used for System or User resources? Possible values are System and User. Defaults to User. + // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // The initial number of nodes which should exist within this Node Pool. Valid values are between 0 and 1000 (inclusive) for user pools and between 1 and 1000 (inclusive) for system pools and must be a value in the range min_count - max_count. + // +kubebuilder:validation:Optional NodeCount *float64 `json:"nodeCount,omitempty" tf:"node_count,omitempty"` // A map of Kubernetes labels which should be applied to nodes in this Node Pool. + // +kubebuilder:validation:Optional NodeLabels map[string]*string `json:"nodeLabels,omitempty" tf:"node_labels,omitempty"` // A node_network_profile block as documented below. + // +kubebuilder:validation:Optional NodeNetworkProfile []KubernetesClusterNodePoolNodeNetworkProfileParameters `json:"nodeNetworkProfile,omitempty" tf:"node_network_profile,omitempty"` // Resource ID for the Public IP Addresses Prefix for the nodes in this Node Pool. enable_node_public_ip should be true. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NodePublicIPPrefixID *string `json:"nodePublicIpPrefixId,omitempty" tf:"node_public_ip_prefix_id,omitempty"` // A list of Kubernetes taints which should be applied to nodes in the agent pool (e.g key=value:NoSchedule). Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NodeTaints []*string `json:"nodeTaints,omitempty" tf:"node_taints,omitempty"` // Version of Kubernetes used for the Agents. If not specified, the latest recommended version will be used at provisioning time (but won't auto-upgrade). AKS does not require an exact patch version to be specified, minor version aliases such as 1.22 are also supported. - The minor version's latest GA patch is automatically chosen in that case. More details can be found in the documentation. + // +kubebuilder:validation:Optional OrchestratorVersion *string `json:"orchestratorVersion,omitempty" tf:"orchestrator_version,omitempty"` // The Agent Operating System disk size in GB. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional OsDiskSizeGb *float64 `json:"osDiskSizeGb,omitempty" tf:"os_disk_size_gb,omitempty"` // The type of disk which should be used for the Operating System. Possible values are Ephemeral and Managed. Defaults to Managed. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional OsDiskType *string `json:"osDiskType,omitempty" tf:"os_disk_type,omitempty"` // Specifies the OS SKU used by the agent pool. Possible values include: Ubuntu, CBLMariner, Mariner, Windows2019, Windows2022. If not specified, the default is Ubuntu if OSType=Linux or Windows2019 if OSType=Windows. And the default Windows OSSKU will be changed to Windows2022 after Windows2019 is deprecated. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional OsSku *string `json:"osSku,omitempty" tf:"os_sku,omitempty"` // The Operating System which should be used for this Node Pool. Changing this forces a new resource to be created. Possible values are Linux and Windows. Defaults to Linux. + // +kubebuilder:validation:Optional OsType *string `json:"osType,omitempty" tf:"os_type,omitempty"` // The ID of the Subnet where the pods in the Node Pool should exist. Changing this forces a new resource to be created. @@ -530,30 +571,39 @@ type KubernetesClusterNodePoolParameters struct { PodSubnetIDSelector *v1.Selector `json:"podSubnetIdSelector,omitempty" tf:"-"` // The Priority for Virtual Machines within the Virtual Machine Scale Set that powers this Node Pool. Possible values are Regular and Spot. Defaults to Regular. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Priority *string `json:"priority,omitempty" tf:"priority,omitempty"` // The ID of the Proximity Placement Group where the Virtual Machine Scale Set that powers this Node Pool will be placed. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ProximityPlacementGroupID *string `json:"proximityPlacementGroupId,omitempty" tf:"proximity_placement_group_id,omitempty"` // Specifies how the node pool should deal with scaled-down nodes. Allowed values are Delete and Deallocate. Defaults to Delete. + // +kubebuilder:validation:Optional ScaleDownMode *string `json:"scaleDownMode,omitempty" tf:"scale_down_mode,omitempty"` // The ID of the Snapshot which should be used to create this Node Pool. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SnapshotID *string `json:"snapshotId,omitempty" tf:"snapshot_id,omitempty"` // The maximum price you're willing to pay in USD per Virtual Machine. Valid values are -1 (the current on-demand price for a Virtual Machine) or a positive value with up to five decimal places. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SpotMaxPrice *float64 `json:"spotMaxPrice,omitempty" tf:"spot_max_price,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Used to specify whether the UltraSSD is enabled in the Node Pool. Defaults to false. See the documentation for more information. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional UltraSsdEnabled *bool `json:"ultraSsdEnabled,omitempty" tf:"ultra_ssd_enabled,omitempty"` // A upgrade_settings block as documented below. + // +kubebuilder:validation:Optional UpgradeSettings []KubernetesClusterNodePoolUpgradeSettingsParameters `json:"upgradeSettings,omitempty" tf:"upgrade_settings,omitempty"` // The SKU which should be used for the Virtual Machines used in this Node Pool. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` // The ID of the Subnet where this Node Pool should exist. Changing this forces a new resource to be created. @@ -571,12 +621,15 @@ type KubernetesClusterNodePoolParameters struct { VnetSubnetIDSelector *v1.Selector `json:"vnetSubnetIdSelector,omitempty" tf:"-"` // A windows_profile block as documented below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional WindowsProfile []KubernetesClusterNodePoolWindowsProfileParameters `json:"windowsProfile,omitempty" tf:"windows_profile,omitempty"` // Used to specify the workload runtime. Allowed values are OCIContainer, WasmWasi and KataMshvVmIsolation. + // +kubebuilder:validation:Optional WorkloadRuntime *string `json:"workloadRuntime,omitempty" tf:"workload_runtime,omitempty"` // Specifies a list of Availability Zones in which this Kubernetes Cluster Node Pool should be located. Changing this forces a new Kubernetes Cluster Node Pool to be created. + // +kubebuilder:validation:Optional Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } @@ -595,6 +648,7 @@ type KubernetesClusterNodePoolUpgradeSettingsObservation struct { type KubernetesClusterNodePoolUpgradeSettingsParameters struct { // The maximum number or percentage of nodes which will be added to the Node Pool size during an upgrade. + // +kubebuilder:validation:Optional MaxSurge *string `json:"maxSurge,omitempty" tf:"max_surge,omitempty"` } @@ -613,6 +667,7 @@ type KubernetesClusterNodePoolWindowsProfileObservation struct { type KubernetesClusterNodePoolWindowsProfileParameters struct { // Should the Windows nodes in this Node Pool have outbound NAT enabled? Defaults to true. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional OutboundNATEnabled *bool `json:"outboundNatEnabled,omitempty" tf:"outbound_nat_enabled,omitempty"` } @@ -799,90 +854,119 @@ type LinuxOsConfigSysctlConfigObservation struct { type LinuxOsConfigSysctlConfigParameters struct { // The sysctl setting fs.aio-max-nr. Must be between 65536 and 6553500. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional FsAioMaxNr *float64 `json:"fsAioMaxNr,omitempty" tf:"fs_aio_max_nr,omitempty"` // The sysctl setting fs.file-max. Must be between 8192 and 12000500. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional FsFileMax *float64 `json:"fsFileMax,omitempty" tf:"fs_file_max,omitempty"` // The sysctl setting fs.inotify.max_user_watches. Must be between 781250 and 2097152. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional FsInotifyMaxUserWatches *float64 `json:"fsInotifyMaxUserWatches,omitempty" tf:"fs_inotify_max_user_watches,omitempty"` // The sysctl setting fs.nr_open. Must be between 8192 and 20000500. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional FsNrOpen *float64 `json:"fsNrOpen,omitempty" tf:"fs_nr_open,omitempty"` // The sysctl setting kernel.threads-max. Must be between 20 and 513785. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional KernelThreadsMax *float64 `json:"kernelThreadsMax,omitempty" tf:"kernel_threads_max,omitempty"` // The sysctl setting net.core.netdev_max_backlog. Must be between 1000 and 3240000. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetCoreNetdevMaxBacklog *float64 `json:"netCoreNetdevMaxBacklog,omitempty" tf:"net_core_netdev_max_backlog,omitempty"` // The sysctl setting net.core.optmem_max. Must be between 20480 and 4194304. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetCoreOptmemMax *float64 `json:"netCoreOptmemMax,omitempty" tf:"net_core_optmem_max,omitempty"` // The sysctl setting net.core.rmem_default. Must be between 212992 and 134217728. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetCoreRmemDefault *float64 `json:"netCoreRmemDefault,omitempty" tf:"net_core_rmem_default,omitempty"` // The sysctl setting net.core.rmem_max. Must be between 212992 and 134217728. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetCoreRmemMax *float64 `json:"netCoreRmemMax,omitempty" tf:"net_core_rmem_max,omitempty"` // The sysctl setting net.core.somaxconn. Must be between 4096 and 3240000. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetCoreSomaxconn *float64 `json:"netCoreSomaxconn,omitempty" tf:"net_core_somaxconn,omitempty"` // The sysctl setting net.core.wmem_default. Must be between 212992 and 134217728. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetCoreWmemDefault *float64 `json:"netCoreWmemDefault,omitempty" tf:"net_core_wmem_default,omitempty"` // The sysctl setting net.core.wmem_max. Must be between 212992 and 134217728. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetCoreWmemMax *float64 `json:"netCoreWmemMax,omitempty" tf:"net_core_wmem_max,omitempty"` // The sysctl setting net.ipv4.ip_local_port_range max value. Must be between 1024 and 60999. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetIPv4IPLocalPortRangeMax *float64 `json:"netIpv4IpLocalPortRangeMax,omitempty" tf:"net_ipv4_ip_local_port_range_max,omitempty"` // The sysctl setting net.ipv4.ip_local_port_range min value. Must be between 1024 and 60999. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetIPv4IPLocalPortRangeMin *float64 `json:"netIpv4IpLocalPortRangeMin,omitempty" tf:"net_ipv4_ip_local_port_range_min,omitempty"` // The sysctl setting net.ipv4.neigh.default.gc_thresh1. Must be between 128 and 80000. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetIPv4NeighDefaultGcThresh1 *float64 `json:"netIpv4NeighDefaultGcThresh1,omitempty" tf:"net_ipv4_neigh_default_gc_thresh1,omitempty"` // The sysctl setting net.ipv4.neigh.default.gc_thresh2. Must be between 512 and 90000. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetIPv4NeighDefaultGcThresh2 *float64 `json:"netIpv4NeighDefaultGcThresh2,omitempty" tf:"net_ipv4_neigh_default_gc_thresh2,omitempty"` // The sysctl setting net.ipv4.neigh.default.gc_thresh3. Must be between 1024 and 100000. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetIPv4NeighDefaultGcThresh3 *float64 `json:"netIpv4NeighDefaultGcThresh3,omitempty" tf:"net_ipv4_neigh_default_gc_thresh3,omitempty"` // The sysctl setting net.ipv4.tcp_fin_timeout. Must be between 5 and 120. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetIPv4TCPFinTimeout *float64 `json:"netIpv4TcpFinTimeout,omitempty" tf:"net_ipv4_tcp_fin_timeout,omitempty"` // The sysctl setting net.ipv4.tcp_keepalive_intvl. Must be between 10 and 75. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetIPv4TCPKeepaliveIntvl *float64 `json:"netIpv4TcpKeepaliveIntvl,omitempty" tf:"net_ipv4_tcp_keepalive_intvl,omitempty"` // The sysctl setting net.ipv4.tcp_keepalive_probes. Must be between 1 and 15. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetIPv4TCPKeepaliveProbes *float64 `json:"netIpv4TcpKeepaliveProbes,omitempty" tf:"net_ipv4_tcp_keepalive_probes,omitempty"` // The sysctl setting net.ipv4.tcp_keepalive_time. Must be between 30 and 432000. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetIPv4TCPKeepaliveTime *float64 `json:"netIpv4TcpKeepaliveTime,omitempty" tf:"net_ipv4_tcp_keepalive_time,omitempty"` // The sysctl setting net.ipv4.tcp_max_syn_backlog. Must be between 128 and 3240000. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetIPv4TCPMaxSynBacklog *float64 `json:"netIpv4TcpMaxSynBacklog,omitempty" tf:"net_ipv4_tcp_max_syn_backlog,omitempty"` // The sysctl setting net.ipv4.tcp_max_tw_buckets. Must be between 8000 and 1440000. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetIPv4TCPMaxTwBuckets *float64 `json:"netIpv4TcpMaxTwBuckets,omitempty" tf:"net_ipv4_tcp_max_tw_buckets,omitempty"` // Is sysctl setting net.ipv4.tcp_tw_reuse enabled? Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetIPv4TCPTwReuse *bool `json:"netIpv4TcpTwReuse,omitempty" tf:"net_ipv4_tcp_tw_reuse,omitempty"` // The sysctl setting net.netfilter.nf_conntrack_buckets. Must be between 65536 and 147456. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetNetfilterNfConntrackBuckets *float64 `json:"netNetfilterNfConntrackBuckets,omitempty" tf:"net_netfilter_nf_conntrack_buckets,omitempty"` // The sysctl setting net.netfilter.nf_conntrack_max. Must be between 131072 and 1048576. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetNetfilterNfConntrackMax *float64 `json:"netNetfilterNfConntrackMax,omitempty" tf:"net_netfilter_nf_conntrack_max,omitempty"` // The sysctl setting vm.max_map_count. Must be between 65530 and 262144. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VMMaxMapCount *float64 `json:"vmMaxMapCount,omitempty" tf:"vm_max_map_count,omitempty"` // The sysctl setting vm.swappiness. Must be between 0 and 100. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VMSwappiness *float64 `json:"vmSwappiness,omitempty" tf:"vm_swappiness,omitempty"` // The sysctl setting vm.vfs_cache_pressure. Must be between 0 and 100. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VMVfsCachePressure *float64 `json:"vmVfsCachePressure,omitempty" tf:"vm_vfs_cache_pressure,omitempty"` } diff --git a/apis/containerservice/v1beta1/zz_kubernetesfleetmanager_types.go b/apis/containerservice/v1beta1/zz_kubernetesfleetmanager_types.go index 60b8dd27a..e32351e67 100755 --- a/apis/containerservice/v1beta1/zz_kubernetesfleetmanager_types.go +++ b/apis/containerservice/v1beta1/zz_kubernetesfleetmanager_types.go @@ -26,6 +26,8 @@ type HubProfileObservation struct { } type HubProfileParameters struct { + + // +kubebuilder:validation:Optional DNSPrefix *string `json:"dnsPrefix,omitempty" tf:"dns_prefix,omitempty"` } @@ -62,9 +64,11 @@ type KubernetesFleetManagerObservation struct { type KubernetesFleetManagerParameters struct { // A hub_profile block as defined below. The FleetHubProfile configures the Fleet's hub. Changing this forces a new Kubernetes Fleet Manager to be created. + // +kubebuilder:validation:Optional HubProfile []HubProfileParameters `json:"hubProfile,omitempty" tf:"hub_profile,omitempty"` // The Azure Region where the Kubernetes Fleet Manager should exist. Changing this forces a new Kubernetes Fleet Manager to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the name of the Resource Group within which this Kubernetes Fleet Manager should exist. Changing this forces a new Kubernetes Fleet Manager to be created. @@ -81,6 +85,7 @@ type KubernetesFleetManagerParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the Kubernetes Fleet Manager. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/cosmosdb/v1beta1/zz_account_types.go b/apis/cosmosdb/v1beta1/zz_account_types.go index f567bb3a7..4c7b2005a 100755 --- a/apis/cosmosdb/v1beta1/zz_account_types.go +++ b/apis/cosmosdb/v1beta1/zz_account_types.go @@ -211,81 +211,107 @@ type AccountObservation struct { type AccountParameters struct { // Is write operations on metadata resources (databases, containers, throughput) via account keys enabled? Defaults to true. + // +kubebuilder:validation:Optional AccessKeyMetadataWritesEnabled *bool `json:"accessKeyMetadataWritesEnabled,omitempty" tf:"access_key_metadata_writes_enabled,omitempty"` // An analytical_storage block as defined below. + // +kubebuilder:validation:Optional AnalyticalStorage []AnalyticalStorageParameters `json:"analyticalStorage,omitempty" tf:"analytical_storage,omitempty"` // Enable Analytical Storage option for this Cosmos DB account. Defaults to false. Enabling and then disabling analytical storage forces a new resource to be created. + // +kubebuilder:validation:Optional AnalyticalStorageEnabled *bool `json:"analyticalStorageEnabled,omitempty" tf:"analytical_storage_enabled,omitempty"` // A backup block as defined below. + // +kubebuilder:validation:Optional Backup []BackupParameters `json:"backup,omitempty" tf:"backup,omitempty"` // The capabilities which should be enabled for this Cosmos DB account. Value is a capabilities block as defined below. + // +kubebuilder:validation:Optional Capabilities []CapabilitiesParameters `json:"capabilities,omitempty" tf:"capabilities,omitempty"` // A capacity block as defined below. + // +kubebuilder:validation:Optional Capacity []CapacityParameters `json:"capacity,omitempty" tf:"capacity,omitempty"` // Specifies a consistency_policy resource, used to define the consistency policy for this CosmosDB account. + // +kubebuilder:validation:Optional ConsistencyPolicy []ConsistencyPolicyParameters `json:"consistencyPolicy,omitempty" tf:"consistency_policy,omitempty"` // A cors_rule block as defined below. + // +kubebuilder:validation:Optional CorsRule []CorsRuleParameters `json:"corsRule,omitempty" tf:"cors_rule,omitempty"` // The creation mode for the CosmosDB Account. Possible values are Default and Restore. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional CreateMode *string `json:"createMode,omitempty" tf:"create_mode,omitempty"` // The default identity for accessing Key Vault. Possible values are FirstPartyIdentity, SystemAssignedIdentity or UserAssignedIdentity. + // +kubebuilder:validation:Optional DefaultIdentityType *string `json:"defaultIdentityType,omitempty" tf:"default_identity_type,omitempty"` // Enable automatic failover for this Cosmos DB account. + // +kubebuilder:validation:Optional EnableAutomaticFailover *bool `json:"enableAutomaticFailover,omitempty" tf:"enable_automatic_failover,omitempty"` // Enable the Free Tier pricing option for this Cosmos DB account. Defaults to false. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional EnableFreeTier *bool `json:"enableFreeTier,omitempty" tf:"enable_free_tier,omitempty"` // Enable multiple write locations for this Cosmos DB account. + // +kubebuilder:validation:Optional EnableMultipleWriteLocations *bool `json:"enableMultipleWriteLocations,omitempty" tf:"enable_multiple_write_locations,omitempty"` // Specifies a geo_location resource, used to define where data should be replicated with the failover_priority 0 specifying the primary location. Value is a geo_location block as defined below. + // +kubebuilder:validation:Optional GeoLocation []GeoLocationParameters `json:"geoLocation,omitempty" tf:"geo_location,omitempty"` // CosmosDB Firewall Support: This value specifies the set of IP addresses or IP address ranges in CIDR form to be included as the allowed list of client IPs for a given database account. IP addresses/ranges must be comma separated and must not contain any spaces. + // +kubebuilder:validation:Optional IPRangeFilter *string `json:"ipRangeFilter,omitempty" tf:"ip_range_filter,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // Enables virtual network filtering for this Cosmos DB account. + // +kubebuilder:validation:Optional IsVirtualNetworkFilterEnabled *bool `json:"isVirtualNetworkFilterEnabled,omitempty" tf:"is_virtual_network_filter_enabled,omitempty"` // A versionless Key Vault Key ID for CMK encryption. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"` // Specifies the Kind of CosmosDB to create - possible values are GlobalDocumentDB, MongoDB and Parse. Defaults to GlobalDocumentDB. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Kind *string `json:"kind,omitempty" tf:"kind,omitempty"` // Disable local authentication and ensure only MSI and AAD can be used exclusively for authentication. Defaults to false. Can be set only when using the SQL API. + // +kubebuilder:validation:Optional LocalAuthenticationDisabled *bool `json:"localAuthenticationDisabled,omitempty" tf:"local_authentication_disabled,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The Server Version of a MongoDB account. Possible values are 4.2, 4.0, 3.6, and 3.2. + // +kubebuilder:validation:Optional MongoServerVersion *string `json:"mongoServerVersion,omitempty" tf:"mongo_server_version,omitempty"` // If Azure services can bypass ACLs. Defaults to false. + // +kubebuilder:validation:Optional NetworkACLBypassForAzureServices *bool `json:"networkAclBypassForAzureServices,omitempty" tf:"network_acl_bypass_for_azure_services,omitempty"` // The list of resource Ids for Network Acl Bypass for this Cosmos DB account. + // +kubebuilder:validation:Optional NetworkACLBypassIds []*string `json:"networkAclBypassIds,omitempty" tf:"network_acl_bypass_ids,omitempty"` // Specifies the Offer Type to use for this CosmosDB Account; currently, this can only be set to Standard. + // +kubebuilder:validation:Optional OfferType *string `json:"offerType,omitempty" tf:"offer_type,omitempty"` // Whether or not public network access is allowed for this CosmosDB account. Defaults to true. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // The name of the resource group in which the CosmosDB Account is created. Changing this forces a new resource to be created. @@ -302,12 +328,15 @@ type AccountParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A restore block as defined below. + // +kubebuilder:validation:Optional Restore []RestoreParameters `json:"restore,omitempty" tf:"restore,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies a virtual_network_rules resource, used to define which subnets are allowed to access this CosmosDB account. + // +kubebuilder:validation:Optional VirtualNetworkRule []VirtualNetworkRuleParameters `json:"virtualNetworkRule,omitempty" tf:"virtual_network_rule,omitempty"` } @@ -326,6 +355,7 @@ type AnalyticalStorageObservation struct { type AnalyticalStorageParameters struct { // The schema type of the Analytical Storage for this Cosmos DB account. Possible values are FullFidelity and WellDefined. + // +kubebuilder:validation:Optional SchemaType *string `json:"schemaType,omitempty" tf:"schema_type,omitempty"` } @@ -362,15 +392,19 @@ type BackupObservation struct { type BackupParameters struct { // The interval in minutes between two backups. This is configurable only when type is Periodic. Possible values are between 60 and 1440. + // +kubebuilder:validation:Optional IntervalInMinutes *float64 `json:"intervalInMinutes,omitempty" tf:"interval_in_minutes,omitempty"` // The time in hours that each backup is retained. This is configurable only when type is Periodic. Possible values are between 8 and 720. + // +kubebuilder:validation:Optional RetentionInHours *float64 `json:"retentionInHours,omitempty" tf:"retention_in_hours,omitempty"` // The storage redundancy is used to indicate the type of backup residency. This is configurable only when type is Periodic. Possible values are Geo, Local and Zone. + // +kubebuilder:validation:Optional StorageRedundancy *string `json:"storageRedundancy,omitempty" tf:"storage_redundancy,omitempty"` // The type of the backup. Possible values are Continuous and Periodic. Migration of Periodic to Continuous is one-way, changing Continuous to Periodic forces a new resource to be created. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -389,6 +423,7 @@ type CapabilitiesObservation struct { type CapabilitiesParameters struct { // The capability to enable - Possible values are AllowSelfServeUpgradeToMongo36, DisableRateLimitingResponses, EnableAggregationPipeline, EnableCassandra, EnableGremlin, EnableMongo, EnableMongo16MBDocumentSupport, EnableMongoRetryableWrites, EnableMongoRoleBasedAccessControl, EnableServerless, EnableTable, EnableUniqueCompoundNestedDocs, MongoDBv3.4 and mongoEnableDocLevelTTL. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -407,6 +442,7 @@ type CapacityObservation struct { type CapacityParameters struct { // The total throughput limit imposed on this Cosmos DB account (RU/s). Possible values are at least -1. -1 means no limit. + // +kubebuilder:validation:Optional TotalThroughputLimit *float64 `json:"totalThroughputLimit,omitempty" tf:"total_throughput_limit,omitempty"` } @@ -437,12 +473,15 @@ type ConsistencyPolicyObservation struct { type ConsistencyPolicyParameters struct { // The Consistency Level to use for this CosmosDB Account - can be either BoundedStaleness, Eventual, Session, Strong or ConsistentPrefix. + // +kubebuilder:validation:Optional ConsistencyLevel *string `json:"consistencyLevel,omitempty" tf:"consistency_level,omitempty"` // When used with the Bounded Staleness consistency level, this value represents the time amount of staleness (in seconds) tolerated. The accepted range for this value is 5 - 86400 (1 day). Defaults to 5. Required when consistency_level is set to BoundedStaleness. + // +kubebuilder:validation:Optional MaxIntervalInSeconds *float64 `json:"maxIntervalInSeconds,omitempty" tf:"max_interval_in_seconds,omitempty"` // When used with the Bounded Staleness consistency level, this value represents the number of stale requests tolerated. The accepted range for this value is 10 – 2147483647. Defaults to 100. Required when consistency_level is set to BoundedStaleness. + // +kubebuilder:validation:Optional MaxStalenessPrefix *float64 `json:"maxStalenessPrefix,omitempty" tf:"max_staleness_prefix,omitempty"` } @@ -485,18 +524,23 @@ type CorsRuleObservation struct { type CorsRuleParameters struct { // A list of headers that are allowed to be a part of the cross-origin request. + // +kubebuilder:validation:Optional AllowedHeaders []*string `json:"allowedHeaders,omitempty" tf:"allowed_headers,omitempty"` // A list of HTTP headers that are allowed to be executed by the origin. Valid options are DELETE, GET, HEAD, MERGE, POST, OPTIONS, PUT or PATCH. + // +kubebuilder:validation:Optional AllowedMethods []*string `json:"allowedMethods,omitempty" tf:"allowed_methods,omitempty"` // A list of origin domains that will be allowed by CORS. + // +kubebuilder:validation:Optional AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` // A list of response headers that are exposed to CORS clients. + // +kubebuilder:validation:Optional ExposedHeaders []*string `json:"exposedHeaders,omitempty" tf:"exposed_headers,omitempty"` // The number of seconds the client should cache a preflight response. + // +kubebuilder:validation:Optional MaxAgeInSeconds *float64 `json:"maxAgeInSeconds,omitempty" tf:"max_age_in_seconds,omitempty"` } @@ -521,9 +565,11 @@ type DatabaseObservation struct { type DatabaseParameters struct { // A list of the collection names for the restore request. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional CollectionNames []*string `json:"collectionNames,omitempty" tf:"collection_names,omitempty"` // Specifies the name of the CosmosDB Account. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -557,12 +603,15 @@ type GeoLocationObservation struct { type GeoLocationParameters struct { // The failover priority of the region. A failover priority of 0 indicates a write region. The maximum value for a failover priority = (total number of regions - 1). Failover priority values must be unique for each of the regions in which the database account exists. Changing this causes the location to be re-provisioned and cannot be changed for the location with failover priority 0. + // +kubebuilder:validation:Optional FailoverPriority *float64 `json:"failoverPriority,omitempty" tf:"failover_priority,omitempty"` // The name of the Azure region to host replicated data. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Should zone redundancy be enabled for this region? Defaults to false. + // +kubebuilder:validation:Optional ZoneRedundant *bool `json:"zoneRedundant,omitempty" tf:"zone_redundant,omitempty"` } @@ -593,9 +642,11 @@ type IdentityObservation struct { type IdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Cosmos Account. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // The Type of Managed Identity assigned to this Cosmos account. Possible values are SystemAssigned, UserAssigned and SystemAssigned, UserAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -623,9 +674,11 @@ type RestoreObservation struct { type RestoreParameters struct { // A database block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Database []DatabaseParameters `json:"database,omitempty" tf:"database,omitempty"` // The creation time of the database or the collection (Datetime Format RFC 3339). Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional RestoreTimestampInUtc *string `json:"restoreTimestampInUtc,omitempty" tf:"restore_timestamp_in_utc,omitempty"` // The resource ID of the restorable database account from which the restore has to be initiated. The example is /subscriptions/{subscriptionId}/providers/Microsoft.DocumentDB/locations/{location}/restorableDatabaseAccounts/{restorableDatabaseAccountName}. Changing this forces a new resource to be created. @@ -664,9 +717,11 @@ type VirtualNetworkRuleObservation struct { type VirtualNetworkRuleParameters struct { // The ID of the virtual network subnet. + // +kubebuilder:validation:Optional ID *string `json:"id,omitempty" tf:"id,omitempty"` // If set to true, the specified subnet will be added as a virtual network rule even if its CosmosDB service endpoint is not active. Defaults to false. + // +kubebuilder:validation:Optional IgnoreMissingVnetServiceEndpoint *bool `json:"ignoreMissingVnetServiceEndpoint,omitempty" tf:"ignore_missing_vnet_service_endpoint,omitempty"` } diff --git a/apis/cosmosdb/v1beta1/zz_cassandracluster_types.go b/apis/cosmosdb/v1beta1/zz_cassandracluster_types.go index 1359c0742..0554e39a0 100755 --- a/apis/cosmosdb/v1beta1/zz_cassandracluster_types.go +++ b/apis/cosmosdb/v1beta1/zz_cassandracluster_types.go @@ -34,6 +34,7 @@ type CassandraClusterIdentityObservation struct { type CassandraClusterIdentityParameters struct { // Specifies the type of Managed Service Identity that should be configured on this Cassandra Cluster. The only possible value is SystemAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -115,9 +116,11 @@ type CassandraClusterObservation struct { type CassandraClusterParameters struct { // The authentication method that is used to authenticate clients. Possible values are None and Cassandra. Defaults to Cassandra. + // +kubebuilder:validation:Optional AuthenticationMethod *string `json:"authenticationMethod,omitempty" tf:"authentication_method,omitempty"` // A list of TLS certificates that is used to authorize client connecting to the Cassandra Cluster. + // +kubebuilder:validation:Optional ClientCertificatePems []*string `json:"clientCertificatePems,omitempty" tf:"client_certificate_pems,omitempty"` // The initial admin password for this Cassandra Cluster. Changing this forces a new resource to be created. @@ -139,21 +142,27 @@ type CassandraClusterParameters struct { DelegatedManagementSubnetIDSelector *v1.Selector `json:"delegatedManagementSubnetIdSelector,omitempty" tf:"-"` // A list of TLS certificates that is used to authorize gossip from unmanaged Cassandra Data Center. + // +kubebuilder:validation:Optional ExternalGossipCertificatePems []*string `json:"externalGossipCertificatePems,omitempty" tf:"external_gossip_certificate_pems,omitempty"` // A list of IP Addresses of the seed nodes in unmanaged the Cassandra Data Center which will be added to the seed node lists of all managed nodes. + // +kubebuilder:validation:Optional ExternalSeedNodeIPAddresses []*string `json:"externalSeedNodeIpAddresses,omitempty" tf:"external_seed_node_ip_addresses,omitempty"` // The number of hours to wait between taking a backup of the Cassandra Cluster. Defaults to 24. + // +kubebuilder:validation:Optional HoursBetweenBackups *float64 `json:"hoursBetweenBackups,omitempty" tf:"hours_between_backups,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []CassandraClusterIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // The Azure Region where the Cassandra Cluster should exist. Changing this forces a new Cassandra Cluster to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Is the automatic repair enabled on the Cassandra Cluster? Defaults to true. + // +kubebuilder:validation:Optional RepairEnabled *bool `json:"repairEnabled,omitempty" tf:"repair_enabled,omitempty"` // The name of the Resource Group where the Cassandra Cluster should exist. Changing this forces a new Cassandra Cluster to be created. @@ -170,9 +179,11 @@ type CassandraClusterParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags assigned to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The version of Cassandra what the Cluster converges to run. Possible values are 3.11 and 4.0. Defaults to 3.11. Changing this forces a new Cassandra Cluster to be created. + // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` } diff --git a/apis/cosmosdb/v1beta1/zz_cassandradatacenter_types.go b/apis/cosmosdb/v1beta1/zz_cassandradatacenter_types.go index eadfb6080..3fec4159e 100755 --- a/apis/cosmosdb/v1beta1/zz_cassandradatacenter_types.go +++ b/apis/cosmosdb/v1beta1/zz_cassandradatacenter_types.go @@ -85,12 +85,15 @@ type CassandraDatacenterObservation struct { type CassandraDatacenterParameters struct { // Determines whether availability zones are enabled. Defaults to true. + // +kubebuilder:validation:Optional AvailabilityZonesEnabled *bool `json:"availabilityZonesEnabled,omitempty" tf:"availability_zones_enabled,omitempty"` // The key URI of the customer key to use for the encryption of the backup Storage Account. + // +kubebuilder:validation:Optional BackupStorageCustomerKeyURI *string `json:"backupStorageCustomerKeyUri,omitempty" tf:"backup_storage_customer_key_uri,omitempty"` // The fragment of the cassandra.yaml configuration file to be included in the cassandra.yaml for all nodes in this Cassandra Datacenter. The fragment should be Base64 encoded and only a subset of keys is allowed. + // +kubebuilder:validation:Optional Base64EncodedYamlFragment *string `json:"base64EncodedYamlFragment,omitempty" tf:"base64_encoded_yaml_fragment,omitempty"` // The ID of the Cassandra Cluster. Changing this forces a new Cassandra Datacenter to be created. @@ -122,21 +125,27 @@ type CassandraDatacenterParameters struct { DelegatedManagementSubnetIDSelector *v1.Selector `json:"delegatedManagementSubnetIdSelector,omitempty" tf:"-"` // Determines the number of p30 disks that are attached to each node. + // +kubebuilder:validation:Optional DiskCount *float64 `json:"diskCount,omitempty" tf:"disk_count,omitempty"` // The Disk SKU that is used for this Cassandra Datacenter. Defaults to P30. + // +kubebuilder:validation:Optional DiskSku *string `json:"diskSku,omitempty" tf:"disk_sku,omitempty"` // The Azure Region where the Cassandra Datacenter should exist. Changing this forces a new Cassandra Datacenter to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The key URI of the customer key to use for the encryption of the Managed Disk. + // +kubebuilder:validation:Optional ManagedDiskCustomerKeyURI *string `json:"managedDiskCustomerKeyUri,omitempty" tf:"managed_disk_customer_key_uri,omitempty"` // The number of nodes the Cassandra Datacenter should have. The number should be equal or greater than 3. Defaults to 3. + // +kubebuilder:validation:Optional NodeCount *float64 `json:"nodeCount,omitempty" tf:"node_count,omitempty"` // Determines the selected sku. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` } diff --git a/apis/cosmosdb/v1beta1/zz_cassandrakeyspace_types.go b/apis/cosmosdb/v1beta1/zz_cassandrakeyspace_types.go index b461dfd0a..e3a1d9de1 100755 --- a/apis/cosmosdb/v1beta1/zz_cassandrakeyspace_types.go +++ b/apis/cosmosdb/v1beta1/zz_cassandrakeyspace_types.go @@ -28,6 +28,7 @@ type AutoscaleSettingsObservation struct { type AutoscaleSettingsParameters struct { // The maximum throughput of the Cassandra KeySpace (RU/s). Must be between 1,000 and 1,000,000. Must be set in increments of 1,000. Conflicts with throughput. + // +kubebuilder:validation:Optional MaxThroughput *float64 `json:"maxThroughput,omitempty" tf:"max_throughput,omitempty"` } @@ -74,6 +75,7 @@ type CassandraKeySpaceParameters struct { AccountNameSelector *v1.Selector `json:"accountNameSelector,omitempty" tf:"-"` // An autoscale_settings block as defined below. + // +kubebuilder:validation:Optional AutoscaleSettings []AutoscaleSettingsParameters `json:"autoscaleSettings,omitempty" tf:"autoscale_settings,omitempty"` // The name of the resource group in which the Cosmos DB Cassandra KeySpace is created. Changing this forces a new resource to be created. @@ -90,6 +92,7 @@ type CassandraKeySpaceParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The throughput of Cassandra KeySpace (RU/s). Must be set in increments of 100. The minimum value is 400. + // +kubebuilder:validation:Optional Throughput *float64 `json:"throughput,omitempty" tf:"throughput,omitempty"` } diff --git a/apis/cosmosdb/v1beta1/zz_cassandratable_types.go b/apis/cosmosdb/v1beta1/zz_cassandratable_types.go index 73526b86b..0e9128b18 100755 --- a/apis/cosmosdb/v1beta1/zz_cassandratable_types.go +++ b/apis/cosmosdb/v1beta1/zz_cassandratable_types.go @@ -28,6 +28,7 @@ type CassandraTableAutoscaleSettingsObservation struct { type CassandraTableAutoscaleSettingsParameters struct { // The maximum throughput of the Cassandra Table (RU/s). Must be between 1,000 and 1,000,000. Must be set in increments of 1,000. Conflicts with throughput. + // +kubebuilder:validation:Optional MaxThroughput *float64 `json:"maxThroughput,omitempty" tf:"max_throughput,omitempty"` } @@ -76,9 +77,11 @@ type CassandraTableObservation struct { type CassandraTableParameters struct { // Time to live of the Analytical Storage. Possible values are between -1 and 2147483647 except 0. -1 means the Analytical Storage never expires. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional AnalyticalStorageTTL *float64 `json:"analyticalStorageTtl,omitempty" tf:"analytical_storage_ttl,omitempty"` // An autoscale_settings block as defined below. + // +kubebuilder:validation:Optional AutoscaleSettings []CassandraTableAutoscaleSettingsParameters `json:"autoscaleSettings,omitempty" tf:"autoscale_settings,omitempty"` // The ID of the Cosmos DB Cassandra Keyspace to create the table within. Changing this forces a new resource to be created. @@ -96,12 +99,15 @@ type CassandraTableParameters struct { CassandraKeySpaceIDSelector *v1.Selector `json:"cassandraKeyspaceIdSelector,omitempty" tf:"-"` // Time to live of the Cosmos DB Cassandra table. Possible values are at least -1. -1 means the Cassandra table never expires. + // +kubebuilder:validation:Optional DefaultTTL *float64 `json:"defaultTtl,omitempty" tf:"default_ttl,omitempty"` // A schema block as defined below. + // +kubebuilder:validation:Optional Schema []SchemaParameters `json:"schema,omitempty" tf:"schema,omitempty"` // The throughput of Cassandra KeySpace (RU/s). Must be set in increments of 100. The minimum value is 400. + // +kubebuilder:validation:Optional Throughput *float64 `json:"throughput,omitempty" tf:"throughput,omitempty"` } @@ -126,9 +132,11 @@ type ClusterKeyObservation struct { type ClusterKeyParameters struct { // Name of the column to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Order of the key. Currently supported values are Asc and Desc. + // +kubebuilder:validation:Optional OrderBy *string `json:"orderBy,omitempty" tf:"order_by,omitempty"` } @@ -153,9 +161,11 @@ type ColumnObservation struct { type ColumnParameters struct { // Name of the column to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of the column to be created. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -174,6 +184,7 @@ type PartitionKeyObservation struct { type PartitionKeyParameters struct { // Name of the column to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -204,12 +215,15 @@ type SchemaObservation struct { type SchemaParameters struct { // One or more cluster_key blocks as defined below. + // +kubebuilder:validation:Optional ClusterKey []ClusterKeyParameters `json:"clusterKey,omitempty" tf:"cluster_key,omitempty"` // One or more column blocks as defined below. + // +kubebuilder:validation:Optional Column []ColumnParameters `json:"column,omitempty" tf:"column,omitempty"` // One or more partition_key blocks as defined below. + // +kubebuilder:validation:Optional PartitionKey []PartitionKeyParameters `json:"partitionKey,omitempty" tf:"partition_key,omitempty"` } diff --git a/apis/cosmosdb/v1beta1/zz_gremlindatabase_types.go b/apis/cosmosdb/v1beta1/zz_gremlindatabase_types.go index 9fd67c28a..4c78a0978 100755 --- a/apis/cosmosdb/v1beta1/zz_gremlindatabase_types.go +++ b/apis/cosmosdb/v1beta1/zz_gremlindatabase_types.go @@ -28,6 +28,7 @@ type GremlinDatabaseAutoscaleSettingsObservation struct { type GremlinDatabaseAutoscaleSettingsParameters struct { // The maximum throughput of the Gremlin database (RU/s). Must be between 1,000 and 1,000,000. Must be set in increments of 1,000. Conflicts with throughput. + // +kubebuilder:validation:Optional MaxThroughput *float64 `json:"maxThroughput,omitempty" tf:"max_throughput,omitempty"` } @@ -74,6 +75,7 @@ type GremlinDatabaseParameters struct { AccountNameSelector *v1.Selector `json:"accountNameSelector,omitempty" tf:"-"` // An autoscale_settings block as defined below. + // +kubebuilder:validation:Optional AutoscaleSettings []GremlinDatabaseAutoscaleSettingsParameters `json:"autoscaleSettings,omitempty" tf:"autoscale_settings,omitempty"` // The name of the resource group in which the Cosmos DB Gremlin Database is created. Changing this forces a new resource to be created. @@ -90,6 +92,7 @@ type GremlinDatabaseParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The throughput of the Gremlin database (RU/s). Must be set in increments of 100. The minimum value is 400. + // +kubebuilder:validation:Optional Throughput *float64 `json:"throughput,omitempty" tf:"throughput,omitempty"` } diff --git a/apis/cosmosdb/v1beta1/zz_gremlingraph_types.go b/apis/cosmosdb/v1beta1/zz_gremlingraph_types.go index d9cb8d2c2..f4518ee09 100755 --- a/apis/cosmosdb/v1beta1/zz_gremlingraph_types.go +++ b/apis/cosmosdb/v1beta1/zz_gremlingraph_types.go @@ -28,6 +28,7 @@ type CompositeIndexObservation struct { type CompositeIndexParameters struct { // One or more index blocks as defined below. + // +kubebuilder:validation:Optional Index []IndexParameters `json:"index,omitempty" tf:"index,omitempty"` } @@ -58,12 +59,15 @@ type ConflictResolutionPolicyObservation struct { type ConflictResolutionPolicyParameters struct { // The conflict resolution path in the case of LastWriterWins mode. + // +kubebuilder:validation:Optional ConflictResolutionPath *string `json:"conflictResolutionPath,omitempty" tf:"conflict_resolution_path,omitempty"` // The procedure to resolve conflicts in the case of custom mode. + // +kubebuilder:validation:Optional ConflictResolutionProcedure *string `json:"conflictResolutionProcedure,omitempty" tf:"conflict_resolution_procedure,omitempty"` // Indicates the conflict resolution mode. Possible values include: LastWriterWins, Custom. + // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` } @@ -82,6 +86,7 @@ type GremlinGraphAutoscaleSettingsObservation struct { type GremlinGraphAutoscaleSettingsParameters struct { // The maximum throughput of the Gremlin graph (RU/s). Must be between 1,000 and 1,000,000. Must be set in increments of 1,000. Conflicts with throughput. + // +kubebuilder:validation:Optional MaxThroughput *float64 `json:"maxThroughput,omitempty" tf:"max_throughput,omitempty"` } @@ -167,9 +172,11 @@ type GremlinGraphParameters struct { AccountNameSelector *v1.Selector `json:"accountNameSelector,omitempty" tf:"-"` // An autoscale_settings block as defined below. Requires partition_key_path to be set. + // +kubebuilder:validation:Optional AutoscaleSettings []GremlinGraphAutoscaleSettingsParameters `json:"autoscaleSettings,omitempty" tf:"autoscale_settings,omitempty"` // A conflict_resolution_policy blocks as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ConflictResolutionPolicy []ConflictResolutionPolicyParameters `json:"conflictResolutionPolicy,omitempty" tf:"conflict_resolution_policy,omitempty"` // The name of the Cosmos DB Graph Database in which the Cosmos DB Gremlin Graph is created. Changing this forces a new resource to be created. @@ -186,15 +193,19 @@ type GremlinGraphParameters struct { DatabaseNameSelector *v1.Selector `json:"databaseNameSelector,omitempty" tf:"-"` // The default time to live (TTL) of the Gremlin graph. If the value is missing or set to "-1", items don’t expire. + // +kubebuilder:validation:Optional DefaultTTL *float64 `json:"defaultTtl,omitempty" tf:"default_ttl,omitempty"` // The configuration of the indexing policy. One or more index_policy blocks as defined below. + // +kubebuilder:validation:Optional IndexPolicy []IndexPolicyParameters `json:"indexPolicy,omitempty" tf:"index_policy,omitempty"` // Define a partition key. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PartitionKeyPath *string `json:"partitionKeyPath,omitempty" tf:"partition_key_path,omitempty"` // Define a partition key version. Changing this forces a new resource to be created. Possible values are 1and 2. This should be set to 2 in order to use large partition keys. + // +kubebuilder:validation:Optional PartitionKeyVersion *float64 `json:"partitionKeyVersion,omitempty" tf:"partition_key_version,omitempty"` // The name of the resource group in which the Cosmos DB Gremlin Graph is created. Changing this forces a new resource to be created. @@ -211,9 +222,11 @@ type GremlinGraphParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The throughput of the Gremlin graph (RU/s). Must be set in increments of 100. The minimum value is 400. + // +kubebuilder:validation:Optional Throughput *float64 `json:"throughput,omitempty" tf:"throughput,omitempty"` // One or more unique_key blocks as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional UniqueKey []UniqueKeyParameters `json:"uniqueKey,omitempty" tf:"unique_key,omitempty"` } @@ -238,9 +251,11 @@ type IndexObservation struct { type IndexParameters struct { // Order of the index. Possible values are Ascending or Descending. + // +kubebuilder:validation:Optional Order *string `json:"order,omitempty" tf:"order,omitempty"` // Path for which the indexing behaviour applies to. According to the service design, all spatial types including LineString, MultiPolygon, Point, and Polygon will be applied to the path. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` } @@ -289,21 +304,27 @@ type IndexPolicyObservation struct { type IndexPolicyParameters struct { // Indicates if the indexing policy is automatic. Defaults to true. + // +kubebuilder:validation:Optional Automatic *bool `json:"automatic,omitempty" tf:"automatic,omitempty"` // One or more composite_index blocks as defined below. + // +kubebuilder:validation:Optional CompositeIndex []CompositeIndexParameters `json:"compositeIndex,omitempty" tf:"composite_index,omitempty"` // List of paths to exclude from indexing. Required if indexing_mode is Consistent or Lazy. + // +kubebuilder:validation:Optional ExcludedPaths []*string `json:"excludedPaths,omitempty" tf:"excluded_paths,omitempty"` // List of paths to include in the indexing. Required if indexing_mode is Consistent or Lazy. + // +kubebuilder:validation:Optional IncludedPaths []*string `json:"includedPaths,omitempty" tf:"included_paths,omitempty"` // Indicates the indexing mode. Possible values include: Consistent, Lazy, None. + // +kubebuilder:validation:Optional IndexingMode *string `json:"indexingMode,omitempty" tf:"indexing_mode,omitempty"` // One or more spatial_index blocks as defined below. + // +kubebuilder:validation:Optional SpatialIndex []SpatialIndexParameters `json:"spatialIndex,omitempty" tf:"spatial_index,omitempty"` } @@ -324,6 +345,7 @@ type SpatialIndexObservation struct { type SpatialIndexParameters struct { // Path for which the indexing behaviour applies to. According to the service design, all spatial types including LineString, MultiPolygon, Point, and Polygon will be applied to the path. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` } @@ -342,6 +364,7 @@ type UniqueKeyObservation struct { type UniqueKeyParameters struct { // A list of paths to use for this unique key. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Paths []*string `json:"paths,omitempty" tf:"paths,omitempty"` } diff --git a/apis/cosmosdb/v1beta1/zz_mongocollection_types.go b/apis/cosmosdb/v1beta1/zz_mongocollection_types.go index 2c1f65515..d2c609cb9 100755 --- a/apis/cosmosdb/v1beta1/zz_mongocollection_types.go +++ b/apis/cosmosdb/v1beta1/zz_mongocollection_types.go @@ -28,6 +28,7 @@ type MongoCollectionAutoscaleSettingsObservation struct { type MongoCollectionAutoscaleSettingsParameters struct { // The maximum throughput of the MongoDB collection (RU/s). Must be between 1,000 and 1,000,000. Must be set in increments of 1,000. Conflicts with throughput. + // +kubebuilder:validation:Optional MaxThroughput *float64 `json:"maxThroughput,omitempty" tf:"max_throughput,omitempty"` } @@ -52,9 +53,11 @@ type MongoCollectionIndexObservation struct { type MongoCollectionIndexParameters struct { // Specifies the list of user settable keys for each Cosmos DB Mongo Collection. + // +kubebuilder:validation:Optional Keys []*string `json:"keys,omitempty" tf:"keys,omitempty"` // Is the index unique or not? Defaults to false. + // +kubebuilder:validation:Optional Unique *bool `json:"unique,omitempty" tf:"unique,omitempty"` } @@ -131,9 +134,11 @@ type MongoCollectionParameters struct { AccountNameSelector *v1.Selector `json:"accountNameSelector,omitempty" tf:"-"` // The default time to live of Analytical Storage for this Mongo Collection. If present and the value is set to -1, it is equal to infinity, and items don’t expire by default. If present and the value is set to some number n – items will expire n seconds after their last modified time. + // +kubebuilder:validation:Optional AnalyticalStorageTTL *float64 `json:"analyticalStorageTtl,omitempty" tf:"analytical_storage_ttl,omitempty"` // An autoscale_settings block as defined below. + // +kubebuilder:validation:Optional AutoscaleSettings []MongoCollectionAutoscaleSettingsParameters `json:"autoscaleSettings,omitempty" tf:"autoscale_settings,omitempty"` // The name of the Cosmos DB Mongo Database in which the Cosmos DB Mongo Collection is created. Changing this forces a new resource to be created. @@ -150,9 +155,11 @@ type MongoCollectionParameters struct { DatabaseNameSelector *v1.Selector `json:"databaseNameSelector,omitempty" tf:"-"` // The default Time To Live in seconds. If the value is -1, items are not automatically expired. + // +kubebuilder:validation:Optional DefaultTTLSeconds *float64 `json:"defaultTtlSeconds,omitempty" tf:"default_ttl_seconds,omitempty"` // One or more index blocks as defined below. + // +kubebuilder:validation:Optional Index []MongoCollectionIndexParameters `json:"index,omitempty" tf:"index,omitempty"` // The name of the resource group in which the Cosmos DB Mongo Collection is created. Changing this forces a new resource to be created. @@ -169,9 +176,11 @@ type MongoCollectionParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The name of the key to partition on for sharding. There must not be any other unique index keys. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ShardKey *string `json:"shardKey,omitempty" tf:"shard_key,omitempty"` // The throughput of the MongoDB collection (RU/s). Must be set in increments of 100. The minimum value is 400. + // +kubebuilder:validation:Optional Throughput *float64 `json:"throughput,omitempty" tf:"throughput,omitempty"` } diff --git a/apis/cosmosdb/v1beta1/zz_mongodatabase_types.go b/apis/cosmosdb/v1beta1/zz_mongodatabase_types.go index 633443dd4..fb23e672f 100755 --- a/apis/cosmosdb/v1beta1/zz_mongodatabase_types.go +++ b/apis/cosmosdb/v1beta1/zz_mongodatabase_types.go @@ -28,6 +28,7 @@ type MongoDatabaseAutoscaleSettingsObservation struct { type MongoDatabaseAutoscaleSettingsParameters struct { // The maximum throughput of the MongoDB database (RU/s). Must be between 1,000 and 1,000,000. Must be set in increments of 1,000. Conflicts with throughput. + // +kubebuilder:validation:Optional MaxThroughput *float64 `json:"maxThroughput,omitempty" tf:"max_throughput,omitempty"` } @@ -74,6 +75,7 @@ type MongoDatabaseParameters struct { AccountNameSelector *v1.Selector `json:"accountNameSelector,omitempty" tf:"-"` // An autoscale_settings block as defined below. + // +kubebuilder:validation:Optional AutoscaleSettings []MongoDatabaseAutoscaleSettingsParameters `json:"autoscaleSettings,omitempty" tf:"autoscale_settings,omitempty"` // The name of the resource group in which the Cosmos DB Mongo Database is created. Changing this forces a new resource to be created. @@ -90,6 +92,7 @@ type MongoDatabaseParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The throughput of the MongoDB database (RU/s). Must be set in increments of 100. The minimum value is 400. + // +kubebuilder:validation:Optional Throughput *float64 `json:"throughput,omitempty" tf:"throughput,omitempty"` } diff --git a/apis/cosmosdb/v1beta1/zz_sqlcontainer_types.go b/apis/cosmosdb/v1beta1/zz_sqlcontainer_types.go index 29ca61cb8..8554b21a7 100755 --- a/apis/cosmosdb/v1beta1/zz_sqlcontainer_types.go +++ b/apis/cosmosdb/v1beta1/zz_sqlcontainer_types.go @@ -34,9 +34,11 @@ type CompositeIndexIndexObservation struct { type CompositeIndexIndexParameters struct { // Order of the index. Possible values are Ascending or Descending. + // +kubebuilder:validation:Optional Order *string `json:"order,omitempty" tf:"order,omitempty"` // Path for which the indexing behaviour applies to. According to the service design, all spatial types including LineString, MultiPolygon, Point, and Polygon will be applied to the path. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` } @@ -55,6 +57,7 @@ type ExcludedPathObservation struct { type ExcludedPathParameters struct { // Path for which the indexing behaviour applies to. According to the service design, all spatial types including LineString, MultiPolygon, Point, and Polygon will be applied to the path. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` } @@ -73,6 +76,7 @@ type IncludedPathObservation struct { type IncludedPathParameters struct { // Path for which the indexing behaviour applies to. According to the service design, all spatial types including LineString, MultiPolygon, Point, and Polygon will be applied to the path. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` } @@ -91,6 +95,7 @@ type IndexingPolicyCompositeIndexObservation struct { type IndexingPolicyCompositeIndexParameters struct { // One or more index blocks as defined below. + // +kubebuilder:validation:Optional Index []CompositeIndexIndexParameters `json:"index,omitempty" tf:"index,omitempty"` } @@ -133,18 +138,23 @@ type IndexingPolicyObservation struct { type IndexingPolicyParameters struct { // One or more composite_index blocks as defined below. + // +kubebuilder:validation:Optional CompositeIndex []IndexingPolicyCompositeIndexParameters `json:"compositeIndex,omitempty" tf:"composite_index,omitempty"` // One or more excluded_path blocks as defined below. Either included_path or excluded_path must contain the path /* + // +kubebuilder:validation:Optional ExcludedPath []ExcludedPathParameters `json:"excludedPath,omitempty" tf:"excluded_path,omitempty"` // One or more included_path blocks as defined below. Either included_path or excluded_path must contain the path /* + // +kubebuilder:validation:Optional IncludedPath []IncludedPathParameters `json:"includedPath,omitempty" tf:"included_path,omitempty"` // Indicates the indexing mode. Possible values include: consistent and none. Defaults to consistent. + // +kubebuilder:validation:Optional IndexingMode *string `json:"indexingMode,omitempty" tf:"indexing_mode,omitempty"` // One or more spatial_index blocks as defined below. + // +kubebuilder:validation:Optional SpatialIndex []IndexingPolicySpatialIndexParameters `json:"spatialIndex,omitempty" tf:"spatial_index,omitempty"` } @@ -166,6 +176,7 @@ type IndexingPolicySpatialIndexObservation struct { type IndexingPolicySpatialIndexParameters struct { // Path for which the indexing behaviour applies to. According to the service design, all spatial types including LineString, MultiPolygon, Point, and Polygon will be applied to the path. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` } @@ -184,6 +195,7 @@ type SQLContainerAutoscaleSettingsObservation struct { type SQLContainerAutoscaleSettingsParameters struct { // The maximum throughput of the SQL container (RU/s). Must be between 1,000 and 1,000,000. Must be set in increments of 1,000. Conflicts with throughput. + // +kubebuilder:validation:Optional MaxThroughput *float64 `json:"maxThroughput,omitempty" tf:"max_throughput,omitempty"` } @@ -214,12 +226,15 @@ type SQLContainerConflictResolutionPolicyObservation struct { type SQLContainerConflictResolutionPolicyParameters struct { // The conflict resolution path in the case of LastWriterWins mode. + // +kubebuilder:validation:Optional ConflictResolutionPath *string `json:"conflictResolutionPath,omitempty" tf:"conflict_resolution_path,omitempty"` // The procedure to resolve conflicts in the case of Custom mode. + // +kubebuilder:validation:Optional ConflictResolutionProcedure *string `json:"conflictResolutionProcedure,omitempty" tf:"conflict_resolution_procedure,omitempty"` // Indicates the conflict resolution mode. Possible values include: LastWriterWins, Custom. + // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` } @@ -311,12 +326,15 @@ type SQLContainerParameters struct { AccountNameSelector *v1.Selector `json:"accountNameSelector,omitempty" tf:"-"` // The default time to live of Analytical Storage for this SQL container. If present and the value is set to -1, it is equal to infinity, and items don’t expire by default. If present and the value is set to some number n – items will expire n seconds after their last modified time. + // +kubebuilder:validation:Optional AnalyticalStorageTTL *float64 `json:"analyticalStorageTtl,omitempty" tf:"analytical_storage_ttl,omitempty"` // An autoscale_settings block as defined below. Requires partition_key_path to be set. + // +kubebuilder:validation:Optional AutoscaleSettings []SQLContainerAutoscaleSettingsParameters `json:"autoscaleSettings,omitempty" tf:"autoscale_settings,omitempty"` // A conflict_resolution_policy blocks as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ConflictResolutionPolicy []SQLContainerConflictResolutionPolicyParameters `json:"conflictResolutionPolicy,omitempty" tf:"conflict_resolution_policy,omitempty"` // The name of the Cosmos DB SQL Database to create the container within. Changing this forces a new resource to be created. @@ -333,15 +351,19 @@ type SQLContainerParameters struct { DatabaseNameSelector *v1.Selector `json:"databaseNameSelector,omitempty" tf:"-"` // The default time to live of SQL container. If missing, items are not expired automatically. If present and the value is set to -1, it is equal to infinity, and items don’t expire by default. If present and the value is set to some number n – items will expire n seconds after their last modified time. + // +kubebuilder:validation:Optional DefaultTTL *float64 `json:"defaultTtl,omitempty" tf:"default_ttl,omitempty"` // An indexing_policy block as defined below. + // +kubebuilder:validation:Optional IndexingPolicy []IndexingPolicyParameters `json:"indexingPolicy,omitempty" tf:"indexing_policy,omitempty"` // Define a partition key. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PartitionKeyPath *string `json:"partitionKeyPath,omitempty" tf:"partition_key_path,omitempty"` // Define a partition key version. Changing this forces a new resource to be created. Possible values are 1and 2. This should be set to 2 in order to use large partition keys. + // +kubebuilder:validation:Optional PartitionKeyVersion *float64 `json:"partitionKeyVersion,omitempty" tf:"partition_key_version,omitempty"` // The name of the resource group in which the Cosmos DB SQL Container is created. Changing this forces a new resource to be created. @@ -358,9 +380,11 @@ type SQLContainerParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The throughput of SQL container (RU/s). Must be set in increments of 100. The minimum value is 400. + // +kubebuilder:validation:Optional Throughput *float64 `json:"throughput,omitempty" tf:"throughput,omitempty"` // One or more unique_key blocks as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional UniqueKey []SQLContainerUniqueKeyParameters `json:"uniqueKey,omitempty" tf:"unique_key,omitempty"` } @@ -379,6 +403,7 @@ type SQLContainerUniqueKeyObservation struct { type SQLContainerUniqueKeyParameters struct { // A list of paths to use for this unique key. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Paths []*string `json:"paths,omitempty" tf:"paths,omitempty"` } diff --git a/apis/cosmosdb/v1beta1/zz_sqldatabase_types.go b/apis/cosmosdb/v1beta1/zz_sqldatabase_types.go index 02ecfc515..9cd3a9736 100755 --- a/apis/cosmosdb/v1beta1/zz_sqldatabase_types.go +++ b/apis/cosmosdb/v1beta1/zz_sqldatabase_types.go @@ -28,6 +28,7 @@ type SQLDatabaseAutoscaleSettingsObservation struct { type SQLDatabaseAutoscaleSettingsParameters struct { // The maximum throughput of the SQL database (RU/s). Must be between 1,000 and 1,000,000. Must be set in increments of 1,000. Conflicts with throughput. + // +kubebuilder:validation:Optional MaxThroughput *float64 `json:"maxThroughput,omitempty" tf:"max_throughput,omitempty"` } @@ -74,6 +75,7 @@ type SQLDatabaseParameters struct { AccountNameSelector *v1.Selector `json:"accountNameSelector,omitempty" tf:"-"` // An autoscale_settings block as defined below. + // +kubebuilder:validation:Optional AutoscaleSettings []SQLDatabaseAutoscaleSettingsParameters `json:"autoscaleSettings,omitempty" tf:"autoscale_settings,omitempty"` // The name of the resource group in which the Cosmos DB SQL Database is created. Changing this forces a new resource to be created. @@ -90,6 +92,7 @@ type SQLDatabaseParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The throughput of SQL database (RU/s). Must be set in increments of 100. The minimum value is 400. Do not set when azurerm_cosmosdb_account is configured with EnableServerless capability. + // +kubebuilder:validation:Optional Throughput *float64 `json:"throughput,omitempty" tf:"throughput,omitempty"` } diff --git a/apis/cosmosdb/v1beta1/zz_sqldedicatedgateway_types.go b/apis/cosmosdb/v1beta1/zz_sqldedicatedgateway_types.go index d0fdfa1f0..09eff6dc2 100755 --- a/apis/cosmosdb/v1beta1/zz_sqldedicatedgateway_types.go +++ b/apis/cosmosdb/v1beta1/zz_sqldedicatedgateway_types.go @@ -54,9 +54,11 @@ type SQLDedicatedGatewayParameters struct { CosmosDBAccountIDSelector *v1.Selector `json:"cosmosdbAccountIdSelector,omitempty" tf:"-"` // The instance count for the CosmosDB SQL Dedicated Gateway. Possible value is between 1 and 5. + // +kubebuilder:validation:Optional InstanceCount *float64 `json:"instanceCount,omitempty" tf:"instance_count,omitempty"` // The instance size for the CosmosDB SQL Dedicated Gateway. Changing this forces a new resource to be created. Possible values are Cosmos.D4s, Cosmos.D8s and Cosmos.D16s. + // +kubebuilder:validation:Optional InstanceSize *string `json:"instanceSize,omitempty" tf:"instance_size,omitempty"` } diff --git a/apis/cosmosdb/v1beta1/zz_sqlfunction_types.go b/apis/cosmosdb/v1beta1/zz_sqlfunction_types.go index 9eea305ae..72d74911a 100755 --- a/apis/cosmosdb/v1beta1/zz_sqlfunction_types.go +++ b/apis/cosmosdb/v1beta1/zz_sqlfunction_types.go @@ -34,6 +34,7 @@ type SQLFunctionObservation struct { type SQLFunctionParameters struct { // Body of the User Defined Function. + // +kubebuilder:validation:Optional Body *string `json:"body,omitempty" tf:"body,omitempty"` // The id of the Cosmos DB SQL Container to create the SQL User Defined Function within. Changing this forces a new SQL User Defined Function to be created. diff --git a/apis/cosmosdb/v1beta1/zz_sqlroleassignment_types.go b/apis/cosmosdb/v1beta1/zz_sqlroleassignment_types.go index 6b6e44310..9b63e9898 100755 --- a/apis/cosmosdb/v1beta1/zz_sqlroleassignment_types.go +++ b/apis/cosmosdb/v1beta1/zz_sqlroleassignment_types.go @@ -62,9 +62,11 @@ type SQLRoleAssignmentParameters struct { AccountNameSelector *v1.Selector `json:"accountNameSelector,omitempty" tf:"-"` // The GUID as the name of the Cosmos DB SQL Role Assignment - one will be generated if not specified. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID of the Principal (Client) in Azure Active Directory. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PrincipalID *string `json:"principalId,omitempty" tf:"principal_id,omitempty"` // The name of the Resource Group in which the Cosmos DB SQL Role Assignment is created. Changing this forces a new resource to be created. diff --git a/apis/cosmosdb/v1beta1/zz_sqlroledefinition_types.go b/apis/cosmosdb/v1beta1/zz_sqlroledefinition_types.go index 5600933f7..7662cc27e 100755 --- a/apis/cosmosdb/v1beta1/zz_sqlroledefinition_types.go +++ b/apis/cosmosdb/v1beta1/zz_sqlroledefinition_types.go @@ -28,6 +28,7 @@ type PermissionsObservation struct { type PermissionsParameters struct { // A list of data actions that are allowed for the Cosmos DB SQL Role Definition. + // +kubebuilder:validation:Optional DataActions []*string `json:"dataActions,omitempty" tf:"data_actions,omitempty"` } @@ -92,12 +93,15 @@ type SQLRoleDefinitionParameters struct { AccountNameSelector *v1.Selector `json:"accountNameSelector,omitempty" tf:"-"` // A list of fully qualified scopes at or below which Role Assignments may be created using this Cosmos DB SQL Role Definition. It will allow application of this Cosmos DB SQL Role Definition on the entire Database Account or any underlying Database/Collection. Scopes higher than Database Account are not enforceable as assignable scopes. + // +kubebuilder:validation:Optional AssignableScopes []*string `json:"assignableScopes,omitempty" tf:"assignable_scopes,omitempty"` // An user-friendly name for the Cosmos DB SQL Role Definition which must be unique for the Database Account. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A permissions block as defined below. + // +kubebuilder:validation:Optional Permissions []PermissionsParameters `json:"permissions,omitempty" tf:"permissions,omitempty"` // The name of the Resource Group in which the Cosmos DB SQL Role Definition is created. Changing this forces a new resource to be created. @@ -114,9 +118,11 @@ type SQLRoleDefinitionParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The GUID as the name of the Cosmos DB SQL Role Definition - one will be generated if not specified. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional RoleDefinitionID *string `json:"roleDefinitionId,omitempty" tf:"role_definition_id,omitempty"` // The type of the Cosmos DB SQL Role Definition. Possible values are BuiltInRole and CustomRole. Defaults to CustomRole. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/cosmosdb/v1beta1/zz_sqlstoredprocedure_types.go b/apis/cosmosdb/v1beta1/zz_sqlstoredprocedure_types.go index 6321dd751..501221181 100755 --- a/apis/cosmosdb/v1beta1/zz_sqlstoredprocedure_types.go +++ b/apis/cosmosdb/v1beta1/zz_sqlstoredprocedure_types.go @@ -56,6 +56,7 @@ type SQLStoredProcedureParameters struct { AccountNameSelector *v1.Selector `json:"accountNameSelector,omitempty" tf:"-"` // The body of the stored procedure. + // +kubebuilder:validation:Optional Body *string `json:"body,omitempty" tf:"body,omitempty"` // The name of the Cosmos DB SQL Container to create the stored procedure within. Changing this forces a new resource to be created. diff --git a/apis/cosmosdb/v1beta1/zz_sqltrigger_types.go b/apis/cosmosdb/v1beta1/zz_sqltrigger_types.go index d6e834f00..f90346f7d 100755 --- a/apis/cosmosdb/v1beta1/zz_sqltrigger_types.go +++ b/apis/cosmosdb/v1beta1/zz_sqltrigger_types.go @@ -46,6 +46,7 @@ type SQLTriggerObservation struct { type SQLTriggerParameters struct { // Body of the Trigger. + // +kubebuilder:validation:Optional Body *string `json:"body,omitempty" tf:"body,omitempty"` // The id of the Cosmos DB SQL Container to create the SQL Trigger within. Changing this forces a new SQL Trigger to be created. @@ -63,9 +64,11 @@ type SQLTriggerParameters struct { ContainerIDSelector *v1.Selector `json:"containerIdSelector,omitempty" tf:"-"` // The operation the trigger is associated with. Possible values are All, Create, Update, Delete and Replace. + // +kubebuilder:validation:Optional Operation *string `json:"operation,omitempty" tf:"operation,omitempty"` // Type of the Trigger. Possible values are Pre and Post. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/cosmosdb/v1beta1/zz_table_types.go b/apis/cosmosdb/v1beta1/zz_table_types.go index dbfd64ef7..058e0db66 100755 --- a/apis/cosmosdb/v1beta1/zz_table_types.go +++ b/apis/cosmosdb/v1beta1/zz_table_types.go @@ -28,6 +28,7 @@ type TableAutoscaleSettingsObservation struct { type TableAutoscaleSettingsParameters struct { // The maximum throughput of the Table (RU/s). Must be between 1,000 and 1,000,000. Must be set in increments of 1,000. Conflicts with throughput. + // +kubebuilder:validation:Optional MaxThroughput *float64 `json:"maxThroughput,omitempty" tf:"max_throughput,omitempty"` } @@ -74,6 +75,7 @@ type TableParameters struct { AccountNameSelector *v1.Selector `json:"accountNameSelector,omitempty" tf:"-"` // An autoscale_settings block as defined below. + // +kubebuilder:validation:Optional AutoscaleSettings []TableAutoscaleSettingsParameters `json:"autoscaleSettings,omitempty" tf:"autoscale_settings,omitempty"` // The name of the resource group in which the Cosmos DB Table is created. Changing this forces a new resource to be created. @@ -90,6 +92,7 @@ type TableParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The throughput of Table (RU/s). Must be set in increments of 100. The minimum value is 400. + // +kubebuilder:validation:Optional Throughput *float64 `json:"throughput,omitempty" tf:"throughput,omitempty"` } diff --git a/apis/costmanagement/v1beta1/zz_costanomalyalert_types.go b/apis/costmanagement/v1beta1/zz_costanomalyalert_types.go index 70073dd0d..a5d046484 100755 --- a/apis/costmanagement/v1beta1/zz_costanomalyalert_types.go +++ b/apis/costmanagement/v1beta1/zz_costanomalyalert_types.go @@ -49,15 +49,19 @@ type CostAnomalyAlertObservation struct { type CostAnomalyAlertParameters struct { // The display name which should be used for this Cost Anomaly Alert. + // +kubebuilder:validation:Optional DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` // Specifies a list of email addresses which the Anomaly Alerts are send to. + // +kubebuilder:validation:Optional EmailAddresses []*string `json:"emailAddresses,omitempty" tf:"email_addresses,omitempty"` // The email subject of the Cost Anomaly Alerts. Maximum length of the subject is 70. + // +kubebuilder:validation:Optional EmailSubject *string `json:"emailSubject,omitempty" tf:"email_subject,omitempty"` // The message of the Cost Anomaly Alert. Maximum length of the message is 250. + // +kubebuilder:validation:Optional Message *string `json:"message,omitempty" tf:"message,omitempty"` } diff --git a/apis/costmanagement/v1beta1/zz_resourcegroupcostmanagementexport_types.go b/apis/costmanagement/v1beta1/zz_resourcegroupcostmanagementexport_types.go index d9d51fc50..fda51c88f 100755 --- a/apis/costmanagement/v1beta1/zz_resourcegroupcostmanagementexport_types.go +++ b/apis/costmanagement/v1beta1/zz_resourcegroupcostmanagementexport_types.go @@ -34,9 +34,11 @@ type ExportDataOptionsObservation struct { type ExportDataOptionsParameters struct { // The time frame for pulling data for the query. If custom, then a specific time period must be provided. Possible values include: WeekToDate, MonthToDate, BillingMonthToDate, TheLast7Days, TheLastMonth, TheLastBillingMonth, Custom. + // +kubebuilder:validation:Optional TimeFrame *string `json:"timeFrame,omitempty" tf:"time_frame,omitempty"` // The type of the query. Possible values are ActualCost, AmortizedCost and Usage. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -72,6 +74,7 @@ type ExportDataStorageLocationParameters struct { ContainerIDSelector *v1.Selector `json:"containerIdSelector,omitempty" tf:"-"` // The path of the directory where exports will be uploaded. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional RootFolderPath *string `json:"rootFolderPath,omitempty" tf:"root_folder_path,omitempty"` } @@ -126,21 +129,27 @@ type ResourceGroupCostManagementExportObservation struct { type ResourceGroupCostManagementExportParameters struct { // Is the cost management export active? Default is true. + // +kubebuilder:validation:Optional Active *bool `json:"active,omitempty" tf:"active,omitempty"` // A export_data_options block as defined below. + // +kubebuilder:validation:Optional ExportDataOptions []ExportDataOptionsParameters `json:"exportDataOptions,omitempty" tf:"export_data_options,omitempty"` // A export_data_storage_location block as defined below. + // +kubebuilder:validation:Optional ExportDataStorageLocation []ExportDataStorageLocationParameters `json:"exportDataStorageLocation,omitempty" tf:"export_data_storage_location,omitempty"` // The date the export will stop capturing information. + // +kubebuilder:validation:Optional RecurrencePeriodEndDate *string `json:"recurrencePeriodEndDate,omitempty" tf:"recurrence_period_end_date,omitempty"` // The date the export will start capturing information. + // +kubebuilder:validation:Optional RecurrencePeriodStartDate *string `json:"recurrencePeriodStartDate,omitempty" tf:"recurrence_period_start_date,omitempty"` // How often the requested information will be exported. Valid values include Annually, Daily, Monthly, Weekly. + // +kubebuilder:validation:Optional RecurrenceType *string `json:"recurrenceType,omitempty" tf:"recurrence_type,omitempty"` // The id of the resource group on which to create an export. Changing this forces a new resource to be created. diff --git a/apis/costmanagement/v1beta1/zz_subscriptioncostmanagementexport_types.go b/apis/costmanagement/v1beta1/zz_subscriptioncostmanagementexport_types.go index 9620a0da6..aa7a0d88c 100755 --- a/apis/costmanagement/v1beta1/zz_subscriptioncostmanagementexport_types.go +++ b/apis/costmanagement/v1beta1/zz_subscriptioncostmanagementexport_types.go @@ -34,9 +34,11 @@ type SubscriptionCostManagementExportExportDataOptionsObservation struct { type SubscriptionCostManagementExportExportDataOptionsParameters struct { // The time frame for pulling data for the query. If custom, then a specific time period must be provided. Possible values include: WeekToDate, MonthToDate, BillingMonthToDate, TheLast7Days, TheLastMonth, TheLastBillingMonth, Custom. + // +kubebuilder:validation:Optional TimeFrame *string `json:"timeFrame,omitempty" tf:"time_frame,omitempty"` // The type of the query. Possible values are ActualCost, AmortizedCost and Usage. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -72,6 +74,7 @@ type SubscriptionCostManagementExportExportDataStorageLocationParameters struct ContainerIDSelector *v1.Selector `json:"containerIdSelector,omitempty" tf:"-"` // The path of the directory where exports will be uploaded. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional RootFolderPath *string `json:"rootFolderPath,omitempty" tf:"root_folder_path,omitempty"` } @@ -132,24 +135,31 @@ type SubscriptionCostManagementExportObservation struct { type SubscriptionCostManagementExportParameters struct { // Is the cost management export active? Default is true. + // +kubebuilder:validation:Optional Active *bool `json:"active,omitempty" tf:"active,omitempty"` // A export_data_options block as defined below. + // +kubebuilder:validation:Optional ExportDataOptions []SubscriptionCostManagementExportExportDataOptionsParameters `json:"exportDataOptions,omitempty" tf:"export_data_options,omitempty"` // A export_data_storage_location block as defined below. + // +kubebuilder:validation:Optional ExportDataStorageLocation []SubscriptionCostManagementExportExportDataStorageLocationParameters `json:"exportDataStorageLocation,omitempty" tf:"export_data_storage_location,omitempty"` // Specifies the name of the Cost Management Export. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The date the export will stop capturing information. + // +kubebuilder:validation:Optional RecurrencePeriodEndDate *string `json:"recurrencePeriodEndDate,omitempty" tf:"recurrence_period_end_date,omitempty"` // The date the export will start capturing information. + // +kubebuilder:validation:Optional RecurrencePeriodStartDate *string `json:"recurrencePeriodStartDate,omitempty" tf:"recurrence_period_start_date,omitempty"` // How often the requested information will be exported. Valid values include Annually, Daily, Monthly, Weekly. + // +kubebuilder:validation:Optional RecurrenceType *string `json:"recurrenceType,omitempty" tf:"recurrence_type,omitempty"` // The id of the subscription on which to create an export. Changing this forces a new resource to be created. diff --git a/apis/customproviders/v1beta1/zz_customprovider_types.go b/apis/customproviders/v1beta1/zz_customprovider_types.go index e99ed1062..1df0231cf 100755 --- a/apis/customproviders/v1beta1/zz_customprovider_types.go +++ b/apis/customproviders/v1beta1/zz_customprovider_types.go @@ -34,9 +34,11 @@ type ActionObservation struct { type ActionParameters struct { // Specifies the endpoint of the action. + // +kubebuilder:validation:Optional Endpoint *string `json:"endpoint,omitempty" tf:"endpoint,omitempty"` // Specifies the name of the action. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -85,9 +87,11 @@ type CustomProviderObservation struct { type CustomProviderParameters struct { // Any number of action block as defined below. One of resource_type or action must be specified. + // +kubebuilder:validation:Optional Action []ActionParameters `json:"action,omitempty" tf:"action,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the resource group in which to create the Custom Provider. Changing this forces a new resource to be created. @@ -104,12 +108,15 @@ type CustomProviderParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Any number of resource_type block as defined below. One of resource_type or action must be specified. + // +kubebuilder:validation:Optional ResourceType []ResourceTypeParameters `json:"resourceType,omitempty" tf:"resource_type,omitempty"` // A mapping of tags to assign to the resource. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Any number of validation block as defined below. + // +kubebuilder:validation:Optional Validation []ValidationParameters `json:"validation,omitempty" tf:"validation,omitempty"` } @@ -140,12 +147,15 @@ type ResourceTypeObservation struct { type ResourceTypeParameters struct { // Specifies the endpoint of the route definition. + // +kubebuilder:validation:Optional Endpoint *string `json:"endpoint,omitempty" tf:"endpoint,omitempty"` // Specifies the name of the route definition. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The routing type that is supported for the resource request. Valid values are Proxy and Proxy,Cache. This value defaults to ResourceTypeRoutingProxy. + // +kubebuilder:validation:Optional RoutingType *string `json:"routingType,omitempty" tf:"routing_type,omitempty"` } @@ -164,6 +174,7 @@ type ValidationObservation struct { type ValidationParameters struct { // The endpoint where the validation specification is located. + // +kubebuilder:validation:Optional Specification *string `json:"specification,omitempty" tf:"specification,omitempty"` } diff --git a/apis/databoxedge/v1beta1/zz_device_types.go b/apis/databoxedge/v1beta1/zz_device_types.go index 09c62ce98..675a67239 100755 --- a/apis/databoxedge/v1beta1/zz_device_types.go +++ b/apis/databoxedge/v1beta1/zz_device_types.go @@ -49,6 +49,7 @@ type DeviceObservation struct { type DeviceParameters struct { // The Azure Region where the Databox Edge Device should exist. Changing this forces a new Databox Edge Device to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the Resource Group where the Databox Edge Device should exist. Changing this forces a new Databox Edge Device to be created. @@ -65,9 +66,11 @@ type DeviceParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The sku_name is comprised of two segments separated by a hyphen (e.g. TEA_1Node_UPS_Heater-Standard). The first segment of the sku_name defines the name of the SKU, possible values are Gateway, EdgeMR_Mini, EdgeP_Base, EdgeP_High, EdgePR_Base, EdgePR_Base_UPS, GPU, RCA_Large, RCA_Small, RDC, TCA_Large, TCA_Small, TDC, TEA_1Node, TEA_1Node_UPS, TEA_1Node_Heater, TEA_1Node_UPS_Heater, TEA_4Node_Heater, TEA_4Node_UPS_Heater or TMA. The second segment defines the tier of the sku_name, possible values are Standard. For more information see the product documentation. Changing this forces a new Databox Edge Device to be created. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // A mapping of tags which should be assigned to the Databox Edge Device. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/databricks/v1beta1/zz_accessconnector_types.go b/apis/databricks/v1beta1/zz_accessconnector_types.go index b289e1f17..0e11f4be4 100755 --- a/apis/databricks/v1beta1/zz_accessconnector_types.go +++ b/apis/databricks/v1beta1/zz_accessconnector_types.go @@ -46,9 +46,11 @@ type AccessConnectorObservation struct { type AccessConnectorParameters struct { // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // Specifies the supported Azure location where the resource has to be created. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the Resource Group in which the Databricks Access Connector should exist. Changing this forces a new resource to be created. @@ -65,6 +67,7 @@ type AccessConnectorParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -95,9 +98,11 @@ type IdentityObservation struct { type IdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to the Databricks Access Connector. Only one User Assigned Managed Identity ID is supported per Databricks Access Connector resource. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on the Databricks Access Connector. Possible values include SystemAssigned or UserAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/databricks/v1beta1/zz_workspace_types.go b/apis/databricks/v1beta1/zz_workspace_types.go index d8d5d8a07..da1db432c 100755 --- a/apis/databricks/v1beta1/zz_workspace_types.go +++ b/apis/databricks/v1beta1/zz_workspace_types.go @@ -88,12 +88,15 @@ type CustomParametersObservation struct { type CustomParametersParameters struct { // The ID of a Azure Machine Learning workspace to link with Databricks workspace. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional MachineLearningWorkspaceID *string `json:"machineLearningWorkspaceId,omitempty" tf:"machine_learning_workspace_id,omitempty"` // Name of the NAT gateway for Secure Cluster Connectivity (No Public IP) workspace subnets. Defaults to nat-gateway. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NATGatewayName *string `json:"natGatewayName,omitempty" tf:"nat_gateway_name,omitempty"` // Are public IP Addresses not allowed? Possible values are true or false. Defaults to false. + // +kubebuilder:validation:Optional NoPublicIP *bool `json:"noPublicIp,omitempty" tf:"no_public_ip,omitempty"` // The name of the Private Subnet within the Virtual Network. Required if virtual_network_id is set. Changing this forces a new resource to be created. @@ -110,9 +113,11 @@ type CustomParametersParameters struct { PrivateSubnetNameSelector *v1.Selector `json:"privateSubnetNameSelector,omitempty" tf:"-"` // The resource ID of the azurerm_subnet_network_security_group_association resource which is referred to by the private_subnet_name field. This is the same as the ID of the subnet referred to by the private_subnet_name field. Required if virtual_network_id is set. + // +kubebuilder:validation:Optional PrivateSubnetNetworkSecurityGroupAssociationID *string `json:"privateSubnetNetworkSecurityGroupAssociationId,omitempty" tf:"private_subnet_network_security_group_association_id,omitempty"` // Name of the Public IP for No Public IP workspace with managed vNet. Defaults to nat-gw-public-ip. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PublicIPName *string `json:"publicIpName,omitempty" tf:"public_ip_name,omitempty"` // The name of the Public Subnet within the Virtual Network. Required if virtual_network_id is set. Changing this forces a new resource to be created. @@ -129,18 +134,23 @@ type CustomParametersParameters struct { PublicSubnetNameSelector *v1.Selector `json:"publicSubnetNameSelector,omitempty" tf:"-"` // The resource ID of the azurerm_subnet_network_security_group_association resource which is referred to by the public_subnet_name field. This is the same as the ID of the subnet referred to by the public_subnet_name field. Required if virtual_network_id is set. + // +kubebuilder:validation:Optional PublicSubnetNetworkSecurityGroupAssociationID *string `json:"publicSubnetNetworkSecurityGroupAssociationId,omitempty" tf:"public_subnet_network_security_group_association_id,omitempty"` // Default Databricks File Storage account name. Defaults to a randomized name(e.g. dbstoragel6mfeghoe5kxu). Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional StorageAccountName *string `json:"storageAccountName,omitempty" tf:"storage_account_name,omitempty"` // Storage account SKU name. Possible values include Standard_LRS, Standard_GRS, Standard_RAGRS, Standard_GZRS, Standard_RAGZRS, Standard_ZRS, Premium_LRS or Premium_ZRS. Defaults to Standard_GRS. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional StorageAccountSkuName *string `json:"storageAccountSkuName,omitempty" tf:"storage_account_sku_name,omitempty"` // The ID of a Virtual Network where this Databricks Cluster should be created. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` // Address prefix for Managed virtual network. Defaults to 10.139. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VnetAddressPrefix *string `json:"vnetAddressPrefix,omitempty" tf:"vnet_address_prefix,omitempty"` } @@ -288,24 +298,31 @@ type WorkspaceObservation struct { type WorkspaceParameters struct { // A custom_parameters block as documented below. + // +kubebuilder:validation:Optional CustomParameters []CustomParametersParameters `json:"customParameters,omitempty" tf:"custom_parameters,omitempty"` // Is the workspace enabled for customer managed key encryption? If true this enables the Managed Identity for the managed storage account. Possible values are true or false. Defaults to false. This field is only valid if the Databricks Workspace sku is set to premium. + // +kubebuilder:validation:Optional CustomerManagedKeyEnabled *bool `json:"customerManagedKeyEnabled,omitempty" tf:"customer_managed_key_enabled,omitempty"` // Is the Databricks File System root file system enabled with a secondary layer of encryption with platform managed keys? Possible values are true or false. Defaults to false. This field is only valid if the Databricks Workspace sku is set to premium. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional InfrastructureEncryptionEnabled *bool `json:"infrastructureEncryptionEnabled,omitempty" tf:"infrastructure_encryption_enabled,omitempty"` // Resource ID of the Outbound Load balancer Backend Address Pool for Secure Cluster Connectivity (No Public IP) workspace. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional LoadBalancerBackendAddressPoolID *string `json:"loadBalancerBackendAddressPoolId,omitempty" tf:"load_balancer_backend_address_pool_id,omitempty"` // Specifies the supported Azure location where the resource has to be created. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Customer managed encryption properties for the Databricks Workspace managed disks. + // +kubebuilder:validation:Optional ManagedDiskCmkKeyVaultKeyID *string `json:"managedDiskCmkKeyVaultKeyId,omitempty" tf:"managed_disk_cmk_key_vault_key_id,omitempty"` // Whether customer managed keys for disk encryption will automatically be rotated to the latest version. + // +kubebuilder:validation:Optional ManagedDiskCmkRotationToLatestVersionEnabled *bool `json:"managedDiskCmkRotationToLatestVersionEnabled,omitempty" tf:"managed_disk_cmk_rotation_to_latest_version_enabled,omitempty"` // The name of the resource group where Azure should place the managed Databricks resources. Changing this forces a new resource to be created. @@ -322,12 +339,15 @@ type WorkspaceParameters struct { ManagedResourceGroupNameSelector *v1.Selector `json:"managedResourceGroupNameSelector,omitempty" tf:"-"` // Customer managed encryption properties for the Databricks Workspace managed resources(e.g. Notebooks and Artifacts). + // +kubebuilder:validation:Optional ManagedServicesCmkKeyVaultKeyID *string `json:"managedServicesCmkKeyVaultKeyId,omitempty" tf:"managed_services_cmk_key_vault_key_id,omitempty"` // Does the data plane (clusters) to control plane communication happen over private link endpoint only or publicly? Possible values AllRules, NoAzureDatabricksRules or NoAzureServiceRules. Required when public_network_access_enabled is set to false. + // +kubebuilder:validation:Optional NetworkSecurityGroupRulesRequired *string `json:"networkSecurityGroupRulesRequired,omitempty" tf:"network_security_group_rules_required,omitempty"` // Allow public access for accessing workspace. Set value to false to access workspace only via private link endpoint. Possible values include true or false. Defaults to true. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // The name of the Resource Group in which the Databricks Workspace should exist. Changing this forces a new resource to be created. @@ -344,9 +364,11 @@ type WorkspaceParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The sku to use for the Databricks Workspace. Possible values are standard, premium, or trial. + // +kubebuilder:validation:Optional Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_customdataset_types.go b/apis/datafactory/v1beta1/zz_customdataset_types.go index b5ab8c795..c24bb3b2f 100755 --- a/apis/datafactory/v1beta1/zz_customdataset_types.go +++ b/apis/datafactory/v1beta1/zz_customdataset_types.go @@ -82,9 +82,11 @@ type CustomDataSetObservation struct { type CustomDataSetParameters struct { // A map of additional properties to associate with the Data Factory Dataset. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Dataset. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // The Data Factory ID in which to associate the Dataset with. Changing this forces a new resource. @@ -102,24 +104,31 @@ type CustomDataSetParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Dataset. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The folder that this Dataset is in. If not specified, the Dataset will appear at the root level. + // +kubebuilder:validation:Optional Folder *string `json:"folder,omitempty" tf:"folder,omitempty"` // A linked_service block as defined below. + // +kubebuilder:validation:Optional LinkedService []LinkedServiceParameters `json:"linkedService,omitempty" tf:"linked_service,omitempty"` // A map of parameters to associate with the Data Factory Dataset. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` // A JSON object that contains the schema of the Data Factory Dataset. + // +kubebuilder:validation:Optional SchemaJSON *string `json:"schemaJson,omitempty" tf:"schema_json,omitempty"` // The type of dataset that will be associated with Data Factory. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // A JSON object that contains the properties of the Data Factory Dataset. + // +kubebuilder:validation:Optional TypePropertiesJSON *string `json:"typePropertiesJson,omitempty" tf:"type_properties_json,omitempty"` } @@ -154,6 +163,7 @@ type LinkedServiceParameters struct { NameSelector *v1.Selector `json:"nameSelector,omitempty" tf:"-"` // A map of parameters to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_dataflow_types.go b/apis/datafactory/v1beta1/zz_dataflow_types.go index 7524cbd4e..e5fd9335a 100755 --- a/apis/datafactory/v1beta1/zz_dataflow_types.go +++ b/apis/datafactory/v1beta1/zz_dataflow_types.go @@ -76,6 +76,7 @@ type DataFlowObservation struct { type DataFlowParameters struct { // List of tags that can be used for describing the Data Factory Data Flow. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // The ID of Data Factory in which to associate the Data Flow with. Changing this forces a new resource. @@ -93,24 +94,31 @@ type DataFlowParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Data Flow. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The folder that this Data Flow is in. If not specified, the Data Flow will appear at the root level. + // +kubebuilder:validation:Optional Folder *string `json:"folder,omitempty" tf:"folder,omitempty"` // The script for the Data Factory Data Flow. + // +kubebuilder:validation:Optional Script *string `json:"script,omitempty" tf:"script,omitempty"` // The script lines for the Data Factory Data Flow. + // +kubebuilder:validation:Optional ScriptLines []*string `json:"scriptLines,omitempty" tf:"script_lines,omitempty"` // One or more sink blocks as defined below. + // +kubebuilder:validation:Optional Sink []SinkParameters `json:"sink,omitempty" tf:"sink,omitempty"` // One or more source blocks as defined below. + // +kubebuilder:validation:Optional Source []SourceParameters `json:"source,omitempty" tf:"source,omitempty"` // One or more transformation blocks as defined below. + // +kubebuilder:validation:Optional Transformation []TransformationParameters `json:"transformation,omitempty" tf:"transformation,omitempty"` } @@ -145,6 +153,7 @@ type DataSetParameters struct { NameSelector *v1.Selector `json:"nameSelector,omitempty" tf:"-"` // A map of parameters to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } @@ -175,12 +184,15 @@ type FlowletObservation struct { type FlowletParameters struct { // Specifies the reference data flow parameters from dataset. + // +kubebuilder:validation:Optional DataSetParameters *string `json:"datasetParameters,omitempty" tf:"dataset_parameters,omitempty"` // The name for the Data Flow transformation. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A map of parameters to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } @@ -205,9 +217,11 @@ type RejectedLinkedServiceObservation struct { type RejectedLinkedServiceParameters struct { // The name for the Data Flow transformation. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A map of parameters to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } @@ -232,9 +246,11 @@ type SchemaLinkedServiceObservation struct { type SchemaLinkedServiceParameters struct { // The name for the Data Flow transformation. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A map of parameters to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } @@ -283,9 +299,11 @@ type SinkLinkedServiceObservation struct { type SinkLinkedServiceParameters struct { // The name for the Data Flow transformation. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A map of parameters to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } @@ -316,24 +334,31 @@ type SinkObservation struct { type SinkParameters struct { // A dataset block as defined below. + // +kubebuilder:validation:Optional DataSet []DataSetParameters `json:"dataset,omitempty" tf:"dataset,omitempty"` // The description for the Data Flow Source. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // A flowlet block as defined below. + // +kubebuilder:validation:Optional Flowlet []FlowletParameters `json:"flowlet,omitempty" tf:"flowlet,omitempty"` // A linked_service block as defined below. + // +kubebuilder:validation:Optional LinkedService []SinkLinkedServiceParameters `json:"linkedService,omitempty" tf:"linked_service,omitempty"` // The name for the Data Flow Source. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A rejected_linked_service block as defined below. + // +kubebuilder:validation:Optional RejectedLinkedService []RejectedLinkedServiceParameters `json:"rejectedLinkedService,omitempty" tf:"rejected_linked_service,omitempty"` // A schema_linked_service block as defined below. + // +kubebuilder:validation:Optional SchemaLinkedService []SchemaLinkedServiceParameters `json:"schemaLinkedService,omitempty" tf:"schema_linked_service,omitempty"` } @@ -368,6 +393,7 @@ type SourceDataSetParameters struct { NameSelector *v1.Selector `json:"nameSelector,omitempty" tf:"-"` // A map of parameters to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } @@ -398,12 +424,15 @@ type SourceFlowletObservation struct { type SourceFlowletParameters struct { // Specifies the reference data flow parameters from dataset. + // +kubebuilder:validation:Optional DataSetParameters *string `json:"datasetParameters,omitempty" tf:"dataset_parameters,omitempty"` // The name for the Data Flow transformation. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A map of parameters to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } @@ -452,9 +481,11 @@ type SourceLinkedServiceObservation struct { type SourceLinkedServiceParameters struct { // The name for the Data Flow transformation. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A map of parameters to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } @@ -485,24 +516,31 @@ type SourceObservation struct { type SourceParameters struct { // A dataset block as defined below. + // +kubebuilder:validation:Optional DataSet []SourceDataSetParameters `json:"dataset,omitempty" tf:"dataset,omitempty"` // The description for the Data Flow Source. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // A flowlet block as defined below. + // +kubebuilder:validation:Optional Flowlet []SourceFlowletParameters `json:"flowlet,omitempty" tf:"flowlet,omitempty"` // A linked_service block as defined below. + // +kubebuilder:validation:Optional LinkedService []SourceLinkedServiceParameters `json:"linkedService,omitempty" tf:"linked_service,omitempty"` // The name for the Data Flow Source. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A rejected_linked_service block as defined below. + // +kubebuilder:validation:Optional RejectedLinkedService []SourceRejectedLinkedServiceParameters `json:"rejectedLinkedService,omitempty" tf:"rejected_linked_service,omitempty"` // A schema_linked_service block as defined below. + // +kubebuilder:validation:Optional SchemaLinkedService []SourceSchemaLinkedServiceParameters `json:"schemaLinkedService,omitempty" tf:"schema_linked_service,omitempty"` } @@ -527,9 +565,11 @@ type SourceRejectedLinkedServiceObservation struct { type SourceRejectedLinkedServiceParameters struct { // The name for the Data Flow transformation. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A map of parameters to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } @@ -554,9 +594,11 @@ type SourceSchemaLinkedServiceObservation struct { type SourceSchemaLinkedServiceParameters struct { // The name for the Data Flow transformation. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A map of parameters to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } @@ -581,9 +623,11 @@ type TransformationDataSetObservation struct { type TransformationDataSetParameters struct { // The name for the Data Flow transformation. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A map of parameters to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } @@ -614,12 +658,15 @@ type TransformationFlowletObservation struct { type TransformationFlowletParameters struct { // Specifies the reference data flow parameters from dataset. + // +kubebuilder:validation:Optional DataSetParameters *string `json:"datasetParameters,omitempty" tf:"dataset_parameters,omitempty"` // The name for the Data Flow transformation. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A map of parameters to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } @@ -662,9 +709,11 @@ type TransformationLinkedServiceObservation struct { type TransformationLinkedServiceParameters struct { // The name for the Data Flow transformation. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A map of parameters to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } @@ -689,18 +738,23 @@ type TransformationObservation struct { type TransformationParameters struct { // A dataset block as defined below. + // +kubebuilder:validation:Optional DataSet []TransformationDataSetParameters `json:"dataset,omitempty" tf:"dataset,omitempty"` // The description for the Data Flow transformation. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // A flowlet block as defined below. + // +kubebuilder:validation:Optional Flowlet []TransformationFlowletParameters `json:"flowlet,omitempty" tf:"flowlet,omitempty"` // A linked_service block as defined below. + // +kubebuilder:validation:Optional LinkedService []TransformationLinkedServiceParameters `json:"linkedService,omitempty" tf:"linked_service,omitempty"` // The name for the Data Flow transformation. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_datasetazureblob_types.go b/apis/datafactory/v1beta1/zz_datasetazureblob_types.go index f73938b7e..0b334c834 100755 --- a/apis/datafactory/v1beta1/zz_datasetazureblob_types.go +++ b/apis/datafactory/v1beta1/zz_datasetazureblob_types.go @@ -91,9 +91,11 @@ type DataSetAzureBlobObservation struct { type DataSetAzureBlobParameters struct { // A map of additional properties to associate with the Data Factory Dataset. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Dataset. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // The Data Factory ID in which to associate the Linked Service with. Changing this forces a new resource. @@ -111,18 +113,23 @@ type DataSetAzureBlobParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Dataset. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // Is the filename using dynamic expression, function or system variables? Defaults to false. + // +kubebuilder:validation:Optional DynamicFilenameEnabled *bool `json:"dynamicFilenameEnabled,omitempty" tf:"dynamic_filename_enabled,omitempty"` // Is the path using dynamic expression, function or system variables? Defaults to false. + // +kubebuilder:validation:Optional DynamicPathEnabled *bool `json:"dynamicPathEnabled,omitempty" tf:"dynamic_path_enabled,omitempty"` // The filename of the Azure Blob. + // +kubebuilder:validation:Optional Filename *string `json:"filename,omitempty" tf:"filename,omitempty"` // The folder that this Dataset is in. If not specified, the Dataset will appear at the root level. + // +kubebuilder:validation:Optional Folder *string `json:"folder,omitempty" tf:"folder,omitempty"` // The Data Factory Linked Service name in which to associate the Dataset with. @@ -139,12 +146,15 @@ type DataSetAzureBlobParameters struct { LinkedServiceNameSelector *v1.Selector `json:"linkedServiceNameSelector,omitempty" tf:"-"` // A map of parameters to associate with the Data Factory Dataset. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The path of the Azure Blob. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` // A schema_column block as defined below. + // +kubebuilder:validation:Optional SchemaColumn []SchemaColumnParameters `json:"schemaColumn,omitempty" tf:"schema_column,omitempty"` } @@ -175,12 +185,15 @@ type SchemaColumnObservation struct { type SchemaColumnParameters struct { // The description of the column. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The name of the column. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of the column. Valid values are Byte, Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_datasetbinary_types.go b/apis/datafactory/v1beta1/zz_datasetbinary_types.go index dd0a184f8..fd85f69a6 100755 --- a/apis/datafactory/v1beta1/zz_datasetbinary_types.go +++ b/apis/datafactory/v1beta1/zz_datasetbinary_types.go @@ -58,21 +58,27 @@ type AzureBlobStorageLocationObservation struct { type AzureBlobStorageLocationParameters struct { // The container on the Azure Blob Storage Account hosting the file. + // +kubebuilder:validation:Optional Container *string `json:"container,omitempty" tf:"container,omitempty"` // Is the container using dynamic expression, function or system variables? Defaults to false. + // +kubebuilder:validation:Optional DynamicContainerEnabled *bool `json:"dynamicContainerEnabled,omitempty" tf:"dynamic_container_enabled,omitempty"` // Is the filename using dynamic expression, function or system variables? Defaults to false. + // +kubebuilder:validation:Optional DynamicFilenameEnabled *bool `json:"dynamicFilenameEnabled,omitempty" tf:"dynamic_filename_enabled,omitempty"` // Is the path using dynamic expression, function or system variables? Defaults to false. + // +kubebuilder:validation:Optional DynamicPathEnabled *bool `json:"dynamicPathEnabled,omitempty" tf:"dynamic_path_enabled,omitempty"` // The filename of the file in the blob container. + // +kubebuilder:validation:Optional Filename *string `json:"filename,omitempty" tf:"filename,omitempty"` // The folder path to the file in the blob container. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` } @@ -97,9 +103,11 @@ type CompressionObservation struct { type CompressionParameters struct { // The level of compression. Possible values are Fastest and Optimal. + // +kubebuilder:validation:Optional Level *string `json:"level,omitempty" tf:"level,omitempty"` // The type of compression used during transport. Possible values are BZip2, Deflate, GZip, Tar, TarGZip and ZipDeflate. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -175,15 +183,19 @@ type DataSetBinaryObservation struct { type DataSetBinaryParameters struct { // A map of additional properties to associate with the Data Factory Binary Dataset. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Binary Dataset. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // A azure_blob_storage_location block as defined below. + // +kubebuilder:validation:Optional AzureBlobStorageLocation []AzureBlobStorageLocationParameters `json:"azureBlobStorageLocation,omitempty" tf:"azure_blob_storage_location,omitempty"` // A compression block as defined below. + // +kubebuilder:validation:Optional Compression []CompressionParameters `json:"compression,omitempty" tf:"compression,omitempty"` // The Data Factory ID in which to associate the Linked Service with. Changing this forces a new resource. @@ -201,12 +213,15 @@ type DataSetBinaryParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Dataset. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The folder that this Dataset is in. If not specified, the Dataset will appear at the root level. + // +kubebuilder:validation:Optional Folder *string `json:"folder,omitempty" tf:"folder,omitempty"` // A http_server_location block as defined below. + // +kubebuilder:validation:Optional HTTPServerLocation []HTTPServerLocationParameters `json:"httpServerLocation,omitempty" tf:"http_server_location,omitempty"` // The Data Factory Linked Service name in which to associate the Binary Dataset with. @@ -223,9 +238,11 @@ type DataSetBinaryParameters struct { LinkedServiceNameSelector *v1.Selector `json:"linkedServiceNameSelector,omitempty" tf:"-"` // Specifies a list of parameters to associate with the Data Factory Binary Dataset. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` // A sftp_server_location block as defined below. + // +kubebuilder:validation:Optional SFTPServerLocation []SFTPServerLocationParameters `json:"sftpServerLocation,omitempty" tf:"sftp_server_location,omitempty"` } @@ -268,18 +285,23 @@ type HTTPServerLocationObservation struct { type HTTPServerLocationParameters struct { // Is the filename using dynamic expression, function or system variables? Defaults to false. + // +kubebuilder:validation:Optional DynamicFilenameEnabled *bool `json:"dynamicFilenameEnabled,omitempty" tf:"dynamic_filename_enabled,omitempty"` // Is the path using dynamic expression, function or system variables? Defaults to false. + // +kubebuilder:validation:Optional DynamicPathEnabled *bool `json:"dynamicPathEnabled,omitempty" tf:"dynamic_path_enabled,omitempty"` // The filename of the file on the web server. + // +kubebuilder:validation:Optional Filename *string `json:"filename,omitempty" tf:"filename,omitempty"` // The folder path to the file on the web server. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` // The base URL to the web server hosting the file. + // +kubebuilder:validation:Optional RelativeURL *string `json:"relativeUrl,omitempty" tf:"relative_url,omitempty"` } @@ -316,15 +338,19 @@ type SFTPServerLocationObservation struct { type SFTPServerLocationParameters struct { // Is the filename using dynamic expression, function or system variables? Defaults to false. + // +kubebuilder:validation:Optional DynamicFilenameEnabled *bool `json:"dynamicFilenameEnabled,omitempty" tf:"dynamic_filename_enabled,omitempty"` // Is the path using dynamic expression, function or system variables? Defaults to false. + // +kubebuilder:validation:Optional DynamicPathEnabled *bool `json:"dynamicPathEnabled,omitempty" tf:"dynamic_path_enabled,omitempty"` // The filename of the file on the SFTP server. + // +kubebuilder:validation:Optional Filename *string `json:"filename,omitempty" tf:"filename,omitempty"` // The folder path to the file on the SFTP server. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_datasetcosmosdbsqlapi_types.go b/apis/datafactory/v1beta1/zz_datasetcosmosdbsqlapi_types.go index f2fcd1f19..790711931 100755 --- a/apis/datafactory/v1beta1/zz_datasetcosmosdbsqlapi_types.go +++ b/apis/datafactory/v1beta1/zz_datasetcosmosdbsqlapi_types.go @@ -73,12 +73,15 @@ type DataSetCosmosDBSQLAPIObservation struct { type DataSetCosmosDBSQLAPIParameters struct { // A map of additional properties to associate with the Data Factory Dataset. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Dataset. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // The collection name of the Data Factory Dataset Azure Cosmos DB SQL API. + // +kubebuilder:validation:Optional CollectionName *string `json:"collectionName,omitempty" tf:"collection_name,omitempty"` // The Data Factory ID in which to associate the Linked Service with. Changing this forces a new resource. @@ -96,9 +99,11 @@ type DataSetCosmosDBSQLAPIParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Dataset. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The folder that this Dataset is in. If not specified, the Dataset will appear at the root level. + // +kubebuilder:validation:Optional Folder *string `json:"folder,omitempty" tf:"folder,omitempty"` // The Data Factory Linked Service name in which to associate the Dataset with. @@ -115,9 +120,11 @@ type DataSetCosmosDBSQLAPIParameters struct { LinkedServiceNameSelector *v1.Selector `json:"linkedServiceNameSelector,omitempty" tf:"-"` // A map of parameters to associate with the Data Factory Dataset. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` // A schema_column block as defined below. + // +kubebuilder:validation:Optional SchemaColumn []DataSetCosmosDBSQLAPISchemaColumnParameters `json:"schemaColumn,omitempty" tf:"schema_column,omitempty"` } @@ -148,12 +155,15 @@ type DataSetCosmosDBSQLAPISchemaColumnObservation struct { type DataSetCosmosDBSQLAPISchemaColumnParameters struct { // The description of the column. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The name of the column. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of the column. Valid values are Byte, Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_datasetdelimitedtext_types.go b/apis/datafactory/v1beta1/zz_datasetdelimitedtext_types.go index 39d5c2c82..fb44cf923 100755 --- a/apis/datafactory/v1beta1/zz_datasetdelimitedtext_types.go +++ b/apis/datafactory/v1beta1/zz_datasetdelimitedtext_types.go @@ -40,12 +40,15 @@ type AzureBlobFsLocationObservation struct { type AzureBlobFsLocationParameters struct { // The storage data lake gen2 file system on the Azure Blob Storage Account hosting the file. + // +kubebuilder:validation:Optional FileSystem *string `json:"fileSystem,omitempty" tf:"file_system,omitempty"` // The filename of the file. + // +kubebuilder:validation:Optional Filename *string `json:"filename,omitempty" tf:"filename,omitempty"` // The folder path to the file. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` } @@ -94,21 +97,27 @@ type DataSetDelimitedTextAzureBlobStorageLocationObservation struct { type DataSetDelimitedTextAzureBlobStorageLocationParameters struct { // The container on the Azure Blob Storage Account hosting the file. + // +kubebuilder:validation:Optional Container *string `json:"container,omitempty" tf:"container,omitempty"` // Is the container using dynamic expression, function or system variables? Defaults to false. + // +kubebuilder:validation:Optional DynamicContainerEnabled *bool `json:"dynamicContainerEnabled,omitempty" tf:"dynamic_container_enabled,omitempty"` // Is the filename using dynamic expression, function or system variables? Defaults to false. + // +kubebuilder:validation:Optional DynamicFilenameEnabled *bool `json:"dynamicFilenameEnabled,omitempty" tf:"dynamic_filename_enabled,omitempty"` // Is the path using dynamic expression, function or system variables? Defaults to false. + // +kubebuilder:validation:Optional DynamicPathEnabled *bool `json:"dynamicPathEnabled,omitempty" tf:"dynamic_path_enabled,omitempty"` // The filename of the file. + // +kubebuilder:validation:Optional Filename *string `json:"filename,omitempty" tf:"filename,omitempty"` // The folder path to the file. This can be an empty string. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` } @@ -151,18 +160,23 @@ type DataSetDelimitedTextHTTPServerLocationObservation struct { type DataSetDelimitedTextHTTPServerLocationParameters struct { // Is the filename using dynamic expression, function or system variables? Defaults to false. + // +kubebuilder:validation:Optional DynamicFilenameEnabled *bool `json:"dynamicFilenameEnabled,omitempty" tf:"dynamic_filename_enabled,omitempty"` // Is the path using dynamic expression, function or system variables? Defaults to false. + // +kubebuilder:validation:Optional DynamicPathEnabled *bool `json:"dynamicPathEnabled,omitempty" tf:"dynamic_path_enabled,omitempty"` // The filename of the file on the web server. + // +kubebuilder:validation:Optional Filename *string `json:"filename,omitempty" tf:"filename,omitempty"` // The folder path to the file on the web server. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` // The base URL to the web server hosting the file. + // +kubebuilder:validation:Optional RelativeURL *string `json:"relativeUrl,omitempty" tf:"relative_url,omitempty"` } @@ -292,24 +306,31 @@ type DataSetDelimitedTextObservation struct { type DataSetDelimitedTextParameters struct { // A map of additional properties to associate with the Data Factory Dataset. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Dataset. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // An azure_blob_fs_location block as defined below. + // +kubebuilder:validation:Optional AzureBlobFsLocation []AzureBlobFsLocationParameters `json:"azureBlobFsLocation,omitempty" tf:"azure_blob_fs_location,omitempty"` // An azure_blob_storage_location block as defined below. + // +kubebuilder:validation:Optional AzureBlobStorageLocation []DataSetDelimitedTextAzureBlobStorageLocationParameters `json:"azureBlobStorageLocation,omitempty" tf:"azure_blob_storage_location,omitempty"` // The column delimiter. Defaults to ,. + // +kubebuilder:validation:Optional ColumnDelimiter *string `json:"columnDelimiter,omitempty" tf:"column_delimiter,omitempty"` // The compression codec used to read/write text files. Valid values are None, bzip2, gzip, deflate, ZipDeflate, TarGzip, Tar, snappy and lz4. Please note these values are case sensitive. + // +kubebuilder:validation:Optional CompressionCodec *string `json:"compressionCodec,omitempty" tf:"compression_codec,omitempty"` // The compression ratio for the Data Factory Dataset. Valid values are Fastest or Optimal. Please note these values are case sensitive. + // +kubebuilder:validation:Optional CompressionLevel *string `json:"compressionLevel,omitempty" tf:"compression_level,omitempty"` // The Data Factory ID in which to associate the Linked Service with. Changing this forces a new resource. @@ -327,21 +348,27 @@ type DataSetDelimitedTextParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Dataset. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The encoding format for the file. + // +kubebuilder:validation:Optional Encoding *string `json:"encoding,omitempty" tf:"encoding,omitempty"` // The escape character. Defaults to \. + // +kubebuilder:validation:Optional EscapeCharacter *string `json:"escapeCharacter,omitempty" tf:"escape_character,omitempty"` // When used as input, treat the first row of data as headers. When used as output, write the headers into the output as the first row of data. Defaults to false. + // +kubebuilder:validation:Optional FirstRowAsHeader *bool `json:"firstRowAsHeader,omitempty" tf:"first_row_as_header,omitempty"` // The folder that this Dataset is in. If not specified, the Dataset will appear at the root level. + // +kubebuilder:validation:Optional Folder *string `json:"folder,omitempty" tf:"folder,omitempty"` // A http_server_location block as defined below. + // +kubebuilder:validation:Optional HTTPServerLocation []DataSetDelimitedTextHTTPServerLocationParameters `json:"httpServerLocation,omitempty" tf:"http_server_location,omitempty"` // The Data Factory Linked Service name in which to associate the Dataset with. @@ -358,18 +385,23 @@ type DataSetDelimitedTextParameters struct { LinkedServiceNameSelector *v1.Selector `json:"linkedServiceNameSelector,omitempty" tf:"-"` // The null value string. Defaults to an empty string. Defaults to "". + // +kubebuilder:validation:Optional NullValue *string `json:"nullValue,omitempty" tf:"null_value,omitempty"` // A map of parameters to associate with the Data Factory Dataset. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The quote character. Defaults to ". + // +kubebuilder:validation:Optional QuoteCharacter *string `json:"quoteCharacter,omitempty" tf:"quote_character,omitempty"` // The row delimiter. Defaults to any of the following values on read: \r\n, \r, \n, and \n or \r\n on write by mapping data flow and Copy activity respectively. + // +kubebuilder:validation:Optional RowDelimiter *string `json:"rowDelimiter,omitempty" tf:"row_delimiter,omitempty"` // A schema_column block as defined below. + // +kubebuilder:validation:Optional SchemaColumn []DataSetDelimitedTextSchemaColumnParameters `json:"schemaColumn,omitempty" tf:"schema_column,omitempty"` } @@ -400,12 +432,15 @@ type DataSetDelimitedTextSchemaColumnObservation struct { type DataSetDelimitedTextSchemaColumnParameters struct { // The description of the column. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The name of the column. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of the column. Valid values are Byte, Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_datasethttp_types.go b/apis/datafactory/v1beta1/zz_datasethttp_types.go index 4f24db834..a23ec416e 100755 --- a/apis/datafactory/v1beta1/zz_datasethttp_types.go +++ b/apis/datafactory/v1beta1/zz_datasethttp_types.go @@ -85,9 +85,11 @@ type DataSetHTTPObservation struct { type DataSetHTTPParameters struct { // A map of additional properties to associate with the Data Factory Dataset. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Dataset. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // The Data Factory ID in which to associate the Linked Service with. Changing this forces a new resource. @@ -105,9 +107,11 @@ type DataSetHTTPParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Dataset. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The folder that this Dataset is in. If not specified, the Dataset will appear at the root level. + // +kubebuilder:validation:Optional Folder *string `json:"folder,omitempty" tf:"folder,omitempty"` // The Data Factory Linked Service name in which to associate the Dataset with. @@ -124,18 +128,23 @@ type DataSetHTTPParameters struct { LinkedServiceNameSelector *v1.Selector `json:"linkedServiceNameSelector,omitempty" tf:"-"` // A map of parameters to associate with the Data Factory Dataset. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The relative URL based on the URL in the HTTP Linked Service. + // +kubebuilder:validation:Optional RelativeURL *string `json:"relativeUrl,omitempty" tf:"relative_url,omitempty"` // The body for the HTTP request. + // +kubebuilder:validation:Optional RequestBody *string `json:"requestBody,omitempty" tf:"request_body,omitempty"` // The HTTP method for the HTTP request. (e.g. GET, POST) + // +kubebuilder:validation:Optional RequestMethod *string `json:"requestMethod,omitempty" tf:"request_method,omitempty"` // A schema_column block as defined below. + // +kubebuilder:validation:Optional SchemaColumn []DataSetHTTPSchemaColumnParameters `json:"schemaColumn,omitempty" tf:"schema_column,omitempty"` } @@ -166,12 +175,15 @@ type DataSetHTTPSchemaColumnObservation struct { type DataSetHTTPSchemaColumnParameters struct { // The description of the column. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The name of the column. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of the column. Valid values are Byte, Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_datasetjson_types.go b/apis/datafactory/v1beta1/zz_datasetjson_types.go index de1cf6d89..c0987dfd6 100755 --- a/apis/datafactory/v1beta1/zz_datasetjson_types.go +++ b/apis/datafactory/v1beta1/zz_datasetjson_types.go @@ -58,21 +58,27 @@ type DataSetJSONAzureBlobStorageLocationObservation struct { type DataSetJSONAzureBlobStorageLocationParameters struct { // The container on the Azure Blob Storage Account hosting the file. + // +kubebuilder:validation:Optional Container *string `json:"container,omitempty" tf:"container,omitempty"` // Is the container using dynamic expression, function or system variables? Defaults to false. + // +kubebuilder:validation:Optional DynamicContainerEnabled *bool `json:"dynamicContainerEnabled,omitempty" tf:"dynamic_container_enabled,omitempty"` // Is the filename using dynamic expression, function or system variables? Defaults to false. + // +kubebuilder:validation:Optional DynamicFilenameEnabled *bool `json:"dynamicFilenameEnabled,omitempty" tf:"dynamic_filename_enabled,omitempty"` // Is the path using dynamic expression, function or system variables? Defaults to false. + // +kubebuilder:validation:Optional DynamicPathEnabled *bool `json:"dynamicPathEnabled,omitempty" tf:"dynamic_path_enabled,omitempty"` // The filename of the file on the web server. + // +kubebuilder:validation:Optional Filename *string `json:"filename,omitempty" tf:"filename,omitempty"` // The folder path to the file on the web server. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` } @@ -115,18 +121,23 @@ type DataSetJSONHTTPServerLocationObservation struct { type DataSetJSONHTTPServerLocationParameters struct { // Is the filename using dynamic expression, function or system variables? Defaults to false. + // +kubebuilder:validation:Optional DynamicFilenameEnabled *bool `json:"dynamicFilenameEnabled,omitempty" tf:"dynamic_filename_enabled,omitempty"` // Is the path using dynamic expression, function or system variables? Defaults to false. + // +kubebuilder:validation:Optional DynamicPathEnabled *bool `json:"dynamicPathEnabled,omitempty" tf:"dynamic_path_enabled,omitempty"` // The filename of the file on the web server. + // +kubebuilder:validation:Optional Filename *string `json:"filename,omitempty" tf:"filename,omitempty"` // The folder path to the file on the web server. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` // The base URL to the web server hosting the file. + // +kubebuilder:validation:Optional RelativeURL *string `json:"relativeUrl,omitempty" tf:"relative_url,omitempty"` } @@ -202,12 +213,15 @@ type DataSetJSONObservation struct { type DataSetJSONParameters struct { // A map of additional properties to associate with the Data Factory Dataset. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Dataset. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // A azure_blob_storage_location block as defined below. + // +kubebuilder:validation:Optional AzureBlobStorageLocation []DataSetJSONAzureBlobStorageLocationParameters `json:"azureBlobStorageLocation,omitempty" tf:"azure_blob_storage_location,omitempty"` // The Data Factory ID in which to associate the Linked Service with. Changing this forces a new resource. @@ -225,15 +239,19 @@ type DataSetJSONParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Dataset. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The encoding format for the file. + // +kubebuilder:validation:Optional Encoding *string `json:"encoding,omitempty" tf:"encoding,omitempty"` // The folder that this Dataset is in. If not specified, the Dataset will appear at the root level. + // +kubebuilder:validation:Optional Folder *string `json:"folder,omitempty" tf:"folder,omitempty"` // A http_server_location block as defined below. + // +kubebuilder:validation:Optional HTTPServerLocation []DataSetJSONHTTPServerLocationParameters `json:"httpServerLocation,omitempty" tf:"http_server_location,omitempty"` // The Data Factory Linked Service name in which to associate the Dataset with. @@ -250,9 +268,11 @@ type DataSetJSONParameters struct { LinkedServiceNameSelector *v1.Selector `json:"linkedServiceNameSelector,omitempty" tf:"-"` // A map of parameters to associate with the Data Factory Dataset. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` // A schema_column block as defined below. + // +kubebuilder:validation:Optional SchemaColumn []DataSetJSONSchemaColumnParameters `json:"schemaColumn,omitempty" tf:"schema_column,omitempty"` } @@ -283,12 +303,15 @@ type DataSetJSONSchemaColumnObservation struct { type DataSetJSONSchemaColumnParameters struct { // The description of the column. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The name of the column. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of the column. Valid values are Byte, Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_datasetmysql_types.go b/apis/datafactory/v1beta1/zz_datasetmysql_types.go index 527382b14..2318dc938 100755 --- a/apis/datafactory/v1beta1/zz_datasetmysql_types.go +++ b/apis/datafactory/v1beta1/zz_datasetmysql_types.go @@ -73,9 +73,11 @@ type DataSetMySQLObservation struct { type DataSetMySQLParameters struct { // A map of additional properties to associate with the Data Factory Dataset MySQL. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Dataset MySQL. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // The Data Factory ID in which to associate the Linked Service with. Changing this forces a new resource. @@ -93,9 +95,11 @@ type DataSetMySQLParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Dataset MySQL. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The folder that this Dataset is in. If not specified, the Dataset will appear at the root level. + // +kubebuilder:validation:Optional Folder *string `json:"folder,omitempty" tf:"folder,omitempty"` // The Data Factory Linked Service name in which to associate the Dataset with. @@ -112,12 +116,15 @@ type DataSetMySQLParameters struct { LinkedServiceNameSelector *v1.Selector `json:"linkedServiceNameSelector,omitempty" tf:"-"` // A map of parameters to associate with the Data Factory Dataset MySQL. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` // A schema_column block as defined below. + // +kubebuilder:validation:Optional SchemaColumn []DataSetMySQLSchemaColumnParameters `json:"schemaColumn,omitempty" tf:"schema_column,omitempty"` // The table name of the Data Factory Dataset MySQL. + // +kubebuilder:validation:Optional TableName *string `json:"tableName,omitempty" tf:"table_name,omitempty"` } @@ -148,12 +155,15 @@ type DataSetMySQLSchemaColumnObservation struct { type DataSetMySQLSchemaColumnParameters struct { // The description of the column. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The name of the column. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of the column. Valid values are Byte, Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_datasetparquet_types.go b/apis/datafactory/v1beta1/zz_datasetparquet_types.go index ff149bb89..495b9cb1d 100755 --- a/apis/datafactory/v1beta1/zz_datasetparquet_types.go +++ b/apis/datafactory/v1beta1/zz_datasetparquet_types.go @@ -58,21 +58,27 @@ type DataSetParquetAzureBlobStorageLocationObservation struct { type DataSetParquetAzureBlobStorageLocationParameters struct { // The container on the Azure Blob Storage Account hosting the file. + // +kubebuilder:validation:Optional Container *string `json:"container,omitempty" tf:"container,omitempty"` // Is the container using dynamic expression, function or system variables? Defaults to false. + // +kubebuilder:validation:Optional DynamicContainerEnabled *bool `json:"dynamicContainerEnabled,omitempty" tf:"dynamic_container_enabled,omitempty"` // Is the filename using dynamic expression, function or system variables? Defaults to false. + // +kubebuilder:validation:Optional DynamicFilenameEnabled *bool `json:"dynamicFilenameEnabled,omitempty" tf:"dynamic_filename_enabled,omitempty"` // Is the path using dynamic expression, function or system variables? Defaults to false. + // +kubebuilder:validation:Optional DynamicPathEnabled *bool `json:"dynamicPathEnabled,omitempty" tf:"dynamic_path_enabled,omitempty"` // The filename of the file on the web server. + // +kubebuilder:validation:Optional Filename *string `json:"filename,omitempty" tf:"filename,omitempty"` // The folder path to the file on the web server. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` } @@ -115,18 +121,23 @@ type DataSetParquetHTTPServerLocationObservation struct { type DataSetParquetHTTPServerLocationParameters struct { // Is the filename using dynamic expression, function or system variables? Defaults to false. + // +kubebuilder:validation:Optional DynamicFilenameEnabled *bool `json:"dynamicFilenameEnabled,omitempty" tf:"dynamic_filename_enabled,omitempty"` // Is the path using dynamic expression, function or system variables? Defaults to false. + // +kubebuilder:validation:Optional DynamicPathEnabled *bool `json:"dynamicPathEnabled,omitempty" tf:"dynamic_path_enabled,omitempty"` // The filename of the file on the web server. + // +kubebuilder:validation:Optional Filename *string `json:"filename,omitempty" tf:"filename,omitempty"` // The folder path to the file on the web server. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` // The base URL to the web server hosting the file. + // +kubebuilder:validation:Optional RelativeURL *string `json:"relativeUrl,omitempty" tf:"relative_url,omitempty"` } @@ -208,18 +219,23 @@ type DataSetParquetObservation struct { type DataSetParquetParameters struct { // A map of additional properties to associate with the Data Factory Dataset. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Dataset. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // A azure_blob_storage_location block as defined below. + // +kubebuilder:validation:Optional AzureBlobStorageLocation []DataSetParquetAzureBlobStorageLocationParameters `json:"azureBlobStorageLocation,omitempty" tf:"azure_blob_storage_location,omitempty"` // The compression codec used to read/write text files. Valid values are bzip2, gzip, deflate, ZipDeflate, TarGzip, Tar, snappy, or lz4. Please note these values are case-sensitive. + // +kubebuilder:validation:Optional CompressionCodec *string `json:"compressionCodec,omitempty" tf:"compression_codec,omitempty"` // Specifies the compression level. Possible values are Optimal and Fastest, + // +kubebuilder:validation:Optional CompressionLevel *string `json:"compressionLevel,omitempty" tf:"compression_level,omitempty"` // The Data Factory ID in which to associate the Dataset with. Changing this forces a new resource. @@ -237,12 +253,15 @@ type DataSetParquetParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Dataset. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The folder that this Dataset is in. If not specified, the Dataset will appear at the root level. + // +kubebuilder:validation:Optional Folder *string `json:"folder,omitempty" tf:"folder,omitempty"` // A http_server_location block as defined below. + // +kubebuilder:validation:Optional HTTPServerLocation []DataSetParquetHTTPServerLocationParameters `json:"httpServerLocation,omitempty" tf:"http_server_location,omitempty"` // The Data Factory Linked Service name in which to associate the Dataset with. @@ -259,9 +278,11 @@ type DataSetParquetParameters struct { LinkedServiceNameSelector *v1.Selector `json:"linkedServiceNameSelector,omitempty" tf:"-"` // A map of parameters to associate with the Data Factory Dataset. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` // A schema_column block as defined below. + // +kubebuilder:validation:Optional SchemaColumn []DataSetParquetSchemaColumnParameters `json:"schemaColumn,omitempty" tf:"schema_column,omitempty"` } @@ -292,12 +313,15 @@ type DataSetParquetSchemaColumnObservation struct { type DataSetParquetSchemaColumnParameters struct { // The description of the column. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The name of the column. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of the column. Valid values are Byte, Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_datasetpostgresql_types.go b/apis/datafactory/v1beta1/zz_datasetpostgresql_types.go index 1130a51c6..61a40e0cf 100755 --- a/apis/datafactory/v1beta1/zz_datasetpostgresql_types.go +++ b/apis/datafactory/v1beta1/zz_datasetpostgresql_types.go @@ -73,9 +73,11 @@ type DataSetPostgreSQLObservation struct { type DataSetPostgreSQLParameters struct { // A map of additional properties to associate with the Data Factory Dataset PostgreSQL. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Dataset PostgreSQL. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // The Data Factory ID in which to associate the Linked Service with. Changing this forces a new resource. @@ -93,9 +95,11 @@ type DataSetPostgreSQLParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Dataset PostgreSQL. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The folder that this Dataset is in. If not specified, the Dataset will appear at the root level. + // +kubebuilder:validation:Optional Folder *string `json:"folder,omitempty" tf:"folder,omitempty"` // The Data Factory Linked Service name in which to associate the Dataset with. @@ -112,12 +116,15 @@ type DataSetPostgreSQLParameters struct { LinkedServiceNameSelector *v1.Selector `json:"linkedServiceNameSelector,omitempty" tf:"-"` // A map of parameters to associate with the Data Factory Dataset PostgreSQL. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` // A schema_column block as defined below. + // +kubebuilder:validation:Optional SchemaColumn []DataSetPostgreSQLSchemaColumnParameters `json:"schemaColumn,omitempty" tf:"schema_column,omitempty"` // The table name of the Data Factory Dataset PostgreSQL. + // +kubebuilder:validation:Optional TableName *string `json:"tableName,omitempty" tf:"table_name,omitempty"` } @@ -148,12 +155,15 @@ type DataSetPostgreSQLSchemaColumnObservation struct { type DataSetPostgreSQLSchemaColumnParameters struct { // The description of the column. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The name of the column. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of the column. Valid values are Byte, Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_datasetsnowflake_types.go b/apis/datafactory/v1beta1/zz_datasetsnowflake_types.go index 48ffcd12e..070835909 100755 --- a/apis/datafactory/v1beta1/zz_datasetsnowflake_types.go +++ b/apis/datafactory/v1beta1/zz_datasetsnowflake_types.go @@ -79,9 +79,11 @@ type DataSetSnowflakeObservation struct { type DataSetSnowflakeParameters struct { // A map of additional properties to associate with the Data Factory Dataset Snowflake. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Dataset Snowflake. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // The Data Factory ID in which to associate the Linked Service with. Changing this forces a new resource. @@ -99,9 +101,11 @@ type DataSetSnowflakeParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Dataset Snowflake. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The folder that this Dataset is in. If not specified, the Dataset will appear at the root level. + // +kubebuilder:validation:Optional Folder *string `json:"folder,omitempty" tf:"folder,omitempty"` // The Data Factory Linked Service name in which to associate the Dataset with. @@ -118,15 +122,19 @@ type DataSetSnowflakeParameters struct { LinkedServiceNameSelector *v1.Selector `json:"linkedServiceNameSelector,omitempty" tf:"-"` // A map of parameters to associate with the Data Factory Dataset Snowflake. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` // A schema_column block as defined below. + // +kubebuilder:validation:Optional SchemaColumn []DataSetSnowflakeSchemaColumnParameters `json:"schemaColumn,omitempty" tf:"schema_column,omitempty"` // The schema name of the Data Factory Dataset Snowflake. + // +kubebuilder:validation:Optional SchemaName *string `json:"schemaName,omitempty" tf:"schema_name,omitempty"` // The table name of the Data Factory Dataset Snowflake. + // +kubebuilder:validation:Optional TableName *string `json:"tableName,omitempty" tf:"table_name,omitempty"` } @@ -163,15 +171,19 @@ type DataSetSnowflakeSchemaColumnObservation struct { type DataSetSnowflakeSchemaColumnParameters struct { // The name of the column. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The total number of digits allowed. + // +kubebuilder:validation:Optional Precision *float64 `json:"precision,omitempty" tf:"precision,omitempty"` // The number of digits allowed to the right of the decimal point. + // +kubebuilder:validation:Optional Scale *float64 `json:"scale,omitempty" tf:"scale,omitempty"` // Type of the column. Valid values are NUMBER, DECIMAL, NUMERIC, INT, INTEGER, BIGINT, SMALLINT, FLOAT“FLOAT4, FLOAT8, DOUBLE, DOUBLE PRECISION, REAL, VARCHAR, CHAR, CHARACTER, STRING, TEXT, BINARY, VARBINARY, BOOLEAN, DATE, DATETIME, TIME, TIMESTAMP, TIMESTAMP_LTZ, TIMESTAMP_NTZ, TIMESTAMP_TZ, VARIANT, OBJECT, ARRAY, GEOGRAPHY. Please note these values are case sensitive. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_datasetsqlservertable_types.go b/apis/datafactory/v1beta1/zz_datasetsqlservertable_types.go index 161bff3a9..b01d05a7b 100755 --- a/apis/datafactory/v1beta1/zz_datasetsqlservertable_types.go +++ b/apis/datafactory/v1beta1/zz_datasetsqlservertable_types.go @@ -73,9 +73,11 @@ type DataSetSQLServerTableObservation struct { type DataSetSQLServerTableParameters struct { // A map of additional properties to associate with the Data Factory Dataset SQL Server Table. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Dataset SQL Server Table. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // The Data Factory ID in which to associate the Linked Service with. Changing this forces a new resource. @@ -93,9 +95,11 @@ type DataSetSQLServerTableParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Dataset SQL Server Table. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The folder that this Dataset is in. If not specified, the Dataset will appear at the root level. + // +kubebuilder:validation:Optional Folder *string `json:"folder,omitempty" tf:"folder,omitempty"` // The Data Factory Linked Service name in which to associate the Dataset with. @@ -112,12 +116,15 @@ type DataSetSQLServerTableParameters struct { LinkedServiceNameSelector *v1.Selector `json:"linkedServiceNameSelector,omitempty" tf:"-"` // A map of parameters to associate with the Data Factory Dataset SQL Server Table. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` // A schema_column block as defined below. + // +kubebuilder:validation:Optional SchemaColumn []DataSetSQLServerTableSchemaColumnParameters `json:"schemaColumn,omitempty" tf:"schema_column,omitempty"` // The table name of the Data Factory Dataset SQL Server Table. + // +kubebuilder:validation:Optional TableName *string `json:"tableName,omitempty" tf:"table_name,omitempty"` } @@ -148,12 +155,15 @@ type DataSetSQLServerTableSchemaColumnObservation struct { type DataSetSQLServerTableSchemaColumnParameters struct { // The description of the column. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The name of the column. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of the column. Valid values are Byte, Byte[], Boolean, Date, DateTime,DateTimeOffset, Decimal, Double, Guid, Int16, Int32, Int64, Single, String, TimeSpan. Please note these values are case sensitive. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_factory_types.go b/apis/datafactory/v1beta1/zz_factory_types.go index f5b9093cc..d71cd5c58 100755 --- a/apis/datafactory/v1beta1/zz_factory_types.go +++ b/apis/datafactory/v1beta1/zz_factory_types.go @@ -94,30 +94,39 @@ type FactoryObservation struct { type FactoryParameters struct { // Specifies the Azure Key Vault Key ID to be used as the Customer Managed Key (CMK) for double encryption. Required with user assigned identity. + // +kubebuilder:validation:Optional CustomerManagedKeyID *string `json:"customerManagedKeyId,omitempty" tf:"customer_managed_key_id,omitempty"` // Specifies the ID of the user assigned identity associated with the Customer Managed Key. Must be supplied if customer_managed_key_id is set. + // +kubebuilder:validation:Optional CustomerManagedKeyIdentityID *string `json:"customerManagedKeyIdentityId,omitempty" tf:"customer_managed_key_identity_id,omitempty"` // A github_configuration block as defined below. + // +kubebuilder:validation:Optional GithubConfiguration []GithubConfigurationParameters `json:"githubConfiguration,omitempty" tf:"github_configuration,omitempty"` // A list of global_parameter blocks as defined above. + // +kubebuilder:validation:Optional GlobalParameter []GlobalParameterParameters `json:"globalParameter,omitempty" tf:"global_parameter,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Is Managed Virtual Network enabled? + // +kubebuilder:validation:Optional ManagedVirtualNetworkEnabled *bool `json:"managedVirtualNetworkEnabled,omitempty" tf:"managed_virtual_network_enabled,omitempty"` // Is the Data Factory visible to the public network? Defaults to true. + // +kubebuilder:validation:Optional PublicNetworkEnabled *bool `json:"publicNetworkEnabled,omitempty" tf:"public_network_enabled,omitempty"` // Specifies the ID of the purview account resource associated with the Data Factory. + // +kubebuilder:validation:Optional PurviewID *string `json:"purviewId,omitempty" tf:"purview_id,omitempty"` // The name of the resource group in which to create the Data Factory. Changing this forces a new resource to be created. @@ -134,9 +143,11 @@ type FactoryParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // A vsts_configuration block as defined below. + // +kubebuilder:validation:Optional VstsConfiguration []VstsConfigurationParameters `json:"vstsConfiguration,omitempty" tf:"vsts_configuration,omitempty"` } @@ -179,18 +190,23 @@ type GithubConfigurationObservation struct { type GithubConfigurationParameters struct { // Specifies the GitHub account name. + // +kubebuilder:validation:Optional AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` // Specifies the branch of the repository to get code from. + // +kubebuilder:validation:Optional BranchName *string `json:"branchName,omitempty" tf:"branch_name,omitempty"` // Specifies the GitHub Enterprise host name. For example: https://github.mydomain.com. Use https://github.com for open source repositories. + // +kubebuilder:validation:Optional GitURL *string `json:"gitUrl,omitempty" tf:"git_url,omitempty"` // Specifies the name of the git repository. + // +kubebuilder:validation:Optional RepositoryName *string `json:"repositoryName,omitempty" tf:"repository_name,omitempty"` // Specifies the root folder within the repository. Set to / for the top level. + // +kubebuilder:validation:Optional RootFolder *string `json:"rootFolder,omitempty" tf:"root_folder,omitempty"` } @@ -221,12 +237,15 @@ type GlobalParameterObservation struct { type GlobalParameterParameters struct { // Specifies the global parameter name. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the global parameter type. Possible Values are Array, Bool, Float, Int, Object or String. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // Specifies the global parameter value. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -257,9 +276,11 @@ type IdentityObservation struct { type IdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Data Factory. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Data Factory. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -308,21 +329,27 @@ type VstsConfigurationObservation struct { type VstsConfigurationParameters struct { // Specifies the VSTS account name. + // +kubebuilder:validation:Optional AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` // Specifies the branch of the repository to get code from. + // +kubebuilder:validation:Optional BranchName *string `json:"branchName,omitempty" tf:"branch_name,omitempty"` // Specifies the name of the VSTS project. + // +kubebuilder:validation:Optional ProjectName *string `json:"projectName,omitempty" tf:"project_name,omitempty"` // Specifies the name of the git repository. + // +kubebuilder:validation:Optional RepositoryName *string `json:"repositoryName,omitempty" tf:"repository_name,omitempty"` // Specifies the root folder within the repository. Set to / for the top level. + // +kubebuilder:validation:Optional RootFolder *string `json:"rootFolder,omitempty" tf:"root_folder,omitempty"` // Specifies the Tenant ID associated with the VSTS account. + // +kubebuilder:validation:Optional TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_integrationruntimeazure_types.go b/apis/datafactory/v1beta1/zz_integrationruntimeazure_types.go index 11d3a94ae..557217a78 100755 --- a/apis/datafactory/v1beta1/zz_integrationruntimeazure_types.go +++ b/apis/datafactory/v1beta1/zz_integrationruntimeazure_types.go @@ -69,12 +69,15 @@ type IntegrationRuntimeAzureObservation struct { type IntegrationRuntimeAzureParameters struct { // Cluster will not be recycled and it will be used in next data flow activity run until TTL (time to live) is reached if this is set as false. Default is true. + // +kubebuilder:validation:Optional CleanupEnabled *bool `json:"cleanupEnabled,omitempty" tf:"cleanup_enabled,omitempty"` // Compute type of the cluster which will execute data flow job. Valid values are General, ComputeOptimized and MemoryOptimized. Defaults to General. + // +kubebuilder:validation:Optional ComputeType *string `json:"computeType,omitempty" tf:"compute_type,omitempty"` // Core count of the cluster which will execute data flow job. Valid values are 8, 16, 32, 48, 80, 144 and 272. Defaults to 8. + // +kubebuilder:validation:Optional CoreCount *float64 `json:"coreCount,omitempty" tf:"core_count,omitempty"` // The Data Factory ID in which to associate the Linked Service with. Changing this forces a new resource. @@ -92,15 +95,19 @@ type IntegrationRuntimeAzureParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // Integration runtime description. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // Specifies the supported Azure location where the resource exists. Use AutoResolve to create an auto-resolve integration runtime. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Time to live (in minutes) setting of the cluster which will execute data flow job. Defaults to 0. + // +kubebuilder:validation:Optional TimeToLiveMin *float64 `json:"timeToLiveMin,omitempty" tf:"time_to_live_min,omitempty"` // Is Integration Runtime compute provisioned within Managed Virtual Network? Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VirtualNetworkEnabled *bool `json:"virtualNetworkEnabled,omitempty" tf:"virtual_network_enabled,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_integrationruntimeazuressis_types.go b/apis/datafactory/v1beta1/zz_integrationruntimeazuressis_types.go index 792c619fe..9a38befec 100755 --- a/apis/datafactory/v1beta1/zz_integrationruntimeazuressis_types.go +++ b/apis/datafactory/v1beta1/zz_integrationruntimeazuressis_types.go @@ -52,6 +52,7 @@ type CatalogInfoObservation struct { type CatalogInfoParameters struct { // Administrator login name for the SQL Server. + // +kubebuilder:validation:Optional AdministratorLogin *string `json:"administratorLogin,omitempty" tf:"administrator_login,omitempty"` // Administrator login password for the SQL Server. @@ -59,15 +60,19 @@ type CatalogInfoParameters struct { AdministratorPasswordSecretRef *v1.SecretKeySelector `json:"administratorPasswordSecretRef,omitempty" tf:"-"` // The dual standby Azure-SSIS Integration Runtime pair with SSISDB failover. + // +kubebuilder:validation:Optional DualStandbyPairName *string `json:"dualStandbyPairName,omitempty" tf:"dual_standby_pair_name,omitempty"` // The name of SQL elastic pool where the database will be created for the SSIS catalog. Mutually exclusive with pricing_tier. + // +kubebuilder:validation:Optional ElasticPoolName *string `json:"elasticPoolName,omitempty" tf:"elastic_pool_name,omitempty"` // Pricing tier for the database that will be created for the SSIS catalog. Valid values are: Basic, S0, S1, S2, S3, S4, S6, S7, S9, S12, P1, P2, P4, P6, P11, P15, GP_S_Gen5_1, GP_S_Gen5_2, GP_S_Gen5_4, GP_S_Gen5_6, GP_S_Gen5_8, GP_S_Gen5_10, GP_S_Gen5_12, GP_S_Gen5_14, GP_S_Gen5_16, GP_S_Gen5_18, GP_S_Gen5_20, GP_S_Gen5_24, GP_S_Gen5_32, GP_S_Gen5_40, GP_Gen5_2, GP_Gen5_4, GP_Gen5_6, GP_Gen5_8, GP_Gen5_10, GP_Gen5_12, GP_Gen5_14, GP_Gen5_16, GP_Gen5_18, GP_Gen5_20, GP_Gen5_24, GP_Gen5_32, GP_Gen5_40, GP_Gen5_80, BC_Gen5_2, BC_Gen5_4, BC_Gen5_6, BC_Gen5_8, BC_Gen5_10, BC_Gen5_12, BC_Gen5_14, BC_Gen5_16, BC_Gen5_18, BC_Gen5_20, BC_Gen5_24, BC_Gen5_32, BC_Gen5_40, BC_Gen5_80, HS_Gen5_2, HS_Gen5_4, HS_Gen5_6, HS_Gen5_8, HS_Gen5_10, HS_Gen5_12, HS_Gen5_14, HS_Gen5_16, HS_Gen5_18, HS_Gen5_20, HS_Gen5_24, HS_Gen5_32, HS_Gen5_40 and HS_Gen5_80. Mutually exclusive with elastic_pool_name. + // +kubebuilder:validation:Optional PricingTier *string `json:"pricingTier,omitempty" tf:"pricing_tier,omitempty"` // The endpoint of an Azure SQL Server that will be used to host the SSIS catalog. + // +kubebuilder:validation:Optional ServerEndpoint *string `json:"serverEndpoint,omitempty" tf:"server_endpoint,omitempty"` } @@ -98,6 +103,7 @@ type CommandKeyObservation struct { type CommandKeyParameters struct { // A key_vault_secret_reference block as defined below. + // +kubebuilder:validation:Optional KeyVaultPassword []KeyVaultPasswordParameters `json:"keyVaultPassword,omitempty" tf:"key_vault_password,omitempty"` // The password for the target device. @@ -105,9 +111,11 @@ type CommandKeyParameters struct { PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"` // The target computer or domain name. + // +kubebuilder:validation:Optional TargetName *string `json:"targetName,omitempty" tf:"target_name,omitempty"` // The username for the target device. + // +kubebuilder:validation:Optional UserName *string `json:"userName,omitempty" tf:"user_name,omitempty"` } @@ -132,6 +140,7 @@ type ComponentObservation struct { type ComponentParameters struct { // A key_vault_secret_reference block as defined below. + // +kubebuilder:validation:Optional KeyVaultLicense []KeyVaultLicenseParameters `json:"keyVaultLicense,omitempty" tf:"key_vault_license,omitempty"` // The license used for the Component. @@ -139,6 +148,7 @@ type ComponentParameters struct { LicenseSecretRef *v1.SecretKeySelector `json:"licenseSecretRef,omitempty" tf:"-"` // Name of the package store. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -157,6 +167,7 @@ type CustomSetupScriptObservation struct { type CustomSetupScriptParameters struct { // The blob endpoint for the container which contains a custom setup script that will be run on every node on startup. See https://docs.microsoft.com/azure/data-factory/how-to-configure-azure-ssis-ir-custom-setup for more information. + // +kubebuilder:validation:Optional BlobContainerURI *string `json:"blobContainerUri,omitempty" tf:"blob_container_uri,omitempty"` // A container SAS token that gives access to the files. See https://docs.microsoft.com/azure/data-factory/how-to-configure-azure-ssis-ir-custom-setup for more information. @@ -197,15 +208,19 @@ type ExpressCustomSetupObservation struct { type ExpressCustomSetupParameters struct { // One or more command_key blocks as defined below. + // +kubebuilder:validation:Optional CommandKey []CommandKeyParameters `json:"commandKey,omitempty" tf:"command_key,omitempty"` // One or more component blocks as defined below. + // +kubebuilder:validation:Optional Component []ComponentParameters `json:"component,omitempty" tf:"component,omitempty"` // The Environment Variables for the Azure-SSIS Integration Runtime. + // +kubebuilder:validation:Optional Environment map[string]*string `json:"environment,omitempty" tf:"environment,omitempty"` // The version of Azure Powershell installed for the Azure-SSIS Integration Runtime. + // +kubebuilder:validation:Optional PowershellVersion *string `json:"powershellVersion,omitempty" tf:"powershell_version,omitempty"` } @@ -334,9 +349,11 @@ type IntegrationRuntimeAzureSSISObservation struct { type IntegrationRuntimeAzureSSISParameters struct { // A catalog_info block as defined below. + // +kubebuilder:validation:Optional CatalogInfo []CatalogInfoParameters `json:"catalogInfo,omitempty" tf:"catalog_info,omitempty"` // A custom_setup_script block as defined below. + // +kubebuilder:validation:Optional CustomSetupScript []CustomSetupScriptParameters `json:"customSetupScript,omitempty" tf:"custom_setup_script,omitempty"` // The Data Factory ID in which to associate the Linked Service with. Changing this forces a new resource. @@ -354,39 +371,51 @@ type IntegrationRuntimeAzureSSISParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // Integration runtime description. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The Azure-SSIS Integration Runtime edition. Valid values are Standard and Enterprise. Defaults to Standard. + // +kubebuilder:validation:Optional Edition *string `json:"edition,omitempty" tf:"edition,omitempty"` // An express_custom_setup block as defined below. + // +kubebuilder:validation:Optional ExpressCustomSetup []ExpressCustomSetupParameters `json:"expressCustomSetup,omitempty" tf:"express_custom_setup,omitempty"` // A express_vnet_integration block as defined below. + // +kubebuilder:validation:Optional ExpressVnetIntegration []ExpressVnetIntegrationParameters `json:"expressVnetIntegration,omitempty" tf:"express_vnet_integration,omitempty"` // The type of the license that is used. Valid values are LicenseIncluded and BasePrice. Defaults to LicenseIncluded. + // +kubebuilder:validation:Optional LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Defines the maximum parallel executions per node. Defaults to 1. Max is 16. + // +kubebuilder:validation:Optional MaxParallelExecutionsPerNode *float64 `json:"maxParallelExecutionsPerNode,omitempty" tf:"max_parallel_executions_per_node,omitempty"` // The size of the nodes on which the Azure-SSIS Integration Runtime runs. Valid values are: Standard_D2_v3, Standard_D4_v3, Standard_D8_v3, Standard_D16_v3, Standard_D32_v3, Standard_D64_v3, Standard_E2_v3, Standard_E4_v3, Standard_E8_v3, Standard_E16_v3, Standard_E32_v3, Standard_E64_v3, Standard_D1_v2, Standard_D2_v2, Standard_D3_v2, Standard_D4_v2, Standard_A4_v2 and Standard_A8_v2 + // +kubebuilder:validation:Optional NodeSize *string `json:"nodeSize,omitempty" tf:"node_size,omitempty"` // Number of nodes for the Azure-SSIS Integration Runtime. Max is 10. Defaults to 1. + // +kubebuilder:validation:Optional NumberOfNodes *float64 `json:"numberOfNodes,omitempty" tf:"number_of_nodes,omitempty"` // One or more package_store block as defined below. + // +kubebuilder:validation:Optional PackageStore []PackageStoreParameters `json:"packageStore,omitempty" tf:"package_store,omitempty"` // A proxy block as defined below. + // +kubebuilder:validation:Optional Proxy []ProxyParameters `json:"proxy,omitempty" tf:"proxy,omitempty"` // A vnet_integration block as defined below. + // +kubebuilder:validation:Optional VnetIntegration []VnetIntegrationParameters `json:"vnetIntegration,omitempty" tf:"vnet_integration,omitempty"` } @@ -423,15 +452,19 @@ type KeyVaultLicenseObservation struct { type KeyVaultLicenseParameters struct { // Name of the Linked Service to associate with the packages. + // +kubebuilder:validation:Optional LinkedServiceName *string `json:"linkedServiceName,omitempty" tf:"linked_service_name,omitempty"` // A map of parameters to associate with the Key Vault Data Factory Linked Service. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` // Specifies the secret name in Azure Key Vault. + // +kubebuilder:validation:Optional SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` // Specifies the secret version in Azure Key Vault. + // +kubebuilder:validation:Optional SecretVersion *string `json:"secretVersion,omitempty" tf:"secret_version,omitempty"` } @@ -468,15 +501,19 @@ type KeyVaultPasswordObservation struct { type KeyVaultPasswordParameters struct { // Name of the Linked Service to associate with the packages. + // +kubebuilder:validation:Optional LinkedServiceName *string `json:"linkedServiceName,omitempty" tf:"linked_service_name,omitempty"` // A map of parameters to associate with the Key Vault Data Factory Linked Service. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` // Specifies the secret name in Azure Key Vault. + // +kubebuilder:validation:Optional SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` // Specifies the secret version in Azure Key Vault. + // +kubebuilder:validation:Optional SecretVersion *string `json:"secretVersion,omitempty" tf:"secret_version,omitempty"` } @@ -501,9 +538,11 @@ type PackageStoreObservation struct { type PackageStoreParameters struct { // Name of the Linked Service to associate with the packages. + // +kubebuilder:validation:Optional LinkedServiceName *string `json:"linkedServiceName,omitempty" tf:"linked_service_name,omitempty"` // Name of the package store. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -534,12 +573,15 @@ type ProxyObservation struct { type ProxyParameters struct { // The path in the data store to be used when moving data between Self-Hosted and Azure-SSIS Integration Runtimes. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` // Name of Self Hosted Integration Runtime as a proxy. + // +kubebuilder:validation:Optional SelfHostedIntegrationRuntimeName *string `json:"selfHostedIntegrationRuntimeName,omitempty" tf:"self_hosted_integration_runtime_name,omitempty"` // Name of Azure Blob Storage linked service to reference the staging data store to be used when moving data between self-hosted and Azure-SSIS integration runtimes. + // +kubebuilder:validation:Optional StagingStorageLinkedServiceName *string `json:"stagingStorageLinkedServiceName,omitempty" tf:"staging_storage_linked_service_name,omitempty"` } @@ -570,6 +612,7 @@ type VnetIntegrationObservation struct { type VnetIntegrationParameters struct { // Static public IP addresses for the Azure-SSIS Integration Runtime. The size must be 2. + // +kubebuilder:validation:Optional PublicIps []*string `json:"publicIps,omitempty" tf:"public_ips,omitempty"` // id of the subnet to which the nodes of the Azure-SSIS Integration Runtime will be added. @@ -600,6 +643,7 @@ type VnetIntegrationParameters struct { SubnetNameSelector *v1.Selector `json:"subnetNameSelector,omitempty" tf:"-"` // ID of the virtual network to which the nodes of the Azure-SSIS Integration Runtime will be added. + // +kubebuilder:validation:Optional VnetID *string `json:"vnetId,omitempty" tf:"vnet_id,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_integrationruntimemanaged_types.go b/apis/datafactory/v1beta1/zz_integrationruntimemanaged_types.go index c9b8eb606..23307fd83 100755 --- a/apis/datafactory/v1beta1/zz_integrationruntimemanaged_types.go +++ b/apis/datafactory/v1beta1/zz_integrationruntimemanaged_types.go @@ -40,6 +40,7 @@ type IntegrationRuntimeManagedCatalogInfoObservation struct { type IntegrationRuntimeManagedCatalogInfoParameters struct { // Administrator login name for the SQL Server. + // +kubebuilder:validation:Optional AdministratorLogin *string `json:"administratorLogin,omitempty" tf:"administrator_login,omitempty"` // Administrator login password for the SQL Server. @@ -47,9 +48,11 @@ type IntegrationRuntimeManagedCatalogInfoParameters struct { AdministratorPasswordSecretRef *v1.SecretKeySelector `json:"administratorPasswordSecretRef,omitempty" tf:"-"` // Pricing tier for the database that will be created for the SSIS catalog. Valid values are: Basic, Standard, Premium and PremiumRS. + // +kubebuilder:validation:Optional PricingTier *string `json:"pricingTier,omitempty" tf:"pricing_tier,omitempty"` // The endpoint of an Azure SQL Server that will be used to host the SSIS catalog. + // +kubebuilder:validation:Optional ServerEndpoint *string `json:"serverEndpoint,omitempty" tf:"server_endpoint,omitempty"` } @@ -68,6 +71,7 @@ type IntegrationRuntimeManagedCustomSetupScriptObservation struct { type IntegrationRuntimeManagedCustomSetupScriptParameters struct { // The blob endpoint for the container which contains a custom setup script that will be run on every node on startup. See https://docs.microsoft.com/azure/data-factory/how-to-configure-azure-ssis-ir-custom-setup for more information. + // +kubebuilder:validation:Optional BlobContainerURI *string `json:"blobContainerUri,omitempty" tf:"blob_container_uri,omitempty"` // A container SAS token that gives access to the files. See https://docs.microsoft.com/azure/data-factory/how-to-configure-azure-ssis-ir-custom-setup for more information. @@ -150,9 +154,11 @@ type IntegrationRuntimeManagedObservation struct { type IntegrationRuntimeManagedParameters struct { // A catalog_info block as defined below. + // +kubebuilder:validation:Optional CatalogInfo []IntegrationRuntimeManagedCatalogInfoParameters `json:"catalogInfo,omitempty" tf:"catalog_info,omitempty"` // A custom_setup_script block as defined below. + // +kubebuilder:validation:Optional CustomSetupScript []IntegrationRuntimeManagedCustomSetupScriptParameters `json:"customSetupScript,omitempty" tf:"custom_setup_script,omitempty"` // The Data Factory ID in which to associate the Linked Service with. Changing this forces a new resource. @@ -170,27 +176,35 @@ type IntegrationRuntimeManagedParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // Integration runtime description. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The Managed Integration Runtime edition. Valid values are Standard and Enterprise. Defaults to Standard. + // +kubebuilder:validation:Optional Edition *string `json:"edition,omitempty" tf:"edition,omitempty"` // The type of the license that is used. Valid values are LicenseIncluded and BasePrice. Defaults to LicenseIncluded. + // +kubebuilder:validation:Optional LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Defines the maximum parallel executions per node. Defaults to 1. Max is 16. + // +kubebuilder:validation:Optional MaxParallelExecutionsPerNode *float64 `json:"maxParallelExecutionsPerNode,omitempty" tf:"max_parallel_executions_per_node,omitempty"` // The size of the nodes on which the Managed Integration Runtime runs. Valid values are: Standard_D2_v3, Standard_D4_v3, Standard_D8_v3, Standard_D16_v3, Standard_D32_v3, Standard_D64_v3, Standard_E2_v3, Standard_E4_v3, Standard_E8_v3, Standard_E16_v3, Standard_E32_v3, Standard_E64_v3, Standard_D1_v2, Standard_D2_v2, Standard_D3_v2, Standard_D4_v2, Standard_A4_v2 and Standard_A8_v2 + // +kubebuilder:validation:Optional NodeSize *string `json:"nodeSize,omitempty" tf:"node_size,omitempty"` // Number of nodes for the Managed Integration Runtime. Max is 10. Defaults to 1. + // +kubebuilder:validation:Optional NumberOfNodes *float64 `json:"numberOfNodes,omitempty" tf:"number_of_nodes,omitempty"` // A vnet_integration block as defined below. + // +kubebuilder:validation:Optional VnetIntegration []IntegrationRuntimeManagedVnetIntegrationParameters `json:"vnetIntegration,omitempty" tf:"vnet_integration,omitempty"` } @@ -225,6 +239,7 @@ type IntegrationRuntimeManagedVnetIntegrationParameters struct { SubnetNameSelector *v1.Selector `json:"subnetNameSelector,omitempty" tf:"-"` // ID of the virtual network to which the nodes of the Managed Integration Runtime will be added. + // +kubebuilder:validation:Optional VnetID *string `json:"vnetId,omitempty" tf:"vnet_id,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_integrationruntimeselfhosted_types.go b/apis/datafactory/v1beta1/zz_integrationruntimeselfhosted_types.go index 09a50f763..13218e34f 100755 --- a/apis/datafactory/v1beta1/zz_integrationruntimeselfhosted_types.go +++ b/apis/datafactory/v1beta1/zz_integrationruntimeselfhosted_types.go @@ -60,9 +60,11 @@ type IntegrationRuntimeSelfHostedParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // Integration runtime description. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // A rbac_authorization block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional RbacAuthorization []RbacAuthorizationParameters `json:"rbacAuthorization,omitempty" tf:"rbac_authorization,omitempty"` } @@ -81,6 +83,7 @@ type RbacAuthorizationObservation struct { type RbacAuthorizationParameters struct { // The resource identifier of the integration runtime to be shared. + // +kubebuilder:validation:Optional ResourceID *string `json:"resourceId,omitempty" tf:"resource_id,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedcustomservice_types.go b/apis/datafactory/v1beta1/zz_linkedcustomservice_types.go index 7972a0ba3..7c47219e5 100755 --- a/apis/datafactory/v1beta1/zz_linkedcustomservice_types.go +++ b/apis/datafactory/v1beta1/zz_linkedcustomservice_types.go @@ -34,9 +34,11 @@ type IntegrationRuntimeObservation struct { type IntegrationRuntimeParameters struct { // The integration runtime reference to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A map of parameters to associate with the integration runtime. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } @@ -97,9 +99,11 @@ type LinkedCustomServiceObservation struct { type LinkedCustomServiceParameters struct { // A map of additional properties to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Linked Service. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // The Data Factory ID in which to associate the Linked Service with. Changing this forces a new resource. @@ -117,18 +121,23 @@ type LinkedCustomServiceParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Linked Service. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // An integration_runtime block as defined below. + // +kubebuilder:validation:Optional IntegrationRuntime []IntegrationRuntimeParameters `json:"integrationRuntime,omitempty" tf:"integration_runtime,omitempty"` // A map of parameters to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The type of data stores that will be connected to Data Factory. For full list of supported data stores, please refer to Azure Data Factory connector. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // A JSON object that contains the properties of the Data Factory Linked Service. + // +kubebuilder:validation:Optional TypePropertiesJSON *string `json:"typePropertiesJson,omitempty" tf:"type_properties_json,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedserviceazureblobstorage_types.go b/apis/datafactory/v1beta1/zz_linkedserviceazureblobstorage_types.go index c543493e1..103625a94 100755 --- a/apis/datafactory/v1beta1/zz_linkedserviceazureblobstorage_types.go +++ b/apis/datafactory/v1beta1/zz_linkedserviceazureblobstorage_types.go @@ -44,6 +44,7 @@ type KeyVaultSASTokenParameters struct { LinkedServiceNameSelector *v1.Selector `json:"linkedServiceNameSelector,omitempty" tf:"-"` // Specifies the secret name in Azure Key Vault that stores the SAS token. + // +kubebuilder:validation:Optional SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` } @@ -140,12 +141,15 @@ type LinkedServiceAzureBlobStorageObservation struct { type LinkedServiceAzureBlobStorageParameters struct { // A map of additional properties to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Linked Service. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // The connection string sent insecurely. Conflicts with connection_string, sas_uri and service_endpoint. + // +kubebuilder:validation:Optional ConnectionStringInsecure *string `json:"connectionStringInsecure,omitempty" tf:"connection_string_insecure,omitempty"` // The connection string. Conflicts with connection_string_insecure, sas_uri and service_endpoint. @@ -167,15 +171,19 @@ type LinkedServiceAzureBlobStorageParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Linked Service. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The integration runtime reference to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` // A key_vault_sas_token block as defined below. Use this argument to store SAS Token in an existing Key Vault. It needs an existing Key Vault Data Factory Linked Service. A sas_uri is required. + // +kubebuilder:validation:Optional KeyVaultSASToken []KeyVaultSASTokenParameters `json:"keyVaultSasToken,omitempty" tf:"key_vault_sas_token,omitempty"` // A map of parameters to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The SAS URI. Conflicts with connection_string_insecure, connection_string and service_endpoint. @@ -187,21 +195,27 @@ type LinkedServiceAzureBlobStorageParameters struct { ServiceEndpointSecretRef *v1.SecretKeySelector `json:"serviceEndpointSecretRef,omitempty" tf:"-"` // The service principal id in which to authenticate against the Azure Blob Storage account. + // +kubebuilder:validation:Optional ServicePrincipalID *string `json:"servicePrincipalId,omitempty" tf:"service_principal_id,omitempty"` // The service principal key in which to authenticate against the AAzure Blob Storage account. + // +kubebuilder:validation:Optional ServicePrincipalKey *string `json:"servicePrincipalKey,omitempty" tf:"service_principal_key,omitempty"` // A service_principal_linked_key_vault_key block as defined below. Use this argument to store Service Principal key in an existing Key Vault. It needs an existing Key Vault Data Factory Linked Service. + // +kubebuilder:validation:Optional ServicePrincipalLinkedKeyVaultKey []ServicePrincipalLinkedKeyVaultKeyParameters `json:"servicePrincipalLinkedKeyVaultKey,omitempty" tf:"service_principal_linked_key_vault_key,omitempty"` // Specify the kind of the storage account. Allowed values are Storage, StorageV2, BlobStorage and BlockBlobStorage. + // +kubebuilder:validation:Optional StorageKind *string `json:"storageKind,omitempty" tf:"storage_kind,omitempty"` // The tenant id or name in which to authenticate against the Azure Blob Storage account. + // +kubebuilder:validation:Optional TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` // Whether to use the Data Factory's managed identity to authenticate against the Azure Blob Storage account. Incompatible with service_principal_id and service_principal_key. + // +kubebuilder:validation:Optional UseManagedIdentity *bool `json:"useManagedIdentity,omitempty" tf:"use_managed_identity,omitempty"` } @@ -236,6 +250,7 @@ type ServicePrincipalLinkedKeyVaultKeyParameters struct { LinkedServiceNameSelector *v1.Selector `json:"linkedServiceNameSelector,omitempty" tf:"-"` // Specifies the secret name in Azure Key Vault that stores the Service Principal key. + // +kubebuilder:validation:Optional SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedserviceazuredatabricks_types.go b/apis/datafactory/v1beta1/zz_linkedserviceazuredatabricks_types.go index 3f8f72db3..e949239ea 100755 --- a/apis/datafactory/v1beta1/zz_linkedserviceazuredatabricks_types.go +++ b/apis/datafactory/v1beta1/zz_linkedserviceazuredatabricks_types.go @@ -46,15 +46,19 @@ type InstancePoolObservation struct { type InstancePoolParameters struct { // Spark version of a the cluster. + // +kubebuilder:validation:Optional ClusterVersion *string `json:"clusterVersion,omitempty" tf:"cluster_version,omitempty"` // Identifier of the instance pool within the linked ADB instance. + // +kubebuilder:validation:Optional InstancePoolID *string `json:"instancePoolId,omitempty" tf:"instance_pool_id,omitempty"` // The max number of worker nodes. Set this value if you want to enable autoscaling between the min_number_of_workers and this value. Omit this value to use a fixed number of workers defined in the min_number_of_workers property. + // +kubebuilder:validation:Optional MaxNumberOfWorkers *float64 `json:"maxNumberOfWorkers,omitempty" tf:"max_number_of_workers,omitempty"` // The minimum number of worker nodes. Defaults to 1. + // +kubebuilder:validation:Optional MinNumberOfWorkers *float64 `json:"minNumberOfWorkers,omitempty" tf:"min_number_of_workers,omitempty"` } @@ -112,9 +116,11 @@ type LinkedServiceAzureDatabricksKeyVaultPasswordObservation struct { type LinkedServiceAzureDatabricksKeyVaultPasswordParameters struct { // Specifies the name of an existing Key Vault Data Factory Linked Service. + // +kubebuilder:validation:Optional LinkedServiceName *string `json:"linkedServiceName,omitempty" tf:"linked_service_name,omitempty"` // Specifies the secret name in Azure Key Vault that stores ADB access token. + // +kubebuilder:validation:Optional SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` } @@ -167,12 +173,15 @@ type LinkedServiceAzureDatabricksParameters struct { AccessTokenSecretRef *v1.SecretKeySelector `json:"accessTokenSecretRef,omitempty" tf:"-"` // The domain URL of the databricks instance. + // +kubebuilder:validation:Optional AdbDomain *string `json:"adbDomain,omitempty" tf:"adb_domain,omitempty"` // A map of additional properties to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Linked Service. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // The Data Factory ID in which to associate the Linked Service with. Changing this forces a new resource. @@ -190,18 +199,23 @@ type LinkedServiceAzureDatabricksParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Linked Service. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The cluster_id of an existing cluster within the linked ADB instance. + // +kubebuilder:validation:Optional ExistingClusterID *string `json:"existingClusterId,omitempty" tf:"existing_cluster_id,omitempty"` // Leverages an instance pool within the linked ADB instance as defined by instance_pool block below. + // +kubebuilder:validation:Optional InstancePool []InstancePoolParameters `json:"instancePool,omitempty" tf:"instance_pool,omitempty"` // The integration runtime reference to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` // Authenticate to ADB via Azure Key Vault Linked Service as defined in the key_vault_password block below. + // +kubebuilder:validation:Optional KeyVaultPassword []LinkedServiceAzureDatabricksKeyVaultPasswordParameters `json:"keyVaultPassword,omitempty" tf:"key_vault_password,omitempty"` // Authenticate to ADB via managed service identity. @@ -219,9 +233,11 @@ type LinkedServiceAzureDatabricksParameters struct { MsiWorkSpaceResourceIDSelector *v1.Selector `json:"msiWorkSpaceResourceIdSelector,omitempty" tf:"-"` // Creates new clusters within the linked ADB instance as defined in the new_cluster_config block below. + // +kubebuilder:validation:Optional NewClusterConfig []NewClusterConfigParameters `json:"newClusterConfig,omitempty" tf:"new_cluster_config,omitempty"` // A map of parameters to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } @@ -294,33 +310,43 @@ type NewClusterConfigObservation struct { type NewClusterConfigParameters struct { // Spark version of a the cluster. + // +kubebuilder:validation:Optional ClusterVersion *string `json:"clusterVersion,omitempty" tf:"cluster_version,omitempty"` // Tags for the cluster resource. + // +kubebuilder:validation:Optional CustomTags map[string]*string `json:"customTags,omitempty" tf:"custom_tags,omitempty"` // Driver node type for the cluster. + // +kubebuilder:validation:Optional DriverNodeType *string `json:"driverNodeType,omitempty" tf:"driver_node_type,omitempty"` // User defined initialization scripts for the cluster. + // +kubebuilder:validation:Optional InitScripts []*string `json:"initScripts,omitempty" tf:"init_scripts,omitempty"` // Location to deliver Spark driver, worker, and event logs. + // +kubebuilder:validation:Optional LogDestination *string `json:"logDestination,omitempty" tf:"log_destination,omitempty"` // Specifies the maximum number of worker nodes. It should be between 1 and 25000. + // +kubebuilder:validation:Optional MaxNumberOfWorkers *float64 `json:"maxNumberOfWorkers,omitempty" tf:"max_number_of_workers,omitempty"` // Specifies the minimum number of worker nodes. It should be between 1 and 25000. It defaults to 1. + // +kubebuilder:validation:Optional MinNumberOfWorkers *float64 `json:"minNumberOfWorkers,omitempty" tf:"min_number_of_workers,omitempty"` // Node type for the new cluster. + // +kubebuilder:validation:Optional NodeType *string `json:"nodeType,omitempty" tf:"node_type,omitempty"` // User-specified Spark configuration variables key-value pairs. + // +kubebuilder:validation:Optional SparkConfig map[string]*string `json:"sparkConfig,omitempty" tf:"spark_config,omitempty"` // User-specified Spark environment variables key-value pairs. + // +kubebuilder:validation:Optional SparkEnvironmentVariables map[string]*string `json:"sparkEnvironmentVariables,omitempty" tf:"spark_environment_variables,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedserviceazurefilestorage_types.go b/apis/datafactory/v1beta1/zz_linkedserviceazurefilestorage_types.go index ee09f8fc9..8b72ff61e 100755 --- a/apis/datafactory/v1beta1/zz_linkedserviceazurefilestorage_types.go +++ b/apis/datafactory/v1beta1/zz_linkedserviceazurefilestorage_types.go @@ -64,9 +64,11 @@ type LinkedServiceAzureFileStorageKeyVaultPasswordObservation struct { type LinkedServiceAzureFileStorageKeyVaultPasswordParameters struct { // Specifies the name of an existing Key Vault Data Factory Linked Service. + // +kubebuilder:validation:Optional LinkedServiceName *string `json:"linkedServiceName,omitempty" tf:"linked_service_name,omitempty"` // Specifies the secret name in Azure Key Vault that stores Azure File Storage password. + // +kubebuilder:validation:Optional SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` } @@ -109,9 +111,11 @@ type LinkedServiceAzureFileStorageObservation struct { type LinkedServiceAzureFileStorageParameters struct { // A map of additional properties to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Linked Service. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // The connection string. @@ -133,21 +137,27 @@ type LinkedServiceAzureFileStorageParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Linked Service. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The name of the file share. + // +kubebuilder:validation:Optional FileShare *string `json:"fileShare,omitempty" tf:"file_share,omitempty"` // The Host name of the server. + // +kubebuilder:validation:Optional Host *string `json:"host,omitempty" tf:"host,omitempty"` // The integration runtime reference to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` // A key_vault_password block as defined below. Use this argument to store Azure File Storage password in an existing Key Vault. It needs an existing Key Vault Data Factory Linked Service. + // +kubebuilder:validation:Optional KeyVaultPassword []LinkedServiceAzureFileStorageKeyVaultPasswordParameters `json:"keyVaultPassword,omitempty" tf:"key_vault_password,omitempty"` // A map of parameters to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The password to log in the server. @@ -155,6 +165,7 @@ type LinkedServiceAzureFileStorageParameters struct { PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"` // The user ID to log in the server. + // +kubebuilder:validation:Optional UserID *string `json:"userId,omitempty" tf:"user_id,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedserviceazurefunction_types.go b/apis/datafactory/v1beta1/zz_linkedserviceazurefunction_types.go index d0ac55bc2..03e7c6d56 100755 --- a/apis/datafactory/v1beta1/zz_linkedserviceazurefunction_types.go +++ b/apis/datafactory/v1beta1/zz_linkedserviceazurefunction_types.go @@ -34,9 +34,11 @@ type KeyVaultKeyObservation struct { type KeyVaultKeyParameters struct { // Specifies the name of an existing Key Vault Data Factory Linked Service. + // +kubebuilder:validation:Optional LinkedServiceName *string `json:"linkedServiceName,omitempty" tf:"linked_service_name,omitempty"` // Specifies the secret name in Azure Key Vault that stores the system key of the Azure Function. + // +kubebuilder:validation:Optional SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` } @@ -97,9 +99,11 @@ type LinkedServiceAzureFunctionObservation struct { type LinkedServiceAzureFunctionParameters struct { // A map of additional properties to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Linked Service. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // The Data Factory ID in which to associate the Linked Service with. Changing this forces a new resource. @@ -117,9 +121,11 @@ type LinkedServiceAzureFunctionParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Linked Service. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The integration runtime reference to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` // The system key of the Azure Function. Exactly one of either key or key_vault_key is required @@ -127,12 +133,15 @@ type LinkedServiceAzureFunctionParameters struct { KeySecretRef *v1.SecretKeySelector `json:"keySecretRef,omitempty" tf:"-"` // A key_vault_key block as defined below. Use this Argument to store the system key of the Azure Function in an existing Key Vault. It needs an existing Key Vault Data Factory Linked Service. Exactly one of either key or key_vault_key is required. + // +kubebuilder:validation:Optional KeyVaultKey []KeyVaultKeyParameters `json:"keyVaultKey,omitempty" tf:"key_vault_key,omitempty"` // A map of parameters to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The url of the Azure Function. + // +kubebuilder:validation:Optional URL *string `json:"url,omitempty" tf:"url,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedserviceazuresearch_types.go b/apis/datafactory/v1beta1/zz_linkedserviceazuresearch_types.go index 633143c0b..bdc8d3784 100755 --- a/apis/datafactory/v1beta1/zz_linkedserviceazuresearch_types.go +++ b/apis/datafactory/v1beta1/zz_linkedserviceazuresearch_types.go @@ -70,9 +70,11 @@ type LinkedServiceAzureSearchObservation struct { type LinkedServiceAzureSearchParameters struct { // A map of additional properties to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Linked Service. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // The Data Factory ID in which to associate the Linked Service with. Changing this forces a new resource. @@ -90,12 +92,15 @@ type LinkedServiceAzureSearchParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Linked Service. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The integration runtime reference to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` // A map of parameters to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The key of the Azure Search Service. @@ -113,6 +118,7 @@ type LinkedServiceAzureSearchParameters struct { SearchServiceKeySelector *v1.Selector `json:"searchServiceKeySelector,omitempty" tf:"-"` // The URL of the Search Service endpoint (e.g. https://{searchServiceName}.search.windows.net). + // +kubebuilder:validation:Optional URL *string `json:"url,omitempty" tf:"url,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedserviceazuresqldatabase_types.go b/apis/datafactory/v1beta1/zz_linkedserviceazuresqldatabase_types.go index 06230caf2..bef4dcc2f 100755 --- a/apis/datafactory/v1beta1/zz_linkedserviceazuresqldatabase_types.go +++ b/apis/datafactory/v1beta1/zz_linkedserviceazuresqldatabase_types.go @@ -34,9 +34,11 @@ type KeyVaultConnectionStringObservation struct { type KeyVaultConnectionStringParameters struct { // Specifies the name of an existing Key Vault Data Factory Linked Service. + // +kubebuilder:validation:Optional LinkedServiceName *string `json:"linkedServiceName,omitempty" tf:"linked_service_name,omitempty"` // Specifies the secret name in Azure Key Vault that stores SQL Server connection string. + // +kubebuilder:validation:Optional SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` } @@ -100,9 +102,11 @@ type LinkedServiceAzureSQLDatabaseKeyVaultPasswordObservation struct { type LinkedServiceAzureSQLDatabaseKeyVaultPasswordParameters struct { // Specifies the name of an existing Key Vault Data Factory Linked Service. + // +kubebuilder:validation:Optional LinkedServiceName *string `json:"linkedServiceName,omitempty" tf:"linked_service_name,omitempty"` // Specifies the secret name in Azure Key Vault that stores SQL Server password. + // +kubebuilder:validation:Optional SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` } @@ -154,12 +158,15 @@ type LinkedServiceAzureSQLDatabaseObservation struct { type LinkedServiceAzureSQLDatabaseParameters struct { // A map of additional properties to associate with the Data Factory Linked Service Azure SQL Database. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Linked Service Azure SQL Database. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // The connection string in which to authenticate with Azure SQL Database. Exactly one of either connection_string or key_vault_connection_string is required. + // +kubebuilder:validation:Optional ConnectionString *string `json:"connectionString,omitempty" tf:"connection_string,omitempty"` // The Data Factory ID in which to associate the Linked Service with. Changing this forces a new resource. @@ -177,30 +184,39 @@ type LinkedServiceAzureSQLDatabaseParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Linked Service Azure SQL Database. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The integration runtime reference to associate with the Data Factory Linked Service Azure SQL Database. + // +kubebuilder:validation:Optional IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` // A key_vault_connection_string block as defined below. Use this argument to store Azure SQL Database connection string in an existing Key Vault. It needs an existing Key Vault Data Factory Linked Service. Exactly one of either connection_string or key_vault_connection_string is required. + // +kubebuilder:validation:Optional KeyVaultConnectionString []KeyVaultConnectionStringParameters `json:"keyVaultConnectionString,omitempty" tf:"key_vault_connection_string,omitempty"` // A key_vault_password block as defined below. Use this argument to store SQL Server password in an existing Key Vault. It needs an existing Key Vault Data Factory Linked Service. + // +kubebuilder:validation:Optional KeyVaultPassword []LinkedServiceAzureSQLDatabaseKeyVaultPasswordParameters `json:"keyVaultPassword,omitempty" tf:"key_vault_password,omitempty"` // A map of parameters to associate with the Data Factory Linked Service Azure SQL Database. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The service principal id in which to authenticate against the Azure SQL Database. Required if service_principal_key is set. + // +kubebuilder:validation:Optional ServicePrincipalID *string `json:"servicePrincipalId,omitempty" tf:"service_principal_id,omitempty"` // The service principal key in which to authenticate against the Azure SQL Database. Required if service_principal_id is set. + // +kubebuilder:validation:Optional ServicePrincipalKey *string `json:"servicePrincipalKey,omitempty" tf:"service_principal_key,omitempty"` // The tenant id or name in which to authenticate against the Azure SQL Database. + // +kubebuilder:validation:Optional TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` // Whether to use the Data Factory's managed identity to authenticate against the Azure SQL Database. Incompatible with service_principal_id and service_principal_key + // +kubebuilder:validation:Optional UseManagedIdentity *bool `json:"useManagedIdentity,omitempty" tf:"use_managed_identity,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedserviceazuretablestorage_types.go b/apis/datafactory/v1beta1/zz_linkedserviceazuretablestorage_types.go index 307a86bd1..7f8b73d4f 100755 --- a/apis/datafactory/v1beta1/zz_linkedserviceazuretablestorage_types.go +++ b/apis/datafactory/v1beta1/zz_linkedserviceazuretablestorage_types.go @@ -58,9 +58,11 @@ type LinkedServiceAzureTableStorageObservation struct { type LinkedServiceAzureTableStorageParameters struct { // A map of additional properties to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Linked Service. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // The connection string to an Azure Storage Account. @@ -82,12 +84,15 @@ type LinkedServiceAzureTableStorageParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Linked Service. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The integration runtime reference to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` // A map of parameters to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedservicecosmosdb_types.go b/apis/datafactory/v1beta1/zz_linkedservicecosmosdb_types.go index 64ed535ed..0d9557289 100755 --- a/apis/datafactory/v1beta1/zz_linkedservicecosmosdb_types.go +++ b/apis/datafactory/v1beta1/zz_linkedservicecosmosdb_types.go @@ -70,6 +70,7 @@ type LinkedServiceCosmosDBObservation struct { type LinkedServiceCosmosDBParameters struct { // The endpoint of the Azure CosmosDB account. Required if connection_string is unspecified. + // +kubebuilder:validation:Optional AccountEndpoint *string `json:"accountEndpoint,omitempty" tf:"account_endpoint,omitempty"` // The account key of the Azure Cosmos DB account. Required if connection_string is unspecified. @@ -77,9 +78,11 @@ type LinkedServiceCosmosDBParameters struct { AccountKeySecretRef *v1.SecretKeySelector `json:"accountKeySecretRef,omitempty" tf:"-"` // A map of additional properties to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Linked Service. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // The connection string. Required if account_endpoint, account_key, and database are unspecified. @@ -101,15 +104,19 @@ type LinkedServiceCosmosDBParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The name of the database. Required if connection_string is unspecified. + // +kubebuilder:validation:Optional Database *string `json:"database,omitempty" tf:"database,omitempty"` // The description for the Data Factory Linked Service. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The integration runtime reference to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` // A map of parameters to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedservicecosmosdbmongoapi_types.go b/apis/datafactory/v1beta1/zz_linkedservicecosmosdbmongoapi_types.go index 33557619a..adefb7b65 100755 --- a/apis/datafactory/v1beta1/zz_linkedservicecosmosdbmongoapi_types.go +++ b/apis/datafactory/v1beta1/zz_linkedservicecosmosdbmongoapi_types.go @@ -70,9 +70,11 @@ type LinkedServiceCosmosDBMongoapiObservation struct { type LinkedServiceCosmosDBMongoapiParameters struct { // A map of additional properties to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Linked Service. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // The connection string. @@ -94,18 +96,23 @@ type LinkedServiceCosmosDBMongoapiParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The name of the database. + // +kubebuilder:validation:Optional Database *string `json:"database,omitempty" tf:"database,omitempty"` // The description for the Data Factory Linked Service. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The integration runtime reference to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` // A map of parameters to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` // Whether API server version is 3.2 or higher. Defaults to false. + // +kubebuilder:validation:Optional ServerVersionIs32OrHigher *bool `json:"serverVersionIs32OrHigher,omitempty" tf:"server_version_is_32_or_higher,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedservicedatalakestoragegen2_types.go b/apis/datafactory/v1beta1/zz_linkedservicedatalakestoragegen2_types.go index 164d04b29..55de1dd24 100755 --- a/apis/datafactory/v1beta1/zz_linkedservicedatalakestoragegen2_types.go +++ b/apis/datafactory/v1beta1/zz_linkedservicedatalakestoragegen2_types.go @@ -94,9 +94,11 @@ type LinkedServiceDataLakeStorageGen2Observation struct { type LinkedServiceDataLakeStorageGen2Parameters struct { // A map of additional properties to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Linked Service. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // The Data Factory ID in which to associate the Linked Service with. Changing this forces a new resource. @@ -114,30 +116,39 @@ type LinkedServiceDataLakeStorageGen2Parameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Linked Service. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The integration runtime reference to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` // A map of parameters to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The service principal id with which to authenticate against the Azure Data Lake Storage Gen2 account. Incompatible with storage_account_key and use_managed_identity. + // +kubebuilder:validation:Optional ServicePrincipalID *string `json:"servicePrincipalId,omitempty" tf:"service_principal_id,omitempty"` // The service principal key with which to authenticate against the Azure Data Lake Storage Gen2 account. + // +kubebuilder:validation:Optional ServicePrincipalKey *string `json:"servicePrincipalKey,omitempty" tf:"service_principal_key,omitempty"` // The Storage Account Key with which to authenticate against the Azure Data Lake Storage Gen2 account. Incompatible with service_principal_id, service_principal_key, tenant and use_managed_identity. + // +kubebuilder:validation:Optional StorageAccountKey *string `json:"storageAccountKey,omitempty" tf:"storage_account_key,omitempty"` // The tenant id or name in which the service principal exists to authenticate against the Azure Data Lake Storage Gen2 account. + // +kubebuilder:validation:Optional Tenant *string `json:"tenant,omitempty" tf:"tenant,omitempty"` // The endpoint for the Azure Data Lake Storage Gen2 service. + // +kubebuilder:validation:Optional URL *string `json:"url,omitempty" tf:"url,omitempty"` // Whether to use the Data Factory's managed identity to authenticate against the Azure Data Lake Storage Gen2 account. Incompatible with service_principal_id, service_principal_key, tenant and storage_account_key. + // +kubebuilder:validation:Optional UseManagedIdentity *bool `json:"useManagedIdentity,omitempty" tf:"use_managed_identity,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedservicekeyvault_types.go b/apis/datafactory/v1beta1/zz_linkedservicekeyvault_types.go index 900dd83e0..a4b13a927 100755 --- a/apis/datafactory/v1beta1/zz_linkedservicekeyvault_types.go +++ b/apis/datafactory/v1beta1/zz_linkedservicekeyvault_types.go @@ -61,9 +61,11 @@ type LinkedServiceKeyVaultObservation struct { type LinkedServiceKeyVaultParameters struct { // A map of additional properties to associate with the Data Factory Linked Service Key Vault. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Linked Service Key Vault. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // The Data Factory ID in which to associate the Linked Service with. Changing this forces a new resource. @@ -81,9 +83,11 @@ type LinkedServiceKeyVaultParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Linked Service Key Vault. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The integration runtime reference to associate with the Data Factory Linked Service Key Vault. + // +kubebuilder:validation:Optional IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` // The ID the Azure Key Vault resource. @@ -101,6 +105,7 @@ type LinkedServiceKeyVaultParameters struct { KeyVaultIDSelector *v1.Selector `json:"keyVaultIdSelector,omitempty" tf:"-"` // A map of parameters to associate with the Data Factory Linked Service Key Vault. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedservicekusto_types.go b/apis/datafactory/v1beta1/zz_linkedservicekusto_types.go index 4753d9308..e6dc4344e 100755 --- a/apis/datafactory/v1beta1/zz_linkedservicekusto_types.go +++ b/apis/datafactory/v1beta1/zz_linkedservicekusto_types.go @@ -82,9 +82,11 @@ type LinkedServiceKustoObservation struct { type LinkedServiceKustoParameters struct { // A map of additional properties to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Linked Service. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // The Data Factory ID in which to associate the Linked Service with. Changing this forces a new resource. @@ -102,9 +104,11 @@ type LinkedServiceKustoParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Linked Service. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The integration runtime reference to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` // The Kusto Database Name. @@ -135,9 +139,11 @@ type LinkedServiceKustoParameters struct { KustoEndpointSelector *v1.Selector `json:"kustoEndpointSelector,omitempty" tf:"-"` // A map of parameters to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The service principal id in which to authenticate against the Kusto Database. + // +kubebuilder:validation:Optional ServicePrincipalID *string `json:"servicePrincipalId,omitempty" tf:"service_principal_id,omitempty"` // The service principal key in which to authenticate against the Kusto Database. @@ -145,9 +151,11 @@ type LinkedServiceKustoParameters struct { ServicePrincipalKeySecretRef *v1.SecretKeySelector `json:"servicePrincipalKeySecretRef,omitempty" tf:"-"` // The service principal tenant id or name in which to authenticate against the Kusto Database. + // +kubebuilder:validation:Optional Tenant *string `json:"tenant,omitempty" tf:"tenant,omitempty"` // Whether to use the Data Factory's managed identity to authenticate against the Kusto Database. + // +kubebuilder:validation:Optional UseManagedIdentity *bool `json:"useManagedIdentity,omitempty" tf:"use_managed_identity,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedservicemysql_types.go b/apis/datafactory/v1beta1/zz_linkedservicemysql_types.go index 59510fa2e..3ab707c0d 100755 --- a/apis/datafactory/v1beta1/zz_linkedservicemysql_types.go +++ b/apis/datafactory/v1beta1/zz_linkedservicemysql_types.go @@ -64,12 +64,15 @@ type LinkedServiceMySQLObservation struct { type LinkedServiceMySQLParameters struct { // A map of additional properties to associate with the Data Factory Linked Service MySQL. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Linked Service MySQL. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // The connection string in which to authenticate with MySQL. + // +kubebuilder:validation:Optional ConnectionString *string `json:"connectionString,omitempty" tf:"connection_string,omitempty"` // The Data Factory ID in which to associate the Linked Service with. Changing this forces a new resource. @@ -87,12 +90,15 @@ type LinkedServiceMySQLParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Linked Service MySQL. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The integration runtime reference to associate with the Data Factory Linked Service MySQL. + // +kubebuilder:validation:Optional IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` // A map of parameters to associate with the Data Factory Linked Service MySQL. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedserviceodata_types.go b/apis/datafactory/v1beta1/zz_linkedserviceodata_types.go index 59809656b..129bbd098 100755 --- a/apis/datafactory/v1beta1/zz_linkedserviceodata_types.go +++ b/apis/datafactory/v1beta1/zz_linkedserviceodata_types.go @@ -32,6 +32,7 @@ type BasicAuthenticationParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The username which can be used to authenticate to the OData endpoint. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } @@ -92,12 +93,15 @@ type LinkedServiceODataObservation struct { type LinkedServiceODataParameters struct { // A map of additional properties to associate with the Data Factory Linked Service OData. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Linked Service OData. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // A basic_authentication block as defined below. + // +kubebuilder:validation:Optional BasicAuthentication []BasicAuthenticationParameters `json:"basicAuthentication,omitempty" tf:"basic_authentication,omitempty"` // The Data Factory ID in which to associate the Linked Service with. Changing this forces a new resource. @@ -115,15 +119,19 @@ type LinkedServiceODataParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Linked Service OData. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The integration runtime reference to associate with the Data Factory Linked Service OData. + // +kubebuilder:validation:Optional IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` // A map of parameters to associate with the Data Factory Linked Service OData. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URL of the OData service endpoint. + // +kubebuilder:validation:Optional URL *string `json:"url,omitempty" tf:"url,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedserviceodbc_types.go b/apis/datafactory/v1beta1/zz_linkedserviceodbc_types.go index a369951bc..326bfeb74 100755 --- a/apis/datafactory/v1beta1/zz_linkedserviceodbc_types.go +++ b/apis/datafactory/v1beta1/zz_linkedserviceodbc_types.go @@ -32,6 +32,7 @@ type LinkedServiceOdbcBasicAuthenticationParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The username which can be used to authenticate to the ODBC endpoint. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } @@ -92,15 +93,19 @@ type LinkedServiceOdbcObservation struct { type LinkedServiceOdbcParameters struct { // A map of additional properties to associate with the Data Factory Linked Service ODBC. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Linked Service ODBC. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // A basic_authentication block as defined below. + // +kubebuilder:validation:Optional BasicAuthentication []LinkedServiceOdbcBasicAuthenticationParameters `json:"basicAuthentication,omitempty" tf:"basic_authentication,omitempty"` // The connection string in which to authenticate with ODBC. + // +kubebuilder:validation:Optional ConnectionString *string `json:"connectionString,omitempty" tf:"connection_string,omitempty"` // The Data Factory ID in which to associate the Linked Service with. Changing this forces a new resource. @@ -118,12 +123,15 @@ type LinkedServiceOdbcParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Linked Service ODBC. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The integration runtime reference to associate with the Data Factory Linked Service ODBC. + // +kubebuilder:validation:Optional IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` // A map of parameters to associate with the Data Factory Linked Service ODBC. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedservicepostgresql_types.go b/apis/datafactory/v1beta1/zz_linkedservicepostgresql_types.go index 05c14ab7b..4947a26e2 100755 --- a/apis/datafactory/v1beta1/zz_linkedservicepostgresql_types.go +++ b/apis/datafactory/v1beta1/zz_linkedservicepostgresql_types.go @@ -64,12 +64,15 @@ type LinkedServicePostgreSQLObservation struct { type LinkedServicePostgreSQLParameters struct { // A map of additional properties to associate with the Data Factory Linked Service PostgreSQL. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Linked Service PostgreSQL. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // The connection string in which to authenticate with PostgreSQL. + // +kubebuilder:validation:Optional ConnectionString *string `json:"connectionString,omitempty" tf:"connection_string,omitempty"` // The Data Factory ID in which to associate the Linked Service with. Changing this forces a new resource. @@ -87,12 +90,15 @@ type LinkedServicePostgreSQLParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Linked Service PostgreSQL. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The integration runtime reference to associate with the Data Factory Linked Service PostgreSQL. + // +kubebuilder:validation:Optional IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` // A map of parameters to associate with the Data Factory Linked Service PostgreSQL. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedservicesftp_types.go b/apis/datafactory/v1beta1/zz_linkedservicesftp_types.go index 4947030e0..8a3389c0b 100755 --- a/apis/datafactory/v1beta1/zz_linkedservicesftp_types.go +++ b/apis/datafactory/v1beta1/zz_linkedservicesftp_types.go @@ -94,12 +94,15 @@ type LinkedServiceSFTPObservation struct { type LinkedServiceSFTPParameters struct { // A map of additional properties to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Linked Service. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // The type of authentication used to connect to the web table source. Valid options are Anonymous, Basic and ClientCertificate. + // +kubebuilder:validation:Optional AuthenticationType *string `json:"authenticationType,omitempty" tf:"authentication_type,omitempty"` // The Data Factory ID in which to associate the Linked Service with. Changing this forces a new resource. @@ -117,18 +120,23 @@ type LinkedServiceSFTPParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Linked Service. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The SFTP server hostname. + // +kubebuilder:validation:Optional Host *string `json:"host,omitempty" tf:"host,omitempty"` // The host key fingerprint of the SFTP server. + // +kubebuilder:validation:Optional HostKeyFingerprint *string `json:"hostKeyFingerprint,omitempty" tf:"host_key_fingerprint,omitempty"` // The integration runtime reference to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` // A map of parameters to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` // Password to logon to the SFTP Server for Basic Authentication. @@ -136,12 +144,15 @@ type LinkedServiceSFTPParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The TCP port number that the SFTP server uses to listen for client connection. Default value is 22. + // +kubebuilder:validation:Optional Port *float64 `json:"port,omitempty" tf:"port,omitempty"` // Whether to validate host key fingerprint while connecting. If set to false, host_key_fingerprint must also be set. + // +kubebuilder:validation:Optional SkipHostKeyValidation *bool `json:"skipHostKeyValidation,omitempty" tf:"skip_host_key_validation,omitempty"` // The username used to log on to the SFTP server. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedservicesnowflake_types.go b/apis/datafactory/v1beta1/zz_linkedservicesnowflake_types.go index e94dde3a4..b0863526d 100755 --- a/apis/datafactory/v1beta1/zz_linkedservicesnowflake_types.go +++ b/apis/datafactory/v1beta1/zz_linkedservicesnowflake_types.go @@ -68,6 +68,7 @@ type LinkedServiceSnowflakeKeyVaultPasswordParameters struct { LinkedServiceNameSelector *v1.Selector `json:"linkedServiceNameSelector,omitempty" tf:"-"` // Specifies the secret name in Azure Key Vault that stores Snowflake password. + // +kubebuilder:validation:Optional SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` } @@ -104,12 +105,15 @@ type LinkedServiceSnowflakeObservation struct { type LinkedServiceSnowflakeParameters struct { // A map of additional properties to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Linked Service. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // The connection string in which to authenticate with Snowflake. + // +kubebuilder:validation:Optional ConnectionString *string `json:"connectionString,omitempty" tf:"connection_string,omitempty"` // The Data Factory ID in which to associate the Linked Service with. Changing this forces a new resource. @@ -127,15 +131,19 @@ type LinkedServiceSnowflakeParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Linked Service. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The integration runtime reference to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` // A key_vault_password block as defined below. Use this argument to store Snowflake password in an existing Key Vault. It needs an existing Key Vault Data Factory Linked Service. + // +kubebuilder:validation:Optional KeyVaultPassword []LinkedServiceSnowflakeKeyVaultPasswordParameters `json:"keyVaultPassword,omitempty" tf:"key_vault_password,omitempty"` // A map of parameters to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedservicesqlserver_types.go b/apis/datafactory/v1beta1/zz_linkedservicesqlserver_types.go index ef2fc9bb6..5a8c455db 100755 --- a/apis/datafactory/v1beta1/zz_linkedservicesqlserver_types.go +++ b/apis/datafactory/v1beta1/zz_linkedservicesqlserver_types.go @@ -64,9 +64,11 @@ type LinkedServiceSQLServerKeyVaultConnectionStringObservation struct { type LinkedServiceSQLServerKeyVaultConnectionStringParameters struct { // Specifies the name of an existing Key Vault Data Factory Linked Service. + // +kubebuilder:validation:Optional LinkedServiceName *string `json:"linkedServiceName,omitempty" tf:"linked_service_name,omitempty"` // Specifies the secret name in Azure Key Vault that stores SQL Server connection string. + // +kubebuilder:validation:Optional SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` } @@ -101,6 +103,7 @@ type LinkedServiceSQLServerKeyVaultPasswordParameters struct { LinkedServiceNameSelector *v1.Selector `json:"linkedServiceNameSelector,omitempty" tf:"-"` // Specifies the secret name in Azure Key Vault that stores SQL Server password. + // +kubebuilder:validation:Optional SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` } @@ -143,12 +146,15 @@ type LinkedServiceSQLServerObservation struct { type LinkedServiceSQLServerParameters struct { // A map of additional properties to associate with the Data Factory Linked Service SQL Server. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Linked Service SQL Server. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // The connection string in which to authenticate with the SQL Server. Exactly one of either connection_string or key_vault_connection_string is required. + // +kubebuilder:validation:Optional ConnectionString *string `json:"connectionString,omitempty" tf:"connection_string,omitempty"` // The Data Factory ID in which to associate the Linked Service with. Changing this forces a new resource. @@ -166,21 +172,27 @@ type LinkedServiceSQLServerParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Linked Service SQL Server. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The integration runtime reference to associate with the Data Factory Linked Service SQL Server. + // +kubebuilder:validation:Optional IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` // A key_vault_connection_string block as defined below. Use this argument to store SQL Server connection string in an existing Key Vault. It needs an existing Key Vault Data Factory Linked Service. Exactly one of either connection_string or key_vault_connection_string is required. + // +kubebuilder:validation:Optional KeyVaultConnectionString []LinkedServiceSQLServerKeyVaultConnectionStringParameters `json:"keyVaultConnectionString,omitempty" tf:"key_vault_connection_string,omitempty"` // A key_vault_password block as defined below. Use this argument to store SQL Server password in an existing Key Vault. It needs an existing Key Vault Data Factory Linked Service. + // +kubebuilder:validation:Optional KeyVaultPassword []LinkedServiceSQLServerKeyVaultPasswordParameters `json:"keyVaultPassword,omitempty" tf:"key_vault_password,omitempty"` // A map of parameters to associate with the Data Factory Linked Service SQL Server. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The on-premises Windows authentication user name. + // +kubebuilder:validation:Optional UserName *string `json:"userName,omitempty" tf:"user_name,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedservicesynapse_types.go b/apis/datafactory/v1beta1/zz_linkedservicesynapse_types.go index 576180dde..6d121c363 100755 --- a/apis/datafactory/v1beta1/zz_linkedservicesynapse_types.go +++ b/apis/datafactory/v1beta1/zz_linkedservicesynapse_types.go @@ -68,6 +68,7 @@ type LinkedServiceSynapseKeyVaultPasswordParameters struct { LinkedServiceNameSelector *v1.Selector `json:"linkedServiceNameSelector,omitempty" tf:"-"` // Specifies the secret name in Azure Key Vault that stores Synapse password. + // +kubebuilder:validation:Optional SecretName *string `json:"secretName,omitempty" tf:"secret_name,omitempty"` } @@ -104,12 +105,15 @@ type LinkedServiceSynapseObservation struct { type LinkedServiceSynapseParameters struct { // A map of additional properties to associate with the Data Factory Linked Service Synapse. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Linked Service Synapse. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // The connection string in which to authenticate with the Synapse. + // +kubebuilder:validation:Optional ConnectionString *string `json:"connectionString,omitempty" tf:"connection_string,omitempty"` // The Data Factory ID in which to associate the Linked Service with. Changing this forces a new resource. @@ -127,15 +131,19 @@ type LinkedServiceSynapseParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Linked Service Synapse. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The integration runtime reference to associate with the Data Factory Linked Service Synapse. + // +kubebuilder:validation:Optional IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` // A key_vault_password block as defined below. Use this argument to store Synapse password in an existing Key Vault. It needs an existing Key Vault Data Factory Linked Service. + // +kubebuilder:validation:Optional KeyVaultPassword []LinkedServiceSynapseKeyVaultPasswordParameters `json:"keyVaultPassword,omitempty" tf:"key_vault_password,omitempty"` // A map of parameters to associate with the Data Factory Linked Service Synapse. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_linkedserviceweb_types.go b/apis/datafactory/v1beta1/zz_linkedserviceweb_types.go index 76fd2f80e..ad15a4d43 100755 --- a/apis/datafactory/v1beta1/zz_linkedserviceweb_types.go +++ b/apis/datafactory/v1beta1/zz_linkedserviceweb_types.go @@ -76,12 +76,15 @@ type LinkedServiceWebObservation struct { type LinkedServiceWebParameters struct { // A map of additional properties to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Linked Service. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // The type of authentication used to connect to the web table source. Valid options are Anonymous, Basic and ClientCertificate. + // +kubebuilder:validation:Optional AuthenticationType *string `json:"authenticationType,omitempty" tf:"authentication_type,omitempty"` // The Data Factory ID in which to associate the Linked Service with. Changing this forces a new resource. @@ -99,12 +102,15 @@ type LinkedServiceWebParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Linked Service. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The integration runtime reference to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional IntegrationRuntimeName *string `json:"integrationRuntimeName,omitempty" tf:"integration_runtime_name,omitempty"` // A map of parameters to associate with the Data Factory Linked Service. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The password for Basic authentication. Required if authentication_type sets to Basic. @@ -112,9 +118,11 @@ type LinkedServiceWebParameters struct { PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"` // The URL of the web service endpoint (e.g. https://www.microsoft.com). + // +kubebuilder:validation:Optional URL *string `json:"url,omitempty" tf:"url,omitempty"` // The username for Basic authentication. Required if authentication_type sets to Basic. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_managedprivateendpoint_types.go b/apis/datafactory/v1beta1/zz_managedprivateendpoint_types.go index ecfbe8bf2..2c7c31714 100755 --- a/apis/datafactory/v1beta1/zz_managedprivateendpoint_types.go +++ b/apis/datafactory/v1beta1/zz_managedprivateendpoint_types.go @@ -63,12 +63,15 @@ type ManagedPrivateEndpointParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // Fully qualified domain names. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Fqdns []*string `json:"fqdns,omitempty" tf:"fqdns,omitempty"` // Specifies the name which should be used for this Managed Private Endpoint. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the sub resource name which the Data Factory Private Endpoint is able to connect to. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SubresourceName *string `json:"subresourceName,omitempty" tf:"subresource_name,omitempty"` // The ID of the Private Link Enabled Remote Resource which this Data Factory Private Endpoint should be connected to. Changing this forces a new resource to be created. diff --git a/apis/datafactory/v1beta1/zz_pipeline_types.go b/apis/datafactory/v1beta1/zz_pipeline_types.go index 67b339967..6908ece9f 100755 --- a/apis/datafactory/v1beta1/zz_pipeline_types.go +++ b/apis/datafactory/v1beta1/zz_pipeline_types.go @@ -76,12 +76,15 @@ type PipelineObservation struct { type PipelineParameters struct { // A JSON object that contains the activities that will be associated with the Data Factory Pipeline. + // +kubebuilder:validation:Optional ActivitiesJSON *string `json:"activitiesJson,omitempty" tf:"activities_json,omitempty"` // List of tags that can be used for describing the Data Factory Pipeline. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // The max number of concurrent runs for the Data Factory Pipeline. Must be between 1 and 50. + // +kubebuilder:validation:Optional Concurrency *float64 `json:"concurrency,omitempty" tf:"concurrency,omitempty"` // The Data Factory ID in which to associate the Linked Service with. Changing this forces a new resource. @@ -99,18 +102,23 @@ type PipelineParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Pipeline. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The folder that this Pipeline is in. If not specified, the Pipeline will appear at the root level. + // +kubebuilder:validation:Optional Folder *string `json:"folder,omitempty" tf:"folder,omitempty"` // The TimeSpan value after which an Azure Monitoring Metric is fired. + // +kubebuilder:validation:Optional MoniterMetricsAfterDuration *string `json:"moniterMetricsAfterDuration,omitempty" tf:"moniter_metrics_after_duration,omitempty"` // A map of parameters to associate with the Data Factory Pipeline. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` // A map of variables to associate with the Data Factory Pipeline. + // +kubebuilder:validation:Optional Variables map[string]*string `json:"variables,omitempty" tf:"variables,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_triggerblobevent_types.go b/apis/datafactory/v1beta1/zz_triggerblobevent_types.go index 92f3afb84..0814bc09e 100755 --- a/apis/datafactory/v1beta1/zz_triggerblobevent_types.go +++ b/apis/datafactory/v1beta1/zz_triggerblobevent_types.go @@ -85,18 +85,23 @@ type TriggerBlobEventObservation struct { type TriggerBlobEventParameters struct { // Specifies if the Data Factory Blob Event Trigger is activated. Defaults to true. + // +kubebuilder:validation:Optional Activated *bool `json:"activated,omitempty" tf:"activated,omitempty"` // A map of additional properties to associate with the Data Factory Blob Event Trigger. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Blob Event Trigger. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // The pattern that blob path starts with for trigger to fire. + // +kubebuilder:validation:Optional BlobPathBeginsWith *string `json:"blobPathBeginsWith,omitempty" tf:"blob_path_begins_with,omitempty"` // The pattern that blob path ends with for trigger to fire. + // +kubebuilder:validation:Optional BlobPathEndsWith *string `json:"blobPathEndsWith,omitempty" tf:"blob_path_ends_with,omitempty"` // The ID of Data Factory in which to associate the Trigger with. Changing this forces a new resource. @@ -114,15 +119,19 @@ type TriggerBlobEventParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Blob Event Trigger. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // List of events that will fire this trigger. Possible values are Microsoft.Storage.BlobCreated and Microsoft.Storage.BlobDeleted. + // +kubebuilder:validation:Optional Events []*string `json:"events,omitempty" tf:"events,omitempty"` // are blobs with zero bytes ignored? + // +kubebuilder:validation:Optional IgnoreEmptyBlobs *bool `json:"ignoreEmptyBlobs,omitempty" tf:"ignore_empty_blobs,omitempty"` // One or more pipeline blocks as defined below. + // +kubebuilder:validation:Optional Pipeline []TriggerBlobEventPipelineParameters `json:"pipeline,omitempty" tf:"pipeline,omitempty"` // The ID of Storage Account in which blob event will be listened. Changing this forces a new resource. @@ -171,6 +180,7 @@ type TriggerBlobEventPipelineParameters struct { NameSelector *v1.Selector `json:"nameSelector,omitempty" tf:"-"` // The Data Factory Pipeline parameters that the trigger will act on. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_triggercustomevent_types.go b/apis/datafactory/v1beta1/zz_triggercustomevent_types.go index 06b09f2a8..0a32bc0df 100755 --- a/apis/datafactory/v1beta1/zz_triggercustomevent_types.go +++ b/apis/datafactory/v1beta1/zz_triggercustomevent_types.go @@ -79,12 +79,15 @@ type TriggerCustomEventObservation struct { type TriggerCustomEventParameters struct { // Specifies if the Data Factory Custom Event Trigger is activated. Defaults to true. + // +kubebuilder:validation:Optional Activated *bool `json:"activated,omitempty" tf:"activated,omitempty"` // A map of additional properties to associate with the Data Factory Custom Event Trigger. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Data Factory Custom Event Trigger. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // The ID of Data Factory in which to associate the Trigger with. Changing this forces a new resource. @@ -102,6 +105,7 @@ type TriggerCustomEventParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The description for the Data Factory Custom Event Trigger. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The ID of Event Grid Topic in which event will be listened. Changing this forces a new resource. @@ -119,15 +123,19 @@ type TriggerCustomEventParameters struct { EventGridTopicIDSelector *v1.Selector `json:"eventgridTopicIdSelector,omitempty" tf:"-"` // List of events that will fire this trigger. At least one event must be specified. + // +kubebuilder:validation:Optional Events []*string `json:"events,omitempty" tf:"events,omitempty"` // One or more pipeline blocks as defined below. + // +kubebuilder:validation:Optional Pipeline []TriggerCustomEventPipelineParameters `json:"pipeline,omitempty" tf:"pipeline,omitempty"` // The pattern that event subject starts with for trigger to fire. + // +kubebuilder:validation:Optional SubjectBeginsWith *string `json:"subjectBeginsWith,omitempty" tf:"subject_begins_with,omitempty"` // The pattern that event subject ends with for trigger to fire. + // +kubebuilder:validation:Optional SubjectEndsWith *string `json:"subjectEndsWith,omitempty" tf:"subject_ends_with,omitempty"` } @@ -162,6 +170,7 @@ type TriggerCustomEventPipelineParameters struct { NameSelector *v1.Selector `json:"nameSelector,omitempty" tf:"-"` // The Data Factory Pipeline parameters that the trigger will act on. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } diff --git a/apis/datafactory/v1beta1/zz_triggerschedule_types.go b/apis/datafactory/v1beta1/zz_triggerschedule_types.go index 8131ce28d..d7f94e061 100755 --- a/apis/datafactory/v1beta1/zz_triggerschedule_types.go +++ b/apis/datafactory/v1beta1/zz_triggerschedule_types.go @@ -34,9 +34,11 @@ type MonthlyObservation struct { type MonthlyParameters struct { // The occurrence of the specified day during the month. For example, a monthly property with weekday and week values of Sunday, -1 means the last Sunday of the month. + // +kubebuilder:validation:Optional Week *float64 `json:"week,omitempty" tf:"week,omitempty"` // The day of the week on which the trigger runs. For example, a monthly property with a weekday value of Sunday means every Sunday of the month. + // +kubebuilder:validation:Optional Weekday *string `json:"weekday,omitempty" tf:"weekday,omitempty"` } @@ -79,18 +81,23 @@ type ScheduleObservation struct { type ScheduleParameters struct { // Day(s) of the month on which the trigger is scheduled. This value can be specified with a monthly frequency only. + // +kubebuilder:validation:Optional DaysOfMonth []*float64 `json:"daysOfMonth,omitempty" tf:"days_of_month,omitempty"` // Days of the week on which the trigger is scheduled. This value can be specified only with a weekly frequency. + // +kubebuilder:validation:Optional DaysOfWeek []*string `json:"daysOfWeek,omitempty" tf:"days_of_week,omitempty"` // Hours of the day on which the trigger is scheduled. + // +kubebuilder:validation:Optional Hours []*float64 `json:"hours,omitempty" tf:"hours,omitempty"` // Minutes of the hour on which the trigger is scheduled. + // +kubebuilder:validation:Optional Minutes []*float64 `json:"minutes,omitempty" tf:"minutes,omitempty"` // A monthly block as documented below, which specifies the days of the month on which the trigger is scheduled. The value can be specified only with a monthly frequency. + // +kubebuilder:validation:Optional Monthly []MonthlyParameters `json:"monthly,omitempty" tf:"monthly,omitempty"` } @@ -178,9 +185,11 @@ type TriggerScheduleObservation struct { type TriggerScheduleParameters struct { // Specifies if the Data Factory Schedule Trigger is activated. Defaults to true. + // +kubebuilder:validation:Optional Activated *bool `json:"activated,omitempty" tf:"activated,omitempty"` // List of tags that can be used for describing the Data Factory Schedule Trigger. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // The Data Factory ID in which to associate the Linked Service with. Changing this forces a new resource. @@ -198,18 +207,23 @@ type TriggerScheduleParameters struct { DataFactoryIDSelector *v1.Selector `json:"dataFactoryIdSelector,omitempty" tf:"-"` // The Schedule Trigger's description. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The time the Schedule Trigger should end. The time will be represented in UTC. + // +kubebuilder:validation:Optional EndTime *string `json:"endTime,omitempty" tf:"end_time,omitempty"` // The trigger frequency. Valid values include Minute, Hour, Day, Week, Month. Defaults to Minute. + // +kubebuilder:validation:Optional Frequency *string `json:"frequency,omitempty" tf:"frequency,omitempty"` // The interval for how often the trigger occurs. This defaults to 1. + // +kubebuilder:validation:Optional Interval *float64 `json:"interval,omitempty" tf:"interval,omitempty"` // block as defined below. + // +kubebuilder:validation:Optional Pipeline []TriggerSchedulePipelineParameters `json:"pipeline,omitempty" tf:"pipeline,omitempty"` // The Data Factory Pipeline name that the trigger will act on. @@ -226,15 +240,19 @@ type TriggerScheduleParameters struct { PipelineNameSelector *v1.Selector `json:"pipelineNameSelector,omitempty" tf:"-"` // The pipeline parameters that the trigger will act upon. + // +kubebuilder:validation:Optional PipelineParameters map[string]*string `json:"pipelineParameters,omitempty" tf:"pipeline_parameters,omitempty"` // A schedule block as defined below, which further specifies the recurrence schedule for the trigger. A schedule is capable of limiting or increasing the number of trigger executions specified by the frequency and interval properties. + // +kubebuilder:validation:Optional Schedule []ScheduleParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` // The time the Schedule Trigger will start. This defaults to the current time. The time will be represented in UTC. + // +kubebuilder:validation:Optional StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` // The timezone of the start/end time. + // +kubebuilder:validation:Optional TimeZone *string `json:"timeZone,omitempty" tf:"time_zone,omitempty"` } @@ -259,9 +277,11 @@ type TriggerSchedulePipelineObservation struct { type TriggerSchedulePipelineParameters struct { // Reference pipeline name. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The pipeline parameters that the trigger will act upon. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } diff --git a/apis/datamigration/v1beta1/zz_databasemigrationproject_types.go b/apis/datamigration/v1beta1/zz_databasemigrationproject_types.go index 55374e514..7f0b4f7b8 100755 --- a/apis/datamigration/v1beta1/zz_databasemigrationproject_types.go +++ b/apis/datamigration/v1beta1/zz_databasemigrationproject_types.go @@ -61,9 +61,11 @@ type DatabaseMigrationProjectObservation struct { type DatabaseMigrationProjectParameters struct { // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specify the name of the database migration project. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Name of the resource group in which to create the database migration project. Changing this forces a new resource to be created. @@ -94,12 +96,15 @@ type DatabaseMigrationProjectParameters struct { ServiceNameSelector *v1.Selector `json:"serviceNameSelector,omitempty" tf:"-"` // The platform type of the migration source. Currently only support: SQL(on-premises SQL Server). Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SourcePlatform *string `json:"sourcePlatform,omitempty" tf:"source_platform,omitempty"` // A mapping of tags to assigned to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The platform type of the migration target. Currently only support: SQLDB(Azure SQL Database). Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional TargetPlatform *string `json:"targetPlatform,omitempty" tf:"target_platform,omitempty"` } diff --git a/apis/datamigration/v1beta1/zz_databasemigrationservice_types.go b/apis/datamigration/v1beta1/zz_databasemigrationservice_types.go index a3e564674..fcc4a7139 100755 --- a/apis/datamigration/v1beta1/zz_databasemigrationservice_types.go +++ b/apis/datamigration/v1beta1/zz_databasemigrationservice_types.go @@ -55,9 +55,11 @@ type DatabaseMigrationServiceObservation struct { type DatabaseMigrationServiceParameters struct { // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specify the name of the database migration service. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Name of the resource group in which to create the database migration service. Changing this forces a new resource to be created. @@ -74,6 +76,7 @@ type DatabaseMigrationServiceParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The SKU name of the database migration service. Possible values are Premium_4vCores, Standard_1vCores, Standard_2vCores and Standard_4vCores. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // The ID of the virtual subnet resource to which the database migration service should be joined. Changing this forces a new resource to be created. @@ -91,6 +94,7 @@ type DatabaseMigrationServiceParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // A mapping of tags to assigned to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/dataprotection/v1beta1/zz_backupinstanceblobstorage_types.go b/apis/dataprotection/v1beta1/zz_backupinstanceblobstorage_types.go index 9eb6b653e..6577ff8f7 100755 --- a/apis/dataprotection/v1beta1/zz_backupinstanceblobstorage_types.go +++ b/apis/dataprotection/v1beta1/zz_backupinstanceblobstorage_types.go @@ -54,6 +54,7 @@ type BackupInstanceBlobStorageParameters struct { BackupPolicyIDSelector *v1.Selector `json:"backupPolicyIdSelector,omitempty" tf:"-"` // The location of the source Storage Account. Changing this forces a new Backup Instance Blob Storage to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The ID of the source Storage Account. Changing this forces a new Backup Instance Blob Storage to be created. diff --git a/apis/dataprotection/v1beta1/zz_backupinstancedisk_types.go b/apis/dataprotection/v1beta1/zz_backupinstancedisk_types.go index eed767223..8916e3ab6 100755 --- a/apis/dataprotection/v1beta1/zz_backupinstancedisk_types.go +++ b/apis/dataprotection/v1beta1/zz_backupinstancedisk_types.go @@ -71,6 +71,7 @@ type BackupInstanceDiskParameters struct { DiskIDSelector *v1.Selector `json:"diskIdSelector,omitempty" tf:"-"` // The Azure Region where the Backup Instance Disk should exist. Changing this forces a new Backup Instance Disk to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the Resource Group where snapshots are stored. Changing this forces a new Backup Instance Disk to be created. diff --git a/apis/dataprotection/v1beta1/zz_backupinstancepostgresql_types.go b/apis/dataprotection/v1beta1/zz_backupinstancepostgresql_types.go index f0fca8237..2bdacbae7 100755 --- a/apis/dataprotection/v1beta1/zz_backupinstancepostgresql_types.go +++ b/apis/dataprotection/v1beta1/zz_backupinstancepostgresql_types.go @@ -85,6 +85,7 @@ type BackupInstancePostgreSQLParameters struct { DatabaseIDSelector *v1.Selector `json:"databaseIdSelector,omitempty" tf:"-"` // The location of the source database. Changing this forces a new Backup Instance PostgreSQL to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The ID of the Backup Vault within which the PostgreSQL Backup Instance should exist. Changing this forces a new Backup Instance PostgreSQL to be created. diff --git a/apis/dataprotection/v1beta1/zz_backuppolicyblobstorage_types.go b/apis/dataprotection/v1beta1/zz_backuppolicyblobstorage_types.go index 0244f1e03..5735c33f0 100755 --- a/apis/dataprotection/v1beta1/zz_backuppolicyblobstorage_types.go +++ b/apis/dataprotection/v1beta1/zz_backuppolicyblobstorage_types.go @@ -34,6 +34,7 @@ type BackupPolicyBlobStorageObservation struct { type BackupPolicyBlobStorageParameters struct { // Duration of deletion after given timespan. It should follow ISO 8601 duration format. Changing this forces a new Backup Policy Blob Storage to be created. + // +kubebuilder:validation:Optional RetentionDuration *string `json:"retentionDuration,omitempty" tf:"retention_duration,omitempty"` // The ID of the Backup Vault within which the Backup Policy Blob Storage should exist. Changing this forces a new Backup Policy Blob Storage to be created. diff --git a/apis/dataprotection/v1beta1/zz_backuppolicydisk_types.go b/apis/dataprotection/v1beta1/zz_backuppolicydisk_types.go index 462a5363c..01e144b69 100755 --- a/apis/dataprotection/v1beta1/zz_backuppolicydisk_types.go +++ b/apis/dataprotection/v1beta1/zz_backuppolicydisk_types.go @@ -46,12 +46,15 @@ type BackupPolicyDiskObservation struct { type BackupPolicyDiskParameters struct { // Specifies a list of repeating time interval. It should follow ISO 8601 repeating time interval . Changing this forces a new Backup Policy Disk to be created. + // +kubebuilder:validation:Optional BackupRepeatingTimeIntervals []*string `json:"backupRepeatingTimeIntervals,omitempty" tf:"backup_repeating_time_intervals,omitempty"` // The duration of default retention rule. It should follow ISO 8601 duration format. Changing this forces a new Backup Policy Disk to be created. + // +kubebuilder:validation:Optional DefaultRetentionDuration *string `json:"defaultRetentionDuration,omitempty" tf:"default_retention_duration,omitempty"` // One or more retention_rule blocks as defined below. Changing this forces a new Backup Policy Disk to be created. + // +kubebuilder:validation:Optional RetentionRule []RetentionRuleParameters `json:"retentionRule,omitempty" tf:"retention_rule,omitempty"` // The ID of the Backup Vault within which the Backup Policy Disk should exist. Changing this forces a new Backup Policy Disk to be created. @@ -84,6 +87,7 @@ type CriteriaObservation struct { type CriteriaParameters struct { // Possible values are FirstOfDay and FirstOfWeek. Changing this forces a new Backup Policy Disk to be created. + // +kubebuilder:validation:Optional AbsoluteCriteria *string `json:"absoluteCriteria,omitempty" tf:"absolute_criteria,omitempty"` } @@ -120,15 +124,19 @@ type RetentionRuleObservation struct { type RetentionRuleParameters struct { // A criteria block as defined below. Changing this forces a new Backup Policy Disk to be created. + // +kubebuilder:validation:Optional Criteria []CriteriaParameters `json:"criteria,omitempty" tf:"criteria,omitempty"` // Duration of deletion after given timespan. It should follow ISO 8601 duration format. Changing this forces a new Backup Policy Disk to be created. + // +kubebuilder:validation:Optional Duration *string `json:"duration,omitempty" tf:"duration,omitempty"` // The name which should be used for this retention rule. Changing this forces a new Backup Policy Disk to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Retention Tag priority. Changing this forces a new Backup Policy Disk to be created. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` } diff --git a/apis/dataprotection/v1beta1/zz_backuppolicypostgresql_types.go b/apis/dataprotection/v1beta1/zz_backuppolicypostgresql_types.go index 92279cf4f..f3082d91b 100755 --- a/apis/dataprotection/v1beta1/zz_backuppolicypostgresql_types.go +++ b/apis/dataprotection/v1beta1/zz_backuppolicypostgresql_types.go @@ -49,9 +49,11 @@ type BackupPolicyPostgreSQLObservation struct { type BackupPolicyPostgreSQLParameters struct { // Specifies a list of repeating time interval. It supports weekly back. It should follow ISO 8601 repeating time interval. Changing this forces a new Backup Policy PostgreSQL to be created. + // +kubebuilder:validation:Optional BackupRepeatingTimeIntervals []*string `json:"backupRepeatingTimeIntervals,omitempty" tf:"backup_repeating_time_intervals,omitempty"` // The duration of default retention rule. It should follow ISO 8601 duration format. Changing this forces a new Backup Policy PostgreSQL to be created. + // +kubebuilder:validation:Optional DefaultRetentionDuration *string `json:"defaultRetentionDuration,omitempty" tf:"default_retention_duration,omitempty"` // The name of the Resource Group where the Backup Policy PostgreSQL should exist. Changing this forces a new Backup Policy PostgreSQL to be created. @@ -68,6 +70,7 @@ type BackupPolicyPostgreSQLParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // One or more retention_rule blocks as defined below. Changing this forces a new Backup Policy PostgreSQL to be created. + // +kubebuilder:validation:Optional RetentionRule []BackupPolicyPostgreSQLRetentionRuleParameters `json:"retentionRule,omitempty" tf:"retention_rule,omitempty"` // The name of the Backup Vault where the Backup Policy PostgreSQL should exist. Changing this forces a new Backup Policy PostgreSQL to be created. @@ -117,15 +120,19 @@ type BackupPolicyPostgreSQLRetentionRuleObservation struct { type BackupPolicyPostgreSQLRetentionRuleParameters struct { // A criteria block as defined below. Changing this forces a new Backup Policy PostgreSQL to be created. + // +kubebuilder:validation:Optional Criteria []RetentionRuleCriteriaParameters `json:"criteria,omitempty" tf:"criteria,omitempty"` // Duration after which the backup is deleted. It should follow ISO 8601 duration format. Changing this forces a new Backup Policy PostgreSQL to be created. + // +kubebuilder:validation:Optional Duration *string `json:"duration,omitempty" tf:"duration,omitempty"` // The name which should be used for this retention rule. Changing this forces a new Backup Policy PostgreSQL to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the priority of the rule. The priority number must be unique for each rule. The lower the priority number, the higher the priority of the rule. Changing this forces a new Backup Policy PostgreSQL to be created. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` } @@ -168,18 +175,23 @@ type RetentionRuleCriteriaObservation struct { type RetentionRuleCriteriaParameters struct { // Possible values are AllBackup, FirstOfDay, FirstOfWeek, FirstOfMonth and FirstOfYear. These values mean the first successful backup of the day/week/month/year. Changing this forces a new Backup Policy PostgreSQL to be created. + // +kubebuilder:validation:Optional AbsoluteCriteria *string `json:"absoluteCriteria,omitempty" tf:"absolute_criteria,omitempty"` // Possible values are Monday, Tuesday, Thursday, Friday, Saturday and Sunday. Changing this forces a new Backup Policy PostgreSQL to be created. + // +kubebuilder:validation:Optional DaysOfWeek []*string `json:"daysOfWeek,omitempty" tf:"days_of_week,omitempty"` // Possible values are January, February, March, April, May, June, July, August, September, October, November and December. Changing this forces a new Backup Policy PostgreSQL to be created. + // +kubebuilder:validation:Optional MonthsOfYear []*string `json:"monthsOfYear,omitempty" tf:"months_of_year,omitempty"` // Specifies a list of backup times for backup in the RFC3339 format. Changing this forces a new Backup Policy PostgreSQL to be created. + // +kubebuilder:validation:Optional ScheduledBackupTimes []*string `json:"scheduledBackupTimes,omitempty" tf:"scheduled_backup_times,omitempty"` // Possible values are First, Second, Third, Fourth and Last. Changing this forces a new Backup Policy PostgreSQL to be created. + // +kubebuilder:validation:Optional WeeksOfMonth []*string `json:"weeksOfMonth,omitempty" tf:"weeks_of_month,omitempty"` } diff --git a/apis/dataprotection/v1beta1/zz_backupvault_types.go b/apis/dataprotection/v1beta1/zz_backupvault_types.go index ddcff2c63..e66958b86 100755 --- a/apis/dataprotection/v1beta1/zz_backupvault_types.go +++ b/apis/dataprotection/v1beta1/zz_backupvault_types.go @@ -58,15 +58,19 @@ type BackupVaultObservation struct { type BackupVaultParameters struct { // Specifies the type of the data store. Possible values are ArchiveStore, SnapshotStore and VaultStore. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DatastoreType *string `json:"datastoreType,omitempty" tf:"datastore_type,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // The Azure Region where the Backup Vault should exist. Changing this forces a new Backup Vault to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the backup storage redundancy. Possible values are GeoRedundant and LocallyRedundant. Changing this forces a new Backup Vault to be created. + // +kubebuilder:validation:Optional Redundancy *string `json:"redundancy,omitempty" tf:"redundancy,omitempty"` // The name of the Resource Group where the Backup Vault should exist. Changing this forces a new Backup Vault to be created. @@ -83,6 +87,7 @@ type BackupVaultParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the Backup Vault. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -107,6 +112,7 @@ type IdentityObservation struct { type IdentityParameters struct { // Specifies the type of Managed Service Identity that should be configured on this Backup Vault. The only possible value is SystemAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/dataprotection/v1beta1/zz_resourceguard_types.go b/apis/dataprotection/v1beta1/zz_resourceguard_types.go index 80e62a561..d6922d229 100755 --- a/apis/dataprotection/v1beta1/zz_resourceguard_types.go +++ b/apis/dataprotection/v1beta1/zz_resourceguard_types.go @@ -46,6 +46,7 @@ type ResourceGuardObservation struct { type ResourceGuardParameters struct { // The Azure Region where the Resource Guard 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 where the Resource Guard should exist. Changing this forces a new resource to be created. @@ -62,9 +63,11 @@ type ResourceGuardParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the Resource Guard. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // A list of the critical operations which are not protected by this Resource Guard. + // +kubebuilder:validation:Optional VaultCriticalOperationExclusionList []*string `json:"vaultCriticalOperationExclusionList,omitempty" tf:"vault_critical_operation_exclusion_list,omitempty"` } diff --git a/apis/datashare/v1beta1/zz_account_types.go b/apis/datashare/v1beta1/zz_account_types.go index d13093e50..0a0e0e58a 100755 --- a/apis/datashare/v1beta1/zz_account_types.go +++ b/apis/datashare/v1beta1/zz_account_types.go @@ -46,9 +46,11 @@ type AccountObservation struct { type AccountParameters struct { // An identity block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // The Azure Region where the Data Share Account should exist. Changing this forces a new Data Share Account to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the Resource Group where the Data Share Account should exist. Changing this forces a new Data Share Account to be created. @@ -65,6 +67,7 @@ type AccountParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the Data Share Account. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -89,6 +92,7 @@ type IdentityObservation struct { type IdentityParameters struct { // Specifies the type of Managed Service Identity that should be configured on this Data Share Account. The only possible value is SystemAssigned. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/datashare/v1beta1/zz_datasetblobstorage_types.go b/apis/datashare/v1beta1/zz_datasetblobstorage_types.go index 72ba06f16..5c0aecca8 100755 --- a/apis/datashare/v1beta1/zz_datasetblobstorage_types.go +++ b/apis/datashare/v1beta1/zz_datasetblobstorage_types.go @@ -79,12 +79,15 @@ type DataSetBlobStorageParameters struct { DataShareIDSelector *v1.Selector `json:"dataShareIdSelector,omitempty" tf:"-"` // The path of the file in the storage container to be shared with the receiver. Changing this forces a new Data Share Blob Storage Dataset to be created. + // +kubebuilder:validation:Optional FilePath *string `json:"filePath,omitempty" tf:"file_path,omitempty"` // The path of the folder in the storage container to be shared with the receiver. Changing this forces a new Data Share Blob Storage Dataset to be created. + // +kubebuilder:validation:Optional FolderPath *string `json:"folderPath,omitempty" tf:"folder_path,omitempty"` // A storage_account block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional StorageAccount []StorageAccountParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` } @@ -135,6 +138,7 @@ type StorageAccountParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The subscription id of the storage account to be shared with the receiver. Changing this forces a new Data Share Blob Storage Dataset to be created. + // +kubebuilder:validation:Optional SubscriptionID *string `json:"subscriptionId,omitempty" tf:"subscription_id,omitempty"` } diff --git a/apis/datashare/v1beta1/zz_datasetdatalakegen2_types.go b/apis/datashare/v1beta1/zz_datasetdatalakegen2_types.go index 7795cde82..76841ce18 100755 --- a/apis/datashare/v1beta1/zz_datasetdatalakegen2_types.go +++ b/apis/datashare/v1beta1/zz_datasetdatalakegen2_types.go @@ -49,6 +49,7 @@ type DataSetDataLakeGen2Observation struct { type DataSetDataLakeGen2Parameters struct { // The path of the file in the data lake file system to be shared with the receiver. Conflicts with folder_path Changing this forces a new Data Share Data Lake Gen2 Dataset to be created. + // +kubebuilder:validation:Optional FilePath *string `json:"filePath,omitempty" tf:"file_path,omitempty"` // The name of the data lake file system to be shared with the receiver. Changing this forces a new Data Share Data Lake Gen2 Dataset to be created. @@ -65,6 +66,7 @@ type DataSetDataLakeGen2Parameters struct { FileSystemNameSelector *v1.Selector `json:"fileSystemNameSelector,omitempty" tf:"-"` // The folder path in the data lake file system to be shared with the receiver. Conflicts with file_path Changing this forces a new Data Share Data Lake Gen2 Dataset to be created. + // +kubebuilder:validation:Optional FolderPath *string `json:"folderPath,omitempty" tf:"folder_path,omitempty"` // The resource ID of the Data Share where this Data Share Data Lake Gen2 Dataset should be created. Changing this forces a new Data Share Data Lake Gen2 Dataset to be created. diff --git a/apis/datashare/v1beta1/zz_datashare_types.go b/apis/datashare/v1beta1/zz_datashare_types.go index 09b421f32..df704ad70 100755 --- a/apis/datashare/v1beta1/zz_datashare_types.go +++ b/apis/datashare/v1beta1/zz_datashare_types.go @@ -66,15 +66,19 @@ type DataShareParameters struct { AccountIDSelector *v1.Selector `json:"accountIdSelector,omitempty" tf:"-"` // The Data Share's description. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The kind of the Data Share. Possible values are CopyBased and InPlace. Changing this forces a new Data Share to be created. + // +kubebuilder:validation:Optional Kind *string `json:"kind,omitempty" tf:"kind,omitempty"` // A snapshot_schedule block as defined below. + // +kubebuilder:validation:Optional SnapshotSchedule []SnapshotScheduleParameters `json:"snapshotSchedule,omitempty" tf:"snapshot_schedule,omitempty"` // The terms of the Data Share. + // +kubebuilder:validation:Optional Terms *string `json:"terms,omitempty" tf:"terms,omitempty"` } @@ -105,12 +109,15 @@ type SnapshotScheduleObservation struct { type SnapshotScheduleParameters struct { // The name of the snapshot schedule. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The interval of the synchronization with the source data. Possible values are Hour and Day. + // +kubebuilder:validation:Optional Recurrence *string `json:"recurrence,omitempty" tf:"recurrence,omitempty"` // The synchronization with the source data's start time. + // +kubebuilder:validation:Optional StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` } diff --git a/apis/dbformariadb/v1beta1/zz_configuration_types.go b/apis/dbformariadb/v1beta1/zz_configuration_types.go index d1253c42e..7a92da7ed 100755 --- a/apis/dbformariadb/v1beta1/zz_configuration_types.go +++ b/apis/dbformariadb/v1beta1/zz_configuration_types.go @@ -43,6 +43,7 @@ type ConfigurationObservation struct { type ConfigurationParameters struct { // Specifies the name of the MariaDB Configuration, which needs to be a valid MariaDB configuration name. 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 MariaDB Server exists. Changing this forces a new resource to be created. @@ -72,6 +73,7 @@ type ConfigurationParameters struct { ServerNameSelector *v1.Selector `json:"serverNameSelector,omitempty" tf:"-"` // Specifies the value of the MariaDB Configuration. See the MariaDB documentation for valid values. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } diff --git a/apis/dbformariadb/v1beta1/zz_database_types.go b/apis/dbformariadb/v1beta1/zz_database_types.go index 50f5e27f7..63ce8939f 100755 --- a/apis/dbformariadb/v1beta1/zz_database_types.go +++ b/apis/dbformariadb/v1beta1/zz_database_types.go @@ -43,9 +43,11 @@ type DatabaseObservation struct { type DatabaseParameters struct { // Specifies the Charset for the MariaDB Database, which needs to be a valid MariaDB Charset. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Charset *string `json:"charset,omitempty" tf:"charset,omitempty"` // Specifies the Collation for the MariaDB Database, which needs to be a valid MariaDB Collation. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Collation *string `json:"collation,omitempty" tf:"collation,omitempty"` // The name of the resource group in which the MariaDB Server exists. Changing this forces a new resource to be created. diff --git a/apis/dbformariadb/v1beta1/zz_firewallrule_types.go b/apis/dbformariadb/v1beta1/zz_firewallrule_types.go index 0ddef5919..d474e27f8 100755 --- a/apis/dbformariadb/v1beta1/zz_firewallrule_types.go +++ b/apis/dbformariadb/v1beta1/zz_firewallrule_types.go @@ -43,6 +43,7 @@ type FirewallRuleObservation struct { type FirewallRuleParameters struct { // Specifies the End IP Address associated with this Firewall Rule. + // +kubebuilder:validation:Optional EndIPAddress *string `json:"endIpAddress,omitempty" tf:"end_ip_address,omitempty"` // The name of the resource group in which the MariaDB Server exists. Changing this forces a new resource to be created. @@ -72,6 +73,7 @@ type FirewallRuleParameters struct { ServerNameSelector *v1.Selector `json:"serverNameSelector,omitempty" tf:"-"` // Specifies the Start IP Address associated with this Firewall Rule. + // +kubebuilder:validation:Optional StartIPAddress *string `json:"startIpAddress,omitempty" tf:"start_ip_address,omitempty"` } diff --git a/apis/dbformariadb/v1beta1/zz_server_types.go b/apis/dbformariadb/v1beta1/zz_server_types.go index 8a98754f3..01e9d1178 100755 --- a/apis/dbformariadb/v1beta1/zz_server_types.go +++ b/apis/dbformariadb/v1beta1/zz_server_types.go @@ -118,6 +118,7 @@ type ServerObservation struct { type ServerParameters struct { // The Administrator login for the MariaDB Server. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional AdministratorLogin *string `json:"administratorLogin,omitempty" tf:"administrator_login,omitempty"` // The Password associated with the administrator_login for the MariaDB Server. @@ -125,12 +126,15 @@ type ServerParameters struct { AdministratorLoginPasswordSecretRef *v1.SecretKeySelector `json:"administratorLoginPasswordSecretRef,omitempty" tf:"-"` // Enable/Disable auto-growing of the storage. Storage auto-grow prevents your server from running out of storage and becoming read-only. If storage auto grow is enabled, the storage automatically grows without impacting the workload. The default value if not explicitly specified is true. + // +kubebuilder:validation:Optional AutoGrowEnabled *bool `json:"autoGrowEnabled,omitempty" tf:"auto_grow_enabled,omitempty"` // Backup retention days for the server, supported values are between 7 and 35 days. + // +kubebuilder:validation:Optional BackupRetentionDays *float64 `json:"backupRetentionDays,omitempty" tf:"backup_retention_days,omitempty"` // The creation mode. Can be used to restore or replicate existing servers. Possible values are Default, Replica, GeoRestore, and PointInTimeRestore. Defaults to Default. + // +kubebuilder:validation:Optional CreateMode *string `json:"createMode,omitempty" tf:"create_mode,omitempty"` // For creation modes other than Default, the source server ID to use. @@ -148,12 +152,15 @@ type ServerParameters struct { CreationSourceServerIDSelector *v1.Selector `json:"creationSourceServerIdSelector,omitempty" tf:"-"` // Turn Geo-redundant server backups on/off. This allows you to choose between locally redundant or geo-redundant backup storage in the General Purpose and Memory Optimized tiers. When the backups are stored in geo-redundant backup storage, they are not only stored within the region in which your server is hosted, but are also replicated to a paired data center. This provides better protection and ability to restore your server in a different region in the event of a disaster. This is not supported for the Basic tier. + // +kubebuilder:validation:Optional GeoRedundantBackupEnabled *bool `json:"geoRedundantBackupEnabled,omitempty" tf:"geo_redundant_backup_enabled,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Whether or not public network access is allowed for this server. Defaults to true. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // The name of the resource group in which to create the MariaDB Server. Changing this forces a new resource to be created. @@ -170,24 +177,31 @@ type ServerParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // When create_mode is PointInTimeRestore, specifies the point in time to restore from creation_source_server_id. It should be provided in RFC3339 format, e.g. 2013-11-08T22:00:40Z. + // +kubebuilder:validation:Optional RestorePointInTime *string `json:"restorePointInTime,omitempty" tf:"restore_point_in_time,omitempty"` // Specifies if SSL should be enforced on connections. Possible values are true and false. + // +kubebuilder:validation:Optional SSLEnforcementEnabled *bool `json:"sslEnforcementEnabled,omitempty" tf:"ssl_enforcement_enabled,omitempty"` // The minimum TLS version to support on the sever. Possible values are TLSEnforcementDisabled, TLS1_0, TLS1_1, and TLS1_2. Defaults to TLS1_2. + // +kubebuilder:validation:Optional SSLMinimalTLSVersionEnforced *string `json:"sslMinimalTlsVersionEnforced,omitempty" tf:"ssl_minimal_tls_version_enforced,omitempty"` // Specifies the SKU Name for this MariaDB Server. The name of the SKU, follows the tier + family + cores pattern (e.g. B_Gen4_1, GP_Gen5_8). For more information see the product documentation. Possible values are B_Gen5_1, B_Gen5_2, GP_Gen5_2, GP_Gen5_4, GP_Gen5_8, GP_Gen5_16, GP_Gen5_32, MO_Gen5_2, MO_Gen5_4, MO_Gen5_8 and MO_Gen5_16. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // Max storage allowed for a server. Possible values are between 5120 MB (5GB) and 1024000MB (1TB) for the Basic SKU and between 5120 MB (5GB) and 4096000 MB (4TB) for General Purpose/Memory Optimized SKUs. For more information see the product documentation. + // +kubebuilder:validation:Optional StorageMb *float64 `json:"storageMb,omitempty" tf:"storage_mb,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the version of MariaDB to use. Possible values are 10.2 and 10.3. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` } diff --git a/apis/dbformysql/v1beta1/zz_activedirectoryadministrator_types.go b/apis/dbformysql/v1beta1/zz_activedirectoryadministrator_types.go index c92ddf9a8..42029b5f6 100755 --- a/apis/dbformysql/v1beta1/zz_activedirectoryadministrator_types.go +++ b/apis/dbformysql/v1beta1/zz_activedirectoryadministrator_types.go @@ -49,9 +49,11 @@ type ActiveDirectoryAdministratorObservation struct { type ActiveDirectoryAdministratorParameters struct { // The login name of the principal to set as the server administrator + // +kubebuilder:validation:Optional Login *string `json:"login,omitempty" tf:"login,omitempty"` // The ID of the principal to set as the server administrator. For a managed identity this should be the Client ID of the identity. + // +kubebuilder:validation:Optional ObjectID *string `json:"objectId,omitempty" tf:"object_id,omitempty"` // The name of the resource group for the MySQL server. Changing this forces a new resource to be created. @@ -81,6 +83,7 @@ type ActiveDirectoryAdministratorParameters struct { ServerNameSelector *v1.Selector `json:"serverNameSelector,omitempty" tf:"-"` // The Azure Tenant ID + // +kubebuilder:validation:Optional TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` } diff --git a/apis/dbformysql/v1beta1/zz_configuration_types.go b/apis/dbformysql/v1beta1/zz_configuration_types.go index 18e0d7a9d..9237ab470 100755 --- a/apis/dbformysql/v1beta1/zz_configuration_types.go +++ b/apis/dbformysql/v1beta1/zz_configuration_types.go @@ -43,6 +43,7 @@ type ConfigurationObservation struct { type ConfigurationParameters struct { // Specifies the name of the MySQL Configuration, which needs to be a valid MySQL configuration name. 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 MySQL Server exists. Changing this forces a new resource to be created. @@ -72,6 +73,7 @@ type ConfigurationParameters struct { ServerNameSelector *v1.Selector `json:"serverNameSelector,omitempty" tf:"-"` // Specifies the value of the MySQL Configuration. See the MySQL documentation for valid values. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } diff --git a/apis/dbformysql/v1beta1/zz_database_types.go b/apis/dbformysql/v1beta1/zz_database_types.go index 6306ea027..4161345ff 100755 --- a/apis/dbformysql/v1beta1/zz_database_types.go +++ b/apis/dbformysql/v1beta1/zz_database_types.go @@ -43,9 +43,11 @@ type DatabaseObservation struct { type DatabaseParameters struct { // Specifies the Charset for the MySQL Database, which needs to be a valid MySQL Charset. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Charset *string `json:"charset,omitempty" tf:"charset,omitempty"` // Specifies the Collation for the MySQL Database, which needs to be a valid MySQL Collation. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Collation *string `json:"collation,omitempty" tf:"collation,omitempty"` // The name of the resource group in which the MySQL Server exists. Changing this forces a new resource to be created. diff --git a/apis/dbformysql/v1beta1/zz_firewallrule_types.go b/apis/dbformysql/v1beta1/zz_firewallrule_types.go index 6e0771392..98c7b6987 100755 --- a/apis/dbformysql/v1beta1/zz_firewallrule_types.go +++ b/apis/dbformysql/v1beta1/zz_firewallrule_types.go @@ -43,6 +43,7 @@ type FirewallRuleObservation struct { type FirewallRuleParameters struct { // Specifies the End IP Address associated with this Firewall Rule. + // +kubebuilder:validation:Optional EndIPAddress *string `json:"endIpAddress,omitempty" tf:"end_ip_address,omitempty"` // The name of the resource group in which the MySQL Server exists. Changing this forces a new resource to be created. @@ -72,6 +73,7 @@ type FirewallRuleParameters struct { ServerNameSelector *v1.Selector `json:"serverNameSelector,omitempty" tf:"-"` // Specifies the Start IP Address associated with this Firewall Rule. + // +kubebuilder:validation:Optional StartIPAddress *string `json:"startIpAddress,omitempty" tf:"start_ip_address,omitempty"` } diff --git a/apis/dbformysql/v1beta1/zz_flexibledatabase_types.go b/apis/dbformysql/v1beta1/zz_flexibledatabase_types.go index 91ed486db..590d3df9d 100755 --- a/apis/dbformysql/v1beta1/zz_flexibledatabase_types.go +++ b/apis/dbformysql/v1beta1/zz_flexibledatabase_types.go @@ -43,9 +43,11 @@ type FlexibleDatabaseObservation struct { type FlexibleDatabaseParameters struct { // Specifies the Charset for the MySQL Database, which needs to be a valid MySQL Charset. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Charset *string `json:"charset,omitempty" tf:"charset,omitempty"` // Specifies the Collation for the MySQL Database, which needs to be a valid MySQL Collation. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Collation *string `json:"collation,omitempty" tf:"collation,omitempty"` // The name of the resource group in which the MySQL Server exists. Changing this forces a new resource to be created. diff --git a/apis/dbformysql/v1beta1/zz_flexibleserver_types.go b/apis/dbformysql/v1beta1/zz_flexibleserver_types.go index a16d502a9..60108d953 100755 --- a/apis/dbformysql/v1beta1/zz_flexibleserver_types.go +++ b/apis/dbformysql/v1beta1/zz_flexibleserver_types.go @@ -46,15 +46,19 @@ type CustomerManagedKeyObservation struct { type CustomerManagedKeyParameters struct { // The ID of the geo backup Key Vault Key. It can't cross region and need Customer Managed Key in same region as geo backup. + // +kubebuilder:validation:Optional GeoBackupKeyVaultKeyID *string `json:"geoBackupKeyVaultKeyId,omitempty" tf:"geo_backup_key_vault_key_id,omitempty"` // The geo backup user managed identity id for a Customer Managed Key. Should be added with identity_ids. It can't cross region and need identity in same region as geo backup. + // +kubebuilder:validation:Optional GeoBackupUserAssignedIdentityID *string `json:"geoBackupUserAssignedIdentityId,omitempty" tf:"geo_backup_user_assigned_identity_id,omitempty"` // The ID of the Key Vault Key. + // +kubebuilder:validation:Optional KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"` // Specifies the primary user managed identity id for a Customer Managed Key. Should be added with identity_ids. + // +kubebuilder:validation:Optional PrimaryUserAssignedIdentityID *string `json:"primaryUserAssignedIdentityId,omitempty" tf:"primary_user_assigned_identity_id,omitempty"` } @@ -190,6 +194,7 @@ type FlexibleServerObservation struct { type FlexibleServerParameters struct { // The Administrator login for the MySQL Flexible Server. Required when create_mode is Default. Changing this forces a new MySQL Flexible Server to be created. + // +kubebuilder:validation:Optional AdministratorLogin *string `json:"administratorLogin,omitempty" tf:"administrator_login,omitempty"` // The Password associated with the administrator_login for the MySQL Flexible Server. Required when create_mode is Default. @@ -197,12 +202,15 @@ type FlexibleServerParameters struct { AdministratorPasswordSecretRef *v1.SecretKeySelector `json:"administratorPasswordSecretRef,omitempty" tf:"-"` // The backup retention days for the MySQL Flexible Server. Possible values are between 1 and 35 days. Defaults to 7. + // +kubebuilder:validation:Optional BackupRetentionDays *float64 `json:"backupRetentionDays,omitempty" tf:"backup_retention_days,omitempty"` // The creation mode which can be used to restore or replicate existing servers. Possible values are Default, PointInTimeRestore, GeoRestore, and Replica. Changing this forces a new MySQL Flexible Server to be created. + // +kubebuilder:validation:Optional CreateMode *string `json:"createMode,omitempty" tf:"create_mode,omitempty"` // A customer_managed_key block as defined below. + // +kubebuilder:validation:Optional CustomerManagedKey []CustomerManagedKeyParameters `json:"customerManagedKey,omitempty" tf:"customer_managed_key,omitempty"` // The ID of the virtual network subnet to create the MySQL Flexible Server. Changing this forces a new MySQL Flexible Server to be created. @@ -220,21 +228,27 @@ type FlexibleServerParameters struct { DelegatedSubnetIDSelector *v1.Selector `json:"delegatedSubnetIdSelector,omitempty" tf:"-"` // Should geo redundant backup enabled? Defaults to false. Changing this forces a new MySQL Flexible Server to be created. + // +kubebuilder:validation:Optional GeoRedundantBackupEnabled *bool `json:"geoRedundantBackupEnabled,omitempty" tf:"geo_redundant_backup_enabled,omitempty"` // A high_availability block as defined below. + // +kubebuilder:validation:Optional HighAvailability []HighAvailabilityParameters `json:"highAvailability,omitempty" tf:"high_availability,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // The Azure Region where the MySQL Flexible Server should exist. Changing this forces a new MySQL Flexible Server to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // A maintenance_window block as defined below. + // +kubebuilder:validation:Optional MaintenanceWindow []MaintenanceWindowParameters `json:"maintenanceWindow,omitempty" tf:"maintenance_window,omitempty"` // The point in time to restore from creation_source_server_id when create_mode is PointInTimeRestore. Changing this forces a new MySQL Flexible Server to be created. + // +kubebuilder:validation:Optional PointInTimeRestoreTimeInUtc *string `json:"pointInTimeRestoreTimeInUtc,omitempty" tf:"point_in_time_restore_time_in_utc,omitempty"` // The ID of the private DNS zone to create the MySQL Flexible Server. Changing this forces a new MySQL Flexible Server to be created. @@ -252,6 +266,7 @@ type FlexibleServerParameters struct { PrivateDNSZoneIDSelector *v1.Selector `json:"privateDnsZoneIdSelector,omitempty" tf:"-"` // The replication role. Possible value is None. + // +kubebuilder:validation:Optional ReplicationRole *string `json:"replicationRole,omitempty" tf:"replication_role,omitempty"` // The name of the Resource Group where the MySQL Flexible Server should exist. Changing this forces a new MySQL Flexible Server to be created. @@ -268,21 +283,27 @@ type FlexibleServerParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The SKU Name for the MySQL Flexible Server. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // The resource ID of the source MySQL Flexible Server to be restored. Required when create_mode is PointInTimeRestore, GeoRestore, and Replica. Changing this forces a new MySQL Flexible Server to be created. + // +kubebuilder:validation:Optional SourceServerID *string `json:"sourceServerId,omitempty" tf:"source_server_id,omitempty"` // A storage block as defined below. + // +kubebuilder:validation:Optional Storage []StorageParameters `json:"storage,omitempty" tf:"storage,omitempty"` // A mapping of tags which should be assigned to the MySQL Flexible Server. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The version of the MySQL Flexible Server to use. Possible values are 5.7, and 8.0.21. Changing this forces a new MySQL Flexible Server to be created. + // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` // Specifies the Availability Zone in which this MySQL Flexible Server should be located. Possible values are 1, 2 and 3. + // +kubebuilder:validation:Optional Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` } @@ -307,9 +328,11 @@ type HighAvailabilityObservation struct { type HighAvailabilityParameters struct { // The high availability mode for the MySQL Flexible Server. Possibles values are SameZone and ZoneRedundant. + // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // Specifies the Availability Zone in which the standby Flexible Server should be located. Possible values are 1, 2 and 3. + // +kubebuilder:validation:Optional StandbyAvailabilityZone *string `json:"standbyAvailabilityZone,omitempty" tf:"standby_availability_zone,omitempty"` } @@ -334,9 +357,11 @@ type IdentityObservation struct { type IdentityParameters struct { // A list of User Assigned Managed Identity IDs to be assigned to this MySQL Flexible Server. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this MySQL Flexible Server. The only possible value is UserAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -367,12 +392,15 @@ type MaintenanceWindowObservation struct { type MaintenanceWindowParameters struct { // The day of week for maintenance window. Defaults to 0. + // +kubebuilder:validation:Optional DayOfWeek *float64 `json:"dayOfWeek,omitempty" tf:"day_of_week,omitempty"` // The start hour for maintenance window. Defaults to 0. + // +kubebuilder:validation:Optional StartHour *float64 `json:"startHour,omitempty" tf:"start_hour,omitempty"` // The start minute for maintenance window. Defaults to 0. + // +kubebuilder:validation:Optional StartMinute *float64 `json:"startMinute,omitempty" tf:"start_minute,omitempty"` } @@ -403,12 +431,15 @@ type StorageObservation struct { type StorageParameters struct { // Should Storage Auto Grow be enabled? Defaults to true. + // +kubebuilder:validation:Optional AutoGrowEnabled *bool `json:"autoGrowEnabled,omitempty" tf:"auto_grow_enabled,omitempty"` // The storage IOPS for the MySQL Flexible Server. Possible values are between 360 and 20000. + // +kubebuilder:validation:Optional Iops *float64 `json:"iops,omitempty" tf:"iops,omitempty"` // The max storage allowed for the MySQL Flexible Server. Possible values are between 20 and 16384. + // +kubebuilder:validation:Optional SizeGb *float64 `json:"sizeGb,omitempty" tf:"size_gb,omitempty"` } diff --git a/apis/dbformysql/v1beta1/zz_flexibleserverconfiguration_types.go b/apis/dbformysql/v1beta1/zz_flexibleserverconfiguration_types.go index 9439f441d..9d2815055 100755 --- a/apis/dbformysql/v1beta1/zz_flexibleserverconfiguration_types.go +++ b/apis/dbformysql/v1beta1/zz_flexibleserverconfiguration_types.go @@ -63,6 +63,7 @@ type FlexibleServerConfigurationParameters struct { ServerNameSelector *v1.Selector `json:"serverNameSelector,omitempty" tf:"-"` // Specifies the value of the MySQL Flexible Server Configuration. See the MySQL documentation for valid values. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } diff --git a/apis/dbformysql/v1beta1/zz_flexibleserverfirewallrule_types.go b/apis/dbformysql/v1beta1/zz_flexibleserverfirewallrule_types.go index 75bf49e7d..9cd17ff5c 100755 --- a/apis/dbformysql/v1beta1/zz_flexibleserverfirewallrule_types.go +++ b/apis/dbformysql/v1beta1/zz_flexibleserverfirewallrule_types.go @@ -43,6 +43,7 @@ type FlexibleServerFirewallRuleObservation struct { type FlexibleServerFirewallRuleParameters struct { // Specifies the End IP Address associated with this Firewall Rule. + // +kubebuilder:validation:Optional EndIPAddress *string `json:"endIpAddress,omitempty" tf:"end_ip_address,omitempty"` // The name of the resource group in which the MySQL Flexible Server exists. Changing this forces a new resource to be created. @@ -72,6 +73,7 @@ type FlexibleServerFirewallRuleParameters struct { ServerNameSelector *v1.Selector `json:"serverNameSelector,omitempty" tf:"-"` // Specifies the Start IP Address associated with this Firewall Rule. + // +kubebuilder:validation:Optional StartIPAddress *string `json:"startIpAddress,omitempty" tf:"start_ip_address,omitempty"` } diff --git a/apis/dbformysql/v1beta1/zz_server_types.go b/apis/dbformysql/v1beta1/zz_server_types.go index 718f4c9d3..bcbded6b5 100755 --- a/apis/dbformysql/v1beta1/zz_server_types.go +++ b/apis/dbformysql/v1beta1/zz_server_types.go @@ -34,6 +34,7 @@ type ServerIdentityObservation struct { type ServerIdentityParameters struct { // Specifies the type of Managed Service Identity that should be configured on this MySQL Server. The only possible value is SystemAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -163,6 +164,7 @@ type ServerObservation struct { type ServerParameters struct { // The Administrator login for the MySQL Server. Required when create_mode is Default. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional AdministratorLogin *string `json:"administratorLogin,omitempty" tf:"administrator_login,omitempty"` // The Password associated with the administrator_login for the MySQL Server. Required when create_mode is Default. @@ -170,30 +172,39 @@ type ServerParameters struct { AdministratorLoginPasswordSecretRef *v1.SecretKeySelector `json:"administratorLoginPasswordSecretRef,omitempty" tf:"-"` // Enable/Disable auto-growing of the storage. Storage auto-grow prevents your server from running out of storage and becoming read-only. If storage auto grow is enabled, the storage automatically grows without impacting the workload. The default value if not explicitly specified is true. + // +kubebuilder:validation:Optional AutoGrowEnabled *bool `json:"autoGrowEnabled,omitempty" tf:"auto_grow_enabled,omitempty"` // Backup retention days for the server, supported values are between 7 and 35 days. + // +kubebuilder:validation:Optional BackupRetentionDays *float64 `json:"backupRetentionDays,omitempty" tf:"backup_retention_days,omitempty"` // The creation mode. Can be used to restore or replicate existing servers. Possible values are Default, Replica, GeoRestore, and PointInTimeRestore. Defaults to Default. + // +kubebuilder:validation:Optional CreateMode *string `json:"createMode,omitempty" tf:"create_mode,omitempty"` // For creation modes other than Default, the source server ID to use. + // +kubebuilder:validation:Optional CreationSourceServerID *string `json:"creationSourceServerId,omitempty" tf:"creation_source_server_id,omitempty"` // Turn Geo-redundant server backups on/off. This allows you to choose between locally redundant or geo-redundant backup storage in the General Purpose and Memory Optimized tiers. When the backups are stored in geo-redundant backup storage, they are not only stored within the region in which your server is hosted, but are also replicated to a paired data center. This provides better protection and ability to restore your server in a different region in the event of a disaster. This is not supported for the Basic tier. + // +kubebuilder:validation:Optional GeoRedundantBackupEnabled *bool `json:"geoRedundantBackupEnabled,omitempty" tf:"geo_redundant_backup_enabled,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []ServerIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // Whether or not infrastructure is encrypted for this server. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional InfrastructureEncryptionEnabled *bool `json:"infrastructureEncryptionEnabled,omitempty" tf:"infrastructure_encryption_enabled,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Whether or not public network access is allowed for this server. Defaults to true. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // The name of the resource group in which to create the MySQL Server. Changing this forces a new resource to be created. @@ -210,27 +221,35 @@ type ServerParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // When create_mode is PointInTimeRestore, specifies the point in time to restore from creation_source_server_id. It should be provided in RFC3339 format, e.g. 2013-11-08T22:00:40Z. + // +kubebuilder:validation:Optional RestorePointInTime *string `json:"restorePointInTime,omitempty" tf:"restore_point_in_time,omitempty"` // Specifies if SSL should be enforced on connections. Possible values are true and false. + // +kubebuilder:validation:Optional SSLEnforcementEnabled *bool `json:"sslEnforcementEnabled,omitempty" tf:"ssl_enforcement_enabled,omitempty"` // The minimum TLS version to support on the sever. Possible values are TLSEnforcementDisabled, TLS1_0, TLS1_1, and TLS1_2. Defaults to TLS1_2. + // +kubebuilder:validation:Optional SSLMinimalTLSVersionEnforced *string `json:"sslMinimalTlsVersionEnforced,omitempty" tf:"ssl_minimal_tls_version_enforced,omitempty"` // Specifies the SKU Name for this MySQL Server. The name of the SKU, follows the tier + family + cores pattern (e.g. B_Gen4_1, GP_Gen5_8). For more information see the product documentation. Possible values are B_Gen4_1, B_Gen4_2, B_Gen5_1, B_Gen5_2, GP_Gen4_2, GP_Gen4_4, GP_Gen4_8, GP_Gen4_16, GP_Gen4_32, GP_Gen5_2, GP_Gen5_4, GP_Gen5_8, GP_Gen5_16, GP_Gen5_32, GP_Gen5_64, MO_Gen5_2, MO_Gen5_4, MO_Gen5_8, MO_Gen5_16 and MO_Gen5_32. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // Max storage allowed for a server. Possible values are between 5120 MB(5GB) and 1048576 MB(1TB) for the Basic SKU and between 5120 MB(5GB) and 16777216 MB(16TB) for General Purpose/Memory Optimized SKUs. For more information see the product documentation. + // +kubebuilder:validation:Optional StorageMb *float64 `json:"storageMb,omitempty" tf:"storage_mb,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Threat detection policy configuration, known in the API as Server Security Alerts Policy. The threat_detection_policy block supports fields documented below. + // +kubebuilder:validation:Optional ThreatDetectionPolicy []ThreatDetectionPolicyParameters `json:"threatDetectionPolicy,omitempty" tf:"threat_detection_policy,omitempty"` // Specifies the version of MySQL to use. Valid values are 5.7, or 8.0. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` } @@ -279,18 +298,23 @@ type ThreatDetectionPolicyObservation struct { type ThreatDetectionPolicyParameters struct { // Specifies a list of alerts which should be disabled. Possible values are Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Data_Exfiltration and Unsafe_Action. + // +kubebuilder:validation:Optional DisabledAlerts []*string `json:"disabledAlerts,omitempty" tf:"disabled_alerts,omitempty"` // Should the account administrators be emailed when this alert is triggered? + // +kubebuilder:validation:Optional EmailAccountAdmins *bool `json:"emailAccountAdmins,omitempty" tf:"email_account_admins,omitempty"` // A list of email addresses which alerts should be sent to. + // +kubebuilder:validation:Optional EmailAddresses []*string `json:"emailAddresses,omitempty" tf:"email_addresses,omitempty"` // Is the policy enabled? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Specifies the number of days to keep in the Threat Detection audit logs. + // +kubebuilder:validation:Optional RetentionDays *float64 `json:"retentionDays,omitempty" tf:"retention_days,omitempty"` // Specifies the identifier key of the Threat Detection audit storage account. @@ -298,6 +322,7 @@ type ThreatDetectionPolicyParameters struct { StorageAccountAccessKeySecretRef *v1.SecretKeySelector `json:"storageAccountAccessKeySecretRef,omitempty" tf:"-"` // Specifies the blob storage endpoint (e.g. https://example.blob.core.windows.net). This blob storage will hold all Threat Detection audit logs. + // +kubebuilder:validation:Optional StorageEndpoint *string `json:"storageEndpoint,omitempty" tf:"storage_endpoint,omitempty"` } diff --git a/apis/dbforpostgresql/v1beta1/zz_activedirectoryadministrator_types.go b/apis/dbforpostgresql/v1beta1/zz_activedirectoryadministrator_types.go index 80a87c387..12a8ef8df 100755 --- a/apis/dbforpostgresql/v1beta1/zz_activedirectoryadministrator_types.go +++ b/apis/dbforpostgresql/v1beta1/zz_activedirectoryadministrator_types.go @@ -49,9 +49,11 @@ type ActiveDirectoryAdministratorObservation struct { type ActiveDirectoryAdministratorParameters struct { // The login name of the principal to set as the server administrator + // +kubebuilder:validation:Optional Login *string `json:"login,omitempty" tf:"login,omitempty"` // The ID of the principal to set as the server administrator. For a managed identity this should be the Client ID of the identity. + // +kubebuilder:validation:Optional ObjectID *string `json:"objectId,omitempty" tf:"object_id,omitempty"` // The name of the resource group for the PostgreSQL server. Changing this forces a new resource to be created. @@ -81,6 +83,7 @@ type ActiveDirectoryAdministratorParameters struct { ServerNameSelector *v1.Selector `json:"serverNameSelector,omitempty" tf:"-"` // The Azure Tenant ID + // +kubebuilder:validation:Optional TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` } diff --git a/apis/dbforpostgresql/v1beta1/zz_configuration_types.go b/apis/dbforpostgresql/v1beta1/zz_configuration_types.go index 386fdb936..bcbd9bdde 100755 --- a/apis/dbforpostgresql/v1beta1/zz_configuration_types.go +++ b/apis/dbforpostgresql/v1beta1/zz_configuration_types.go @@ -43,6 +43,7 @@ type ConfigurationObservation struct { type ConfigurationParameters struct { // Specifies the name of the PostgreSQL Configuration, which needs to be a valid PostgreSQL configuration name. 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 PostgreSQL Server exists. Changing this forces a new resource to be created. @@ -72,6 +73,7 @@ type ConfigurationParameters struct { ServerNameSelector *v1.Selector `json:"serverNameSelector,omitempty" tf:"-"` // Specifies the value of the PostgreSQL Configuration. See the PostgreSQL documentation for valid values. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } diff --git a/apis/dbforpostgresql/v1beta1/zz_database_types.go b/apis/dbforpostgresql/v1beta1/zz_database_types.go index acd68a170..39ec539d5 100755 --- a/apis/dbforpostgresql/v1beta1/zz_database_types.go +++ b/apis/dbforpostgresql/v1beta1/zz_database_types.go @@ -43,9 +43,11 @@ type DatabaseObservation struct { type DatabaseParameters struct { // Specifies the Charset for the PostgreSQL Database, which needs to be a valid PostgreSQL Charset. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Charset *string `json:"charset,omitempty" tf:"charset,omitempty"` // Specifies the Collation for the PostgreSQL Database, which needs to be a valid PostgreSQL Collation. Note that Microsoft uses different notation - en-US instead of en_US. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Collation *string `json:"collation,omitempty" tf:"collation,omitempty"` // The name of the resource group in which the PostgreSQL Server exists. Changing this forces a new resource to be created. diff --git a/apis/dbforpostgresql/v1beta1/zz_firewallrule_types.go b/apis/dbforpostgresql/v1beta1/zz_firewallrule_types.go index 203987c77..eef20ca0c 100755 --- a/apis/dbforpostgresql/v1beta1/zz_firewallrule_types.go +++ b/apis/dbforpostgresql/v1beta1/zz_firewallrule_types.go @@ -43,6 +43,7 @@ type FirewallRuleObservation struct { type FirewallRuleParameters struct { // Specifies the End IP Address associated with this Firewall Rule. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional EndIPAddress *string `json:"endIpAddress,omitempty" tf:"end_ip_address,omitempty"` // The name of the resource group in which the PostgreSQL Server exists. Changing this forces a new resource to be created. @@ -72,6 +73,7 @@ type FirewallRuleParameters struct { ServerNameSelector *v1.Selector `json:"serverNameSelector,omitempty" tf:"-"` // Specifies the Start IP Address associated with this Firewall Rule. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional StartIPAddress *string `json:"startIpAddress,omitempty" tf:"start_ip_address,omitempty"` } diff --git a/apis/dbforpostgresql/v1beta1/zz_flexibleserver_types.go b/apis/dbforpostgresql/v1beta1/zz_flexibleserver_types.go index 5c39b5b72..3e32b6453 100755 --- a/apis/dbforpostgresql/v1beta1/zz_flexibleserver_types.go +++ b/apis/dbforpostgresql/v1beta1/zz_flexibleserver_types.go @@ -40,12 +40,15 @@ type AuthenticationObservation struct { type AuthenticationParameters struct { // Whether or not Active Directory authentication is allowed to access the PostgreSQL Flexible Server. Defaults to false. + // +kubebuilder:validation:Optional ActiveDirectoryAuthEnabled *bool `json:"activeDirectoryAuthEnabled,omitempty" tf:"active_directory_auth_enabled,omitempty"` // Whether or not password authentication is allowed to access the PostgreSQL Flexible Server. Defaults to true. + // +kubebuilder:validation:Optional PasswordAuthEnabled *bool `json:"passwordAuthEnabled,omitempty" tf:"password_auth_enabled,omitempty"` // The Tenant ID of the Azure Active Directory which is used by the Active Directory authentication. active_directory_auth_enabled must be set to true. + // +kubebuilder:validation:Optional TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` } @@ -70,9 +73,11 @@ type CustomerManagedKeyObservation struct { type CustomerManagedKeyParameters struct { // The ID of the Key Vault Key. + // +kubebuilder:validation:Optional KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"` // Specifies the primary user managed identity id for a Customer Managed Key. Should be added with identity_ids. + // +kubebuilder:validation:Optional PrimaryUserAssignedIdentityID *string `json:"primaryUserAssignedIdentityId,omitempty" tf:"primary_user_assigned_identity_id,omitempty"` } @@ -211,6 +216,7 @@ type FlexibleServerObservation struct { type FlexibleServerParameters struct { // The Administrator login for the PostgreSQL Flexible Server. Required when create_mode is Default and authentication.password_auth_enabled is true. + // +kubebuilder:validation:Optional AdministratorLogin *string `json:"administratorLogin,omitempty" tf:"administrator_login,omitempty"` // The Password associated with the administrator_login for the PostgreSQL Flexible Server. Required when create_mode is Default and authentication.password_auth_enabled is true. @@ -218,15 +224,19 @@ type FlexibleServerParameters struct { AdministratorPasswordSecretRef *v1.SecretKeySelector `json:"administratorPasswordSecretRef,omitempty" tf:"-"` // An authentication block as defined below. + // +kubebuilder:validation:Optional Authentication []AuthenticationParameters `json:"authentication,omitempty" tf:"authentication,omitempty"` // The backup retention days for the PostgreSQL Flexible Server. Possible values are between 7 and 35 days. + // +kubebuilder:validation:Optional BackupRetentionDays *float64 `json:"backupRetentionDays,omitempty" tf:"backup_retention_days,omitempty"` // The creation mode which can be used to restore or replicate existing servers. Possible values are Default, PointInTimeRestore, Replica and Update. Changing this forces a new PostgreSQL Flexible Server to be created. + // +kubebuilder:validation:Optional CreateMode *string `json:"createMode,omitempty" tf:"create_mode,omitempty"` // A customer_managed_key block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional CustomerManagedKey []CustomerManagedKeyParameters `json:"customerManagedKey,omitempty" tf:"customer_managed_key,omitempty"` // The ID of the virtual network subnet to create the PostgreSQL Flexible Server. The provided subnet should not have any other resource deployed in it and this subnet will be delegated to the PostgreSQL Flexible Server, if not already delegated. Changing this forces a new PostgreSQL Flexible Server to be created. @@ -244,21 +254,27 @@ type FlexibleServerParameters struct { DelegatedSubnetIDSelector *v1.Selector `json:"delegatedSubnetIdSelector,omitempty" tf:"-"` // Is Geo-Redundant backup enabled on the PostgreSQL Flexible Server. Defaults to false. Changing this forces a new PostgreSQL Flexible Server to be created. + // +kubebuilder:validation:Optional GeoRedundantBackupEnabled *bool `json:"geoRedundantBackupEnabled,omitempty" tf:"geo_redundant_backup_enabled,omitempty"` // A high_availability block as defined below. + // +kubebuilder:validation:Optional HighAvailability []HighAvailabilityParameters `json:"highAvailability,omitempty" tf:"high_availability,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // The Azure Region where the PostgreSQL Flexible Server should exist. Changing this forces a new PostgreSQL Flexible Server to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // A maintenance_window block as defined below. + // +kubebuilder:validation:Optional MaintenanceWindow []MaintenanceWindowParameters `json:"maintenanceWindow,omitempty" tf:"maintenance_window,omitempty"` // The point in time to restore from source_server_id when create_mode is PointInTimeRestore. Changing this forces a new PostgreSQL Flexible Server to be created. + // +kubebuilder:validation:Optional PointInTimeRestoreTimeInUtc *string `json:"pointInTimeRestoreTimeInUtc,omitempty" tf:"point_in_time_restore_time_in_utc,omitempty"` // The ID of the private DNS zone to create the PostgreSQL Flexible Server. Changing this forces a new PostgreSQL Flexible Server to be created. @@ -276,6 +292,7 @@ type FlexibleServerParameters struct { PrivateDNSZoneIDSelector *v1.Selector `json:"privateDnsZoneIdSelector,omitempty" tf:"-"` // The replication role for the PostgreSQL Flexible Server. Possible value is None. + // +kubebuilder:validation:Optional ReplicationRole *string `json:"replicationRole,omitempty" tf:"replication_role,omitempty"` // The name of the Resource Group where the PostgreSQL Flexible Server should exist. Changing this forces a new PostgreSQL Flexible Server to be created. @@ -292,21 +309,27 @@ type FlexibleServerParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The SKU Name for the PostgreSQL Flexible Server. The name of the SKU, follows the tier + name pattern (e.g. B_Standard_B1ms, GP_Standard_D2s_v3, MO_Standard_E4s_v3). + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // The resource ID of the source PostgreSQL Flexible Server to be restored. Required when create_mode is PointInTimeRestore or Replica. Changing this forces a new PostgreSQL Flexible Server to be created. + // +kubebuilder:validation:Optional SourceServerID *string `json:"sourceServerId,omitempty" tf:"source_server_id,omitempty"` // The max storage allowed for the PostgreSQL Flexible Server. Possible values are 32768, 65536, 131072, 262144, 524288, 1048576, 2097152, 4194304, 8388608, and 16777216. + // +kubebuilder:validation:Optional StorageMb *float64 `json:"storageMb,omitempty" tf:"storage_mb,omitempty"` // A mapping of tags which should be assigned to the PostgreSQL Flexible Server. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The version of PostgreSQL Flexible Server to use. Possible values are 11,12, 13 and 14. Required when create_mode is Default. Changing this forces a new PostgreSQL Flexible Server to be created. + // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` // Specifies the Availability Zone in which the PostgreSQL Flexible Server should be located. + // +kubebuilder:validation:Optional Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` } @@ -331,9 +354,11 @@ type HighAvailabilityObservation struct { type HighAvailabilityParameters struct { // The high availability mode for the PostgreSQL Flexible Server. Possible value are SameZone or ZoneRedundant. + // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // Specifies the Availability Zone in which the standby Flexible Server should be located. + // +kubebuilder:validation:Optional StandbyAvailabilityZone *string `json:"standbyAvailabilityZone,omitempty" tf:"standby_availability_zone,omitempty"` } @@ -364,9 +389,11 @@ type IdentityObservation struct { type IdentityParameters struct { // A list of User Assigned Managed Identity IDs to be assigned to this PostgreSQL Flexible Server. Required if used together with customer_managed_key block. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this PostgreSQL Flexible Server. Should be set to UserAssigned, SystemAssigned, UserAssigned (to enable both). + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -397,12 +424,15 @@ type MaintenanceWindowObservation struct { type MaintenanceWindowParameters struct { // The day of week for maintenance window, where the week starts on a Sunday, i.e. Sunday = 0, Monday = 1. Defaults to 0. + // +kubebuilder:validation:Optional DayOfWeek *float64 `json:"dayOfWeek,omitempty" tf:"day_of_week,omitempty"` // The start hour for maintenance window. Defaults to 0. + // +kubebuilder:validation:Optional StartHour *float64 `json:"startHour,omitempty" tf:"start_hour,omitempty"` // The start minute for maintenance window. Defaults to 0. + // +kubebuilder:validation:Optional StartMinute *float64 `json:"startMinute,omitempty" tf:"start_minute,omitempty"` } diff --git a/apis/dbforpostgresql/v1beta1/zz_flexibleserverconfiguration_types.go b/apis/dbforpostgresql/v1beta1/zz_flexibleserverconfiguration_types.go index 4229ca02d..ef1b908ad 100755 --- a/apis/dbforpostgresql/v1beta1/zz_flexibleserverconfiguration_types.go +++ b/apis/dbforpostgresql/v1beta1/zz_flexibleserverconfiguration_types.go @@ -40,6 +40,7 @@ type FlexibleServerConfigurationObservation struct { type FlexibleServerConfigurationParameters struct { // Specifies the name of the PostgreSQL Configuration, which needs to be a valid PostgreSQL configuration name. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID of the PostgreSQL Flexible Server where we want to change configuration. Changing this forces a new PostgreSQL Flexible Server Configuration resource. @@ -57,6 +58,7 @@ type FlexibleServerConfigurationParameters struct { ServerIDSelector *v1.Selector `json:"serverIdSelector,omitempty" tf:"-"` // Specifies the value of the PostgreSQL Configuration. See the PostgreSQL documentation for valid values. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } diff --git a/apis/dbforpostgresql/v1beta1/zz_flexibleserverdatabase_types.go b/apis/dbforpostgresql/v1beta1/zz_flexibleserverdatabase_types.go index 6ef4a3e65..e4f9dc763 100755 --- a/apis/dbforpostgresql/v1beta1/zz_flexibleserverdatabase_types.go +++ b/apis/dbforpostgresql/v1beta1/zz_flexibleserverdatabase_types.go @@ -40,9 +40,11 @@ type FlexibleServerDatabaseObservation struct { type FlexibleServerDatabaseParameters struct { // Specifies the Charset for the Azure PostgreSQL Flexible Server Database, which needs to be a valid PostgreSQL Charset. Defaults to UTF8. Changing this forces a new Azure PostgreSQL Flexible Server Database to be created. + // +kubebuilder:validation:Optional Charset *string `json:"charset,omitempty" tf:"charset,omitempty"` // Specifies the Collation for the Azure PostgreSQL Flexible Server Database, which needs to be a valid PostgreSQL Collation. Defaults to en_US.utf8. Changing this forces a new Azure PostgreSQL Flexible Server Database to be created. + // +kubebuilder:validation:Optional Collation *string `json:"collation,omitempty" tf:"collation,omitempty"` // The ID of the Azure PostgreSQL Flexible Server from which to create this PostgreSQL Flexible Server Database. Changing this forces a new Azure PostgreSQL Flexible Server Database to be created. diff --git a/apis/dbforpostgresql/v1beta1/zz_flexibleserverfirewallrule_types.go b/apis/dbforpostgresql/v1beta1/zz_flexibleserverfirewallrule_types.go index 8706035e4..a6c60ec02 100755 --- a/apis/dbforpostgresql/v1beta1/zz_flexibleserverfirewallrule_types.go +++ b/apis/dbforpostgresql/v1beta1/zz_flexibleserverfirewallrule_types.go @@ -40,6 +40,7 @@ type FlexibleServerFirewallRuleObservation struct { type FlexibleServerFirewallRuleParameters struct { // The End IP Address associated with this PostgreSQL Flexible Server Firewall Rule. + // +kubebuilder:validation:Optional EndIPAddress *string `json:"endIpAddress,omitempty" tf:"end_ip_address,omitempty"` // The ID of the PostgreSQL Flexible Server from which to create this PostgreSQL Flexible Server Firewall Rule. Changing this forces a new PostgreSQL Flexible Server Firewall Rule to be created. @@ -57,6 +58,7 @@ type FlexibleServerFirewallRuleParameters struct { ServerIDSelector *v1.Selector `json:"serverIdSelector,omitempty" tf:"-"` // The Start IP Address associated with this PostgreSQL Flexible Server Firewall Rule. + // +kubebuilder:validation:Optional StartIPAddress *string `json:"startIpAddress,omitempty" tf:"start_ip_address,omitempty"` } diff --git a/apis/dbforpostgresql/v1beta1/zz_server_types.go b/apis/dbforpostgresql/v1beta1/zz_server_types.go index c29d31e51..a8e0a9338 100755 --- a/apis/dbforpostgresql/v1beta1/zz_server_types.go +++ b/apis/dbforpostgresql/v1beta1/zz_server_types.go @@ -34,6 +34,7 @@ type ServerIdentityObservation struct { type ServerIdentityParameters struct { // Specifies the type of Managed Service Identity that should be configured on this PostgreSQL Server. The only possible value is SystemAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -163,6 +164,7 @@ type ServerObservation struct { type ServerParameters struct { // The Administrator login for the PostgreSQL Server. Required when create_mode is Default. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional AdministratorLogin *string `json:"administratorLogin,omitempty" tf:"administrator_login,omitempty"` // The Password associated with the administrator_login for the PostgreSQL Server. Required when create_mode is Default. @@ -170,30 +172,39 @@ type ServerParameters struct { AdministratorLoginPasswordSecretRef *v1.SecretKeySelector `json:"administratorLoginPasswordSecretRef,omitempty" tf:"-"` // Enable/Disable auto-growing of the storage. Storage auto-grow prevents your server from running out of storage and becoming read-only. If storage auto grow is enabled, the storage automatically grows without impacting the workload. The default value if not explicitly specified is true. + // +kubebuilder:validation:Optional AutoGrowEnabled *bool `json:"autoGrowEnabled,omitempty" tf:"auto_grow_enabled,omitempty"` // Backup retention days for the server, supported values are between 7 and 35 days. + // +kubebuilder:validation:Optional BackupRetentionDays *float64 `json:"backupRetentionDays,omitempty" tf:"backup_retention_days,omitempty"` // The creation mode. Can be used to restore or replicate existing servers. Possible values are Default, Replica, GeoRestore, and PointInTimeRestore. Defaults to Default. + // +kubebuilder:validation:Optional CreateMode *string `json:"createMode,omitempty" tf:"create_mode,omitempty"` // For creation modes other than Default, the source server ID to use. + // +kubebuilder:validation:Optional CreationSourceServerID *string `json:"creationSourceServerId,omitempty" tf:"creation_source_server_id,omitempty"` // Turn Geo-redundant server backups on/off. This allows you to choose between locally redundant or geo-redundant backup storage in the General Purpose and Memory Optimized tiers. When the backups are stored in geo-redundant backup storage, they are not only stored within the region in which your server is hosted, but are also replicated to a paired data center. This provides better protection and ability to restore your server in a different region in the event of a disaster. This is not support for the Basic tier. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional GeoRedundantBackupEnabled *bool `json:"geoRedundantBackupEnabled,omitempty" tf:"geo_redundant_backup_enabled,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []ServerIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // Whether or not infrastructure is encrypted for this server. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional InfrastructureEncryptionEnabled *bool `json:"infrastructureEncryptionEnabled,omitempty" tf:"infrastructure_encryption_enabled,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Whether or not public network access is allowed for this server. Defaults to true. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // The name of the resource group in which to create the PostgreSQL Server. Changing this forces a new resource to be created. @@ -210,27 +221,35 @@ type ServerParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // When create_mode is PointInTimeRestore the point in time to restore from creation_source_server_id. It should be provided in RFC3339 format, e.g. 2013-11-08T22:00:40Z. + // +kubebuilder:validation:Optional RestorePointInTime *string `json:"restorePointInTime,omitempty" tf:"restore_point_in_time,omitempty"` // Specifies if SSL should be enforced on connections. Possible values are true and false. + // +kubebuilder:validation:Optional SSLEnforcementEnabled *bool `json:"sslEnforcementEnabled,omitempty" tf:"ssl_enforcement_enabled,omitempty"` // The minimum TLS version to support on the sever. Possible values are TLSEnforcementDisabled, TLS1_0, TLS1_1, and TLS1_2. Defaults to TLS1_2. + // +kubebuilder:validation:Optional SSLMinimalTLSVersionEnforced *string `json:"sslMinimalTlsVersionEnforced,omitempty" tf:"ssl_minimal_tls_version_enforced,omitempty"` // Specifies the SKU Name for this PostgreSQL Server. The name of the SKU, follows the tier + family + cores pattern (e.g. B_Gen4_1, GP_Gen5_8). For more information see the product documentation. Possible values are B_Gen4_1, B_Gen4_2, B_Gen5_1, B_Gen5_2, GP_Gen4_2, GP_Gen4_4, GP_Gen4_8, GP_Gen4_16, GP_Gen4_32, GP_Gen5_2, GP_Gen5_4, GP_Gen5_8, GP_Gen5_16, GP_Gen5_32, GP_Gen5_64, MO_Gen5_2, MO_Gen5_4, MO_Gen5_8, MO_Gen5_16 and MO_Gen5_32. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // Max storage allowed for a server. Possible values are between 5120 MB(5GB) and 1048576 MB(1TB) for the Basic SKU and between 5120 MB(5GB) and 16777216 MB(16TB) for General Purpose/Memory Optimized SKUs. For more information see the product documentation. + // +kubebuilder:validation:Optional StorageMb *float64 `json:"storageMb,omitempty" tf:"storage_mb,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Threat detection policy configuration, known in the API as Server Security Alerts Policy. The threat_detection_policy block supports fields documented below. + // +kubebuilder:validation:Optional ThreatDetectionPolicy []ThreatDetectionPolicyParameters `json:"threatDetectionPolicy,omitempty" tf:"threat_detection_policy,omitempty"` // Specifies the version of PostgreSQL to use. Valid values are 9.5, 9.6, 10, 10.0, 10.2 and 11. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` } @@ -279,18 +298,23 @@ type ThreatDetectionPolicyObservation struct { type ThreatDetectionPolicyParameters struct { // Specifies a list of alerts which should be disabled. Possible values are Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Data_Exfiltration and Unsafe_Action. + // +kubebuilder:validation:Optional DisabledAlerts []*string `json:"disabledAlerts,omitempty" tf:"disabled_alerts,omitempty"` // Should the account administrators be emailed when this alert is triggered? + // +kubebuilder:validation:Optional EmailAccountAdmins *bool `json:"emailAccountAdmins,omitempty" tf:"email_account_admins,omitempty"` // A list of email addresses which alerts should be sent to. + // +kubebuilder:validation:Optional EmailAddresses []*string `json:"emailAddresses,omitempty" tf:"email_addresses,omitempty"` // Is the policy enabled? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Specifies the number of days to keep in the Threat Detection audit logs. + // +kubebuilder:validation:Optional RetentionDays *float64 `json:"retentionDays,omitempty" tf:"retention_days,omitempty"` // Specifies the identifier key of the Threat Detection audit storage account. @@ -298,6 +322,7 @@ type ThreatDetectionPolicyParameters struct { StorageAccountAccessKeySecretRef *v1.SecretKeySelector `json:"storageAccountAccessKeySecretRef,omitempty" tf:"-"` // Specifies the blob storage endpoint (e.g. https://example.blob.core.windows.net). This blob storage will hold all Threat Detection audit logs. + // +kubebuilder:validation:Optional StorageEndpoint *string `json:"storageEndpoint,omitempty" tf:"storage_endpoint,omitempty"` } diff --git a/apis/dbforpostgresql/v1beta1/zz_virtualnetworkrule_types.go b/apis/dbforpostgresql/v1beta1/zz_virtualnetworkrule_types.go index 627b50b55..04785b606 100755 --- a/apis/dbforpostgresql/v1beta1/zz_virtualnetworkrule_types.go +++ b/apis/dbforpostgresql/v1beta1/zz_virtualnetworkrule_types.go @@ -40,6 +40,7 @@ type VirtualNetworkRuleObservation struct { type VirtualNetworkRuleParameters struct { // Should the Virtual Network Rule be created before the Subnet has the Virtual Network Service Endpoint enabled? + // +kubebuilder:validation:Optional IgnoreMissingVnetServiceEndpoint *bool `json:"ignoreMissingVnetServiceEndpoint,omitempty" tf:"ignore_missing_vnet_service_endpoint,omitempty"` // The name of the resource group where the PostgreSQL server resides. Changing this forces a new resource to be created. diff --git a/apis/devices/v1beta1/zz_iothub_types.go b/apis/devices/v1beta1/zz_iothub_types.go index 12fd8984d..a1d82d699 100755 --- a/apis/devices/v1beta1/zz_iothub_types.go +++ b/apis/devices/v1beta1/zz_iothub_types.go @@ -40,12 +40,15 @@ type CloudToDeviceObservation struct { type CloudToDeviceParameters struct { // The default time to live for cloud-to-device messages, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H. + // +kubebuilder:validation:Optional DefaultTTL *string `json:"defaultTtl,omitempty" tf:"default_ttl,omitempty"` // A feedback block as defined below. + // +kubebuilder:validation:Optional Feedback []FeedbackParameters `json:"feedback,omitempty" tf:"feedback,omitempty"` // The maximum delivery count for cloud-to-device per-device queues. This value must be between 1 and 100. Defaults to 10. + // +kubebuilder:validation:Optional MaxDeliveryCount *float64 `json:"maxDeliveryCount,omitempty" tf:"max_delivery_count,omitempty"` } @@ -160,12 +163,15 @@ type FeedbackObservation struct { type FeedbackParameters struct { // The lock duration for the file upload notifications queue, specified as an ISO 8601 timespan duration. This value must be between 5 and 300 seconds. Defaults to PT1M. + // +kubebuilder:validation:Optional LockDuration *string `json:"lockDuration,omitempty" tf:"lock_duration,omitempty"` // The number of times the IoT Hub attempts to deliver a file upload notification message. Defaults to 10. + // +kubebuilder:validation:Optional MaxDeliveryCount *float64 `json:"maxDeliveryCount,omitempty" tf:"max_delivery_count,omitempty"` // The retention time for service-bound feedback messages, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H. + // +kubebuilder:validation:Optional TimeToLive *string `json:"timeToLive,omitempty" tf:"time_to_live,omitempty"` } @@ -226,6 +232,7 @@ type FileUploadObservation struct { type FileUploadParameters struct { // The type used to authenticate against the storage account. Possible values are keyBased and identityBased. Defaults to keyBased. + // +kubebuilder:validation:Optional AuthenticationType *string `json:"authenticationType,omitempty" tf:"authentication_type,omitempty"` // The connection string for the Azure Storage account to which files are uploaded. @@ -233,24 +240,31 @@ type FileUploadParameters struct { ConnectionStringSecretRef v1.SecretKeySelector `json:"connectionStringSecretRef" tf:"-"` // The name of the root container where the files should be uploaded to. The container need not exist but should be creatable using the connection_string specified. + // +kubebuilder:validation:Optional ContainerName *string `json:"containerName,omitempty" tf:"container_name,omitempty"` // The period of time for which a file upload notification message is available to consume before it expires, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 48 hours. Defaults to PT1H. + // +kubebuilder:validation:Optional DefaultTTL *string `json:"defaultTtl,omitempty" tf:"default_ttl,omitempty"` // The ID of the User Managed Identity used to authenticate against the storage account. + // +kubebuilder:validation:Optional IdentityID *string `json:"identityId,omitempty" tf:"identity_id,omitempty"` // The lock duration for the file upload notifications queue, specified as an ISO 8601 timespan duration. This value must be between 5 and 300 seconds. Defaults to PT1M. + // +kubebuilder:validation:Optional LockDuration *string `json:"lockDuration,omitempty" tf:"lock_duration,omitempty"` // The number of times the IoT Hub attempts to deliver a file upload notification message. Defaults to 10. + // +kubebuilder:validation:Optional MaxDeliveryCount *float64 `json:"maxDeliveryCount,omitempty" tf:"max_delivery_count,omitempty"` // Used to specify whether file notifications are sent to IoT Hub on upload. Defaults to false. + // +kubebuilder:validation:Optional Notifications *bool `json:"notifications,omitempty" tf:"notifications,omitempty"` // The period of time for which the SAS URI generated by IoT Hub for file upload is valid, specified as an ISO 8601 timespan duration. This value must be between 1 minute and 24 hours. Defaults to PT1H. + // +kubebuilder:validation:Optional SASTTL *string `json:"sasTtl,omitempty" tf:"sas_ttl,omitempty"` } @@ -371,30 +385,39 @@ type IOTHubObservation struct { type IOTHubParameters struct { // A cloud_to_device block as defined below. + // +kubebuilder:validation:Optional CloudToDevice []CloudToDeviceParameters `json:"cloudToDevice,omitempty" tf:"cloud_to_device,omitempty"` // The number of device-to-cloud partitions used by backing event hubs. Must be between 2 and 128. + // +kubebuilder:validation:Optional EventHubPartitionCount *float64 `json:"eventHubPartitionCount,omitempty" tf:"event_hub_partition_count,omitempty"` // The event hub retention to use in days. Must be between 1 and 7. + // +kubebuilder:validation:Optional EventHubRetentionInDays *float64 `json:"eventHubRetentionInDays,omitempty" tf:"event_hub_retention_in_days,omitempty"` // A file_upload block as defined below. + // +kubebuilder:validation:Optional FileUpload []FileUploadParameters `json:"fileUpload,omitempty" tf:"file_upload,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // Specifies the supported Azure location where the resource has to be created. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the minimum TLS version to support for this hub. The only valid value is 1.2. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional MinTLSVersion *string `json:"minTlsVersion,omitempty" tf:"min_tls_version,omitempty"` // A network_rule_set block as defined below. + // +kubebuilder:validation:Optional NetworkRuleSet []NetworkRuleSetParameters `json:"networkRuleSet,omitempty" tf:"network_rule_set,omitempty"` // Is the IotHub resource accessible from a public network? + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // The name of the resource group under which the IotHub resource has to be created. Changing this forces a new resource to be created. @@ -411,9 +434,11 @@ type IOTHubParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A sku block as defined below. + // +kubebuilder:validation:Optional Sku []SkuParameters `json:"sku,omitempty" tf:"sku,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -444,12 +469,15 @@ type IPRuleObservation struct { type IPRuleParameters struct { // The desired action for requests captured by this rule. Possible values are Allow. Defaults to Allow. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // The IP address range in CIDR notation for the IP rule. + // +kubebuilder:validation:Optional IPMask *string `json:"ipMask,omitempty" tf:"ip_mask,omitempty"` // The name of the sku. Possible values are B1, B2, B3, F1, S1, S2, and S3. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -480,9 +508,11 @@ type IdentityObservation struct { type IdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this IoT Hub. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this IoT Hub. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -513,12 +543,15 @@ type NetworkRuleSetObservation struct { type NetworkRuleSetParameters struct { // Determines if Network Rule Set is also applied to the BuiltIn EventHub EndPoint of the IotHub. Defaults to false. + // +kubebuilder:validation:Optional ApplyToBuiltinEventHubEndpoint *bool `json:"applyToBuiltinEventhubEndpoint,omitempty" tf:"apply_to_builtin_eventhub_endpoint,omitempty"` // Default Action for Network Rule Set. Possible values are Deny, Allow. Defaults to Deny. + // +kubebuilder:validation:Optional DefaultAction *string `json:"defaultAction,omitempty" tf:"default_action,omitempty"` // One or more ip_rule blocks as defined below. + // +kubebuilder:validation:Optional IPRule []IPRuleParameters `json:"ipRule,omitempty" tf:"ip_rule,omitempty"` } @@ -582,9 +615,11 @@ type SkuObservation struct { type SkuParameters struct { // The number of provisioned IoT Hub units. + // +kubebuilder:validation:Optional Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` // The name of the sku. Possible values are B1, B2, B3, F1, S1, S2, and S3. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } diff --git a/apis/devices/v1beta1/zz_iothubcertificate_types.go b/apis/devices/v1beta1/zz_iothubcertificate_types.go index 680a31031..4c6fafc0b 100755 --- a/apis/devices/v1beta1/zz_iothubcertificate_types.go +++ b/apis/devices/v1beta1/zz_iothubcertificate_types.go @@ -54,6 +54,7 @@ type IOTHubCertificateParameters struct { IOTHubNameSelector *v1.Selector `json:"iothubNameSelector,omitempty" tf:"-"` // Is the certificate verified? Defaults to false. + // +kubebuilder:validation:Optional IsVerified *bool `json:"isVerified,omitempty" tf:"is_verified,omitempty"` // The name of the resource group under which the IotHub Certificate resource has to be created. Changing this forces a new resource to be created. diff --git a/apis/devices/v1beta1/zz_iothubdps_types.go b/apis/devices/v1beta1/zz_iothubdps_types.go index 313a38eb9..df698609b 100755 --- a/apis/devices/v1beta1/zz_iothubdps_types.go +++ b/apis/devices/v1beta1/zz_iothubdps_types.go @@ -85,21 +85,27 @@ type IOTHubDPSObservation struct { type IOTHubDPSParameters struct { // The allocation policy of the IoT Device Provisioning Service (Hashed, GeoLatency or Static). Defaults to Hashed. + // +kubebuilder:validation:Optional AllocationPolicy *string `json:"allocationPolicy,omitempty" tf:"allocation_policy,omitempty"` // Specifies if the IoT Device Provisioning Service has data residency and disaster recovery enabled. Defaults to false. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DataResidencyEnabled *bool `json:"dataResidencyEnabled,omitempty" tf:"data_residency_enabled,omitempty"` // An ip_filter_rule block as defined below. + // +kubebuilder:validation:Optional IPFilterRule []IPFilterRuleParameters `json:"ipFilterRule,omitempty" tf:"ip_filter_rule,omitempty"` // A linked_hub block as defined below. + // +kubebuilder:validation:Optional LinkedHub []LinkedHubParameters `json:"linkedHub,omitempty" tf:"linked_hub,omitempty"` // Specifies the supported Azure location where the resource has to be created. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Whether requests from Public Network are allowed. Defaults to true. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // The name of the resource group under which the Iot Device Provisioning Service resource has to be created. Changing this forces a new resource to be created. @@ -116,9 +122,11 @@ type IOTHubDPSParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A sku block as defined below. + // +kubebuilder:validation:Optional Sku []IOTHubDPSSkuParameters `json:"sku,omitempty" tf:"sku,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -143,9 +151,11 @@ type IOTHubDPSSkuObservation struct { type IOTHubDPSSkuParameters struct { // The number of provisioned IoT Device Provisioning Service units. + // +kubebuilder:validation:Optional Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` // The name of the sku. Currently can only be set to S1. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -182,15 +192,19 @@ type IPFilterRuleObservation struct { type IPFilterRuleParameters struct { // The desired action for requests captured by this rule. Possible values are Accept, Reject + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // The IP address range in CIDR notation for the rule. + // +kubebuilder:validation:Optional IPMask *string `json:"ipMask,omitempty" tf:"ip_mask,omitempty"` // The name of the filter. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Target for requests captured by this rule. Possible values are All, DeviceApi and ServiceApi. + // +kubebuilder:validation:Optional Target *string `json:"target,omitempty" tf:"target,omitempty"` } @@ -224,9 +238,11 @@ type LinkedHubObservation struct { type LinkedHubParameters struct { // The weight applied to the IoT Hub. Defaults to 1. + // +kubebuilder:validation:Optional AllocationWeight *float64 `json:"allocationWeight,omitempty" tf:"allocation_weight,omitempty"` // Determines whether to apply allocation policies to the IoT Hub. Defaults to true. + // +kubebuilder:validation:Optional ApplyAllocationPolicy *bool `json:"applyAllocationPolicy,omitempty" tf:"apply_allocation_policy,omitempty"` // The connection string to connect to the IoT Hub. @@ -234,6 +250,7 @@ type LinkedHubParameters struct { ConnectionStringSecretRef v1.SecretKeySelector `json:"connectionStringSecretRef" tf:"-"` // The location of the IoT hub. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` } diff --git a/apis/devices/v1beta1/zz_iothubdpscertificate_types.go b/apis/devices/v1beta1/zz_iothubdpscertificate_types.go index fbe650102..f60fcc1e0 100755 --- a/apis/devices/v1beta1/zz_iothubdpscertificate_types.go +++ b/apis/devices/v1beta1/zz_iothubdpscertificate_types.go @@ -54,6 +54,7 @@ type IOTHubDPSCertificateParameters struct { IOTDPSNameSelector *v1.Selector `json:"iotDpsNameSelector,omitempty" tf:"-"` // Specifies if the certificate is created in verified state. Defaults to false. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional IsVerified *bool `json:"isVerified,omitempty" tf:"is_verified,omitempty"` // The name of the resource group under which the Iot Device Provisioning Service Certificate resource has to be created. Changing this forces a new resource to be created. diff --git a/apis/devices/v1beta1/zz_iothubdpssharedaccesspolicy_types.go b/apis/devices/v1beta1/zz_iothubdpssharedaccesspolicy_types.go index eea909fd2..a97bcd74c 100755 --- a/apis/devices/v1beta1/zz_iothubdpssharedaccesspolicy_types.go +++ b/apis/devices/v1beta1/zz_iothubdpssharedaccesspolicy_types.go @@ -61,9 +61,11 @@ type IOTHubDPSSharedAccessPolicyObservation struct { type IOTHubDPSSharedAccessPolicyParameters struct { // Adds EnrollmentRead permission to this Shared Access Account. It allows read access to enrollment data. + // +kubebuilder:validation:Optional EnrollmentRead *bool `json:"enrollmentRead,omitempty" tf:"enrollment_read,omitempty"` // Adds EnrollmentWrite permission to this Shared Access Account. It allows write access to enrollment data. + // +kubebuilder:validation:Optional EnrollmentWrite *bool `json:"enrollmentWrite,omitempty" tf:"enrollment_write,omitempty"` // The name of the IoT Hub Device Provisioning service to which this Shared Access Policy belongs. Changing this forces a new resource to be created. @@ -80,9 +82,11 @@ type IOTHubDPSSharedAccessPolicyParameters struct { IOTHubDPSNameSelector *v1.Selector `json:"iothubDpsNameSelector,omitempty" tf:"-"` // Adds RegistrationStatusRead permission to this Shared Access Account. It allows read access to device registrations. + // +kubebuilder:validation:Optional RegistrationRead *bool `json:"registrationRead,omitempty" tf:"registration_read,omitempty"` // Adds RegistrationStatusWrite permission to this Shared Access Account. It allows write access to device registrations. + // +kubebuilder:validation:Optional RegistrationWrite *bool `json:"registrationWrite,omitempty" tf:"registration_write,omitempty"` // The name of the resource group under which the IotHub Shared Access Policy resource has to be created. Changing this forces a new resource to be created. @@ -99,6 +103,7 @@ type IOTHubDPSSharedAccessPolicyParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Adds ServiceConfig permission to this Shared Access Account. It allows configuration of the Device Provisioning Service. + // +kubebuilder:validation:Optional ServiceConfig *bool `json:"serviceConfig,omitempty" tf:"service_config,omitempty"` } diff --git a/apis/devices/v1beta1/zz_iothubendpointeventhub_types.go b/apis/devices/v1beta1/zz_iothubendpointeventhub_types.go index afd307ce8..6c9b34956 100755 --- a/apis/devices/v1beta1/zz_iothubendpointeventhub_types.go +++ b/apis/devices/v1beta1/zz_iothubendpointeventhub_types.go @@ -55,6 +55,7 @@ type IOTHubEndpointEventHubObservation struct { type IOTHubEndpointEventHubParameters struct { // Type used to authenticate against the Event Hub endpoint. Possible values are keyBased and identityBased. Defaults to keyBased. + // +kubebuilder:validation:Optional AuthenticationType *string `json:"authenticationType,omitempty" tf:"authentication_type,omitempty"` // The connection string for the endpoint. This attribute can only be specified and is mandatory when authentication_type is keyBased. @@ -62,9 +63,11 @@ type IOTHubEndpointEventHubParameters struct { ConnectionStringSecretRef *v1.SecretKeySelector `json:"connectionStringSecretRef,omitempty" tf:"-"` // URI of the Event Hubs Namespace endpoint. This attribute can only be specified and is mandatory when authentication_type is identityBased. + // +kubebuilder:validation:Optional EndpointURI *string `json:"endpointUri,omitempty" tf:"endpoint_uri,omitempty"` // Name of the Event Hub. This attribute can only be specified and is mandatory when authentication_type is identityBased. + // +kubebuilder:validation:Optional EntityPath *string `json:"entityPath,omitempty" tf:"entity_path,omitempty"` // The IoTHub ID for the endpoint. Changing this forces a new resource to be created. @@ -82,6 +85,7 @@ type IOTHubEndpointEventHubParameters struct { IOTHubIDSelector *v1.Selector `json:"iothubIdSelector,omitempty" tf:"-"` // ID of the User Managed Identity used to authenticate against the Event Hub endpoint. + // +kubebuilder:validation:Optional IdentityID *string `json:"identityId,omitempty" tf:"identity_id,omitempty"` // The name of the resource group under which the Event Hub has been created. Changing this forces a new resource to be created. diff --git a/apis/devices/v1beta1/zz_iothubendpointservicebusqueue_types.go b/apis/devices/v1beta1/zz_iothubendpointservicebusqueue_types.go index c75ad1283..7bbc91235 100755 --- a/apis/devices/v1beta1/zz_iothubendpointservicebusqueue_types.go +++ b/apis/devices/v1beta1/zz_iothubendpointservicebusqueue_types.go @@ -55,6 +55,7 @@ type IOTHubEndpointServiceBusQueueObservation struct { type IOTHubEndpointServiceBusQueueParameters struct { // Type used to authenticate against the Service Bus Queue endpoint. Possible values are keyBased and identityBased. Defaults to keyBased. + // +kubebuilder:validation:Optional AuthenticationType *string `json:"authenticationType,omitempty" tf:"authentication_type,omitempty"` // The connection string for the endpoint. This attribute can only be specified and is mandatory when authentication_type is keyBased. @@ -62,9 +63,11 @@ type IOTHubEndpointServiceBusQueueParameters struct { ConnectionStringSecretRef *v1.SecretKeySelector `json:"connectionStringSecretRef,omitempty" tf:"-"` // URI of the Service Bus endpoint. This attribute can only be specified and is mandatory when authentication_type is identityBased. + // +kubebuilder:validation:Optional EndpointURI *string `json:"endpointUri,omitempty" tf:"endpoint_uri,omitempty"` // Name of the Service Bus Queue. This attribute can only be specified and is mandatory when authentication_type is identityBased. + // +kubebuilder:validation:Optional EntityPath *string `json:"entityPath,omitempty" tf:"entity_path,omitempty"` // The IoTHub ID for the endpoint. Changing this forces a new resource to be created. @@ -82,6 +85,7 @@ type IOTHubEndpointServiceBusQueueParameters struct { IOTHubIDSelector *v1.Selector `json:"iothubIdSelector,omitempty" tf:"-"` // ID of the User Managed Identity used to authenticate against the Service Bus Queue endpoint. + // +kubebuilder:validation:Optional IdentityID *string `json:"identityId,omitempty" tf:"identity_id,omitempty"` // The name of the resource group under which the Service Bus Queue has been created. Changing this forces a new resource to be created. diff --git a/apis/devices/v1beta1/zz_iothubendpointservicebustopic_types.go b/apis/devices/v1beta1/zz_iothubendpointservicebustopic_types.go index 3aa3c6e92..1ea40d6ce 100755 --- a/apis/devices/v1beta1/zz_iothubendpointservicebustopic_types.go +++ b/apis/devices/v1beta1/zz_iothubendpointservicebustopic_types.go @@ -55,6 +55,7 @@ type IOTHubEndpointServiceBusTopicObservation struct { type IOTHubEndpointServiceBusTopicParameters struct { // Type used to authenticate against the Service Bus Topic endpoint. Possible values are keyBased and identityBased. Defaults to keyBased. + // +kubebuilder:validation:Optional AuthenticationType *string `json:"authenticationType,omitempty" tf:"authentication_type,omitempty"` // The connection string for the endpoint. This attribute can only be specified and is mandatory when authentication_type is keyBased. @@ -62,9 +63,11 @@ type IOTHubEndpointServiceBusTopicParameters struct { ConnectionStringSecretRef *v1.SecretKeySelector `json:"connectionStringSecretRef,omitempty" tf:"-"` // URI of the Service Bus endpoint. This attribute can only be specified and is mandatory when authentication_type is identityBased. + // +kubebuilder:validation:Optional EndpointURI *string `json:"endpointUri,omitempty" tf:"endpoint_uri,omitempty"` // Name of the Service Bus Topic. This attribute can only be specified and is mandatory when authentication_type is identityBased. + // +kubebuilder:validation:Optional EntityPath *string `json:"entityPath,omitempty" tf:"entity_path,omitempty"` // The IoTHub ID for the endpoint. Changing this forces a new resource to be created. @@ -82,6 +85,7 @@ type IOTHubEndpointServiceBusTopicParameters struct { IOTHubIDSelector *v1.Selector `json:"iothubIdSelector,omitempty" tf:"-"` // ID of the User Managed Identity used to authenticate against the Service Bus Topic endpoint. + // +kubebuilder:validation:Optional IdentityID *string `json:"identityId,omitempty" tf:"identity_id,omitempty"` // The name of the resource group under which the Service Bus Topic has been created. Changing this forces a new resource to be created. diff --git a/apis/devices/v1beta1/zz_iothubendpointstoragecontainer_types.go b/apis/devices/v1beta1/zz_iothubendpointstoragecontainer_types.go index 4090a9157..c7fee9770 100755 --- a/apis/devices/v1beta1/zz_iothubendpointstoragecontainer_types.go +++ b/apis/devices/v1beta1/zz_iothubendpointstoragecontainer_types.go @@ -76,9 +76,11 @@ type IOTHubEndpointStorageContainerObservation struct { type IOTHubEndpointStorageContainerParameters struct { // Type used to authenticate against the storage endpoint. Possible values are keyBased and identityBased. Defaults to keyBased. + // +kubebuilder:validation:Optional AuthenticationType *string `json:"authenticationType,omitempty" tf:"authentication_type,omitempty"` // Time interval at which blobs are written to storage. Value should be between 60 and 720 seconds. Default value is 300 seconds. + // +kubebuilder:validation:Optional BatchFrequencyInSeconds *float64 `json:"batchFrequencyInSeconds,omitempty" tf:"batch_frequency_in_seconds,omitempty"` // The connection string for the endpoint. This attribute can only be specified and is mandatory when authentication_type is keyBased. @@ -99,12 +101,15 @@ type IOTHubEndpointStorageContainerParameters struct { ContainerNameSelector *v1.Selector `json:"containerNameSelector,omitempty" tf:"-"` // Encoding that is used to serialize messages to blobs. Supported values are Avro, AvroDeflate and JSON. Default value is Avro. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Encoding *string `json:"encoding,omitempty" tf:"encoding,omitempty"` // URI of the Storage Container endpoint. This corresponds to the primary_blob_endpoint of the parent storage account. This attribute can only be specified and is mandatory when authentication_type is identityBased. + // +kubebuilder:validation:Optional EndpointURI *string `json:"endpointUri,omitempty" tf:"endpoint_uri,omitempty"` // File name format for the blob. Default format is {iothub}/{partition}/{YYYY}/{MM}/{DD}/{HH}/{mm}. All parameters are mandatory but can be reordered. + // +kubebuilder:validation:Optional FileNameFormat *string `json:"fileNameFormat,omitempty" tf:"file_name_format,omitempty"` // The IoTHub ID for the endpoint. Changing this forces a new resource to be created. @@ -122,9 +127,11 @@ type IOTHubEndpointStorageContainerParameters struct { IOTHubIDSelector *v1.Selector `json:"iothubIdSelector,omitempty" tf:"-"` // ID of the User Managed Identity used to authenticate against the storage endpoint. + // +kubebuilder:validation:Optional IdentityID *string `json:"identityId,omitempty" tf:"identity_id,omitempty"` // Maximum number of bytes for each blob written to storage. Value should be between 10485760(10MB) and 524288000(500MB). Default value is 314572800(300MB). + // +kubebuilder:validation:Optional MaxChunkSizeInBytes *float64 `json:"maxChunkSizeInBytes,omitempty" tf:"max_chunk_size_in_bytes,omitempty"` // The name of the resource group under which the Storage Container has been created. Changing this forces a new resource to be created. diff --git a/apis/devices/v1beta1/zz_iothubenrichment_types.go b/apis/devices/v1beta1/zz_iothubenrichment_types.go index 236131d4e..44150b69f 100755 --- a/apis/devices/v1beta1/zz_iothubenrichment_types.go +++ b/apis/devices/v1beta1/zz_iothubenrichment_types.go @@ -49,6 +49,7 @@ type IOTHubEnrichmentObservation struct { type IOTHubEnrichmentParameters struct { // The list of endpoints which will be enriched. + // +kubebuilder:validation:Optional EndpointNames []*string `json:"endpointNames,omitempty" tf:"endpoint_names,omitempty"` // The IoTHub name of the enrichment. Changing this forces a new resource to be created. @@ -65,6 +66,7 @@ type IOTHubEnrichmentParameters struct { IOTHubNameSelector *v1.Selector `json:"iothubNameSelector,omitempty" tf:"-"` // The key of the enrichment. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Key *string `json:"key,omitempty" tf:"key,omitempty"` // The name of the resource group under which the IoTHub resource is created. Changing this forces a new resource to be created. @@ -81,6 +83,7 @@ type IOTHubEnrichmentParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The value of the enrichment. Value can be any static string, the name of the IoT hub sending the message (use $iothubname) or information from the device twin (ex: $twin.tags.latitude) + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } diff --git a/apis/devices/v1beta1/zz_iothubfallbackroute_types.go b/apis/devices/v1beta1/zz_iothubfallbackroute_types.go index 5f9e04d28..64f3810da 100755 --- a/apis/devices/v1beta1/zz_iothubfallbackroute_types.go +++ b/apis/devices/v1beta1/zz_iothubfallbackroute_types.go @@ -52,9 +52,11 @@ type IOTHubFallbackRouteObservation struct { type IOTHubFallbackRouteParameters struct { // The condition that is evaluated to apply the routing rule. If no condition is provided, it evaluates to true by default. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language. + // +kubebuilder:validation:Optional Condition *string `json:"condition,omitempty" tf:"condition,omitempty"` // Used to specify whether the fallback route is enabled. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The endpoints to which messages that satisfy the condition are routed. Currently only 1 endpoint is allowed. @@ -97,6 +99,7 @@ type IOTHubFallbackRouteParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The source that the routing rule is to be applied to. Possible values include: DeviceConnectionStateEvents, DeviceJobLifecycleEvents, DeviceLifecycleEvents, DeviceMessages, DigitalTwinChangeEvents, Invalid, TwinChangeEvents. + // +kubebuilder:validation:Optional Source *string `json:"source,omitempty" tf:"source,omitempty"` } diff --git a/apis/devices/v1beta1/zz_iothubroute_types.go b/apis/devices/v1beta1/zz_iothubroute_types.go index e8faf4ce2..deaf9752a 100755 --- a/apis/devices/v1beta1/zz_iothubroute_types.go +++ b/apis/devices/v1beta1/zz_iothubroute_types.go @@ -55,12 +55,15 @@ type IOTHubRouteObservation struct { type IOTHubRouteParameters struct { // The condition that is evaluated to apply the routing rule. If no condition is provided, it evaluates to true by default. For grammar, see: https://docs.microsoft.com/azure/iot-hub/iot-hub-devguide-query-language. + // +kubebuilder:validation:Optional Condition *string `json:"condition,omitempty" tf:"condition,omitempty"` // Specifies whether a route is enabled. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The list of endpoints to which messages that satisfy the condition are routed. Currently only one endpoint is allowed. + // +kubebuilder:validation:Optional EndpointNames []*string `json:"endpointNames,omitempty" tf:"endpoint_names,omitempty"` // The name of the IoTHub to which this Route belongs. Changing this forces a new resource to be created. @@ -90,6 +93,7 @@ type IOTHubRouteParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The source that the routing rule is to be applied to. Possible values include: DeviceConnectionStateEvents, DeviceJobLifecycleEvents, DeviceLifecycleEvents, DeviceMessages, DigitalTwinChangeEvents, Invalid, TwinChangeEvents. + // +kubebuilder:validation:Optional Source *string `json:"source,omitempty" tf:"source,omitempty"` } diff --git a/apis/devices/v1beta1/zz_iothubsharedaccesspolicy_types.go b/apis/devices/v1beta1/zz_iothubsharedaccesspolicy_types.go index 7d5e8e513..c905af5fe 100755 --- a/apis/devices/v1beta1/zz_iothubsharedaccesspolicy_types.go +++ b/apis/devices/v1beta1/zz_iothubsharedaccesspolicy_types.go @@ -55,6 +55,7 @@ type IOTHubSharedAccessPolicyObservation struct { type IOTHubSharedAccessPolicyParameters struct { // Adds DeviceConnect permission to this Shared Access Account. It allows sending and receiving on the device-side endpoints. + // +kubebuilder:validation:Optional DeviceConnect *bool `json:"deviceConnect,omitempty" tf:"device_connect,omitempty"` // The name of the IoTHub to which this Shared Access Policy belongs. Changing this forces a new resource to be created. @@ -71,9 +72,11 @@ type IOTHubSharedAccessPolicyParameters struct { IOTHubNameSelector *v1.Selector `json:"iothubNameSelector,omitempty" tf:"-"` // Adds RegistryRead permission to this Shared Access Account. It allows read access to the identity registry. + // +kubebuilder:validation:Optional RegistryRead *bool `json:"registryRead,omitempty" tf:"registry_read,omitempty"` // Adds RegistryWrite permission to this Shared Access Account. It allows write access to the identity registry. + // +kubebuilder:validation:Optional RegistryWrite *bool `json:"registryWrite,omitempty" tf:"registry_write,omitempty"` // The name of the resource group under which the IotHub Shared Access Policy resource has to be created. Changing this forces a new resource to be created. @@ -90,6 +93,7 @@ type IOTHubSharedAccessPolicyParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Adds ServiceConnect permission to this Shared Access Account. It allows sending and receiving on the cloud-side endpoints. + // +kubebuilder:validation:Optional ServiceConnect *bool `json:"serviceConnect,omitempty" tf:"service_connect,omitempty"` } diff --git a/apis/deviceupdate/v1beta1/zz_iothubdeviceupdateaccount_types.go b/apis/deviceupdate/v1beta1/zz_iothubdeviceupdateaccount_types.go index d80031a0f..1d9e79e5f 100755 --- a/apis/deviceupdate/v1beta1/zz_iothubdeviceupdateaccount_types.go +++ b/apis/deviceupdate/v1beta1/zz_iothubdeviceupdateaccount_types.go @@ -61,12 +61,15 @@ type IOTHubDeviceUpdateAccountObservation struct { type IOTHubDeviceUpdateAccountParameters struct { // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // Specifies the Azure Region where the IoT Hub Device Update Account should exist. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies whether the public network access is enabled for the IoT Hub Device Update Account. Possible values are true and false. Defaults to true. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // Specifies the name of the Resource Group where the IoT Hub Device Update Account should exist. Changing this forces a new resource to be created. @@ -83,9 +86,11 @@ type IOTHubDeviceUpdateAccountParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Sku of the IoT Hub Device Update Account. Possible values are Free and Standard. Defaults to Standard. + // +kubebuilder:validation:Optional Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // A mapping of tags which should be assigned to the IoT Hub Device Update Account. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -116,9 +121,11 @@ type IdentityObservation struct { type IdentityParameters struct { // A list of User Assigned Managed Identity IDs to be assigned to this IoT Hub Device Update Account. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this IoT Hub Device Update Account. Possible values are SystemAssigned, UserAssigned and SystemAssigned, UserAssigned (to enable both). + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/deviceupdate/v1beta1/zz_iothubdeviceupdateinstance_types.go b/apis/deviceupdate/v1beta1/zz_iothubdeviceupdateinstance_types.go index 5755b1650..40d8a4e9c 100755 --- a/apis/deviceupdate/v1beta1/zz_iothubdeviceupdateinstance_types.go +++ b/apis/deviceupdate/v1beta1/zz_iothubdeviceupdateinstance_types.go @@ -93,9 +93,11 @@ type IOTHubDeviceUpdateInstanceParameters struct { DeviceUpdateAccountIDSelector *v1.Selector `json:"deviceUpdateAccountIdSelector,omitempty" tf:"-"` // Whether the diagnostic log collection is enabled. Possible values are true and false. Defaults to false. + // +kubebuilder:validation:Optional DiagnosticEnabled *bool `json:"diagnosticEnabled,omitempty" tf:"diagnostic_enabled,omitempty"` // A diagnostic_storage_account block as defined below. + // +kubebuilder:validation:Optional DiagnosticStorageAccount []DiagnosticStorageAccountParameters `json:"diagnosticStorageAccount,omitempty" tf:"diagnostic_storage_account,omitempty"` // Specifies the ID of the IoT Hub associated with the IoT Hub Device Update Instance. Changing this forces a new resource to be created. @@ -113,6 +115,7 @@ type IOTHubDeviceUpdateInstanceParameters struct { IOTHubIDSelector *v1.Selector `json:"iothubIdSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the IoT Hub Device Update Instance. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/devtestlab/v1beta1/zz_globalvmshutdownschedule_types.go b/apis/devtestlab/v1beta1/zz_globalvmshutdownschedule_types.go index c4eb33356..52e0b5939 100755 --- a/apis/devtestlab/v1beta1/zz_globalvmshutdownschedule_types.go +++ b/apis/devtestlab/v1beta1/zz_globalvmshutdownschedule_types.go @@ -64,21 +64,27 @@ type GlobalVMShutdownScheduleObservation struct { 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 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 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. @@ -129,15 +135,19 @@ type NotificationSettingsObservation struct { 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,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. + // +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"` } diff --git a/apis/devtestlab/v1beta1/zz_lab_types.go b/apis/devtestlab/v1beta1/zz_lab_types.go index f8aed7757..660fe248b 100755 --- a/apis/devtestlab/v1beta1/zz_lab_types.go +++ b/apis/devtestlab/v1beta1/zz_lab_types.go @@ -64,6 +64,7 @@ type LabObservation struct { 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. @@ -80,9 +81,11 @@ type LabParameters struct { 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 Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/devtestlab/v1beta1/zz_linuxvirtualmachine_types.go b/apis/devtestlab/v1beta1/zz_linuxvirtualmachine_types.go index f7f2d36ab..d28abc7c5 100755 --- a/apis/devtestlab/v1beta1/zz_linuxvirtualmachine_types.go +++ b/apis/devtestlab/v1beta1/zz_linuxvirtualmachine_types.go @@ -46,15 +46,19 @@ type GalleryImageReferenceObservation struct { 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,omitempty" 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,omitempty" 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,omitempty" 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,omitempty" tf:"version,omitempty"` } @@ -82,9 +86,11 @@ type InboundNATRuleObservation struct { 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,omitempty" tf:"backend_port,omitempty"` // The Protocol used for this NAT Rule. Possible values are Tcp and Udp. + // +kubebuilder:validation:Optional Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` } @@ -190,15 +196,19 @@ type LinuxVirtualMachineObservation struct { 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. @@ -242,12 +252,15 @@ type LinuxVirtualMachineParameters struct { 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. @@ -268,18 +281,23 @@ type LinuxVirtualMachineParameters struct { 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. + // +kubebuilder:validation:Optional StorageType *string `json:"storageType,omitempty" tf:"storage_type,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional 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"` } diff --git a/apis/devtestlab/v1beta1/zz_policy_types.go b/apis/devtestlab/v1beta1/zz_policy_types.go index 4e4ed4c0a..0920afbf5 100755 --- a/apis/devtestlab/v1beta1/zz_policy_types.go +++ b/apis/devtestlab/v1beta1/zz_policy_types.go @@ -73,12 +73,15 @@ type PolicyObservation struct { 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. @@ -95,9 +98,11 @@ type PolicyParameters struct { 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. @@ -114,9 +119,11 @@ type PolicyParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional 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"` } diff --git a/apis/devtestlab/v1beta1/zz_schedule_types.go b/apis/devtestlab/v1beta1/zz_schedule_types.go index 537477cb0..806a8f7af 100755 --- a/apis/devtestlab/v1beta1/zz_schedule_types.go +++ b/apis/devtestlab/v1beta1/zz_schedule_types.go @@ -28,6 +28,7 @@ type DailyRecurrenceObservation struct { type DailyRecurrenceParameters struct { // The time each day when the schedule takes effect. + // +kubebuilder:validation:Optional Time *string `json:"time,omitempty" tf:"time,omitempty"` } @@ -46,6 +47,7 @@ type HourlyRecurrenceObservation struct { type HourlyRecurrenceParameters struct { // Minutes of the hour the schedule will run. + // +kubebuilder:validation:Optional Minute *float64 `json:"minute,omitempty" tf:"minute,omitempty"` } @@ -106,12 +108,15 @@ type ScheduleNotificationSettingsObservation struct { 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"` } @@ -157,9 +162,11 @@ type ScheduleObservation struct { 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. @@ -176,9 +183,11 @@ type ScheduleParameters struct { 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 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. @@ -195,18 +204,23 @@ type ScheduleParameters struct { 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 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"` } @@ -231,9 +245,11 @@ type WeeklyRecurrenceObservation struct { type WeeklyRecurrenceParameters struct { // The time when the schedule takes effect. + // +kubebuilder:validation:Optional 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. + // +kubebuilder:validation:Optional WeekDays []*string `json:"weekDays,omitempty" tf:"week_days,omitempty"` } diff --git a/apis/devtestlab/v1beta1/zz_virtualnetwork_types.go b/apis/devtestlab/v1beta1/zz_virtualnetwork_types.go index a5edff156..1277a8c53 100755 --- a/apis/devtestlab/v1beta1/zz_virtualnetwork_types.go +++ b/apis/devtestlab/v1beta1/zz_virtualnetwork_types.go @@ -37,9 +37,11 @@ type SubnetObservation struct { type SubnetParameters struct { // Can this subnet be used for creating Virtual Machines? Possible values are Allow, Default and Deny. + // +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. + // +kubebuilder:validation:Optional UsePublicIPAddress *string `json:"usePublicIpAddress,omitempty" tf:"use_public_ip_address,omitempty"` } @@ -88,6 +90,7 @@ type VirtualNetworkObservation struct { 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. @@ -104,6 +107,7 @@ type VirtualNetworkParameters struct { 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. @@ -120,9 +124,11 @@ type VirtualNetworkParameters struct { 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 Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/devtestlab/v1beta1/zz_windowsvirtualmachine_types.go b/apis/devtestlab/v1beta1/zz_windowsvirtualmachine_types.go index bd220a559..76d9d385d 100755 --- a/apis/devtestlab/v1beta1/zz_windowsvirtualmachine_types.go +++ b/apis/devtestlab/v1beta1/zz_windowsvirtualmachine_types.go @@ -46,15 +46,19 @@ type WindowsVirtualMachineGalleryImageReferenceObservation struct { 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,omitempty" 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,omitempty" 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,omitempty" 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,omitempty" tf:"version,omitempty"` } @@ -82,9 +86,11 @@ type WindowsVirtualMachineInboundNATRuleObservation struct { 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,omitempty" tf:"backend_port,omitempty"` // The Protocol used for this NAT Rule. Possible values are Tcp and Udp. + // +kubebuilder:validation:Optional Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` } @@ -184,15 +190,19 @@ type WindowsVirtualMachineObservation struct { 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. @@ -236,12 +246,15 @@ type WindowsVirtualMachineParameters struct { 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. @@ -262,15 +275,19 @@ type WindowsVirtualMachineParameters struct { 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. + // +kubebuilder:validation:Optional StorageType *string `json:"storageType,omitempty" tf:"storage_type,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional 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"` } diff --git a/apis/digitaltwins/v1beta1/zz_instance_types.go b/apis/digitaltwins/v1beta1/zz_instance_types.go index 06d217ed8..14e4118eb 100755 --- a/apis/digitaltwins/v1beta1/zz_instance_types.go +++ b/apis/digitaltwins/v1beta1/zz_instance_types.go @@ -34,6 +34,7 @@ type IdentityObservation struct { type IdentityParameters struct { // The type of Managed Service Identity that is configured on this Digital Twins instance. The only possible value is SystemAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -73,9 +74,11 @@ type InstanceObservation struct { type InstanceParameters struct { // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // The Azure Region where the Digital Twins instance should exist. Changing this forces a new Digital Twins instance to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the Resource Group where the Digital Twins instance should exist. Changing this forces a new Digital Twins instance to be created. @@ -92,6 +95,7 @@ type InstanceParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the Digital Twins instance. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/elastic/v1beta1/zz_cloudelasticsearch_types.go b/apis/elastic/v1beta1/zz_cloudelasticsearch_types.go index aa7709b0c..8e5fbdb94 100755 --- a/apis/elastic/v1beta1/zz_cloudelasticsearch_types.go +++ b/apis/elastic/v1beta1/zz_cloudelasticsearch_types.go @@ -82,15 +82,19 @@ type CloudElasticsearchObservation struct { type CloudElasticsearchParameters struct { // Specifies the Email Address which should be associated with this Elasticsearch account. Changing this forces a new Elasticsearch to be created. + // +kubebuilder:validation:Optional ElasticCloudEmailAddress *string `json:"elasticCloudEmailAddress,omitempty" tf:"elastic_cloud_email_address,omitempty"` // The Azure Region where the Elasticsearch resource should exist. Changing this forces a new Elasticsearch to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // A logs block as defined below. + // +kubebuilder:validation:Optional Logs []LogsParameters `json:"logs,omitempty" tf:"logs,omitempty"` // Specifies if the Elasticsearch should have monitoring configured? Defaults to true. Changing this forces a new Elasticsearch to be created. + // +kubebuilder:validation:Optional MonitoringEnabled *bool `json:"monitoringEnabled,omitempty" tf:"monitoring_enabled,omitempty"` // The name of the Resource Group where the Elasticsearch resource should exist. Changing this forces a new Elasticsearch to be created. @@ -107,9 +111,11 @@ type CloudElasticsearchParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Specifies the name of the SKU for this Elasticsearch. Changing this forces a new Elasticsearch to be created. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // A mapping of tags which should be assigned to the Elasticsearch resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -140,12 +146,15 @@ type FilteringTagObservation struct { type FilteringTagParameters struct { // Specifies the type of action which should be taken when the Tag matches the name and value. Possible values are Exclude and Include. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // The name which should be used for this Elasticsearch resource. Changing this forces a new Elasticsearch to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the value of the Tag which should be filtered. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -182,15 +191,19 @@ type LogsObservation struct { type LogsParameters struct { // A list of filtering_tag blocks as defined above. + // +kubebuilder:validation:Optional FilteringTag []FilteringTagParameters `json:"filteringTag,omitempty" tf:"filtering_tag,omitempty"` // Specifies if the Azure Activity Logs should be sent to the Elasticsearch cluster. Defaults to false. + // +kubebuilder:validation:Optional SendActivityLogs *bool `json:"sendActivityLogs,omitempty" tf:"send_activity_logs,omitempty"` // Specifies if the AzureAD Logs should be sent to the Elasticsearch cluster. Defaults to false. + // +kubebuilder:validation:Optional SendAzureadLogs *bool `json:"sendAzureadLogs,omitempty" tf:"send_azuread_logs,omitempty"` // Specifies if the Azure Subscription Logs should be sent to the Elasticsearch cluster. Defaults to false. + // +kubebuilder:validation:Optional SendSubscriptionLogs *bool `json:"sendSubscriptionLogs,omitempty" tf:"send_subscription_logs,omitempty"` } diff --git a/apis/eventgrid/v1beta1/zz_domain_types.go b/apis/eventgrid/v1beta1/zz_domain_types.go index 6c7404514..6982adc50 100755 --- a/apis/eventgrid/v1beta1/zz_domain_types.go +++ b/apis/eventgrid/v1beta1/zz_domain_types.go @@ -97,33 +97,43 @@ type DomainObservation struct { type DomainParameters struct { // Whether to create the domain topic when the first event subscription at the scope of the domain topic is created. Defaults to true. + // +kubebuilder:validation:Optional AutoCreateTopicWithFirstSubscription *bool `json:"autoCreateTopicWithFirstSubscription,omitempty" tf:"auto_create_topic_with_first_subscription,omitempty"` // Whether to delete the domain topic when the last event subscription at the scope of the domain topic is deleted. Defaults to true. + // +kubebuilder:validation:Optional AutoDeleteTopicWithLastSubscription *bool `json:"autoDeleteTopicWithLastSubscription,omitempty" tf:"auto_delete_topic_with_last_subscription,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // One or more inbound_ip_rule blocks as defined below. + // +kubebuilder:validation:Optional InboundIPRule []InboundIPRuleParameters `json:"inboundIpRule,omitempty" tf:"inbound_ip_rule,omitempty"` // A input_mapping_default_values block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional InputMappingDefaultValues []InputMappingDefaultValuesParameters `json:"inputMappingDefaultValues,omitempty" tf:"input_mapping_default_values,omitempty"` // A input_mapping_fields block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional InputMappingFields []InputMappingFieldsParameters `json:"inputMappingFields,omitempty" tf:"input_mapping_fields,omitempty"` // Specifies the schema in which incoming events will be published to this domain. Allowed values are CloudEventSchemaV1_0, CustomEventSchema, or EventGridSchema. Defaults to eventgridschema. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional InputSchema *string `json:"inputSchema,omitempty" tf:"input_schema,omitempty"` // Whether local authentication methods is enabled for the EventGrid Domain. Defaults to true. + // +kubebuilder:validation:Optional LocalAuthEnabled *bool `json:"localAuthEnabled,omitempty" tf:"local_auth_enabled,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Whether or not public network access is allowed for this server. Defaults to true. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // The name of the resource group in which the EventGrid Domain exists. Changing this forces a new resource to be created. @@ -140,6 +150,7 @@ type DomainParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -170,9 +181,11 @@ type IdentityObservation struct { type IdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Event Grid Domain. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Event Grid Domain. Possible values are SystemAssigned, UserAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -197,9 +210,11 @@ type InboundIPRuleObservation struct { type InboundIPRuleParameters struct { // The action to take when the rule is matched. Possible values are Allow. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action"` // The IP mask (CIDR) to match on. + // +kubebuilder:validation:Optional IPMask *string `json:"ipMask,omitempty" tf:"ip_mask"` } @@ -230,12 +245,15 @@ type InputMappingDefaultValuesObservation struct { type InputMappingDefaultValuesParameters struct { // Specifies the default data version of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DataVersion *string `json:"dataVersion,omitempty" tf:"data_version,omitempty"` // Specifies the default event type of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional EventType *string `json:"eventType,omitempty" tf:"event_type,omitempty"` // Specifies the default subject of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Subject *string `json:"subject,omitempty" tf:"subject,omitempty"` } @@ -284,21 +302,27 @@ type InputMappingFieldsObservation struct { type InputMappingFieldsParameters struct { // Specifies the data version of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DataVersion *string `json:"dataVersion,omitempty" tf:"data_version,omitempty"` // Specifies the event time of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional EventTime *string `json:"eventTime,omitempty" tf:"event_time,omitempty"` // Specifies the event type of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional EventType *string `json:"eventType,omitempty" tf:"event_type,omitempty"` // Specifies the id of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ID *string `json:"id,omitempty" tf:"id,omitempty"` // Specifies the subject of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Subject *string `json:"subject,omitempty" tf:"subject,omitempty"` // Specifies the topic of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Topic *string `json:"topic,omitempty" tf:"topic,omitempty"` } diff --git a/apis/eventgrid/v1beta1/zz_eventsubscription_types.go b/apis/eventgrid/v1beta1/zz_eventsubscription_types.go index dd5dafc5b..dea4ebed0 100755 --- a/apis/eventgrid/v1beta1/zz_eventsubscription_types.go +++ b/apis/eventgrid/v1beta1/zz_eventsubscription_types.go @@ -136,60 +136,79 @@ type AdvancedFilterObservation struct { type AdvancedFilterParameters struct { // Compares a value of an event using a single boolean value. + // +kubebuilder:validation:Optional BoolEquals []BoolEqualsParameters `json:"boolEquals,omitempty" tf:"bool_equals,omitempty"` // Evaluates if a value of an event isn't NULL or undefined. + // +kubebuilder:validation:Optional IsNotNull []IsNotNullParameters `json:"isNotNull,omitempty" tf:"is_not_null,omitempty"` // Evaluates if a value of an event is NULL or undefined. + // +kubebuilder:validation:Optional IsNullOrUndefined []IsNullOrUndefinedParameters `json:"isNullOrUndefined,omitempty" tf:"is_null_or_undefined,omitempty"` // Compares a value of an event using a single floating point number. + // +kubebuilder:validation:Optional NumberGreaterThan []NumberGreaterThanParameters `json:"numberGreaterThan,omitempty" tf:"number_greater_than,omitempty"` // Compares a value of an event using a single floating point number. + // +kubebuilder:validation:Optional NumberGreaterThanOrEquals []NumberGreaterThanOrEqualsParameters `json:"numberGreaterThanOrEquals,omitempty" tf:"number_greater_than_or_equals,omitempty"` // Compares a value of an event using multiple floating point numbers. + // +kubebuilder:validation:Optional NumberIn []NumberInParameters `json:"numberIn,omitempty" tf:"number_in,omitempty"` // Compares a value of an event using multiple floating point number ranges. + // +kubebuilder:validation:Optional NumberInRange []NumberInRangeParameters `json:"numberInRange,omitempty" tf:"number_in_range,omitempty"` // Compares a value of an event using a single floating point number. + // +kubebuilder:validation:Optional NumberLessThan []NumberLessThanParameters `json:"numberLessThan,omitempty" tf:"number_less_than,omitempty"` // Compares a value of an event using a single floating point number. + // +kubebuilder:validation:Optional NumberLessThanOrEquals []NumberLessThanOrEqualsParameters `json:"numberLessThanOrEquals,omitempty" tf:"number_less_than_or_equals,omitempty"` // Compares a value of an event using multiple floating point numbers. + // +kubebuilder:validation:Optional NumberNotIn []NumberNotInParameters `json:"numberNotIn,omitempty" tf:"number_not_in,omitempty"` // Compares a value of an event using multiple floating point number ranges. + // +kubebuilder:validation:Optional NumberNotInRange []NumberNotInRangeParameters `json:"numberNotInRange,omitempty" tf:"number_not_in_range,omitempty"` // Compares a value of an event using multiple string values. + // +kubebuilder:validation:Optional StringBeginsWith []StringBeginsWithParameters `json:"stringBeginsWith,omitempty" tf:"string_begins_with,omitempty"` // Compares a value of an event using multiple string values. + // +kubebuilder:validation:Optional StringContains []StringContainsParameters `json:"stringContains,omitempty" tf:"string_contains,omitempty"` // Compares a value of an event using multiple string values. + // +kubebuilder:validation:Optional StringEndsWith []StringEndsWithParameters `json:"stringEndsWith,omitempty" tf:"string_ends_with,omitempty"` // Compares a value of an event using multiple string values. + // +kubebuilder:validation:Optional StringIn []StringInParameters `json:"stringIn,omitempty" tf:"string_in,omitempty"` // Compares a value of an event using multiple string values. + // +kubebuilder:validation:Optional StringNotBeginsWith []StringNotBeginsWithParameters `json:"stringNotBeginsWith,omitempty" tf:"string_not_begins_with,omitempty"` // Compares a value of an event using multiple string values. + // +kubebuilder:validation:Optional StringNotContains []StringNotContainsParameters `json:"stringNotContains,omitempty" tf:"string_not_contains,omitempty"` // Compares a value of an event using multiple string values. + // +kubebuilder:validation:Optional StringNotEndsWith []StringNotEndsWithParameters `json:"stringNotEndsWith,omitempty" tf:"string_not_ends_with,omitempty"` // Compares a value of an event using multiple string values. + // +kubebuilder:validation:Optional StringNotIn []StringNotInParameters `json:"stringNotIn,omitempty" tf:"string_not_in,omitempty"` } @@ -220,12 +239,15 @@ type AzureFunctionEndpointObservation struct { type AzureFunctionEndpointParameters struct { // Specifies the ID of the Function where the Event Subscription will receive events. This must be the functions ID in format {function_app.id}/functions/{name}. + // +kubebuilder:validation:Optional FunctionID *string `json:"functionId,omitempty" tf:"function_id,omitempty"` // Maximum number of events per batch. + // +kubebuilder:validation:Optional MaxEventsPerBatch *float64 `json:"maxEventsPerBatch,omitempty" tf:"max_events_per_batch,omitempty"` // Preferred batch size in Kilobytes. + // +kubebuilder:validation:Optional PreferredBatchSizeInKilobytes *float64 `json:"preferredBatchSizeInKilobytes,omitempty" tf:"preferred_batch_size_in_kilobytes,omitempty"` } @@ -250,9 +272,11 @@ type BoolEqualsObservation struct { type BoolEqualsParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + // +kubebuilder:validation:Optional Key *string `json:"key,omitempty" tf:"key,omitempty"` // Specifies a single value to compare to when using a single value operator. + // +kubebuilder:validation:Optional Value *bool `json:"value,omitempty" tf:"value,omitempty"` } @@ -277,9 +301,11 @@ type DeadLetterIdentityObservation struct { type DeadLetterIdentityParameters struct { // Specifies the type of Managed Service Identity that is used for dead lettering. Allowed value is SystemAssigned, UserAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // The user identity associated with the resource. + // +kubebuilder:validation:Optional UserAssignedIdentity *string `json:"userAssignedIdentity,omitempty" tf:"user_assigned_identity,omitempty"` } @@ -304,9 +330,11 @@ type DeliveryIdentityObservation struct { type DeliveryIdentityParameters struct { // Specifies the type of Managed Service Identity that is used for event delivery. Allowed value is SystemAssigned, UserAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // The user identity associated with the resource. + // +kubebuilder:validation:Optional UserAssignedIdentity *string `json:"userAssignedIdentity,omitempty" tf:"user_assigned_identity,omitempty"` } @@ -343,15 +371,19 @@ type DeliveryPropertyObservation struct { type DeliveryPropertyParameters struct { // The name of the header to send on to the destination + // +kubebuilder:validation:Optional HeaderName *string `json:"headerName,omitempty" tf:"header_name,omitempty"` // True if the value is a secret and should be protected, otherwise false. If True, then this value won't be returned from Azure API calls + // +kubebuilder:validation:Optional Secret *bool `json:"secret,omitempty" tf:"secret,omitempty"` // If the type is Dynamic, then provide the payload field to be used as the value. Valid source fields differ by subscription type. + // +kubebuilder:validation:Optional SourceField *string `json:"sourceField,omitempty" tf:"source_field,omitempty"` // Either Static or Dynamic + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // If the type is Static, then provide the value to use @@ -494,45 +526,59 @@ type EventSubscriptionObservation struct { type EventSubscriptionParameters struct { // A advanced_filter block as defined below. + // +kubebuilder:validation:Optional AdvancedFilter []AdvancedFilterParameters `json:"advancedFilter,omitempty" tf:"advanced_filter,omitempty"` // Specifies whether advanced filters should be evaluated against an array of values instead of expecting a singular value. Defaults to false. + // +kubebuilder:validation:Optional AdvancedFilteringOnArraysEnabled *bool `json:"advancedFilteringOnArraysEnabled,omitempty" tf:"advanced_filtering_on_arrays_enabled,omitempty"` // An azure_function_endpoint block as defined below. + // +kubebuilder:validation:Optional AzureFunctionEndpoint []AzureFunctionEndpointParameters `json:"azureFunctionEndpoint,omitempty" tf:"azure_function_endpoint,omitempty"` // A dead_letter_identity block as defined below. + // +kubebuilder:validation:Optional DeadLetterIdentity []DeadLetterIdentityParameters `json:"deadLetterIdentity,omitempty" tf:"dead_letter_identity,omitempty"` // A delivery_identity block as defined below. + // +kubebuilder:validation:Optional DeliveryIdentity []DeliveryIdentityParameters `json:"deliveryIdentity,omitempty" tf:"delivery_identity,omitempty"` // One or more delivery_property blocks as defined below. + // +kubebuilder:validation:Optional DeliveryProperty []DeliveryPropertyParameters `json:"deliveryProperty,omitempty" tf:"delivery_property,omitempty"` // Specifies the event delivery schema for the event subscription. Possible values include: EventGridSchema, CloudEventSchemaV1_0, CustomInputSchema. Defaults to EventGridSchema. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional EventDeliverySchema *string `json:"eventDeliverySchema,omitempty" tf:"event_delivery_schema,omitempty"` // Specifies the id where the Event Hub is located. + // +kubebuilder:validation:Optional EventHubEndpointID *string `json:"eventhubEndpointId,omitempty" tf:"eventhub_endpoint_id,omitempty"` // Specifies the expiration time of the event subscription (Datetime Format RFC 3339). + // +kubebuilder:validation:Optional ExpirationTimeUtc *string `json:"expirationTimeUtc,omitempty" tf:"expiration_time_utc,omitempty"` // Specifies the id where the Hybrid Connection is located. + // +kubebuilder:validation:Optional HybridConnectionEndpointID *string `json:"hybridConnectionEndpointId,omitempty" tf:"hybrid_connection_endpoint_id,omitempty"` // A list of applicable event types that need to be part of the event subscription. + // +kubebuilder:validation:Optional IncludedEventTypes []*string `json:"includedEventTypes,omitempty" tf:"included_event_types,omitempty"` // A list of labels to assign to the event subscription. + // +kubebuilder:validation:Optional Labels []*string `json:"labels,omitempty" tf:"labels,omitempty"` // Specifies the name of the EventGrid Event Subscription resource. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A retry_policy block as defined below. + // +kubebuilder:validation:Optional RetryPolicy []RetryPolicyParameters `json:"retryPolicy,omitempty" tf:"retry_policy,omitempty"` // Specifies the scope at which the EventGrid Event Subscription should be created. Changing this forces a new resource to be created. @@ -550,21 +596,27 @@ type EventSubscriptionParameters struct { ScopeSelector *v1.Selector `json:"scopeSelector,omitempty" tf:"-"` // Specifies the id where the Service Bus Queue is located. + // +kubebuilder:validation:Optional ServiceBusQueueEndpointID *string `json:"serviceBusQueueEndpointId,omitempty" tf:"service_bus_queue_endpoint_id,omitempty"` // Specifies the id where the Service Bus Topic is located. + // +kubebuilder:validation:Optional ServiceBusTopicEndpointID *string `json:"serviceBusTopicEndpointId,omitempty" tf:"service_bus_topic_endpoint_id,omitempty"` // A storage_blob_dead_letter_destination block as defined below. + // +kubebuilder:validation:Optional StorageBlobDeadLetterDestination []StorageBlobDeadLetterDestinationParameters `json:"storageBlobDeadLetterDestination,omitempty" tf:"storage_blob_dead_letter_destination,omitempty"` // A storage_queue_endpoint block as defined below. + // +kubebuilder:validation:Optional StorageQueueEndpoint []StorageQueueEndpointParameters `json:"storageQueueEndpoint,omitempty" tf:"storage_queue_endpoint,omitempty"` // A subject_filter block as defined below. + // +kubebuilder:validation:Optional SubjectFilter []SubjectFilterParameters `json:"subjectFilter,omitempty" tf:"subject_filter,omitempty"` // A webhook_endpoint block as defined below. + // +kubebuilder:validation:Optional WebhookEndpoint []WebhookEndpointParameters `json:"webhookEndpoint,omitempty" tf:"webhook_endpoint,omitempty"` } @@ -583,6 +635,7 @@ type IsNotNullObservation struct { type IsNotNullParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + // +kubebuilder:validation:Optional Key *string `json:"key,omitempty" tf:"key,omitempty"` } @@ -601,6 +654,7 @@ type IsNullOrUndefinedObservation struct { type IsNullOrUndefinedParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + // +kubebuilder:validation:Optional Key *string `json:"key,omitempty" tf:"key,omitempty"` } @@ -643,18 +697,22 @@ type NumberGreaterThanOrEqualsObservation struct { type NumberGreaterThanOrEqualsParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + // +kubebuilder:validation:Optional Key *string `json:"key,omitempty" tf:"key,omitempty"` // Specifies a single value to compare to when using a single value operator. + // +kubebuilder:validation:Optional Value *float64 `json:"value,omitempty" tf:"value,omitempty"` } type NumberGreaterThanParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + // +kubebuilder:validation:Optional Key *string `json:"key,omitempty" tf:"key,omitempty"` // Specifies a single value to compare to when using a single value operator. + // +kubebuilder:validation:Optional Value *float64 `json:"value,omitempty" tf:"value,omitempty"` } @@ -679,9 +737,11 @@ type NumberInObservation struct { type NumberInParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + // +kubebuilder:validation:Optional Key *string `json:"key,omitempty" tf:"key,omitempty"` // Specifies an array of values to compare to when using a multiple values operator. + // +kubebuilder:validation:Optional Values []*float64 `json:"values,omitempty" tf:"values,omitempty"` } @@ -706,9 +766,11 @@ type NumberInRangeObservation struct { type NumberInRangeParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + // +kubebuilder:validation:Optional Key *string `json:"key,omitempty" tf:"key,omitempty"` // Specifies an array of values to compare to when using a multiple values operator. + // +kubebuilder:validation:Optional Values [][]*float64 `json:"values,omitempty" tf:"values,omitempty"` } @@ -751,18 +813,22 @@ type NumberLessThanOrEqualsObservation struct { type NumberLessThanOrEqualsParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + // +kubebuilder:validation:Optional Key *string `json:"key,omitempty" tf:"key,omitempty"` // Specifies a single value to compare to when using a single value operator. + // +kubebuilder:validation:Optional Value *float64 `json:"value,omitempty" tf:"value,omitempty"` } type NumberLessThanParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + // +kubebuilder:validation:Optional Key *string `json:"key,omitempty" tf:"key,omitempty"` // Specifies a single value to compare to when using a single value operator. + // +kubebuilder:validation:Optional Value *float64 `json:"value,omitempty" tf:"value,omitempty"` } @@ -787,9 +853,11 @@ type NumberNotInObservation struct { type NumberNotInParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + // +kubebuilder:validation:Optional Key *string `json:"key,omitempty" tf:"key,omitempty"` // Specifies an array of values to compare to when using a multiple values operator. + // +kubebuilder:validation:Optional Values []*float64 `json:"values,omitempty" tf:"values,omitempty"` } @@ -814,9 +882,11 @@ type NumberNotInRangeObservation struct { type NumberNotInRangeParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + // +kubebuilder:validation:Optional Key *string `json:"key,omitempty" tf:"key,omitempty"` // Specifies an array of values to compare to when using a multiple values operator. + // +kubebuilder:validation:Optional Values [][]*float64 `json:"values,omitempty" tf:"values,omitempty"` } @@ -841,9 +911,11 @@ type RetryPolicyObservation struct { type RetryPolicyParameters struct { // Specifies the time to live (in minutes) for events. Supported range is 1 to 1440. See official documentation for more details. + // +kubebuilder:validation:Optional EventTimeToLive *float64 `json:"eventTimeToLive,omitempty" tf:"event_time_to_live,omitempty"` // Specifies the maximum number of delivery retry attempts for events. + // +kubebuilder:validation:Optional MaxDeliveryAttempts *float64 `json:"maxDeliveryAttempts,omitempty" tf:"max_delivery_attempts,omitempty"` } @@ -868,9 +940,11 @@ type StorageBlobDeadLetterDestinationObservation struct { type StorageBlobDeadLetterDestinationParameters struct { // Specifies the id of the storage account id where the storage blob is located. + // +kubebuilder:validation:Optional StorageAccountID *string `json:"storageAccountId,omitempty" tf:"storage_account_id,omitempty"` // Specifies the name of the Storage blob container that is the destination of the deadletter events. + // +kubebuilder:validation:Optional StorageBlobContainerName *string `json:"storageBlobContainerName,omitempty" tf:"storage_blob_container_name,omitempty"` } @@ -895,6 +969,7 @@ type StorageQueueEndpointObservation struct { type StorageQueueEndpointParameters struct { // Storage queue message time to live in seconds. + // +kubebuilder:validation:Optional QueueMessageTimeToLiveInSeconds *float64 `json:"queueMessageTimeToLiveInSeconds,omitempty" tf:"queue_message_time_to_live_in_seconds,omitempty"` // Specifies the name of the storage queue where the Event Subscription will receive events. @@ -946,9 +1021,11 @@ type StringBeginsWithObservation struct { type StringBeginsWithParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + // +kubebuilder:validation:Optional Key *string `json:"key,omitempty" tf:"key,omitempty"` // Specifies an array of values to compare to when using a multiple values operator. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -973,9 +1050,11 @@ type StringContainsObservation struct { type StringContainsParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + // +kubebuilder:validation:Optional Key *string `json:"key,omitempty" tf:"key,omitempty"` // Specifies an array of values to compare to when using a multiple values operator. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -1000,9 +1079,11 @@ type StringEndsWithObservation struct { type StringEndsWithParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + // +kubebuilder:validation:Optional Key *string `json:"key,omitempty" tf:"key,omitempty"` // Specifies an array of values to compare to when using a multiple values operator. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -1027,9 +1108,11 @@ type StringInObservation struct { type StringInParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + // +kubebuilder:validation:Optional Key *string `json:"key,omitempty" tf:"key,omitempty"` // Specifies an array of values to compare to when using a multiple values operator. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -1054,9 +1137,11 @@ type StringNotBeginsWithObservation struct { type StringNotBeginsWithParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + // +kubebuilder:validation:Optional Key *string `json:"key,omitempty" tf:"key,omitempty"` // Specifies an array of values to compare to when using a multiple values operator. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -1081,9 +1166,11 @@ type StringNotContainsObservation struct { type StringNotContainsParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + // +kubebuilder:validation:Optional Key *string `json:"key,omitempty" tf:"key,omitempty"` // Specifies an array of values to compare to when using a multiple values operator. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -1108,9 +1195,11 @@ type StringNotEndsWithObservation struct { type StringNotEndsWithParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + // +kubebuilder:validation:Optional Key *string `json:"key,omitempty" tf:"key,omitempty"` // Specifies an array of values to compare to when using a multiple values operator. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -1135,9 +1224,11 @@ type StringNotInObservation struct { type StringNotInParameters struct { // Specifies the field within the event data that you want to use for filtering. Type of the field can be a number, boolean, or string. + // +kubebuilder:validation:Optional Key *string `json:"key,omitempty" tf:"key,omitempty"` // Specifies an array of values to compare to when using a multiple values operator. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -1168,12 +1259,15 @@ type SubjectFilterObservation struct { type SubjectFilterParameters struct { // Specifies if subject_begins_with and subject_ends_with case sensitive. This value + // +kubebuilder:validation:Optional CaseSensitive *bool `json:"caseSensitive,omitempty" tf:"case_sensitive,omitempty"` // A string to filter events for an event subscription based on a resource path prefix. + // +kubebuilder:validation:Optional SubjectBeginsWith *string `json:"subjectBeginsWith,omitempty" tf:"subject_begins_with,omitempty"` // A string to filter events for an event subscription based on a resource path suffix. + // +kubebuilder:validation:Optional SubjectEndsWith *string `json:"subjectEndsWith,omitempty" tf:"subject_ends_with,omitempty"` } @@ -1219,18 +1313,23 @@ type WebhookEndpointObservation struct { type WebhookEndpointParameters struct { // The Azure Active Directory Application ID or URI to get the access token that will be included as the bearer token in delivery requests. + // +kubebuilder:validation:Optional ActiveDirectoryAppIDOrURI *string `json:"activeDirectoryAppIdOrUri,omitempty" tf:"active_directory_app_id_or_uri,omitempty"` // The Azure Active Directory Tenant ID to get the access token that will be included as the bearer token in delivery requests. + // +kubebuilder:validation:Optional ActiveDirectoryTenantID *string `json:"activeDirectoryTenantId,omitempty" tf:"active_directory_tenant_id,omitempty"` // Maximum number of events per batch. + // +kubebuilder:validation:Optional MaxEventsPerBatch *float64 `json:"maxEventsPerBatch,omitempty" tf:"max_events_per_batch,omitempty"` // Preferred batch size in Kilobytes. + // +kubebuilder:validation:Optional PreferredBatchSizeInKilobytes *float64 `json:"preferredBatchSizeInKilobytes,omitempty" tf:"preferred_batch_size_in_kilobytes,omitempty"` // Specifies the url of the webhook where the Event Subscription will receive events. + // +kubebuilder:validation:Optional URL *string `json:"url,omitempty" tf:"url,omitempty"` } diff --git a/apis/eventgrid/v1beta1/zz_systemtopic_types.go b/apis/eventgrid/v1beta1/zz_systemtopic_types.go index ec0a05801..61fdad95d 100755 --- a/apis/eventgrid/v1beta1/zz_systemtopic_types.go +++ b/apis/eventgrid/v1beta1/zz_systemtopic_types.go @@ -40,9 +40,11 @@ type SystemTopicIdentityObservation struct { type SystemTopicIdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Event Grid System Topic. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Event Grid System Topic. Possible values are SystemAssigned, UserAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -91,9 +93,11 @@ type SystemTopicObservation struct { type SystemTopicParameters struct { // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []SystemTopicIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // The Azure Region where the Event Grid System Topic should exist. Changing this forces a new Event Grid System Topic to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the Resource Group where the Event Grid System Topic should exist. Changing this forces a new Event Grid System Topic to be created. @@ -124,9 +128,11 @@ type SystemTopicParameters struct { SourceArmResourceIDSelector *v1.Selector `json:"sourceArmResourceIdSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the Event Grid System Topic. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The Topic Type of the Event Grid System Topic. The topic type is validated by Azure and there may be additional topic types beyond the following: Microsoft.AppConfiguration.ConfigurationStores, Microsoft.Communication.CommunicationServices, Microsoft.ContainerRegistry.Registries, Microsoft.Devices.IoTHubs, Microsoft.EventGrid.Domains, Microsoft.EventGrid.Topics, Microsoft.Eventhub.Namespaces, Microsoft.KeyVault.vaults, Microsoft.MachineLearningServices.Workspaces, Microsoft.Maps.Accounts, Microsoft.Media.MediaServices, Microsoft.Resources.ResourceGroups, Microsoft.Resources.Subscriptions, Microsoft.ServiceBus.Namespaces, Microsoft.SignalRService.SignalR, Microsoft.Storage.StorageAccounts, Microsoft.Web.ServerFarms and Microsoft.Web.Sites. Changing this forces a new Event Grid System Topic to be created. + // +kubebuilder:validation:Optional TopicType *string `json:"topicType,omitempty" tf:"topic_type,omitempty"` } diff --git a/apis/eventgrid/v1beta1/zz_topic_types.go b/apis/eventgrid/v1beta1/zz_topic_types.go index e3304a4dc..e5da22919 100755 --- a/apis/eventgrid/v1beta1/zz_topic_types.go +++ b/apis/eventgrid/v1beta1/zz_topic_types.go @@ -40,9 +40,11 @@ type TopicIdentityObservation struct { type TopicIdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Event Grid Topic. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Event Grid Topic. Possible values are SystemAssigned, UserAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -67,9 +69,11 @@ type TopicInboundIPRuleObservation struct { type TopicInboundIPRuleParameters struct { // The action to take when the rule is matched. Possible values are Allow. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action"` // The IP mask (CIDR) to match on. + // +kubebuilder:validation:Optional IPMask *string `json:"ipMask,omitempty" tf:"ip_mask"` } @@ -130,12 +134,15 @@ type TopicInputMappingDefaultValuesObservation struct { type TopicInputMappingDefaultValuesParameters struct { // Specifies the default data version of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DataVersion *string `json:"dataVersion,omitempty" tf:"data_version,omitempty"` // Specifies the default event type of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional EventType *string `json:"eventType,omitempty" tf:"event_type,omitempty"` // Specifies the default subject of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Subject *string `json:"subject,omitempty" tf:"subject,omitempty"` } @@ -184,21 +191,27 @@ type TopicInputMappingFieldsObservation struct { type TopicInputMappingFieldsParameters struct { // Specifies the data version of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DataVersion *string `json:"dataVersion,omitempty" tf:"data_version,omitempty"` // Specifies the event time of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional EventTime *string `json:"eventTime,omitempty" tf:"event_time,omitempty"` // Specifies the event type of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional EventType *string `json:"eventType,omitempty" tf:"event_type,omitempty"` // Specifies the id of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ID *string `json:"id,omitempty" tf:"id,omitempty"` // Specifies the subject of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Subject *string `json:"subject,omitempty" tf:"subject,omitempty"` // Specifies the topic of the EventGrid Event to associate with the domain. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Topic *string `json:"topic,omitempty" tf:"topic,omitempty"` } @@ -244,27 +257,35 @@ type TopicObservation struct { type TopicParameters struct { // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []TopicIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // One or more inbound_ip_rule blocks as defined below. + // +kubebuilder:validation:Optional InboundIPRule []TopicInboundIPRuleParameters `json:"inboundIpRule,omitempty" tf:"inbound_ip_rule,omitempty"` // A input_mapping_default_values block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional InputMappingDefaultValues []TopicInputMappingDefaultValuesParameters `json:"inputMappingDefaultValues,omitempty" tf:"input_mapping_default_values,omitempty"` // A input_mapping_fields block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional InputMappingFields []TopicInputMappingFieldsParameters `json:"inputMappingFields,omitempty" tf:"input_mapping_fields,omitempty"` // Specifies the schema in which incoming events will be published to this domain. Allowed values are CloudEventSchemaV1_0, CustomEventSchema, or EventGridSchema. Defaults to EventGridSchema. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional InputSchema *string `json:"inputSchema,omitempty" tf:"input_schema,omitempty"` // Whether local authentication methods is enabled for the EventGrid Topic. Defaults to true. + // +kubebuilder:validation:Optional LocalAuthEnabled *bool `json:"localAuthEnabled,omitempty" tf:"local_auth_enabled,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Whether or not public network access is allowed for this server. Defaults to true. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // The name of the resource group in which the EventGrid Topic exists. Changing this forces a new resource to be created. @@ -281,6 +302,7 @@ type TopicParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/eventhub/v1beta1/zz_authorizationrule_types.go b/apis/eventhub/v1beta1/zz_authorizationrule_types.go index 58adc8759..543120984 100755 --- a/apis/eventhub/v1beta1/zz_authorizationrule_types.go +++ b/apis/eventhub/v1beta1/zz_authorizationrule_types.go @@ -65,9 +65,11 @@ type AuthorizationRuleParameters struct { EventHubNameSelector *v1.Selector `json:"eventhubNameSelector,omitempty" tf:"-"` // Does this Authorization Rule have permissions to Listen to the Event Hub? Defaults to false. + // +kubebuilder:validation:Optional Listen *bool `json:"listen,omitempty" tf:"listen,omitempty"` // Does this Authorization Rule have permissions to Manage to the Event Hub? When this property is true - both listen and send must be too. Defaults to false. + // +kubebuilder:validation:Optional Manage *bool `json:"manage,omitempty" tf:"manage,omitempty"` // Specifies the name of the grandparent EventHub Namespace. Changing this forces a new resource to be created. @@ -97,6 +99,7 @@ type AuthorizationRuleParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Does this Authorization Rule have permissions to Send to the Event Hub? Defaults to false. + // +kubebuilder:validation:Optional Send *bool `json:"send,omitempty" tf:"send,omitempty"` } diff --git a/apis/eventhub/v1beta1/zz_consumergroup_types.go b/apis/eventhub/v1beta1/zz_consumergroup_types.go index f5c1cfc01..9333365f5 100755 --- a/apis/eventhub/v1beta1/zz_consumergroup_types.go +++ b/apis/eventhub/v1beta1/zz_consumergroup_types.go @@ -79,6 +79,7 @@ type ConsumerGroupParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Specifies the user metadata. + // +kubebuilder:validation:Optional UserMetadata *string `json:"userMetadata,omitempty" tf:"user_metadata,omitempty"` } diff --git a/apis/eventhub/v1beta1/zz_eventhub_types.go b/apis/eventhub/v1beta1/zz_eventhub_types.go index 016c5a81d..3b9cfeee6 100755 --- a/apis/eventhub/v1beta1/zz_eventhub_types.go +++ b/apis/eventhub/v1beta1/zz_eventhub_types.go @@ -58,21 +58,27 @@ type CaptureDescriptionObservation struct { type CaptureDescriptionParameters struct { // A destination block as defined below. + // +kubebuilder:validation:Optional Destination []DestinationParameters `json:"destination,omitempty" tf:"destination,omitempty"` // Specifies if the Capture Description is Enabled. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Specifies the Encoding used for the Capture Description. Possible values are Avro and AvroDeflate. + // +kubebuilder:validation:Optional Encoding *string `json:"encoding,omitempty" tf:"encoding,omitempty"` // Specifies the time interval in seconds at which the capture will happen. Values can be between 60 and 900 seconds. Defaults to 300 seconds. + // +kubebuilder:validation:Optional IntervalInSeconds *float64 `json:"intervalInSeconds,omitempty" tf:"interval_in_seconds,omitempty"` // Specifies the amount of data built up in your EventHub before a Capture Operation occurs. Value should be between 10485760 and 524288000 bytes. Defaults to 314572800 bytes. + // +kubebuilder:validation:Optional SizeLimitInBytes *float64 `json:"sizeLimitInBytes,omitempty" tf:"size_limit_in_bytes,omitempty"` // Specifies if empty files should not be emitted if no events occur during the Capture time window. Defaults to false. + // +kubebuilder:validation:Optional SkipEmptyArchives *bool `json:"skipEmptyArchives,omitempty" tf:"skip_empty_archives,omitempty"` } @@ -109,15 +115,19 @@ type DestinationObservation struct { type DestinationParameters struct { // The Blob naming convention for archiving. e.g. {Namespace}/{EventHub}/{PartitionId}/{Year}/{Month}/{Day}/{Hour}/{Minute}/{Second}. Here all the parameters (Namespace,EventHub .. etc) are mandatory irrespective of order + // +kubebuilder:validation:Optional ArchiveNameFormat *string `json:"archiveNameFormat,omitempty" tf:"archive_name_format,omitempty"` // The name of the Container within the Blob Storage Account where messages should be archived. + // +kubebuilder:validation:Optional BlobContainerName *string `json:"blobContainerName,omitempty" tf:"blob_container_name,omitempty"` // Specifies the name of the EventHub resource. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID of the Blob Storage Account where messages should be archived. + // +kubebuilder:validation:Optional StorageAccountID *string `json:"storageAccountId,omitempty" tf:"storage_account_id,omitempty"` } @@ -166,9 +176,11 @@ type EventHubObservation struct { type EventHubParameters struct { // A capture_description block as defined below. + // +kubebuilder:validation:Optional CaptureDescription []CaptureDescriptionParameters `json:"captureDescription,omitempty" tf:"capture_description,omitempty"` // Specifies the number of days to retain the events for this Event Hub. + // +kubebuilder:validation:Optional MessageRetention *float64 `json:"messageRetention,omitempty" tf:"message_retention,omitempty"` // Specifies the name of the EventHub Namespace. Changing this forces a new resource to be created. @@ -185,6 +197,7 @@ type EventHubParameters struct { NamespaceNameSelector *v1.Selector `json:"namespaceNameSelector,omitempty" tf:"-"` // Specifies the current number of shards on the Event Hub. Changing this will force-recreate the resource. + // +kubebuilder:validation:Optional PartitionCount *float64 `json:"partitionCount,omitempty" tf:"partition_count,omitempty"` // The name of the resource group in which the EventHub's parent Namespace exists. Changing this forces a new resource to be created. @@ -201,6 +214,7 @@ type EventHubParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Specifies the status of the Event Hub resource. Possible values are Active, Disabled and SendDisabled. Defaults to Active. + // +kubebuilder:validation:Optional Status *string `json:"status,omitempty" tf:"status,omitempty"` } diff --git a/apis/eventhub/v1beta1/zz_eventhubnamespace_types.go b/apis/eventhub/v1beta1/zz_eventhubnamespace_types.go index 749b8ddfe..c2d9c5e48 100755 --- a/apis/eventhub/v1beta1/zz_eventhubnamespace_types.go +++ b/apis/eventhub/v1beta1/zz_eventhubnamespace_types.go @@ -106,33 +106,43 @@ type EventHubNamespaceObservation struct { type EventHubNamespaceParameters struct { // Is Auto Inflate enabled for the EventHub Namespace? + // +kubebuilder:validation:Optional AutoInflateEnabled *bool `json:"autoInflateEnabled,omitempty" tf:"auto_inflate_enabled,omitempty"` // Specifies the Capacity / Throughput Units for a Standard SKU namespace. Default capacity has a maximum of 2, but can be increased in blocks of 2 on a committed purchase basis. Defaults to 1. + // +kubebuilder:validation:Optional Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` // Specifies the ID of the EventHub Dedicated Cluster where this Namespace should created. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DedicatedClusterID *string `json:"dedicatedClusterId,omitempty" tf:"dedicated_cluster_id,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // Is SAS authentication enabled for the EventHub Namespace? Defaults to true. + // +kubebuilder:validation:Optional LocalAuthenticationEnabled *bool `json:"localAuthenticationEnabled,omitempty" tf:"local_authentication_enabled,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the maximum number of throughput units when Auto Inflate is Enabled. Valid values range from 1 - 20. + // +kubebuilder:validation:Optional MaximumThroughputUnits *float64 `json:"maximumThroughputUnits,omitempty" tf:"maximum_throughput_units,omitempty"` // The minimum supported TLS version for this EventHub Namespace. Valid values are: 1.0, 1.1 and 1.2. The current default minimum TLS version is 1.2. + // +kubebuilder:validation:Optional MinimumTLSVersion *string `json:"minimumTlsVersion,omitempty" tf:"minimum_tls_version,omitempty"` // A network_rulesets block as defined below. + // +kubebuilder:validation:Optional NetworkRulesets []NetworkRulesetsParameters `json:"networkRulesets,omitempty" tf:"network_rulesets,omitempty"` // Is public network access enabled for the EventHub Namespace? Defaults to true. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // The name of the resource group in which to create the namespace. Changing this forces a new resource to be created. @@ -149,12 +159,15 @@ type EventHubNamespaceParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Defines which tier to use. Valid options are Basic, Standard, and Premium. Please note that setting this field to Premium will force the creation of a new resource. + // +kubebuilder:validation:Optional Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies if the EventHub Namespace should be Zone Redundant (created across Availability Zones). Changing this forces a new resource to be created. Defaults to false. + // +kubebuilder:validation:Optional ZoneRedundant *bool `json:"zoneRedundant,omitempty" tf:"zone_redundant,omitempty"` } @@ -179,9 +192,11 @@ type IPRuleObservation struct { type IPRuleParameters struct { // The action to take when the rule is matched. Possible values are Allow. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action"` // The IP mask to match on. + // +kubebuilder:validation:Optional IPMask *string `json:"ipMask,omitempty" tf:"ip_mask"` } @@ -212,9 +227,11 @@ type IdentityObservation struct { type IdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this EventHub namespace. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Event Hub Namespace. Possible values are SystemAssigned or UserAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -257,18 +274,23 @@ type NetworkRulesetsObservation struct { type NetworkRulesetsParameters struct { // The default action to take when a rule is not matched. Possible values are Allow and Deny. + // +kubebuilder:validation:Optional DefaultAction *string `json:"defaultAction,omitempty" tf:"default_action"` // One or more ip_rule blocks as defined below. + // +kubebuilder:validation:Optional IPRule []IPRuleParameters `json:"ipRule,omitempty" tf:"ip_rule"` // Is public network access enabled for the EventHub Namespace? Defaults to true. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled"` // Whether Trusted Microsoft Services are allowed to bypass firewall. + // +kubebuilder:validation:Optional TrustedServiceAccessEnabled *bool `json:"trustedServiceAccessEnabled,omitempty" tf:"trusted_service_access_enabled"` // One or more virtual_network_rule blocks as defined below. + // +kubebuilder:validation:Optional VirtualNetworkRule []VirtualNetworkRuleParameters `json:"virtualNetworkRule,omitempty" tf:"virtual_network_rule"` } @@ -290,6 +312,7 @@ type VirtualNetworkRuleObservation struct { type VirtualNetworkRuleParameters struct { // Are missing virtual network service endpoints ignored? + // +kubebuilder:validation:Optional IgnoreMissingVirtualNetworkServiceEndpoint *bool `json:"ignoreMissingVirtualNetworkServiceEndpoint,omitempty" tf:"ignore_missing_virtual_network_service_endpoint"` // The id of the subnet to match on. diff --git a/apis/eventhub/v1beta1/zz_namespaceauthorizationrule_types.go b/apis/eventhub/v1beta1/zz_namespaceauthorizationrule_types.go index 8c42cdf1d..ed0594376 100755 --- a/apis/eventhub/v1beta1/zz_namespaceauthorizationrule_types.go +++ b/apis/eventhub/v1beta1/zz_namespaceauthorizationrule_types.go @@ -49,9 +49,11 @@ type NamespaceAuthorizationRuleObservation struct { type NamespaceAuthorizationRuleParameters struct { // Grants listen access to this this Authorization Rule. Defaults to false. + // +kubebuilder:validation:Optional Listen *bool `json:"listen,omitempty" tf:"listen,omitempty"` // Grants manage access to this this Authorization Rule. When this property is true - both listen and send must be too. Defaults to false. + // +kubebuilder:validation:Optional Manage *bool `json:"manage,omitempty" tf:"manage,omitempty"` // Specifies the name of the EventHub Namespace. Changing this forces a new resource to be created. @@ -81,6 +83,7 @@ type NamespaceAuthorizationRuleParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Grants send access to this this Authorization Rule. Defaults to false. + // +kubebuilder:validation:Optional Send *bool `json:"send,omitempty" tf:"send,omitempty"` } diff --git a/apis/eventhub/v1beta1/zz_namespaceschemagroup_types.go b/apis/eventhub/v1beta1/zz_namespaceschemagroup_types.go index ad25f0659..0ac4f0380 100755 --- a/apis/eventhub/v1beta1/zz_namespaceschemagroup_types.go +++ b/apis/eventhub/v1beta1/zz_namespaceschemagroup_types.go @@ -54,9 +54,11 @@ type NamespaceSchemaGroupParameters struct { NamespaceIDSelector *v1.Selector `json:"namespaceIdSelector,omitempty" tf:"-"` // Specifies the compatibility of this schema group. Possible values are None, Backward, Forward. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SchemaCompatibility *string `json:"schemaCompatibility,omitempty" tf:"schema_compatibility,omitempty"` // Specifies the Type of this schema group. Possible values are Avro, Unknown. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SchemaType *string `json:"schemaType,omitempty" tf:"schema_type,omitempty"` } diff --git a/apis/fluidrelay/v1beta1/zz_server_types.go b/apis/fluidrelay/v1beta1/zz_server_types.go index 61a93ade4..cc94f209a 100755 --- a/apis/fluidrelay/v1beta1/zz_server_types.go +++ b/apis/fluidrelay/v1beta1/zz_server_types.go @@ -40,9 +40,11 @@ type IdentityObservation struct { type IdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Fluid Relay Service. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Fluid Relay Service. Possible values are SystemAssigned,UserAssigned and SystemAssigned, UserAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -103,12 +105,15 @@ type ServerObservation struct { type ServerParameters struct { // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // The Azure Region where the Fluid Relay Server should exist. Changing this forces a new Fluid Relay Server to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name which should be used for this Fluid Relay Server. Changing this forces a new Fluid Relay Server to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The name of the Resource Group where the Fluid Relay Server should exist. Changing this forces a new Fluid Relay Server to be created. @@ -125,9 +130,11 @@ type ServerParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Sku of the storage associated with the resource, Possible values are standard and basic. Changing this forces a new Fluid Relay Server to be created. + // +kubebuilder:validation:Optional StorageSku *string `json:"storageSku,omitempty" tf:"storage_sku,omitempty"` // A mapping of tags which should be assigned to the Fluid Relay Server. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/guestconfiguration/v1beta1/zz_policyvirtualmachineconfigurationassignment_types.go b/apis/guestconfiguration/v1beta1/zz_policyvirtualmachineconfigurationassignment_types.go index 3f14ee547..92808cdca 100755 --- a/apis/guestconfiguration/v1beta1/zz_policyvirtualmachineconfigurationassignment_types.go +++ b/apis/guestconfiguration/v1beta1/zz_policyvirtualmachineconfigurationassignment_types.go @@ -52,18 +52,23 @@ type ConfigurationObservation struct { type ConfigurationParameters struct { // The assignment type for the Guest Configuration Assignment. Possible values are Audit, ApplyAndAutoCorrect, ApplyAndMonitor and DeployAndAutoCorrect. + // +kubebuilder:validation:Optional AssignmentType *string `json:"assignmentType,omitempty" tf:"assignment_type,omitempty"` // The content hash for the Guest Configuration package. + // +kubebuilder:validation:Optional ContentHash *string `json:"contentHash,omitempty" tf:"content_hash,omitempty"` // The content URI where the Guest Configuration package is stored. + // +kubebuilder:validation:Optional ContentURI *string `json:"contentUri,omitempty" tf:"content_uri,omitempty"` // One or more parameter blocks as defined below which define what configuration parameters and values against. + // +kubebuilder:validation:Optional Parameter []ParameterParameters `json:"parameter,omitempty" tf:"parameter,omitempty"` // The version of the Guest Configuration that will be assigned in this Guest Configuration Assignment. + // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` } @@ -88,9 +93,11 @@ type ParameterObservation struct { type ParameterParameters struct { // The name of the configuration parameter to check. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The value to check the configuration parameter with. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -121,9 +128,11 @@ type PolicyVirtualMachineConfigurationAssignmentObservation struct { type PolicyVirtualMachineConfigurationAssignmentParameters struct { // A configuration block as defined below. + // +kubebuilder:validation:Optional Configuration []ConfigurationParameters `json:"configuration,omitempty" tf:"configuration,omitempty"` // The Azure location where the Policy Virtual Machine Configuration Assignment should exist. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The resource ID of the Policy Virtual Machine which this Guest Configuration Assignment should apply to. Changing this forces a new resource to be created. diff --git a/apis/hdinsight/v1beta1/zz_hadoopcluster_types.go b/apis/hdinsight/v1beta1/zz_hadoopcluster_types.go index 339d1986d..8a8c4e807 100755 --- a/apis/hdinsight/v1beta1/zz_hadoopcluster_types.go +++ b/apis/hdinsight/v1beta1/zz_hadoopcluster_types.go @@ -40,6 +40,7 @@ type AmbariObservation struct { type AmbariParameters struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. @@ -47,9 +48,11 @@ type AmbariParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Server *string `json:"server,omitempty" tf:"server,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } @@ -74,9 +77,11 @@ type AutoscaleObservation struct { type AutoscaleParameters struct { // A capacity block as defined below. + // +kubebuilder:validation:Optional Capacity []CapacityParameters `json:"capacity,omitempty" tf:"capacity,omitempty"` // A recurrence block as defined below. + // +kubebuilder:validation:Optional Recurrence []RecurrenceParameters `json:"recurrence,omitempty" tf:"recurrence,omitempty"` } @@ -101,9 +106,11 @@ type CapacityObservation struct { type CapacityParameters struct { // The maximum number of worker nodes to autoscale to based on the cluster's activity. + // +kubebuilder:validation:Optional MaxInstanceCount *float64 `json:"maxInstanceCount,omitempty" tf:"max_instance_count,omitempty"` // The minimum number of worker nodes to autoscale to based on the cluster's activity. + // +kubebuilder:validation:Optional MinInstanceCount *float64 `json:"minInstanceCount,omitempty" tf:"min_instance_count,omitempty"` } @@ -122,6 +129,7 @@ type ComponentVersionObservation struct { type ComponentVersionParameters struct { // The version of Hadoop which should be used for this HDInsight Hadoop Cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Hadoop *string `json:"hadoop,omitempty" tf:"hadoop,omitempty"` } @@ -146,9 +154,11 @@ type ComputeIsolationObservation struct { type ComputeIsolationParameters struct { // This field indicates whether enable compute isolation or not. Possible values are true or false. + // +kubebuilder:validation:Optional ComputeIsolationEnabled *bool `json:"computeIsolationEnabled,omitempty" tf:"compute_isolation_enabled,omitempty"` // The name of the host SKU. + // +kubebuilder:validation:Optional HostSku *string `json:"hostSku,omitempty" tf:"host_sku,omitempty"` } @@ -185,15 +195,19 @@ type DiskEncryptionObservation struct { type DiskEncryptionParameters struct { // This is an algorithm identifier for encryption. Possible values are RSA1_5, RSA-OAEP, RSA-OAEP-256. + // +kubebuilder:validation:Optional EncryptionAlgorithm *string `json:"encryptionAlgorithm,omitempty" tf:"encryption_algorithm,omitempty"` // This is indicator to show whether resource disk encryption is enabled. + // +kubebuilder:validation:Optional EncryptionAtHostEnabled *bool `json:"encryptionAtHostEnabled,omitempty" tf:"encryption_at_host_enabled,omitempty"` // The ID of the key vault key. + // +kubebuilder:validation:Optional KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"` // This is the resource ID of Managed Identity used to access the key vault. + // +kubebuilder:validation:Optional KeyVaultManagedIdentityID *string `json:"keyVaultManagedIdentityId,omitempty" tf:"key_vault_managed_identity_id,omitempty"` } @@ -236,18 +250,23 @@ type EdgeNodeObservation struct { type EdgeNodeParameters struct { // The HTTPS Connectivity Endpoint for this HDInsight Hadoop Cluster. + // +kubebuilder:validation:Optional HTTPSEndpoints []HTTPSEndpointsParameters `json:"httpsEndpoints,omitempty" tf:"https_endpoints,omitempty"` // A install_script_action block as defined below. + // +kubebuilder:validation:Optional InstallScriptAction []InstallScriptActionParameters `json:"installScriptAction,omitempty" tf:"install_script_action,omitempty"` // The number of instances which should be run for the Worker Nodes. + // +kubebuilder:validation:Optional TargetInstanceCount *float64 `json:"targetInstanceCount,omitempty" tf:"target_instance_count,omitempty"` // A uninstall_script_actions block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional UninstallScriptActions []UninstallScriptActionsParameters `json:"uninstallScriptActions,omitempty" tf:"uninstall_script_actions,omitempty"` // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` } @@ -266,6 +285,7 @@ type ExtensionObservation struct { type ExtensionParameters struct { // The workspace ID of the log analytics extension. + // +kubebuilder:validation:Optional LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` // The workspace key of the log analytics extension. @@ -292,6 +312,7 @@ type GatewayParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The username used for the Ambari Portal. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } @@ -334,18 +355,23 @@ type HTTPSEndpointsObservation struct { type HTTPSEndpointsParameters struct { // A list of access modes for the application. + // +kubebuilder:validation:Optional AccessModes []*string `json:"accessModes,omitempty" tf:"access_modes,omitempty"` // The destination port to connect to. + // +kubebuilder:validation:Optional DestinationPort *float64 `json:"destinationPort,omitempty" tf:"destination_port,omitempty"` // The value indicates whether the gateway authentication is enabled or not. + // +kubebuilder:validation:Optional DisableGatewayAuth *bool `json:"disableGatewayAuth,omitempty" tf:"disable_gateway_auth,omitempty"` // The private ip address of the endpoint. + // +kubebuilder:validation:Optional PrivateIPAddress *string `json:"privateIpAddress,omitempty" tf:"private_ip_address,omitempty"` // The application's subdomain suffix. + // +kubebuilder:validation:Optional SubDomainSuffix *string `json:"subDomainSuffix,omitempty" tf:"sub_domain_suffix,omitempty"` } @@ -472,33 +498,43 @@ type HadoopClusterObservation struct { type HadoopClusterParameters struct { // Specifies the Version of HDInsights which should be used for this Cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ClusterVersion *string `json:"clusterVersion,omitempty" tf:"cluster_version,omitempty"` // A component_version block as defined below. + // +kubebuilder:validation:Optional ComponentVersion []ComponentVersionParameters `json:"componentVersion,omitempty" tf:"component_version,omitempty"` // A compute_isolation block as defined below. + // +kubebuilder:validation:Optional ComputeIsolation []ComputeIsolationParameters `json:"computeIsolation,omitempty" tf:"compute_isolation,omitempty"` // One or more disk_encryption block as defined below. + // +kubebuilder:validation:Optional DiskEncryption []DiskEncryptionParameters `json:"diskEncryption,omitempty" tf:"disk_encryption,omitempty"` // An extension block as defined below. + // +kubebuilder:validation:Optional Extension []ExtensionParameters `json:"extension,omitempty" tf:"extension,omitempty"` // A gateway block as defined below. + // +kubebuilder:validation:Optional Gateway []GatewayParameters `json:"gateway,omitempty" tf:"gateway,omitempty"` // Specifies the Azure Region which this HDInsight Hadoop Cluster should exist. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // A metastores block as defined below. + // +kubebuilder:validation:Optional Metastores []MetastoresParameters `json:"metastores,omitempty" tf:"metastores,omitempty"` // A monitor block as defined below. + // +kubebuilder:validation:Optional Monitor []MonitorParameters `json:"monitor,omitempty" tf:"monitor,omitempty"` // A network block as defined below. + // +kubebuilder:validation:Optional Network []NetworkParameters `json:"network,omitempty" tf:"network,omitempty"` // Specifies the name of the Resource Group in which this HDInsight Hadoop Cluster should exist. Changing this forces a new resource to be created. @@ -515,24 +551,31 @@ type HadoopClusterParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A roles block as defined below. + // +kubebuilder:validation:Optional Roles []RolesParameters `json:"roles,omitempty" tf:"roles,omitempty"` // A security_profile block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SecurityProfile []SecurityProfileParameters `json:"securityProfile,omitempty" tf:"security_profile,omitempty"` // One or more storage_account block as defined below. + // +kubebuilder:validation:Optional StorageAccount []StorageAccountParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` // A storage_account_gen2 block as defined below. + // +kubebuilder:validation:Optional StorageAccountGen2 []StorageAccountGen2Parameters `json:"storageAccountGen2,omitempty" tf:"storage_account_gen2,omitempty"` // The minimal supported TLS version. Possible values are 1.0, 1.1 or 1.2. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional TLSMinVersion *string `json:"tlsMinVersion,omitempty" tf:"tls_min_version,omitempty"` // A map of Tags which should be assigned to this HDInsight Hadoop Cluster. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the Tier which should be used for this HDInsight Hadoop Cluster. Possible values are Standard or Premium. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Tier *string `json:"tier,omitempty" tf:"tier,omitempty"` } @@ -582,9 +625,11 @@ type HeadNodeParameters struct { PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"` // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SSHKeys []*string `json:"sshKeys,omitempty" tf:"ssh_keys,omitempty"` // The script action which will run on the cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ScriptActions []ScriptActionsParameters `json:"scriptActions,omitempty" tf:"script_actions,omitempty"` // The ID of the Subnet within the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. @@ -602,12 +647,15 @@ type HeadNodeParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } @@ -638,6 +686,7 @@ type HiveObservation struct { type HiveParameters struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. @@ -645,9 +694,11 @@ type HiveParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Server *string `json:"server,omitempty" tf:"server,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } @@ -678,12 +729,15 @@ type InstallScriptActionObservation struct { type InstallScriptActionParameters struct { // The name of the uninstall script action. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script. + // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI pointing to the script to run during the installation of the edge node. + // +kubebuilder:validation:Optional URI *string `json:"uri,omitempty" tf:"uri,omitempty"` } @@ -714,12 +768,15 @@ type MetastoresObservation struct { type MetastoresParameters struct { // An ambari block as defined below. + // +kubebuilder:validation:Optional Ambari []AmbariParameters `json:"ambari,omitempty" tf:"ambari,omitempty"` // A hive block as defined below. + // +kubebuilder:validation:Optional Hive []HiveParameters `json:"hive,omitempty" tf:"hive,omitempty"` // An oozie block as defined below. + // +kubebuilder:validation:Optional Oozie []OozieParameters `json:"oozie,omitempty" tf:"oozie,omitempty"` } @@ -738,6 +795,7 @@ type MonitorObservation struct { type MonitorParameters struct { // The Operations Management Suite (OMS) workspace ID. + // +kubebuilder:validation:Optional LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` // The Operations Management Suite (OMS) workspace key. @@ -766,9 +824,11 @@ type NetworkObservation struct { type NetworkParameters struct { // The direction of the resource provider connection. Possible values include Inbound or Outbound. Defaults to Inbound. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ConnectionDirection *string `json:"connectionDirection,omitempty" tf:"connection_direction,omitempty"` // Is the private link enabled? Possible values include True or False. Defaults to False. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PrivateLinkEnabled *bool `json:"privateLinkEnabled,omitempty" tf:"private_link_enabled,omitempty"` } @@ -799,6 +859,7 @@ type OozieObservation struct { type OozieParameters struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. @@ -806,9 +867,11 @@ type OozieParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Server *string `json:"server,omitempty" tf:"server,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } @@ -833,9 +896,11 @@ type RecurrenceObservation struct { type RecurrenceParameters struct { // A list of schedule blocks as defined below. + // +kubebuilder:validation:Optional Schedule []ScheduleParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` // The time zone for the autoscale schedule times. + // +kubebuilder:validation:Optional Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` } @@ -872,15 +937,19 @@ type RolesObservation struct { type RolesParameters struct { // A edge_node block as defined below. + // +kubebuilder:validation:Optional EdgeNode []EdgeNodeParameters `json:"edgeNode,omitempty" tf:"edge_node,omitempty"` // A head_node block as defined above. + // +kubebuilder:validation:Optional HeadNode []HeadNodeParameters `json:"headNode,omitempty" tf:"head_node,omitempty"` // A worker_node block as defined below. + // +kubebuilder:validation:Optional WorkerNode []WorkerNodeParameters `json:"workerNode,omitempty" tf:"worker_node,omitempty"` // A zookeeper_node block as defined below. + // +kubebuilder:validation:Optional ZookeeperNode []ZookeeperNodeParameters `json:"zookeeperNode,omitempty" tf:"zookeeper_node,omitempty"` } @@ -911,12 +980,15 @@ type ScheduleObservation struct { type ScheduleParameters struct { // The days of the week to perform autoscale. Possible values are Monday, Tuesday, Wednesday, Thursday, Friday, Saturday and Sunday. + // +kubebuilder:validation:Optional Days []*string `json:"days,omitempty" tf:"days,omitempty"` // The number of instances which should be run for the Worker Nodes. + // +kubebuilder:validation:Optional TargetInstanceCount *float64 `json:"targetInstanceCount,omitempty" tf:"target_instance_count,omitempty"` // The time of day to perform the autoscale in 24hour format. + // +kubebuilder:validation:Optional Time *string `json:"time,omitempty" tf:"time,omitempty"` } @@ -947,12 +1019,15 @@ type ScriptActionsObservation struct { type ScriptActionsParameters struct { // The name of the uninstall script action. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script. + // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI pointing to the script to run during the installation of the edge node. + // +kubebuilder:validation:Optional URI *string `json:"uri,omitempty" tf:"uri,omitempty"` } @@ -1001,12 +1076,15 @@ type SecurityProfileObservation struct { type SecurityProfileParameters struct { // The resource ID of the Azure Active Directory Domain Service. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional AaddsResourceID *string `json:"aaddsResourceId,omitempty" tf:"aadds_resource_id,omitempty"` // A list of the distinguished names for the cluster user groups. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ClusterUsersGroupDNS []*string `json:"clusterUsersGroupDns,omitempty" tf:"cluster_users_group_dns,omitempty"` // The name of the Azure Active Directory Domain. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DomainName *string `json:"domainName,omitempty" tf:"domain_name,omitempty"` // The user password of the Azure Active Directory Domain. Changing this forces a new resource to be created. @@ -1014,12 +1092,15 @@ type SecurityProfileParameters struct { DomainUserPasswordSecretRef v1.SecretKeySelector `json:"domainUserPasswordSecretRef" tf:"-"` // The username of the Azure Active Directory Domain. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DomainUsername *string `json:"domainUsername,omitempty" tf:"domain_username,omitempty"` // A list of the LDAPS URLs to communicate with the Azure Active Directory. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional LdapsUrls []*string `json:"ldapsUrls,omitempty" tf:"ldaps_urls,omitempty"` // The User Assigned Identity for the HDInsight Cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional MsiResourceID *string `json:"msiResourceId,omitempty" tf:"msi_resource_id,omitempty"` } @@ -1056,15 +1137,19 @@ type StorageAccountGen2Observation struct { type StorageAccountGen2Parameters struct { // The ID of the Gen2 Filesystem. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional FileSystemID *string `json:"filesystemId,omitempty" tf:"filesystem_id,omitempty"` // Is this the Default Storage Account for the HDInsight Hadoop Cluster? Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional IsDefault *bool `json:"isDefault,omitempty" tf:"is_default,omitempty"` // The ID of Managed Identity to use for accessing the Gen2 filesystem. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ManagedIdentityResourceID *string `json:"managedIdentityResourceId,omitempty" tf:"managed_identity_resource_id,omitempty"` // The ID of the Storage Account. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional StorageResourceID *string `json:"storageResourceId,omitempty" tf:"storage_resource_id,omitempty"` } @@ -1092,6 +1177,7 @@ type StorageAccountObservation struct { type StorageAccountParameters struct { // Is this the Default Storage Account for the HDInsight Hadoop Cluster? Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional IsDefault *bool `json:"isDefault,omitempty" tf:"is_default,omitempty"` // The Access Key which should be used to connect to the Storage Account. Changing this forces a new resource to be created. @@ -1113,6 +1199,7 @@ type StorageAccountParameters struct { StorageContainerIDSelector *v1.Selector `json:"storageContainerIdSelector,omitempty" tf:"-"` // The ID of the Storage Account. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional StorageResourceID *string `json:"storageResourceId,omitempty" tf:"storage_resource_id,omitempty"` } @@ -1143,12 +1230,15 @@ type UninstallScriptActionsObservation struct { type UninstallScriptActionsParameters struct { // The name of the uninstall script action. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script. + // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI pointing to the script to run during the installation of the edge node. + // +kubebuilder:validation:Optional URI *string `json:"uri,omitempty" tf:"uri,omitempty"` } @@ -1206,6 +1296,7 @@ type WorkerNodeObservation struct { type WorkerNodeParameters struct { // A autoscale block as defined below. + // +kubebuilder:validation:Optional Autoscale []AutoscaleParameters `json:"autoscale,omitempty" tf:"autoscale,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. @@ -1213,9 +1304,11 @@ type WorkerNodeParameters struct { PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"` // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SSHKeys []*string `json:"sshKeys,omitempty" tf:"ssh_keys,omitempty"` // The script action which will run on the cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ScriptActions []WorkerNodeScriptActionsParameters `json:"scriptActions,omitempty" tf:"script_actions,omitempty"` // The ID of the Subnet within the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. @@ -1233,15 +1326,19 @@ type WorkerNodeParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // The number of instances which should be run for the Worker Nodes. + // +kubebuilder:validation:Optional TargetInstanceCount *float64 `json:"targetInstanceCount,omitempty" tf:"target_instance_count,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } @@ -1272,12 +1369,15 @@ type WorkerNodeScriptActionsObservation struct { type WorkerNodeScriptActionsParameters struct { // The name of the uninstall script action. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script. + // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI pointing to the script to run during the installation of the edge node. + // +kubebuilder:validation:Optional URI *string `json:"uri,omitempty" tf:"uri,omitempty"` } @@ -1327,9 +1427,11 @@ type ZookeeperNodeParameters struct { PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"` // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SSHKeys []*string `json:"sshKeys,omitempty" tf:"ssh_keys,omitempty"` // The script action which will run on the cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ScriptActions []ZookeeperNodeScriptActionsParameters `json:"scriptActions,omitempty" tf:"script_actions,omitempty"` // The ID of the Subnet within the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. @@ -1347,12 +1449,15 @@ type ZookeeperNodeParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } @@ -1383,12 +1488,15 @@ type ZookeeperNodeScriptActionsObservation struct { type ZookeeperNodeScriptActionsParameters struct { // The name of the uninstall script action. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script. + // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI pointing to the script to run during the installation of the edge node. + // +kubebuilder:validation:Optional URI *string `json:"uri,omitempty" tf:"uri,omitempty"` } diff --git a/apis/hdinsight/v1beta1/zz_hbasecluster_types.go b/apis/hdinsight/v1beta1/zz_hbasecluster_types.go index 266c711bd..20d05a77f 100755 --- a/apis/hdinsight/v1beta1/zz_hbasecluster_types.go +++ b/apis/hdinsight/v1beta1/zz_hbasecluster_types.go @@ -26,8 +26,11 @@ type AutoscaleRecurrenceObservation struct { } type AutoscaleRecurrenceParameters struct { + + // +kubebuilder:validation:Optional Schedule []RecurrenceScheduleParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` + // +kubebuilder:validation:Optional Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` } @@ -46,6 +49,7 @@ type HBaseClusterComponentVersionObservation struct { type HBaseClusterComponentVersionParameters struct { // The version of HBase which should be used for this HDInsight HBase Cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional HBase *string `json:"hbase,omitempty" tf:"hbase,omitempty"` } @@ -70,9 +74,11 @@ type HBaseClusterComputeIsolationObservation struct { type HBaseClusterComputeIsolationParameters struct { // This field indicates whether enable compute isolation or not. Possible values are true or false. + // +kubebuilder:validation:Optional ComputeIsolationEnabled *bool `json:"computeIsolationEnabled,omitempty" tf:"compute_isolation_enabled,omitempty"` // The name of the host SKU. + // +kubebuilder:validation:Optional HostSku *string `json:"hostSku,omitempty" tf:"host_sku,omitempty"` } @@ -109,15 +115,19 @@ type HBaseClusterDiskEncryptionObservation struct { type HBaseClusterDiskEncryptionParameters struct { // This is an algorithm identifier for encryption. Possible values are RSA1_5, RSA-OAEP, RSA-OAEP-256. + // +kubebuilder:validation:Optional EncryptionAlgorithm *string `json:"encryptionAlgorithm,omitempty" tf:"encryption_algorithm,omitempty"` // This is indicator to show whether resource disk encryption is enabled. + // +kubebuilder:validation:Optional EncryptionAtHostEnabled *bool `json:"encryptionAtHostEnabled,omitempty" tf:"encryption_at_host_enabled,omitempty"` // The ID of the key vault key. + // +kubebuilder:validation:Optional KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"` // This is the resource ID of Managed Identity used to access the key vault. + // +kubebuilder:validation:Optional KeyVaultManagedIdentityID *string `json:"keyVaultManagedIdentityId,omitempty" tf:"key_vault_managed_identity_id,omitempty"` } @@ -136,6 +146,7 @@ type HBaseClusterExtensionObservation struct { type HBaseClusterExtensionParameters struct { // The workspace ID of the log analytics extension. + // +kubebuilder:validation:Optional LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` // The workspace key of the log analytics extension. @@ -162,6 +173,7 @@ type HBaseClusterGatewayParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The username used for the Ambari Portal. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } @@ -246,12 +258,15 @@ type HBaseClusterMetastoresObservation struct { type HBaseClusterMetastoresParameters struct { // An ambari block as defined below. + // +kubebuilder:validation:Optional Ambari []MetastoresAmbariParameters `json:"ambari,omitempty" tf:"ambari,omitempty"` // A hive block as defined below. + // +kubebuilder:validation:Optional Hive []MetastoresHiveParameters `json:"hive,omitempty" tf:"hive,omitempty"` // An oozie block as defined below. + // +kubebuilder:validation:Optional Oozie []MetastoresOozieParameters `json:"oozie,omitempty" tf:"oozie,omitempty"` } @@ -270,6 +285,7 @@ type HBaseClusterMonitorObservation struct { type HBaseClusterMonitorParameters struct { // The Operations Management Suite (OMS) workspace ID. + // +kubebuilder:validation:Optional LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` // The Operations Management Suite (OMS) workspace key. @@ -298,9 +314,11 @@ type HBaseClusterNetworkObservation struct { type HBaseClusterNetworkParameters struct { // The direction of the resource provider connection. Possible values include Inbound or Outbound. Defaults to Inbound. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ConnectionDirection *string `json:"connectionDirection,omitempty" tf:"connection_direction,omitempty"` // Is the private link enabled? Possible values include True or False. Defaults to False. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PrivateLinkEnabled *bool `json:"privateLinkEnabled,omitempty" tf:"private_link_enabled,omitempty"` } @@ -373,33 +391,43 @@ type HBaseClusterObservation struct { type HBaseClusterParameters struct { // Specifies the Version of HDInsights which should be used for this Cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ClusterVersion *string `json:"clusterVersion,omitempty" tf:"cluster_version,omitempty"` // A component_version block as defined below. + // +kubebuilder:validation:Optional ComponentVersion []HBaseClusterComponentVersionParameters `json:"componentVersion,omitempty" tf:"component_version,omitempty"` // A compute_isolation block as defined below. + // +kubebuilder:validation:Optional ComputeIsolation []HBaseClusterComputeIsolationParameters `json:"computeIsolation,omitempty" tf:"compute_isolation,omitempty"` // One or more disk_encryption block as defined below. + // +kubebuilder:validation:Optional DiskEncryption []HBaseClusterDiskEncryptionParameters `json:"diskEncryption,omitempty" tf:"disk_encryption,omitempty"` // An extension block as defined below. + // +kubebuilder:validation:Optional Extension []HBaseClusterExtensionParameters `json:"extension,omitempty" tf:"extension,omitempty"` // A gateway block as defined below. + // +kubebuilder:validation:Optional Gateway []HBaseClusterGatewayParameters `json:"gateway,omitempty" tf:"gateway,omitempty"` // Specifies the Azure Region which this HDInsight HBase Cluster should exist. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // A metastores block as defined below. + // +kubebuilder:validation:Optional Metastores []HBaseClusterMetastoresParameters `json:"metastores,omitempty" tf:"metastores,omitempty"` // A monitor block as defined below. + // +kubebuilder:validation:Optional Monitor []HBaseClusterMonitorParameters `json:"monitor,omitempty" tf:"monitor,omitempty"` // A network block as defined below. + // +kubebuilder:validation:Optional Network []HBaseClusterNetworkParameters `json:"network,omitempty" tf:"network,omitempty"` // Specifies the name of the Resource Group in which this HDInsight HBase Cluster should exist. Changing this forces a new resource to be created. @@ -416,24 +444,31 @@ type HBaseClusterParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A roles block as defined below. + // +kubebuilder:validation:Optional Roles []HBaseClusterRolesParameters `json:"roles,omitempty" tf:"roles,omitempty"` // A security_profile block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SecurityProfile []HBaseClusterSecurityProfileParameters `json:"securityProfile,omitempty" tf:"security_profile,omitempty"` // One or more storage_account block as defined below. + // +kubebuilder:validation:Optional StorageAccount []HBaseClusterStorageAccountParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` // A storage_account_gen2 block as defined below. + // +kubebuilder:validation:Optional StorageAccountGen2 []HBaseClusterStorageAccountGen2Parameters `json:"storageAccountGen2,omitempty" tf:"storage_account_gen2,omitempty"` // The minimal supported TLS version. Possible values are 1.0, 1.1 or 1.2. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional TLSMinVersion *string `json:"tlsMinVersion,omitempty" tf:"tls_min_version,omitempty"` // A map of Tags which should be assigned to this HDInsight HBase Cluster. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the Tier which should be used for this HDInsight HBase Cluster. Possible values are Standard or Premium. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Tier *string `json:"tier,omitempty" tf:"tier,omitempty"` } @@ -464,12 +499,15 @@ type HBaseClusterRolesObservation struct { type HBaseClusterRolesParameters struct { // A head_node block as defined above. + // +kubebuilder:validation:Optional HeadNode []RolesHeadNodeParameters `json:"headNode,omitempty" tf:"head_node,omitempty"` // A worker_node block as defined below. + // +kubebuilder:validation:Optional WorkerNode []RolesWorkerNodeParameters `json:"workerNode,omitempty" tf:"worker_node,omitempty"` // A zookeeper_node block as defined below. + // +kubebuilder:validation:Optional ZookeeperNode []RolesZookeeperNodeParameters `json:"zookeeperNode,omitempty" tf:"zookeeper_node,omitempty"` } @@ -518,12 +556,15 @@ type HBaseClusterSecurityProfileObservation struct { type HBaseClusterSecurityProfileParameters struct { // The resource ID of the Azure Active Directory Domain Service. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional AaddsResourceID *string `json:"aaddsResourceId,omitempty" tf:"aadds_resource_id,omitempty"` // A list of the distinguished names for the cluster user groups. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ClusterUsersGroupDNS []*string `json:"clusterUsersGroupDns,omitempty" tf:"cluster_users_group_dns,omitempty"` // The name of the Azure Active Directory Domain. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DomainName *string `json:"domainName,omitempty" tf:"domain_name,omitempty"` // The user password of the Azure Active Directory Domain. Changing this forces a new resource to be created. @@ -531,12 +572,15 @@ type HBaseClusterSecurityProfileParameters struct { DomainUserPasswordSecretRef v1.SecretKeySelector `json:"domainUserPasswordSecretRef" tf:"-"` // The username of the Azure Active Directory Domain. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DomainUsername *string `json:"domainUsername,omitempty" tf:"domain_username,omitempty"` // A list of the LDAPS URLs to communicate with the Azure Active Directory. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional LdapsUrls []*string `json:"ldapsUrls,omitempty" tf:"ldaps_urls,omitempty"` // The User Assigned Identity for the HDInsight Cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional MsiResourceID *string `json:"msiResourceId,omitempty" tf:"msi_resource_id,omitempty"` } @@ -573,15 +617,19 @@ type HBaseClusterStorageAccountGen2Observation struct { type HBaseClusterStorageAccountGen2Parameters struct { // The ID of the Gen2 Filesystem. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional FileSystemID *string `json:"filesystemId,omitempty" tf:"filesystem_id,omitempty"` // Is this the Default Storage Account for the HDInsight Hadoop Cluster? Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional IsDefault *bool `json:"isDefault,omitempty" tf:"is_default,omitempty"` // The ID of Managed Identity to use for accessing the Gen2 filesystem. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ManagedIdentityResourceID *string `json:"managedIdentityResourceId,omitempty" tf:"managed_identity_resource_id,omitempty"` // The ID of the Storage Account. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional StorageResourceID *string `json:"storageResourceId,omitempty" tf:"storage_resource_id,omitempty"` } @@ -609,6 +657,7 @@ type HBaseClusterStorageAccountObservation struct { type HBaseClusterStorageAccountParameters struct { // Is this the Default Storage Account for the HDInsight Hadoop Cluster? Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional IsDefault *bool `json:"isDefault,omitempty" tf:"is_default,omitempty"` // The Access Key which should be used to connect to the Storage Account. Changing this forces a new resource to be created. @@ -630,6 +679,7 @@ type HBaseClusterStorageAccountParameters struct { StorageContainerIDSelector *v1.Selector `json:"storageContainerIdSelector,omitempty" tf:"-"` // The ID of the Storage Account. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional StorageResourceID *string `json:"storageResourceId,omitempty" tf:"storage_resource_id,omitempty"` } @@ -660,12 +710,15 @@ type HeadNodeScriptActionsObservation struct { type HeadNodeScriptActionsParameters struct { // The name of the script action. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script provided. + // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI to the script. + // +kubebuilder:validation:Optional URI *string `json:"uri,omitempty" tf:"uri,omitempty"` } @@ -696,6 +749,7 @@ type MetastoresAmbariObservation struct { type MetastoresAmbariParameters struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. @@ -703,9 +757,11 @@ type MetastoresAmbariParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Server *string `json:"server,omitempty" tf:"server,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } @@ -736,6 +792,7 @@ type MetastoresHiveObservation struct { type MetastoresHiveParameters struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. @@ -743,9 +800,11 @@ type MetastoresHiveParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Server *string `json:"server,omitempty" tf:"server,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } @@ -776,6 +835,7 @@ type MetastoresOozieObservation struct { type MetastoresOozieParameters struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. @@ -783,9 +843,11 @@ type MetastoresOozieParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Server *string `json:"server,omitempty" tf:"server,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } @@ -808,11 +870,15 @@ type RecurrenceScheduleObservation struct { } type RecurrenceScheduleParameters struct { + + // +kubebuilder:validation:Optional Days []*string `json:"days,omitempty" tf:"days,omitempty"` // The number of instances which should be run for the Worker Nodes. + // +kubebuilder:validation:Optional TargetInstanceCount *float64 `json:"targetInstanceCount,omitempty" tf:"target_instance_count,omitempty"` + // +kubebuilder:validation:Optional Time *string `json:"time,omitempty" tf:"time,omitempty"` } @@ -862,9 +928,11 @@ type RolesHeadNodeParameters struct { PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"` // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SSHKeys []*string `json:"sshKeys,omitempty" tf:"ssh_keys,omitempty"` // The script action which will run on the cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ScriptActions []HeadNodeScriptActionsParameters `json:"scriptActions,omitempty" tf:"script_actions,omitempty"` // The ID of the Subnet within the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. @@ -882,12 +950,15 @@ type RolesHeadNodeParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } @@ -939,6 +1010,8 @@ type RolesWorkerNodeObservation struct { } type RolesWorkerNodeParameters struct { + + // +kubebuilder:validation:Optional Autoscale []WorkerNodeAutoscaleParameters `json:"autoscale,omitempty" tf:"autoscale,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. @@ -946,9 +1019,11 @@ type RolesWorkerNodeParameters struct { PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"` // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SSHKeys []*string `json:"sshKeys,omitempty" tf:"ssh_keys,omitempty"` // The script action which will run on the cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ScriptActions []RolesWorkerNodeScriptActionsParameters `json:"scriptActions,omitempty" tf:"script_actions,omitempty"` // The ID of the Subnet within the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. @@ -966,15 +1041,19 @@ type RolesWorkerNodeParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // The number of instances which should be run for the Worker Nodes. + // +kubebuilder:validation:Optional TargetInstanceCount *float64 `json:"targetInstanceCount,omitempty" tf:"target_instance_count,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } @@ -1005,12 +1084,15 @@ type RolesWorkerNodeScriptActionsObservation struct { type RolesWorkerNodeScriptActionsParameters struct { // The name of the script action. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script provided. + // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI to the script. + // +kubebuilder:validation:Optional URI *string `json:"uri,omitempty" tf:"uri,omitempty"` } @@ -1060,9 +1142,11 @@ type RolesZookeeperNodeParameters struct { PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"` // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SSHKeys []*string `json:"sshKeys,omitempty" tf:"ssh_keys,omitempty"` // The script action which will run on the cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ScriptActions []RolesZookeeperNodeScriptActionsParameters `json:"scriptActions,omitempty" tf:"script_actions,omitempty"` // The ID of the Subnet within the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. @@ -1080,12 +1164,15 @@ type RolesZookeeperNodeParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } @@ -1116,12 +1203,15 @@ type RolesZookeeperNodeScriptActionsObservation struct { type RolesZookeeperNodeScriptActionsParameters struct { // The name of the script action. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script provided. + // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI to the script. + // +kubebuilder:validation:Optional URI *string `json:"uri,omitempty" tf:"uri,omitempty"` } @@ -1134,6 +1224,8 @@ type WorkerNodeAutoscaleObservation struct { } type WorkerNodeAutoscaleParameters struct { + + // +kubebuilder:validation:Optional Recurrence []AutoscaleRecurrenceParameters `json:"recurrence,omitempty" tf:"recurrence,omitempty"` } diff --git a/apis/hdinsight/v1beta1/zz_interactivequerycluster_types.go b/apis/hdinsight/v1beta1/zz_interactivequerycluster_types.go index 542f71bca..966cc4cba 100755 --- a/apis/hdinsight/v1beta1/zz_interactivequerycluster_types.go +++ b/apis/hdinsight/v1beta1/zz_interactivequerycluster_types.go @@ -34,9 +34,11 @@ type AutoscaleCapacityObservation struct { type AutoscaleCapacityParameters struct { // The maximum number of worker nodes to autoscale to based on the cluster's activity. + // +kubebuilder:validation:Optional MaxInstanceCount *float64 `json:"maxInstanceCount,omitempty" tf:"max_instance_count,omitempty"` // The minimum number of worker nodes to autoscale to based on the cluster's activity. + // +kubebuilder:validation:Optional MinInstanceCount *float64 `json:"minInstanceCount,omitempty" tf:"min_instance_count,omitempty"` } @@ -67,12 +69,15 @@ type AutoscaleRecurrenceScheduleObservation struct { type AutoscaleRecurrenceScheduleParameters struct { // The days of the week to perform autoscale. Possible values are Monday, Tuesday, Wednesday, Thursday, Friday, Saturday and Sunday. + // +kubebuilder:validation:Optional Days []*string `json:"days,omitempty" tf:"days,omitempty"` // The number of instances which should be run for the Worker Nodes. + // +kubebuilder:validation:Optional TargetInstanceCount *float64 `json:"targetInstanceCount,omitempty" tf:"target_instance_count,omitempty"` // The time of day to perform the autoscale in 24hour format. + // +kubebuilder:validation:Optional Time *string `json:"time,omitempty" tf:"time,omitempty"` } @@ -91,6 +96,7 @@ type InteractiveQueryClusterComponentVersionObservation struct { type InteractiveQueryClusterComponentVersionParameters struct { // The version of Interactive Query which should be used for this HDInsight Interactive Query Cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional InteractiveHive *string `json:"interactiveHive,omitempty" tf:"interactive_hive,omitempty"` } @@ -115,9 +121,11 @@ type InteractiveQueryClusterComputeIsolationObservation struct { type InteractiveQueryClusterComputeIsolationParameters struct { // This field indicates whether enable compute isolation or not. Possible values are true or false. + // +kubebuilder:validation:Optional ComputeIsolationEnabled *bool `json:"computeIsolationEnabled,omitempty" tf:"compute_isolation_enabled,omitempty"` // The name of the host SKU. + // +kubebuilder:validation:Optional HostSku *string `json:"hostSku,omitempty" tf:"host_sku,omitempty"` } @@ -154,15 +162,19 @@ type InteractiveQueryClusterDiskEncryptionObservation struct { type InteractiveQueryClusterDiskEncryptionParameters struct { // This is an algorithm identifier for encryption. Possible values are RSA1_5, RSA-OAEP, RSA-OAEP-256. + // +kubebuilder:validation:Optional EncryptionAlgorithm *string `json:"encryptionAlgorithm,omitempty" tf:"encryption_algorithm,omitempty"` // This is indicator to show whether resource disk encryption is enabled. + // +kubebuilder:validation:Optional EncryptionAtHostEnabled *bool `json:"encryptionAtHostEnabled,omitempty" tf:"encryption_at_host_enabled,omitempty"` // The ID of the key vault key. + // +kubebuilder:validation:Optional KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"` // This is the resource ID of Managed Identity used to access the key vault. + // +kubebuilder:validation:Optional KeyVaultManagedIdentityID *string `json:"keyVaultManagedIdentityId,omitempty" tf:"key_vault_managed_identity_id,omitempty"` } @@ -181,6 +193,7 @@ type InteractiveQueryClusterExtensionObservation struct { type InteractiveQueryClusterExtensionParameters struct { // The workspace ID of the log analytics extension. + // +kubebuilder:validation:Optional LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` // The workspace key of the log analytics extension. @@ -207,6 +220,7 @@ type InteractiveQueryClusterGatewayParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The username used for the Ambari Portal. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } @@ -294,6 +308,7 @@ type InteractiveQueryClusterMetastoresAmbariObservation struct { type InteractiveQueryClusterMetastoresAmbariParameters struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. @@ -301,9 +316,11 @@ type InteractiveQueryClusterMetastoresAmbariParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Server *string `json:"server,omitempty" tf:"server,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } @@ -334,6 +351,7 @@ type InteractiveQueryClusterMetastoresHiveObservation struct { type InteractiveQueryClusterMetastoresHiveParameters struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. @@ -341,9 +359,11 @@ type InteractiveQueryClusterMetastoresHiveParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Server *string `json:"server,omitempty" tf:"server,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } @@ -398,6 +418,7 @@ type InteractiveQueryClusterMetastoresOozieObservation struct { type InteractiveQueryClusterMetastoresOozieParameters struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. @@ -405,21 +426,26 @@ type InteractiveQueryClusterMetastoresOozieParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Server *string `json:"server,omitempty" tf:"server,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } type InteractiveQueryClusterMetastoresParameters struct { // An ambari block as defined below. + // +kubebuilder:validation:Optional Ambari []InteractiveQueryClusterMetastoresAmbariParameters `json:"ambari,omitempty" tf:"ambari,omitempty"` // A hive block as defined below. + // +kubebuilder:validation:Optional Hive []InteractiveQueryClusterMetastoresHiveParameters `json:"hive,omitempty" tf:"hive,omitempty"` // An oozie block as defined below. + // +kubebuilder:validation:Optional Oozie []InteractiveQueryClusterMetastoresOozieParameters `json:"oozie,omitempty" tf:"oozie,omitempty"` } @@ -438,6 +464,7 @@ type InteractiveQueryClusterMonitorObservation struct { type InteractiveQueryClusterMonitorParameters struct { // The Operations Management Suite (OMS) workspace ID. + // +kubebuilder:validation:Optional LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` // The Operations Management Suite (OMS) workspace key. @@ -466,9 +493,11 @@ type InteractiveQueryClusterNetworkObservation struct { type InteractiveQueryClusterNetworkParameters struct { // The direction of the resource provider connection. Possible values include Inbound or Outbound. Defaults to Inbound. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ConnectionDirection *string `json:"connectionDirection,omitempty" tf:"connection_direction,omitempty"` // Is the private link enabled? Possible values include True or False. Defaults to False. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PrivateLinkEnabled *bool `json:"privateLinkEnabled,omitempty" tf:"private_link_enabled,omitempty"` } @@ -544,36 +573,47 @@ type InteractiveQueryClusterObservation struct { type InteractiveQueryClusterParameters struct { // Specifies the Version of HDInsights which should be used for this Cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ClusterVersion *string `json:"clusterVersion,omitempty" tf:"cluster_version,omitempty"` // A component_version block as defined below. + // +kubebuilder:validation:Optional ComponentVersion []InteractiveQueryClusterComponentVersionParameters `json:"componentVersion,omitempty" tf:"component_version,omitempty"` // A compute_isolation block as defined below. + // +kubebuilder:validation:Optional ComputeIsolation []InteractiveQueryClusterComputeIsolationParameters `json:"computeIsolation,omitempty" tf:"compute_isolation,omitempty"` // A disk_encryption block as defined below. + // +kubebuilder:validation:Optional DiskEncryption []InteractiveQueryClusterDiskEncryptionParameters `json:"diskEncryption,omitempty" tf:"disk_encryption,omitempty"` // Whether encryption in transit is enabled for this Cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional EncryptionInTransitEnabled *bool `json:"encryptionInTransitEnabled,omitempty" tf:"encryption_in_transit_enabled,omitempty"` // An extension block as defined below. + // +kubebuilder:validation:Optional Extension []InteractiveQueryClusterExtensionParameters `json:"extension,omitempty" tf:"extension,omitempty"` // A gateway block as defined below. + // +kubebuilder:validation:Optional Gateway []InteractiveQueryClusterGatewayParameters `json:"gateway,omitempty" tf:"gateway,omitempty"` // Specifies the Azure Region which this HDInsight Interactive Query Cluster should exist. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // A metastores block as defined below. + // +kubebuilder:validation:Optional Metastores []InteractiveQueryClusterMetastoresParameters `json:"metastores,omitempty" tf:"metastores,omitempty"` // A monitor block as defined below. + // +kubebuilder:validation:Optional Monitor []InteractiveQueryClusterMonitorParameters `json:"monitor,omitempty" tf:"monitor,omitempty"` // A network block as defined below. + // +kubebuilder:validation:Optional Network []InteractiveQueryClusterNetworkParameters `json:"network,omitempty" tf:"network,omitempty"` // Specifies the name of the Resource Group in which this HDInsight Interactive Query Cluster should exist. Changing this forces a new resource to be created. @@ -590,24 +630,31 @@ type InteractiveQueryClusterParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A roles block as defined below. + // +kubebuilder:validation:Optional Roles []InteractiveQueryClusterRolesParameters `json:"roles,omitempty" tf:"roles,omitempty"` // A security_profile block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SecurityProfile []InteractiveQueryClusterSecurityProfileParameters `json:"securityProfile,omitempty" tf:"security_profile,omitempty"` // One or more storage_account block as defined below. + // +kubebuilder:validation:Optional StorageAccount []InteractiveQueryClusterStorageAccountParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` // A storage_account_gen2 block as defined below. + // +kubebuilder:validation:Optional StorageAccountGen2 []InteractiveQueryClusterStorageAccountGen2Parameters `json:"storageAccountGen2,omitempty" tf:"storage_account_gen2,omitempty"` // The minimal supported TLS version. Possible values are 1.0, 1.1 or 1.2. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional TLSMinVersion *string `json:"tlsMinVersion,omitempty" tf:"tls_min_version,omitempty"` // A map of Tags which should be assigned to this HDInsight Interactive Query Cluster. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the Tier which should be used for this HDInsight Interactive Query Cluster. Possible values are Standard or Premium. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Tier *string `json:"tier,omitempty" tf:"tier,omitempty"` } @@ -657,9 +704,11 @@ type InteractiveQueryClusterRolesHeadNodeParameters struct { PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"` // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SSHKeys []*string `json:"sshKeys,omitempty" tf:"ssh_keys,omitempty"` // The script action which will run on the cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ScriptActions []RolesHeadNodeScriptActionsParameters `json:"scriptActions,omitempty" tf:"script_actions,omitempty"` // The ID of the Subnet within the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. @@ -677,12 +726,15 @@ type InteractiveQueryClusterRolesHeadNodeParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } @@ -713,12 +765,15 @@ type InteractiveQueryClusterRolesObservation struct { type InteractiveQueryClusterRolesParameters struct { // A head_node block as defined above. + // +kubebuilder:validation:Optional HeadNode []InteractiveQueryClusterRolesHeadNodeParameters `json:"headNode,omitempty" tf:"head_node,omitempty"` // A worker_node block as defined below. + // +kubebuilder:validation:Optional WorkerNode []InteractiveQueryClusterRolesWorkerNodeParameters `json:"workerNode,omitempty" tf:"worker_node,omitempty"` // A zookeeper_node block as defined below. + // +kubebuilder:validation:Optional ZookeeperNode []InteractiveQueryClusterRolesZookeeperNodeParameters `json:"zookeeperNode,omitempty" tf:"zookeeper_node,omitempty"` } @@ -776,6 +831,7 @@ type InteractiveQueryClusterRolesWorkerNodeObservation struct { type InteractiveQueryClusterRolesWorkerNodeParameters struct { // A autoscale block as defined below. + // +kubebuilder:validation:Optional Autoscale []RolesWorkerNodeAutoscaleParameters `json:"autoscale,omitempty" tf:"autoscale,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. @@ -783,9 +839,11 @@ type InteractiveQueryClusterRolesWorkerNodeParameters struct { PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"` // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SSHKeys []*string `json:"sshKeys,omitempty" tf:"ssh_keys,omitempty"` // The script action which will run on the cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ScriptActions []InteractiveQueryClusterRolesWorkerNodeScriptActionsParameters `json:"scriptActions,omitempty" tf:"script_actions,omitempty"` // The ID of the Subnet within the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. @@ -803,15 +861,19 @@ type InteractiveQueryClusterRolesWorkerNodeParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // The number of instances which should be run for the Worker Nodes. + // +kubebuilder:validation:Optional TargetInstanceCount *float64 `json:"targetInstanceCount,omitempty" tf:"target_instance_count,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } @@ -842,12 +904,15 @@ type InteractiveQueryClusterRolesWorkerNodeScriptActionsObservation struct { type InteractiveQueryClusterRolesWorkerNodeScriptActionsParameters struct { // The name of the script action. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script provided. + // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI to the script. + // +kubebuilder:validation:Optional URI *string `json:"uri,omitempty" tf:"uri,omitempty"` } @@ -897,9 +962,11 @@ type InteractiveQueryClusterRolesZookeeperNodeParameters struct { PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"` // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SSHKeys []*string `json:"sshKeys,omitempty" tf:"ssh_keys,omitempty"` // The script action which will run on the cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ScriptActions []InteractiveQueryClusterRolesZookeeperNodeScriptActionsParameters `json:"scriptActions,omitempty" tf:"script_actions,omitempty"` // The ID of the Subnet within the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. @@ -917,12 +984,15 @@ type InteractiveQueryClusterRolesZookeeperNodeParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } @@ -953,12 +1023,15 @@ type InteractiveQueryClusterRolesZookeeperNodeScriptActionsObservation struct { type InteractiveQueryClusterRolesZookeeperNodeScriptActionsParameters struct { // The name of the script action. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script provided. + // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI to the script. + // +kubebuilder:validation:Optional URI *string `json:"uri,omitempty" tf:"uri,omitempty"` } @@ -1007,12 +1080,15 @@ type InteractiveQueryClusterSecurityProfileObservation struct { type InteractiveQueryClusterSecurityProfileParameters struct { // The resource ID of the Azure Active Directory Domain Service. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional AaddsResourceID *string `json:"aaddsResourceId,omitempty" tf:"aadds_resource_id,omitempty"` // A list of the distinguished names for the cluster user groups. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ClusterUsersGroupDNS []*string `json:"clusterUsersGroupDns,omitempty" tf:"cluster_users_group_dns,omitempty"` // The name of the Azure Active Directory Domain. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DomainName *string `json:"domainName,omitempty" tf:"domain_name,omitempty"` // The user password of the Azure Active Directory Domain. Changing this forces a new resource to be created. @@ -1020,12 +1096,15 @@ type InteractiveQueryClusterSecurityProfileParameters struct { DomainUserPasswordSecretRef v1.SecretKeySelector `json:"domainUserPasswordSecretRef" tf:"-"` // The username of the Azure Active Directory Domain. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DomainUsername *string `json:"domainUsername,omitempty" tf:"domain_username,omitempty"` // A list of the LDAPS URLs to communicate with the Azure Active Directory. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional LdapsUrls []*string `json:"ldapsUrls,omitempty" tf:"ldaps_urls,omitempty"` // The User Assigned Identity for the HDInsight Cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional MsiResourceID *string `json:"msiResourceId,omitempty" tf:"msi_resource_id,omitempty"` } @@ -1062,15 +1141,19 @@ type InteractiveQueryClusterStorageAccountGen2Observation struct { type InteractiveQueryClusterStorageAccountGen2Parameters struct { // The ID of the Gen2 Filesystem. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional FileSystemID *string `json:"filesystemId,omitempty" tf:"filesystem_id,omitempty"` // Is this the Default Storage Account for the HDInsight Hadoop Cluster? Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional IsDefault *bool `json:"isDefault,omitempty" tf:"is_default,omitempty"` // The ID of Managed Identity to use for accessing the Gen2 filesystem. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ManagedIdentityResourceID *string `json:"managedIdentityResourceId,omitempty" tf:"managed_identity_resource_id,omitempty"` // The ID of the Storage Account. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional StorageResourceID *string `json:"storageResourceId,omitempty" tf:"storage_resource_id,omitempty"` } @@ -1098,6 +1181,7 @@ type InteractiveQueryClusterStorageAccountObservation struct { type InteractiveQueryClusterStorageAccountParameters struct { // Is this the Default Storage Account for the HDInsight Hadoop Cluster? Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional IsDefault *bool `json:"isDefault,omitempty" tf:"is_default,omitempty"` // The Access Key which should be used to connect to the Storage Account. Changing this forces a new resource to be created. @@ -1119,6 +1203,7 @@ type InteractiveQueryClusterStorageAccountParameters struct { StorageContainerIDSelector *v1.Selector `json:"storageContainerIdSelector,omitempty" tf:"-"` // The ID of the Storage Account. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional StorageResourceID *string `json:"storageResourceId,omitempty" tf:"storage_resource_id,omitempty"` } @@ -1149,12 +1234,15 @@ type RolesHeadNodeScriptActionsObservation struct { type RolesHeadNodeScriptActionsParameters struct { // The name of the script action. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script provided. + // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI to the script. + // +kubebuilder:validation:Optional URI *string `json:"uri,omitempty" tf:"uri,omitempty"` } @@ -1179,9 +1267,11 @@ type RolesWorkerNodeAutoscaleObservation struct { type RolesWorkerNodeAutoscaleParameters struct { // A capacity block as defined below. + // +kubebuilder:validation:Optional Capacity []AutoscaleCapacityParameters `json:"capacity,omitempty" tf:"capacity,omitempty"` // A recurrence block as defined below. + // +kubebuilder:validation:Optional Recurrence []WorkerNodeAutoscaleRecurrenceParameters `json:"recurrence,omitempty" tf:"recurrence,omitempty"` } @@ -1206,9 +1296,11 @@ type WorkerNodeAutoscaleRecurrenceObservation struct { type WorkerNodeAutoscaleRecurrenceParameters struct { // A list of schedule blocks as defined below. + // +kubebuilder:validation:Optional Schedule []AutoscaleRecurrenceScheduleParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` // The time zone for the autoscale schedule times. + // +kubebuilder:validation:Optional Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` } diff --git a/apis/hdinsight/v1beta1/zz_kafkacluster_types.go b/apis/hdinsight/v1beta1/zz_kafkacluster_types.go index 614228599..d8b820909 100755 --- a/apis/hdinsight/v1beta1/zz_kafkacluster_types.go +++ b/apis/hdinsight/v1beta1/zz_kafkacluster_types.go @@ -28,6 +28,7 @@ type KafkaClusterComponentVersionObservation struct { type KafkaClusterComponentVersionParameters struct { // The version of Kafka which should be used for this HDInsight Kafka Cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Kafka *string `json:"kafka,omitempty" tf:"kafka,omitempty"` } @@ -52,9 +53,11 @@ type KafkaClusterComputeIsolationObservation struct { type KafkaClusterComputeIsolationParameters struct { // This field indicates whether enable compute isolation or not. Possible values are true or false. + // +kubebuilder:validation:Optional ComputeIsolationEnabled *bool `json:"computeIsolationEnabled,omitempty" tf:"compute_isolation_enabled,omitempty"` // The name of the host SKU. + // +kubebuilder:validation:Optional HostSku *string `json:"hostSku,omitempty" tf:"host_sku,omitempty"` } @@ -91,15 +94,19 @@ type KafkaClusterDiskEncryptionObservation struct { type KafkaClusterDiskEncryptionParameters struct { // This is an algorithm identifier for encryption. Possible values are RSA1_5, RSA-OAEP, RSA-OAEP-256. + // +kubebuilder:validation:Optional EncryptionAlgorithm *string `json:"encryptionAlgorithm,omitempty" tf:"encryption_algorithm,omitempty"` // This is indicator to show whether resource disk encryption is enabled. + // +kubebuilder:validation:Optional EncryptionAtHostEnabled *bool `json:"encryptionAtHostEnabled,omitempty" tf:"encryption_at_host_enabled,omitempty"` // The ID of the key vault key. + // +kubebuilder:validation:Optional KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"` // This is the resource ID of Managed Identity used to access the key vault. + // +kubebuilder:validation:Optional KeyVaultManagedIdentityID *string `json:"keyVaultManagedIdentityId,omitempty" tf:"key_vault_managed_identity_id,omitempty"` } @@ -118,6 +125,7 @@ type KafkaClusterExtensionObservation struct { type KafkaClusterExtensionParameters struct { // The workspace ID of the log analytics extension. + // +kubebuilder:validation:Optional LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` // The workspace key of the log analytics extension. @@ -144,6 +152,7 @@ type KafkaClusterGatewayParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The username used for the Ambari Portal. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } @@ -234,6 +243,7 @@ type KafkaClusterMetastoresAmbariObservation struct { type KafkaClusterMetastoresAmbariParameters struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. @@ -241,9 +251,11 @@ type KafkaClusterMetastoresAmbariParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Server *string `json:"server,omitempty" tf:"server,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } @@ -274,6 +286,7 @@ type KafkaClusterMetastoresHiveObservation struct { type KafkaClusterMetastoresHiveParameters struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. @@ -281,9 +294,11 @@ type KafkaClusterMetastoresHiveParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Server *string `json:"server,omitempty" tf:"server,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } @@ -338,6 +353,7 @@ type KafkaClusterMetastoresOozieObservation struct { type KafkaClusterMetastoresOozieParameters struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. @@ -345,21 +361,26 @@ type KafkaClusterMetastoresOozieParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Server *string `json:"server,omitempty" tf:"server,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } type KafkaClusterMetastoresParameters struct { // An ambari block as defined below. + // +kubebuilder:validation:Optional Ambari []KafkaClusterMetastoresAmbariParameters `json:"ambari,omitempty" tf:"ambari,omitempty"` // A hive block as defined below. + // +kubebuilder:validation:Optional Hive []KafkaClusterMetastoresHiveParameters `json:"hive,omitempty" tf:"hive,omitempty"` // An oozie block as defined below. + // +kubebuilder:validation:Optional Oozie []KafkaClusterMetastoresOozieParameters `json:"oozie,omitempty" tf:"oozie,omitempty"` } @@ -378,6 +399,7 @@ type KafkaClusterMonitorObservation struct { type KafkaClusterMonitorParameters struct { // The Operations Management Suite (OMS) workspace ID. + // +kubebuilder:validation:Optional LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` // The Operations Management Suite (OMS) workspace key. @@ -406,9 +428,11 @@ type KafkaClusterNetworkObservation struct { type KafkaClusterNetworkParameters struct { // The direction of the resource provider connection. Possible values include Inbound or Outbound. Defaults to Inbound. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ConnectionDirection *string `json:"connectionDirection,omitempty" tf:"connection_direction,omitempty"` // Is the private link enabled? Possible values include True or False. Defaults to False. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PrivateLinkEnabled *bool `json:"privateLinkEnabled,omitempty" tf:"private_link_enabled,omitempty"` } @@ -490,36 +514,47 @@ type KafkaClusterObservation struct { type KafkaClusterParameters struct { // Specifies the Version of HDInsights which should be used for this Cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ClusterVersion *string `json:"clusterVersion,omitempty" tf:"cluster_version,omitempty"` // A component_version block as defined below. + // +kubebuilder:validation:Optional ComponentVersion []KafkaClusterComponentVersionParameters `json:"componentVersion,omitempty" tf:"component_version,omitempty"` // A compute_isolation block as defined below. + // +kubebuilder:validation:Optional ComputeIsolation []KafkaClusterComputeIsolationParameters `json:"computeIsolation,omitempty" tf:"compute_isolation,omitempty"` // One or more disk_encryption block as defined below. + // +kubebuilder:validation:Optional DiskEncryption []KafkaClusterDiskEncryptionParameters `json:"diskEncryption,omitempty" tf:"disk_encryption,omitempty"` // Whether encryption in transit is enabled for this HDInsight Kafka Cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional EncryptionInTransitEnabled *bool `json:"encryptionInTransitEnabled,omitempty" tf:"encryption_in_transit_enabled,omitempty"` // An extension block as defined below. + // +kubebuilder:validation:Optional Extension []KafkaClusterExtensionParameters `json:"extension,omitempty" tf:"extension,omitempty"` // A gateway block as defined below. + // +kubebuilder:validation:Optional Gateway []KafkaClusterGatewayParameters `json:"gateway,omitempty" tf:"gateway,omitempty"` // Specifies the Azure Region which this HDInsight Kafka Cluster should exist. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // A metastores block as defined below. + // +kubebuilder:validation:Optional Metastores []KafkaClusterMetastoresParameters `json:"metastores,omitempty" tf:"metastores,omitempty"` // A monitor block as defined below. + // +kubebuilder:validation:Optional Monitor []KafkaClusterMonitorParameters `json:"monitor,omitempty" tf:"monitor,omitempty"` // A network block as defined below. + // +kubebuilder:validation:Optional Network []KafkaClusterNetworkParameters `json:"network,omitempty" tf:"network,omitempty"` // Specifies the name of the Resource Group in which this HDInsight Kafka Cluster should exist. Changing this forces a new resource to be created. @@ -536,27 +571,35 @@ type KafkaClusterParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A rest_proxy block as defined below. + // +kubebuilder:validation:Optional RestProxy []RestProxyParameters `json:"restProxy,omitempty" tf:"rest_proxy,omitempty"` // A roles block as defined below. + // +kubebuilder:validation:Optional Roles []KafkaClusterRolesParameters `json:"roles,omitempty" tf:"roles,omitempty"` // A security_profile block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SecurityProfile []KafkaClusterSecurityProfileParameters `json:"securityProfile,omitempty" tf:"security_profile,omitempty"` // One or more storage_account block as defined below. + // +kubebuilder:validation:Optional StorageAccount []KafkaClusterStorageAccountParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` // A storage_account_gen2 block as defined below. + // +kubebuilder:validation:Optional StorageAccountGen2 []KafkaClusterStorageAccountGen2Parameters `json:"storageAccountGen2,omitempty" tf:"storage_account_gen2,omitempty"` // The minimal supported TLS version. Possible values are 1.0, 1.1 or 1.2. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional TLSMinVersion *string `json:"tlsMinVersion,omitempty" tf:"tls_min_version,omitempty"` // A map of Tags which should be assigned to this HDInsight Kafka Cluster. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the Tier which should be used for this HDInsight Kafka Cluster. Possible values are Standard or Premium. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Tier *string `json:"tier,omitempty" tf:"tier,omitempty"` } @@ -606,9 +649,11 @@ type KafkaClusterRolesHeadNodeParameters struct { PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"` // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SSHKeys []*string `json:"sshKeys,omitempty" tf:"ssh_keys,omitempty"` // The script action which will run on the cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ScriptActions []KafkaClusterRolesHeadNodeScriptActionsParameters `json:"scriptActions,omitempty" tf:"script_actions,omitempty"` // The ID of the Subnet within the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. @@ -626,12 +671,15 @@ type KafkaClusterRolesHeadNodeParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } @@ -662,12 +710,15 @@ type KafkaClusterRolesHeadNodeScriptActionsObservation struct { type KafkaClusterRolesHeadNodeScriptActionsParameters struct { // The name of the script action. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script provided. + // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI to the script. + // +kubebuilder:validation:Optional URI *string `json:"uri,omitempty" tf:"uri,omitempty"` } @@ -704,15 +755,19 @@ type KafkaClusterRolesObservation struct { type KafkaClusterRolesParameters struct { // A head_node block as defined above. + // +kubebuilder:validation:Optional HeadNode []KafkaClusterRolesHeadNodeParameters `json:"headNode,omitempty" tf:"head_node,omitempty"` // A kafka_management_node block as defined below. + // +kubebuilder:validation:Optional KafkaManagementNode []KafkaManagementNodeParameters `json:"kafkaManagementNode,omitempty" tf:"kafka_management_node,omitempty"` // A worker_node block as defined below. + // +kubebuilder:validation:Optional WorkerNode []KafkaClusterRolesWorkerNodeParameters `json:"workerNode,omitempty" tf:"worker_node,omitempty"` // A zookeeper_node block as defined below. + // +kubebuilder:validation:Optional ZookeeperNode []KafkaClusterRolesZookeeperNodeParameters `json:"zookeeperNode,omitempty" tf:"zookeeper_node,omitempty"` } @@ -770,6 +825,7 @@ type KafkaClusterRolesWorkerNodeObservation struct { type KafkaClusterRolesWorkerNodeParameters struct { // The number of Data Disks which should be assigned to each Worker Node, which can be between 1 and 8. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NumberOfDisksPerNode *float64 `json:"numberOfDisksPerNode,omitempty" tf:"number_of_disks_per_node,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. @@ -777,9 +833,11 @@ type KafkaClusterRolesWorkerNodeParameters struct { PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"` // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SSHKeys []*string `json:"sshKeys,omitempty" tf:"ssh_keys,omitempty"` // The script action which will run on the cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ScriptActions []KafkaClusterRolesWorkerNodeScriptActionsParameters `json:"scriptActions,omitempty" tf:"script_actions,omitempty"` // The ID of the Subnet within the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. @@ -797,15 +855,19 @@ type KafkaClusterRolesWorkerNodeParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // The number of instances which should be run for the Worker Nodes. + // +kubebuilder:validation:Optional TargetInstanceCount *float64 `json:"targetInstanceCount,omitempty" tf:"target_instance_count,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } @@ -836,12 +898,15 @@ type KafkaClusterRolesWorkerNodeScriptActionsObservation struct { type KafkaClusterRolesWorkerNodeScriptActionsParameters struct { // The name of the script action. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script provided. + // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI to the script. + // +kubebuilder:validation:Optional URI *string `json:"uri,omitempty" tf:"uri,omitempty"` } @@ -891,9 +956,11 @@ type KafkaClusterRolesZookeeperNodeParameters struct { PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"` // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SSHKeys []*string `json:"sshKeys,omitempty" tf:"ssh_keys,omitempty"` // The script action which will run on the cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ScriptActions []KafkaClusterRolesZookeeperNodeScriptActionsParameters `json:"scriptActions,omitempty" tf:"script_actions,omitempty"` // The ID of the Subnet within the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. @@ -911,12 +978,15 @@ type KafkaClusterRolesZookeeperNodeParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } @@ -947,12 +1017,15 @@ type KafkaClusterRolesZookeeperNodeScriptActionsObservation struct { type KafkaClusterRolesZookeeperNodeScriptActionsParameters struct { // The name of the script action. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script provided. + // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI to the script. + // +kubebuilder:validation:Optional URI *string `json:"uri,omitempty" tf:"uri,omitempty"` } @@ -1001,12 +1074,15 @@ type KafkaClusterSecurityProfileObservation struct { type KafkaClusterSecurityProfileParameters struct { // The resource ID of the Azure Active Directory Domain Service. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional AaddsResourceID *string `json:"aaddsResourceId,omitempty" tf:"aadds_resource_id,omitempty"` // A list of the distinguished names for the cluster user groups. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ClusterUsersGroupDNS []*string `json:"clusterUsersGroupDns,omitempty" tf:"cluster_users_group_dns,omitempty"` // The name of the Azure Active Directory Domain. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DomainName *string `json:"domainName,omitempty" tf:"domain_name,omitempty"` // The user password of the Azure Active Directory Domain. Changing this forces a new resource to be created. @@ -1014,12 +1090,15 @@ type KafkaClusterSecurityProfileParameters struct { DomainUserPasswordSecretRef v1.SecretKeySelector `json:"domainUserPasswordSecretRef" tf:"-"` // The username of the Azure Active Directory Domain. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DomainUsername *string `json:"domainUsername,omitempty" tf:"domain_username,omitempty"` // A list of the LDAPS URLs to communicate with the Azure Active Directory. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional LdapsUrls []*string `json:"ldapsUrls,omitempty" tf:"ldaps_urls,omitempty"` // The User Assigned Identity for the HDInsight Cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional MsiResourceID *string `json:"msiResourceId,omitempty" tf:"msi_resource_id,omitempty"` } @@ -1056,15 +1135,19 @@ type KafkaClusterStorageAccountGen2Observation struct { type KafkaClusterStorageAccountGen2Parameters struct { // The ID of the Gen2 Filesystem. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional FileSystemID *string `json:"filesystemId,omitempty" tf:"filesystem_id,omitempty"` // Is this the Default Storage Account for the HDInsight Hadoop Cluster? Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional IsDefault *bool `json:"isDefault,omitempty" tf:"is_default,omitempty"` // The ID of Managed Identity to use for accessing the Gen2 filesystem. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ManagedIdentityResourceID *string `json:"managedIdentityResourceId,omitempty" tf:"managed_identity_resource_id,omitempty"` // The ID of the Storage Account. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional StorageResourceID *string `json:"storageResourceId,omitempty" tf:"storage_resource_id,omitempty"` } @@ -1092,6 +1175,7 @@ type KafkaClusterStorageAccountObservation struct { type KafkaClusterStorageAccountParameters struct { // Is this the Default Storage Account for the HDInsight Hadoop Cluster? Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional IsDefault *bool `json:"isDefault,omitempty" tf:"is_default,omitempty"` // The Access Key which should be used to connect to the Storage Account. Changing this forces a new resource to be created. @@ -1113,6 +1197,7 @@ type KafkaClusterStorageAccountParameters struct { StorageContainerIDSelector *v1.Selector `json:"storageContainerIdSelector,omitempty" tf:"-"` // The ID of the Storage Account. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional StorageResourceID *string `json:"storageResourceId,omitempty" tf:"storage_resource_id,omitempty"` } @@ -1162,9 +1247,11 @@ type KafkaManagementNodeParameters struct { PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"` // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SSHKeys []*string `json:"sshKeys,omitempty" tf:"ssh_keys,omitempty"` // The script action which will run on the cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ScriptActions []KafkaManagementNodeScriptActionsParameters `json:"scriptActions,omitempty" tf:"script_actions,omitempty"` // The ID of the Subnet within the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. @@ -1182,12 +1269,15 @@ type KafkaManagementNodeParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } @@ -1218,12 +1308,15 @@ type KafkaManagementNodeScriptActionsObservation struct { type KafkaManagementNodeScriptActionsParameters struct { // The name of the script action. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script provided. + // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI to the script. + // +kubebuilder:validation:Optional URI *string `json:"uri,omitempty" tf:"uri,omitempty"` } @@ -1248,9 +1341,11 @@ type RestProxyObservation struct { type RestProxyParameters struct { // The Azure Active Directory Security Group ID. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SecurityGroupID *string `json:"securityGroupId,omitempty" tf:"security_group_id,omitempty"` // The Azure Active Directory Security Group name. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SecurityGroupName *string `json:"securityGroupName,omitempty" tf:"security_group_name,omitempty"` } diff --git a/apis/hdinsight/v1beta1/zz_sparkcluster_types.go b/apis/hdinsight/v1beta1/zz_sparkcluster_types.go index 40410a672..5f832451c 100755 --- a/apis/hdinsight/v1beta1/zz_sparkcluster_types.go +++ b/apis/hdinsight/v1beta1/zz_sparkcluster_types.go @@ -34,9 +34,11 @@ type RolesWorkerNodeAutoscaleRecurrenceObservation struct { type RolesWorkerNodeAutoscaleRecurrenceParameters struct { // A list of schedule blocks as defined below. + // +kubebuilder:validation:Optional Schedule []WorkerNodeAutoscaleRecurrenceScheduleParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` // The time zone for the autoscale schedule times. + // +kubebuilder:validation:Optional Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` } @@ -55,6 +57,7 @@ type SparkClusterComponentVersionObservation struct { type SparkClusterComponentVersionParameters struct { // The version of Spark which should be used for this HDInsight Spark Cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Spark *string `json:"spark,omitempty" tf:"spark,omitempty"` } @@ -79,9 +82,11 @@ type SparkClusterComputeIsolationObservation struct { type SparkClusterComputeIsolationParameters struct { // This field indicates whether enable compute isolation or not. Possible values are true or false. + // +kubebuilder:validation:Optional ComputeIsolationEnabled *bool `json:"computeIsolationEnabled,omitempty" tf:"compute_isolation_enabled,omitempty"` // The name of the host SKU. + // +kubebuilder:validation:Optional HostSku *string `json:"hostSku,omitempty" tf:"host_sku,omitempty"` } @@ -118,15 +123,19 @@ type SparkClusterDiskEncryptionObservation struct { type SparkClusterDiskEncryptionParameters struct { // This is an algorithm identifier for encryption. Possible values are RSA1_5, RSA-OAEP, RSA-OAEP-256. + // +kubebuilder:validation:Optional EncryptionAlgorithm *string `json:"encryptionAlgorithm,omitempty" tf:"encryption_algorithm,omitempty"` // This is indicator to show whether resource disk encryption is enabled. + // +kubebuilder:validation:Optional EncryptionAtHostEnabled *bool `json:"encryptionAtHostEnabled,omitempty" tf:"encryption_at_host_enabled,omitempty"` // The ID of the key vault key. + // +kubebuilder:validation:Optional KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"` // This is the resource ID of Managed Identity used to access the key vault. + // +kubebuilder:validation:Optional KeyVaultManagedIdentityID *string `json:"keyVaultManagedIdentityId,omitempty" tf:"key_vault_managed_identity_id,omitempty"` } @@ -145,6 +154,7 @@ type SparkClusterExtensionObservation struct { type SparkClusterExtensionParameters struct { // The workspace ID of the log analytics extension. + // +kubebuilder:validation:Optional LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` // The workspace key of the log analytics extension. @@ -171,6 +181,7 @@ type SparkClusterGatewayParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The username used for the Ambari Portal. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } @@ -258,6 +269,7 @@ type SparkClusterMetastoresAmbariObservation struct { type SparkClusterMetastoresAmbariParameters struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. @@ -265,9 +277,11 @@ type SparkClusterMetastoresAmbariParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Server *string `json:"server,omitempty" tf:"server,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } @@ -298,6 +312,7 @@ type SparkClusterMetastoresHiveObservation struct { type SparkClusterMetastoresHiveParameters struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. @@ -305,9 +320,11 @@ type SparkClusterMetastoresHiveParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Server *string `json:"server,omitempty" tf:"server,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } @@ -362,6 +379,7 @@ type SparkClusterMetastoresOozieObservation struct { type SparkClusterMetastoresOozieParameters struct { // The external Oozie metastore's existing SQL database. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DatabaseName *string `json:"databaseName,omitempty" tf:"database_name,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. @@ -369,21 +387,26 @@ type SparkClusterMetastoresOozieParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The fully-qualified domain name (FQDN) of the SQL server to use for the external Oozie metastore. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Server *string `json:"server,omitempty" tf:"server,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } type SparkClusterMetastoresParameters struct { // An ambari block as defined below. + // +kubebuilder:validation:Optional Ambari []SparkClusterMetastoresAmbariParameters `json:"ambari,omitempty" tf:"ambari,omitempty"` // A hive block as defined below. + // +kubebuilder:validation:Optional Hive []SparkClusterMetastoresHiveParameters `json:"hive,omitempty" tf:"hive,omitempty"` // An oozie block as defined below. + // +kubebuilder:validation:Optional Oozie []SparkClusterMetastoresOozieParameters `json:"oozie,omitempty" tf:"oozie,omitempty"` } @@ -402,6 +425,7 @@ type SparkClusterMonitorObservation struct { type SparkClusterMonitorParameters struct { // The Operations Management Suite (OMS) workspace ID. + // +kubebuilder:validation:Optional LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` // The Operations Management Suite (OMS) workspace key. @@ -430,9 +454,11 @@ type SparkClusterNetworkObservation struct { type SparkClusterNetworkParameters struct { // The direction of the resource provider connection. Possible values include Inbound or Outbound. Defaults to Inbound. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ConnectionDirection *string `json:"connectionDirection,omitempty" tf:"connection_direction,omitempty"` // Is the private link enabled? Possible values include True or False. Defaults to False. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PrivateLinkEnabled *bool `json:"privateLinkEnabled,omitempty" tf:"private_link_enabled,omitempty"` } @@ -508,36 +534,47 @@ type SparkClusterObservation struct { type SparkClusterParameters struct { // Specifies the Version of HDInsights which should be used for this Cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ClusterVersion *string `json:"clusterVersion,omitempty" tf:"cluster_version,omitempty"` // A component_version block as defined below. + // +kubebuilder:validation:Optional ComponentVersion []SparkClusterComponentVersionParameters `json:"componentVersion,omitempty" tf:"component_version,omitempty"` // A compute_isolation block as defined below. + // +kubebuilder:validation:Optional ComputeIsolation []SparkClusterComputeIsolationParameters `json:"computeIsolation,omitempty" tf:"compute_isolation,omitempty"` // One or more disk_encryption block as defined below. + // +kubebuilder:validation:Optional DiskEncryption []SparkClusterDiskEncryptionParameters `json:"diskEncryption,omitempty" tf:"disk_encryption,omitempty"` // Whether encryption in transit is enabled for this Cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional EncryptionInTransitEnabled *bool `json:"encryptionInTransitEnabled,omitempty" tf:"encryption_in_transit_enabled,omitempty"` // An extension block as defined below. + // +kubebuilder:validation:Optional Extension []SparkClusterExtensionParameters `json:"extension,omitempty" tf:"extension,omitempty"` // A gateway block as defined below. + // +kubebuilder:validation:Optional Gateway []SparkClusterGatewayParameters `json:"gateway,omitempty" tf:"gateway,omitempty"` // Specifies the Azure Region which this HDInsight Spark Cluster should exist. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // A metastores block as defined below. + // +kubebuilder:validation:Optional Metastores []SparkClusterMetastoresParameters `json:"metastores,omitempty" tf:"metastores,omitempty"` // A monitor block as defined below. + // +kubebuilder:validation:Optional Monitor []SparkClusterMonitorParameters `json:"monitor,omitempty" tf:"monitor,omitempty"` // A network block as defined below. + // +kubebuilder:validation:Optional Network []SparkClusterNetworkParameters `json:"network,omitempty" tf:"network,omitempty"` // Specifies the name of the Resource Group in which this HDInsight Spark Cluster should exist. Changing this forces a new resource to be created. @@ -554,24 +591,31 @@ type SparkClusterParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A roles block as defined below. + // +kubebuilder:validation:Optional Roles []SparkClusterRolesParameters `json:"roles,omitempty" tf:"roles,omitempty"` // A security_profile block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SecurityProfile []SparkClusterSecurityProfileParameters `json:"securityProfile,omitempty" tf:"security_profile,omitempty"` // One or more storage_account block as defined below. + // +kubebuilder:validation:Optional StorageAccount []SparkClusterStorageAccountParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` // A storage_account_gen2 block as defined below. + // +kubebuilder:validation:Optional StorageAccountGen2 []SparkClusterStorageAccountGen2Parameters `json:"storageAccountGen2,omitempty" tf:"storage_account_gen2,omitempty"` // The minimal supported TLS version. Possible values are 1.0, 1.1 or 1.2. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional TLSMinVersion *string `json:"tlsMinVersion,omitempty" tf:"tls_min_version,omitempty"` // A map of Tags which should be assigned to this HDInsight Spark Cluster. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the Tier which should be used for this HDInsight Spark Cluster. Possible values are Standard or Premium. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Tier *string `json:"tier,omitempty" tf:"tier,omitempty"` } @@ -621,9 +665,11 @@ type SparkClusterRolesHeadNodeParameters struct { PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"` // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SSHKeys []*string `json:"sshKeys,omitempty" tf:"ssh_keys,omitempty"` // The script action which will run on the cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ScriptActions []SparkClusterRolesHeadNodeScriptActionsParameters `json:"scriptActions,omitempty" tf:"script_actions,omitempty"` // The ID of the Subnet within the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. @@ -641,12 +687,15 @@ type SparkClusterRolesHeadNodeParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } @@ -677,12 +726,15 @@ type SparkClusterRolesHeadNodeScriptActionsObservation struct { type SparkClusterRolesHeadNodeScriptActionsParameters struct { // The name of the script action. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script provided. + // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI to the script. + // +kubebuilder:validation:Optional URI *string `json:"uri,omitempty" tf:"uri,omitempty"` } @@ -713,12 +765,15 @@ type SparkClusterRolesObservation struct { type SparkClusterRolesParameters struct { // A head_node block as defined above. + // +kubebuilder:validation:Optional HeadNode []SparkClusterRolesHeadNodeParameters `json:"headNode,omitempty" tf:"head_node,omitempty"` // A worker_node block as defined below. + // +kubebuilder:validation:Optional WorkerNode []SparkClusterRolesWorkerNodeParameters `json:"workerNode,omitempty" tf:"worker_node,omitempty"` // A zookeeper_node block as defined below. + // +kubebuilder:validation:Optional ZookeeperNode []SparkClusterRolesZookeeperNodeParameters `json:"zookeeperNode,omitempty" tf:"zookeeper_node,omitempty"` } @@ -743,9 +798,11 @@ type SparkClusterRolesWorkerNodeAutoscaleObservation struct { type SparkClusterRolesWorkerNodeAutoscaleParameters struct { // A capacity block as defined below. + // +kubebuilder:validation:Optional Capacity []WorkerNodeAutoscaleCapacityParameters `json:"capacity,omitempty" tf:"capacity,omitempty"` // A recurrence block as defined below. + // +kubebuilder:validation:Optional Recurrence []RolesWorkerNodeAutoscaleRecurrenceParameters `json:"recurrence,omitempty" tf:"recurrence,omitempty"` } @@ -803,6 +860,7 @@ type SparkClusterRolesWorkerNodeObservation struct { type SparkClusterRolesWorkerNodeParameters struct { // A autoscale block as defined below. + // +kubebuilder:validation:Optional Autoscale []SparkClusterRolesWorkerNodeAutoscaleParameters `json:"autoscale,omitempty" tf:"autoscale,omitempty"` // The Password associated with the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. @@ -810,9 +868,11 @@ type SparkClusterRolesWorkerNodeParameters struct { PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"` // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SSHKeys []*string `json:"sshKeys,omitempty" tf:"ssh_keys,omitempty"` // The script action which will run on the cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ScriptActions []SparkClusterRolesWorkerNodeScriptActionsParameters `json:"scriptActions,omitempty" tf:"script_actions,omitempty"` // The ID of the Subnet within the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. @@ -830,15 +890,19 @@ type SparkClusterRolesWorkerNodeParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // The number of instances which should be run for the Worker Nodes. + // +kubebuilder:validation:Optional TargetInstanceCount *float64 `json:"targetInstanceCount,omitempty" tf:"target_instance_count,omitempty"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } @@ -869,12 +933,15 @@ type SparkClusterRolesWorkerNodeScriptActionsObservation struct { type SparkClusterRolesWorkerNodeScriptActionsParameters struct { // The name of the script action. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script provided. + // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI to the script. + // +kubebuilder:validation:Optional URI *string `json:"uri,omitempty" tf:"uri,omitempty"` } @@ -924,9 +991,11 @@ type SparkClusterRolesZookeeperNodeParameters struct { PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"` // A list of SSH Keys which should be used for the local administrator on the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SSHKeys []*string `json:"sshKeys,omitempty" tf:"ssh_keys,omitempty"` // The script action which will run on the cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ScriptActions []SparkClusterRolesZookeeperNodeScriptActionsParameters `json:"scriptActions,omitempty" tf:"script_actions,omitempty"` // The ID of the Subnet within the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. @@ -944,12 +1013,15 @@ type SparkClusterRolesZookeeperNodeParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // The Username of the local administrator for the Zookeeper Nodes. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` // The Size of the Virtual Machine which should be used as the Zookeeper Nodes. Possible values are ExtraSmall, Small, Medium, Large, ExtraLarge, A5, A6, A7, A8, A9, A10, A11, Standard_A1_V2, Standard_A2_V2, Standard_A2m_V2, Standard_A3, Standard_A4_V2, Standard_A4m_V2, Standard_A8_V2, Standard_A8m_V2, Standard_D1, Standard_D2, Standard_D3, Standard_D4, Standard_D11, Standard_D12, Standard_D13, Standard_D14, Standard_D1_V2, Standard_D2_V2, Standard_D3_V2, Standard_D4_V2, Standard_D5_V2, Standard_D11_V2, Standard_D12_V2, Standard_D13_V2, Standard_D14_V2, Standard_DS1_V2, Standard_DS2_V2, Standard_DS3_V2, Standard_DS4_V2, Standard_DS5_V2, Standard_DS11_V2, Standard_DS12_V2, Standard_DS13_V2, Standard_DS14_V2, Standard_E2_V3, Standard_E4_V3, Standard_E8_V3, Standard_E16_V3, Standard_E20_V3, Standard_E32_V3, Standard_E64_V3, Standard_E64i_V3, Standard_E2s_V3, Standard_E4s_V3, Standard_E8s_V3, Standard_E16s_V3, Standard_E20s_V3, Standard_E32s_V3, Standard_E64s_V3, Standard_E64is_V3, Standard_D2a_V4, Standard_D4a_V4, Standard_D8a_V4, Standard_D16a_V4, Standard_D32a_V4, Standard_D48a_V4, Standard_D64a_V4, Standard_D96a_V4, Standard_E2a_V4, Standard_E4a_V4, Standard_E8a_V4, Standard_E16a_V4, Standard_E20a_V4, Standard_E32a_V4, Standard_E48a_V4, Standard_E64a_V4, Standard_E96a_V4, Standard_G1, Standard_G2, Standard_G3, Standard_G4, Standard_G5, Standard_F2s_V2, Standard_F4s_V2, Standard_F8s_V2, Standard_F16s_V2, Standard_F32s_V2, Standard_F64s_V2, Standard_F72s_V2, Standard_GS1, Standard_GS2, Standard_GS3, Standard_GS4, Standard_GS5 and Standard_NC24. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` // The ID of the Virtual Network where the Zookeeper Nodes should be provisioned within. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } @@ -980,12 +1052,15 @@ type SparkClusterRolesZookeeperNodeScriptActionsObservation struct { type SparkClusterRolesZookeeperNodeScriptActionsParameters struct { // The name of the script action. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The parameters for the script provided. + // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The URI to the script. + // +kubebuilder:validation:Optional URI *string `json:"uri,omitempty" tf:"uri,omitempty"` } @@ -1034,12 +1109,15 @@ type SparkClusterSecurityProfileObservation struct { type SparkClusterSecurityProfileParameters struct { // The resource ID of the Azure Active Directory Domain Service. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional AaddsResourceID *string `json:"aaddsResourceId,omitempty" tf:"aadds_resource_id,omitempty"` // A list of the distinguished names for the cluster user groups. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ClusterUsersGroupDNS []*string `json:"clusterUsersGroupDns,omitempty" tf:"cluster_users_group_dns,omitempty"` // The name of the Azure Active Directory Domain. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DomainName *string `json:"domainName,omitempty" tf:"domain_name,omitempty"` // The user password of the Azure Active Directory Domain. Changing this forces a new resource to be created. @@ -1047,12 +1125,15 @@ type SparkClusterSecurityProfileParameters struct { DomainUserPasswordSecretRef v1.SecretKeySelector `json:"domainUserPasswordSecretRef" tf:"-"` // The username of the Azure Active Directory Domain. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DomainUsername *string `json:"domainUsername,omitempty" tf:"domain_username,omitempty"` // A list of the LDAPS URLs to communicate with the Azure Active Directory. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional LdapsUrls []*string `json:"ldapsUrls,omitempty" tf:"ldaps_urls,omitempty"` // The User Assigned Identity for the HDInsight Cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional MsiResourceID *string `json:"msiResourceId,omitempty" tf:"msi_resource_id,omitempty"` } @@ -1089,15 +1170,19 @@ type SparkClusterStorageAccountGen2Observation struct { type SparkClusterStorageAccountGen2Parameters struct { // The ID of the Gen2 Filesystem. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional FileSystemID *string `json:"filesystemId,omitempty" tf:"filesystem_id,omitempty"` // Is this the Default Storage Account for the HDInsight Hadoop Cluster? Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional IsDefault *bool `json:"isDefault,omitempty" tf:"is_default,omitempty"` // The ID of Managed Identity to use for accessing the Gen2 filesystem. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ManagedIdentityResourceID *string `json:"managedIdentityResourceId,omitempty" tf:"managed_identity_resource_id,omitempty"` // The ID of the Storage Account. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional StorageResourceID *string `json:"storageResourceId,omitempty" tf:"storage_resource_id,omitempty"` } @@ -1125,6 +1210,7 @@ type SparkClusterStorageAccountObservation struct { type SparkClusterStorageAccountParameters struct { // Is this the Default Storage Account for the HDInsight Hadoop Cluster? Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional IsDefault *bool `json:"isDefault,omitempty" tf:"is_default,omitempty"` // The Access Key which should be used to connect to the Storage Account. Changing this forces a new resource to be created. @@ -1146,6 +1232,7 @@ type SparkClusterStorageAccountParameters struct { StorageContainerIDSelector *v1.Selector `json:"storageContainerIdSelector,omitempty" tf:"-"` // The ID of the Storage Account. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional StorageResourceID *string `json:"storageResourceId,omitempty" tf:"storage_resource_id,omitempty"` } @@ -1170,9 +1257,11 @@ type WorkerNodeAutoscaleCapacityObservation struct { type WorkerNodeAutoscaleCapacityParameters struct { // The maximum number of worker nodes to autoscale to based on the cluster's activity. + // +kubebuilder:validation:Optional MaxInstanceCount *float64 `json:"maxInstanceCount,omitempty" tf:"max_instance_count,omitempty"` // The minimum number of worker nodes to autoscale to based on the cluster's activity. + // +kubebuilder:validation:Optional MinInstanceCount *float64 `json:"minInstanceCount,omitempty" tf:"min_instance_count,omitempty"` } @@ -1203,12 +1292,15 @@ type WorkerNodeAutoscaleRecurrenceScheduleObservation struct { type WorkerNodeAutoscaleRecurrenceScheduleParameters struct { // The days of the week to perform autoscale. Possible values are Monday, Tuesday, Wednesday, Thursday, Friday, Saturday and Sunday. + // +kubebuilder:validation:Optional Days []*string `json:"days,omitempty" tf:"days,omitempty"` // The number of instances which should be run for the Worker Nodes. + // +kubebuilder:validation:Optional TargetInstanceCount *float64 `json:"targetInstanceCount,omitempty" tf:"target_instance_count,omitempty"` // The time of day to perform the autoscale in 24hour format. + // +kubebuilder:validation:Optional Time *string `json:"time,omitempty" tf:"time,omitempty"` } diff --git a/apis/healthbot/v1beta1/zz_healthbot_types.go b/apis/healthbot/v1beta1/zz_healthbot_types.go index 3d7a4c1fa..5e5e0fde3 100755 --- a/apis/healthbot/v1beta1/zz_healthbot_types.go +++ b/apis/healthbot/v1beta1/zz_healthbot_types.go @@ -49,6 +49,7 @@ type HealthBotObservation struct { type HealthBotParameters struct { // Specifies The Azure Region where the resource exists. Changing this force a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies The name of the Resource Group in which to create the Healthbot Service. changing this forces a new resource to be created. @@ -65,9 +66,11 @@ type HealthBotParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The name which should be used for the SKU of the service. Possible values are C0, F0 and S1. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // A mapping of tags which should be assigned to the service. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/healthcareapis/v1beta1/zz_healthcaredicomservice_types.go b/apis/healthcareapis/v1beta1/zz_healthcaredicomservice_types.go index bd3bf6355..29b835a59 100755 --- a/apis/healthcareapis/v1beta1/zz_healthcaredicomservice_types.go +++ b/apis/healthcareapis/v1beta1/zz_healthcaredicomservice_types.go @@ -76,15 +76,19 @@ type HealthcareDICOMServiceObservation struct { type HealthcareDICOMServiceParameters struct { // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // Specifies the Azure Region where the Healthcare DICOM Service should be created. Changing this forces a new Healthcare DICOM Service to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Whether to enabled public networks when data plane traffic coming from public networks while private endpoint is enabled. Defaults to true. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // A mapping of tags to assign to the Healthcare DICOM Service. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the id of the Healthcare Workspace where the Healthcare DICOM Service should exist. Changing this forces a new Healthcare DICOM Service to be created. @@ -129,9 +133,11 @@ type IdentityObservation struct { type IdentityParameters struct { // A list of User Assigned Identity IDs which should be assigned to this Healthcare DICOM service. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // The type of identity used for the Healthcare DICOM service. Possible values are UserAssigned, SystemAssigned and SystemAssigned, UserAssigned. If UserAssigned is set, an identity_ids must be set as well. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/healthcareapis/v1beta1/zz_healthcarefhirservice_types.go b/apis/healthcareapis/v1beta1/zz_healthcarefhirservice_types.go index 507cdfbdf..eb96f94fc 100755 --- a/apis/healthcareapis/v1beta1/zz_healthcarefhirservice_types.go +++ b/apis/healthcareapis/v1beta1/zz_healthcarefhirservice_types.go @@ -52,18 +52,23 @@ type CorsObservation struct { type CorsParameters struct { // A set of headers to be allowed via CORS. + // +kubebuilder:validation:Optional AllowedHeaders []*string `json:"allowedHeaders,omitempty" tf:"allowed_headers,omitempty"` // The methods to be allowed via CORS. Possible values are DELETE, GET, HEAD, MERGE, POST, OPTIONS, PATCH and PUT. + // +kubebuilder:validation:Optional AllowedMethods []*string `json:"allowedMethods,omitempty" tf:"allowed_methods,omitempty"` // A set of origins to be allowed via CORS. + // +kubebuilder:validation:Optional AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` // If credentials are allowed via CORS. + // +kubebuilder:validation:Optional CredentialsAllowed *bool `json:"credentialsAllowed,omitempty" tf:"credentials_allowed,omitempty"` // The max age to be allowed via CORS. + // +kubebuilder:validation:Optional MaxAgeInSeconds *float64 `json:"maxAgeInSeconds,omitempty" tf:"max_age_in_seconds,omitempty"` } @@ -96,13 +101,16 @@ type HealthcareFHIRServiceAuthenticationObservation struct { type HealthcareFHIRServiceAuthenticationParameters struct { // The intended audience to receive authentication tokens for the service. The default value is https://.fhir.azurehealthcareapis.com. + // +kubebuilder:validation:Optional Audience *string `json:"audience,omitempty" tf:"audience,omitempty"` // The Azure Active Directory (tenant) that serves as the authentication authority to access the service. // Authority must be registered to Azure AD and in the following format: https://{Azure-AD-endpoint}/{tenant-id}. + // +kubebuilder:validation:Optional Authority *string `json:"authority,omitempty" tf:"authority,omitempty"` // Whether smart proxy is enabled. + // +kubebuilder:validation:Optional SmartProxyEnabled *bool `json:"smartProxyEnabled,omitempty" tf:"smart_proxy_enabled,omitempty"` } @@ -133,9 +141,11 @@ type HealthcareFHIRServiceIdentityObservation struct { type HealthcareFHIRServiceIdentityParameters struct { // A list of one or more Resource IDs for User Assigned Managed identities to assign. Required when type is set to UserAssigned. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // The type of managed identity to assign. Possible values are UserAssigned and SystemAssigned + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -220,30 +230,39 @@ type HealthcareFHIRServiceObservation struct { type HealthcareFHIRServiceParameters struct { // A list of the access policies of the service instance. + // +kubebuilder:validation:Optional AccessPolicyObjectIds []*string `json:"accessPolicyObjectIds,omitempty" tf:"access_policy_object_ids,omitempty"` // An authentication block as defined below. + // +kubebuilder:validation:Optional Authentication []HealthcareFHIRServiceAuthenticationParameters `json:"authentication,omitempty" tf:"authentication,omitempty"` // Specifies the name of the storage account which the operation configuration information is exported to. + // +kubebuilder:validation:Optional ConfigurationExportStorageAccountName *string `json:"configurationExportStorageAccountName,omitempty" tf:"configuration_export_storage_account_name,omitempty"` // A list of azure container registry settings used for convert data operation of the service instance. + // +kubebuilder:validation:Optional ContainerRegistryLoginServerURL []*string `json:"containerRegistryLoginServerUrl,omitempty" tf:"container_registry_login_server_url,omitempty"` // A cors block as defined below. + // +kubebuilder:validation:Optional Cors []CorsParameters `json:"cors,omitempty" tf:"cors,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []HealthcareFHIRServiceIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // Specifies the kind of the Healthcare FHIR Service. Possible values are: fhir-Stu3 and fhir-R4. Defaults to fhir-R4. Changing this forces a new Healthcare FHIR Service to be created. + // +kubebuilder:validation:Optional Kind *string `json:"kind,omitempty" tf:"kind,omitempty"` // Specifies the Azure Region where the Healthcare FHIR Service should be created. Changing this forces a new Healthcare FHIR Service to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // A list of objects describing OCI artifacts for export as defined below. + // +kubebuilder:validation:Optional OciArtifact []OciArtifactParameters `json:"ociArtifact,omitempty" tf:"oci_artifact,omitempty"` // Specifies the name of the Resource Group in which to create the Healthcare FHIR Service. Changing this forces a new resource to be created. @@ -260,6 +279,7 @@ type HealthcareFHIRServiceParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the Healthcare FHIR Service. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the id of the Healthcare Workspace where the Healthcare FHIR Service should exist. Changing this forces a new Healthcare FHIR Service to be created. @@ -304,12 +324,15 @@ type OciArtifactObservation struct { type OciArtifactParameters struct { // A digest of an image within Azure container registry used for export operations of the service instance to narrow the artifacts down. + // +kubebuilder:validation:Optional Digest *string `json:"digest,omitempty" tf:"digest,omitempty"` // An image within Azure container registry used for export operations of the service instance. + // +kubebuilder:validation:Optional ImageName *string `json:"imageName,omitempty" tf:"image_name,omitempty"` // An Azure container registry used for export operations of the service instance. + // +kubebuilder:validation:Optional LoginServer *string `json:"loginServer,omitempty" tf:"login_server,omitempty"` } diff --git a/apis/healthcareapis/v1beta1/zz_healthcaremedtechservice_types.go b/apis/healthcareapis/v1beta1/zz_healthcaremedtechservice_types.go index 3f62f0733..49b26fc28 100755 --- a/apis/healthcareapis/v1beta1/zz_healthcaremedtechservice_types.go +++ b/apis/healthcareapis/v1beta1/zz_healthcaremedtechservice_types.go @@ -34,9 +34,12 @@ type HealthcareMedtechServiceIdentityObservation struct { } type HealthcareMedtechServiceIdentityParameters struct { + + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Healthcare Med Tech Service. Possible values are SystemAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -88,6 +91,7 @@ type HealthcareMedtechServiceObservation struct { type HealthcareMedtechServiceParameters struct { // Specifies the Device Mappings of the Med Tech Service. + // +kubebuilder:validation:Optional DeviceMappingJSON *string `json:"deviceMappingJson,omitempty" tf:"device_mapping_json,omitempty"` // Specifies the Consumer Group of the Event Hub to connect to. @@ -130,12 +134,15 @@ type HealthcareMedtechServiceParameters struct { EventHubNamespaceNameSelector *v1.Selector `json:"eventhubNamespaceNameSelector,omitempty" tf:"-"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []HealthcareMedtechServiceIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // Specifies the Azure Region where the Healthcare Med Tech Service should be created. Changing this forces a new Healthcare Med Tech Service to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // A mapping of tags to assign to the Healthcare Med Tech Service. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the id of the Healthcare Workspace where the Healthcare Med Tech Service should exist. Changing this forces a new Healthcare Med Tech Service to be created. diff --git a/apis/healthcareapis/v1beta1/zz_healthcaremedtechservicefhirdestination_types.go b/apis/healthcareapis/v1beta1/zz_healthcaremedtechservicefhirdestination_types.go index 7cee72f06..c1ea8589d 100755 --- a/apis/healthcareapis/v1beta1/zz_healthcaremedtechservicefhirdestination_types.go +++ b/apis/healthcareapis/v1beta1/zz_healthcaremedtechservicefhirdestination_types.go @@ -49,6 +49,7 @@ type HealthcareMedtechServiceFHIRDestinationObservation struct { type HealthcareMedtechServiceFHIRDestinationParameters struct { // Specifies the destination Fhir mappings of the Med Tech Service Fhir Destination. + // +kubebuilder:validation:Optional DestinationFHIRMappingJSON *string `json:"destinationFhirMappingJson,omitempty" tf:"destination_fhir_mapping_json,omitempty"` // Specifies the destination fhir service id of the Med Tech Service Fhir Destination. @@ -66,9 +67,11 @@ type HealthcareMedtechServiceFHIRDestinationParameters struct { DestinationFHIRServiceIDSelector *v1.Selector `json:"destinationFhirServiceIdSelector,omitempty" tf:"-"` // Specifies the destination identity resolution type where the Healthcare Med Tech Service Fhir Destination should be created. Possible values are Create, Lookup. + // +kubebuilder:validation:Optional DestinationIdentityResolutionType *string `json:"destinationIdentityResolutionType,omitempty" tf:"destination_identity_resolution_type,omitempty"` // Specifies the Azure Region where the Healthcare Med Tech Service Fhir Destination should be created. Changing this forces a new Healthcare Med Tech Service Fhir Destination to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the name of the Healthcare Med Tech Service where the Healthcare Med Tech Service Fhir Destination should exist. Changing this forces a new Healthcare Med Tech Service Fhir Destination to be created. diff --git a/apis/healthcareapis/v1beta1/zz_healthcareservice_types.go b/apis/healthcareapis/v1beta1/zz_healthcareservice_types.go index 2495a1c4c..deb78c520 100755 --- a/apis/healthcareapis/v1beta1/zz_healthcareservice_types.go +++ b/apis/healthcareapis/v1beta1/zz_healthcareservice_types.go @@ -42,13 +42,16 @@ type AuthenticationConfigurationObservation struct { type AuthenticationConfigurationParameters struct { // The intended audience to receive authentication tokens for the service. The default value is https://azurehealthcareapis.com + // +kubebuilder:validation:Optional Audience *string `json:"audience,omitempty" tf:"audience,omitempty"` // The Azure Active Directory (tenant) that serves as the authentication authority to access the service. // Authority must be registered to Azure AD and in the following format: https://{Azure-AD-endpoint}/{tenant-id}. + // +kubebuilder:validation:Optional Authority *string `json:"authority,omitempty" tf:"authority,omitempty"` // (Boolean) Enables the 'SMART on FHIR' option for mobile and web implementations. + // +kubebuilder:validation:Optional SmartProxyEnabled *bool `json:"smartProxyEnabled,omitempty" tf:"smart_proxy_enabled,omitempty"` } @@ -91,18 +94,23 @@ type CorsConfigurationObservation struct { type CorsConfigurationParameters struct { // (Boolean) If credentials are allowed via CORS. + // +kubebuilder:validation:Optional AllowCredentials *bool `json:"allowCredentials,omitempty" tf:"allow_credentials,omitempty"` // A set of headers to be allowed via CORS. + // +kubebuilder:validation:Optional AllowedHeaders []*string `json:"allowedHeaders,omitempty" tf:"allowed_headers,omitempty"` // The methods to be allowed via CORS. Possible values are DELETE, GET, HEAD, MERGE, POST, OPTIONS, PATCH and PUT. + // +kubebuilder:validation:Optional AllowedMethods []*string `json:"allowedMethods,omitempty" tf:"allowed_methods,omitempty"` // A set of origins to be allowed via CORS. + // +kubebuilder:validation:Optional AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` // The max age to be allowed via CORS. + // +kubebuilder:validation:Optional MaxAgeInSeconds *float64 `json:"maxAgeInSeconds,omitempty" tf:"max_age_in_seconds,omitempty"` } @@ -175,27 +183,35 @@ type HealthcareServiceObservation struct { type HealthcareServiceParameters struct { // A set of Azure object IDs that are allowed to access the Service. + // +kubebuilder:validation:Optional AccessPolicyObjectIds []*string `json:"accessPolicyObjectIds,omitempty" tf:"access_policy_object_ids,omitempty"` // An authentication_configuration block as defined below. + // +kubebuilder:validation:Optional AuthenticationConfiguration []AuthenticationConfigurationParameters `json:"authenticationConfiguration,omitempty" tf:"authentication_configuration,omitempty"` // A cors_configuration block as defined below. + // +kubebuilder:validation:Optional CorsConfiguration []CorsConfigurationParameters `json:"corsConfiguration,omitempty" tf:"cors_configuration,omitempty"` // A versionless Key Vault Key ID for CMK encryption of the backing database. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional CosmosDBKeyVaultKeyVersionlessID *string `json:"cosmosdbKeyVaultKeyVersionlessId,omitempty" tf:"cosmosdb_key_vault_key_versionless_id,omitempty"` // The provisioned throughput for the backing database. Range of 400-100000. Defaults to 1000. + // +kubebuilder:validation:Optional CosmosDBThroughput *float64 `json:"cosmosdbThroughput,omitempty" tf:"cosmosdb_throughput,omitempty"` // The type of the service. Values at time of publication are: fhir, fhir-Stu3 and fhir-R4. Default value is fhir. + // +kubebuilder:validation:Optional Kind *string `json:"kind,omitempty" tf:"kind,omitempty"` // Specifies the supported Azure Region where the Service should be created. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Whether public network access is enabled or disabled for this service instance. Defaults to true. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // The name of the Resource Group in which to create the Service. Changing this forces a new resource to be created. @@ -212,6 +228,7 @@ type HealthcareServiceParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/healthcareapis/v1beta1/zz_healthcareworkspace_types.go b/apis/healthcareapis/v1beta1/zz_healthcareworkspace_types.go index cd1b6252c..19aa6a623 100755 --- a/apis/healthcareapis/v1beta1/zz_healthcareworkspace_types.go +++ b/apis/healthcareapis/v1beta1/zz_healthcareworkspace_types.go @@ -42,6 +42,7 @@ type HealthcareWorkspaceObservation struct { type HealthcareWorkspaceParameters struct { // Specifies the Azure Region where the Healthcare Workspace should be created. Changing this forces a new Healthcare Workspace to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the name of the Resource Group where the Healthcare Workspace should exist. Changing this forces a new Healthcare Workspace to be created. @@ -58,6 +59,7 @@ type HealthcareWorkspaceParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the Healthcare Workspace. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/insights/v1beta1/zz_applicationinsights_types.go b/apis/insights/v1beta1/zz_applicationinsights_types.go index 77b921e80..6f88508c6 100755 --- a/apis/insights/v1beta1/zz_applicationinsights_types.go +++ b/apis/insights/v1beta1/zz_applicationinsights_types.go @@ -106,30 +106,39 @@ type ApplicationInsightsObservation struct { type ApplicationInsightsParameters struct { // Specifies the type of Application Insights to create. Valid values are ios for iOS, java for Java web, MobileCenter for App Center, Node.JS for Node.js, other for General, phone for Windows Phone, store for Windows Store and web for ASP.NET. Please note these values are case sensitive; unmatched values are treated as ASP.NET by Azure. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ApplicationType *string `json:"applicationType,omitempty" tf:"application_type,omitempty"` // Specifies the Application Insights component daily data volume cap in GB. + // +kubebuilder:validation:Optional DailyDataCapInGb *float64 `json:"dailyDataCapInGb,omitempty" tf:"daily_data_cap_in_gb,omitempty"` // Specifies if a notification email will be send when the daily data volume cap is met. + // +kubebuilder:validation:Optional DailyDataCapNotificationsDisabled *bool `json:"dailyDataCapNotificationsDisabled,omitempty" tf:"daily_data_cap_notifications_disabled,omitempty"` // By default the real client IP is masked as 0.0.0.0 in the logs. Use this argument to disable masking and log the real client IP. Defaults to false. + // +kubebuilder:validation:Optional DisableIPMasking *bool `json:"disableIpMasking,omitempty" tf:"disable_ip_masking,omitempty"` // Should the Application Insights component force users to create their own storage account for profiling? Defaults to false. + // +kubebuilder:validation:Optional ForceCustomerStorageForProfiler *bool `json:"forceCustomerStorageForProfiler,omitempty" tf:"force_customer_storage_for_profiler,omitempty"` // Should the Application Insights component support ingestion over the Public Internet? Defaults to true. + // +kubebuilder:validation:Optional InternetIngestionEnabled *bool `json:"internetIngestionEnabled,omitempty" tf:"internet_ingestion_enabled,omitempty"` // Should the Application Insights component support querying over the Public Internet? Defaults to true. + // +kubebuilder:validation:Optional InternetQueryEnabled *bool `json:"internetQueryEnabled,omitempty" tf:"internet_query_enabled,omitempty"` // Disable Non-Azure AD based Auth. Defaults to false. + // +kubebuilder:validation:Optional LocalAuthenticationDisabled *bool `json:"localAuthenticationDisabled,omitempty" tf:"local_authentication_disabled,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the resource group in which to create the Application Insights component. Changing this forces a new resource to be created. @@ -146,12 +155,15 @@ type ApplicationInsightsParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Specifies the retention period in days. Possible values are 30, 60, 90, 120, 180, 270, 365, 550 or 730. Defaults to 90. + // +kubebuilder:validation:Optional RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` // Specifies the percentage of the data produced by the monitored application that is sampled for Application Insights telemetry. Defaults to 100. + // +kubebuilder:validation:Optional SamplingPercentage *float64 `json:"samplingPercentage,omitempty" tf:"sampling_percentage,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the id of a log analytics workspace resource. diff --git a/apis/insights/v1beta1/zz_applicationinsightsanalyticsitem_types.go b/apis/insights/v1beta1/zz_applicationinsightsanalyticsitem_types.go index 168d26362..7d1f32e0d 100755 --- a/apis/insights/v1beta1/zz_applicationinsightsanalyticsitem_types.go +++ b/apis/insights/v1beta1/zz_applicationinsightsanalyticsitem_types.go @@ -81,18 +81,23 @@ type ApplicationInsightsAnalyticsItemParameters struct { ApplicationInsightsIDSelector *v1.Selector `json:"applicationInsightsIdSelector,omitempty" tf:"-"` // The content for the Analytics Item, for example the query text if type is query. + // +kubebuilder:validation:Optional Content *string `json:"content,omitempty" tf:"content,omitempty"` // The alias to use for the function. Required when type is function. + // +kubebuilder:validation:Optional FunctionAlias *string `json:"functionAlias,omitempty" tf:"function_alias,omitempty"` // Specifies the name of the Application Insights Analytics Item. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The scope for the Analytics Item. Can be shared or user. Changing this forces a new resource to be created. Must be shared for functions. + // +kubebuilder:validation:Optional Scope *string `json:"scope,omitempty" tf:"scope,omitempty"` // The type of Analytics Item to create. Can be one of query, function, folder, recent. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/insights/v1beta1/zz_applicationinsightsapikey_types.go b/apis/insights/v1beta1/zz_applicationinsightsapikey_types.go index 2e8f6380b..e42a54992 100755 --- a/apis/insights/v1beta1/zz_applicationinsightsapikey_types.go +++ b/apis/insights/v1beta1/zz_applicationinsightsapikey_types.go @@ -60,12 +60,15 @@ type ApplicationInsightsAPIKeyParameters struct { ApplicationInsightsIDSelector *v1.Selector `json:"applicationInsightsIdSelector,omitempty" tf:"-"` // Specifies the name of the Application Insights API key. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the list of read permissions granted to the API key. Valid values are agentconfig, aggregate, api, draft, extendqueries, search. Please note these values are case sensitive. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ReadPermissions []*string `json:"readPermissions,omitempty" tf:"read_permissions,omitempty"` // Specifies the list of write permissions granted to the API key. Valid values are annotations. Please note these values are case sensitive. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional WritePermissions []*string `json:"writePermissions,omitempty" tf:"write_permissions,omitempty"` } diff --git a/apis/insights/v1beta1/zz_applicationinsightssmartdetectionrule_types.go b/apis/insights/v1beta1/zz_applicationinsightssmartdetectionrule_types.go index a5830b13b..0ac626779 100755 --- a/apis/insights/v1beta1/zz_applicationinsightssmartdetectionrule_types.go +++ b/apis/insights/v1beta1/zz_applicationinsightssmartdetectionrule_types.go @@ -52,6 +52,7 @@ type ApplicationInsightsSmartDetectionRuleObservation struct { type ApplicationInsightsSmartDetectionRuleParameters struct { // Specifies a list of additional recipients that will be sent emails on this Application Insights Smart Detection Rule. + // +kubebuilder:validation:Optional AdditionalEmailRecipients []*string `json:"additionalEmailRecipients,omitempty" tf:"additional_email_recipients,omitempty"` // The ID of the Application Insights component on which the Smart Detection Rule operates. Changing this forces a new resource to be created. @@ -69,12 +70,15 @@ type ApplicationInsightsSmartDetectionRuleParameters struct { ApplicationInsightsIDSelector *v1.Selector `json:"applicationInsightsIdSelector,omitempty" tf:"-"` // Is the Application Insights Smart Detection Rule enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Specifies the name of the Application Insights Smart Detection Rule. Valid values include Slow page load time, Slow server response time, Long dependency duration, Degradation in server response time, Degradation in dependency duration, Degradation in trace severity ratio, Abnormal rise in exception volume, Potential memory leak detected, Potential security issue detected and Abnormal rise in daily data volume, Long dependency duration, Degradation in server response time, Degradation in dependency duration, Degradation in trace severity ratio, Abnormal rise in exception volume, Potential memory leak detected, Potential security issue detected, Abnormal rise in daily data volume. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Do emails get sent to subscription owners? Defaults to true. + // +kubebuilder:validation:Optional SendEmailsToSubscriptionOwners *bool `json:"sendEmailsToSubscriptionOwners,omitempty" tf:"send_emails_to_subscription_owners,omitempty"` } diff --git a/apis/insights/v1beta1/zz_applicationinsightsstandardwebtest_types.go b/apis/insights/v1beta1/zz_applicationinsightsstandardwebtest_types.go index c33153514..23c3fb916 100755 --- a/apis/insights/v1beta1/zz_applicationinsightsstandardwebtest_types.go +++ b/apis/insights/v1beta1/zz_applicationinsightsstandardwebtest_types.go @@ -108,21 +108,27 @@ type ApplicationInsightsStandardWebTestParameters struct { ApplicationInsightsIDSelector *v1.Selector `json:"applicationInsightsIdSelector,omitempty" tf:"-"` // Purpose/user defined descriptive test for this WebTest. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // Should the WebTest be enabled? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Interval in seconds between test runs for this WebTest. Valid options are 300, 600 and 900. Defaults to 300. + // +kubebuilder:validation:Optional Frequency *float64 `json:"frequency,omitempty" tf:"frequency,omitempty"` // Specifies a list of where to physically run the tests from to give global coverage for accessibility of your application. + // +kubebuilder:validation:Optional GeoLocations []*string `json:"geoLocations,omitempty" tf:"geo_locations,omitempty"` // The Azure Region where the Application Insights Standard WebTest should exist. Changing this forces a new Application Insights Standard WebTest to be created. It needs to correlate with location of the parent resource (azurerm_application_insights) + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // A request block as defined below. + // +kubebuilder:validation:Optional Request []RequestParameters `json:"request,omitempty" tf:"request,omitempty"` // The name of the Resource Group where the Application Insights Standard WebTest should exist. Changing this forces a new Application Insights Standard WebTest to be created. @@ -139,15 +145,19 @@ type ApplicationInsightsStandardWebTestParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Should the retry on WebTest failure be enabled? + // +kubebuilder:validation:Optional RetryEnabled *bool `json:"retryEnabled,omitempty" tf:"retry_enabled,omitempty"` // A mapping of tags which should be assigned to the Application Insights Standard WebTest. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Seconds until this WebTest will timeout and fail. Default is 30. + // +kubebuilder:validation:Optional Timeout *float64 `json:"timeout,omitempty" tf:"timeout,omitempty"` // A validation_rules block as defined below. + // +kubebuilder:validation:Optional ValidationRules []ValidationRulesParameters `json:"validationRules,omitempty" tf:"validation_rules,omitempty"` } @@ -178,12 +188,15 @@ type ContentObservation struct { type ContentParameters struct { // A string value containing the content to match on. + // +kubebuilder:validation:Optional ContentMatch *string `json:"contentMatch,omitempty" tf:"content_match,omitempty"` // Ignore the casing in the content_match value. + // +kubebuilder:validation:Optional IgnoreCase *bool `json:"ignoreCase,omitempty" tf:"ignore_case,omitempty"` // If the content of content_match is found, pass the test. If set to false, the WebTest is failing if the content of content_match is found. + // +kubebuilder:validation:Optional PassIfTextFound *bool `json:"passIfTextFound,omitempty" tf:"pass_if_text_found,omitempty"` } @@ -208,9 +221,11 @@ type HeaderObservation struct { type HeaderParameters struct { // The name which should be used for this Application Insights Standard WebTest. Changing this forces a new Application Insights Standard WebTest to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The value which should be used for a header in the request. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -259,21 +274,27 @@ type RequestObservation struct { type RequestParameters struct { // The WebTest request body. + // +kubebuilder:validation:Optional Body *string `json:"body,omitempty" tf:"body,omitempty"` // Should the following of redirects be enabled? Defaults to true. + // +kubebuilder:validation:Optional FollowRedirectsEnabled *bool `json:"followRedirectsEnabled,omitempty" tf:"follow_redirects_enabled,omitempty"` // Which HTTP verb to use for the call. Options are 'GET', 'POST', 'PUT', 'PATCH', and 'DELETE'. + // +kubebuilder:validation:Optional HTTPVerb *string `json:"httpVerb,omitempty" tf:"http_verb,omitempty"` // One or more header blocks as defined above. + // +kubebuilder:validation:Optional Header []HeaderParameters `json:"header,omitempty" tf:"header,omitempty"` // Should the parsing of dependend requests be enabled? Defaults to true. + // +kubebuilder:validation:Optional ParseDependentRequestsEnabled *bool `json:"parseDependentRequestsEnabled,omitempty" tf:"parse_dependent_requests_enabled,omitempty"` // The WebTest request URL. + // +kubebuilder:validation:Optional URL *string `json:"url,omitempty" tf:"url,omitempty"` } @@ -310,15 +331,19 @@ type ValidationRulesObservation struct { type ValidationRulesParameters struct { // A content block as defined above. + // +kubebuilder:validation:Optional Content []ContentParameters `json:"content,omitempty" tf:"content,omitempty"` // The expected status code of the response. Default is '200', '0' means 'response code < 400' + // +kubebuilder:validation:Optional ExpectedStatusCode *float64 `json:"expectedStatusCode,omitempty" tf:"expected_status_code,omitempty"` // The number of days of SSL certificate validity remaining for the checked endpoint. If the certificate has a shorter remaining lifetime left, the test will fail. This number should be between 1 and 365. + // +kubebuilder:validation:Optional SSLCertRemainingLifetime *float64 `json:"sslCertRemainingLifetime,omitempty" tf:"ssl_cert_remaining_lifetime,omitempty"` // Should the SSL check be enabled? + // +kubebuilder:validation:Optional SSLCheckEnabled *bool `json:"sslCheckEnabled,omitempty" tf:"ssl_check_enabled,omitempty"` } diff --git a/apis/insights/v1beta1/zz_applicationinsightswebtest_types.go b/apis/insights/v1beta1/zz_applicationinsightswebtest_types.go index ee17db7d6..ed6bb5c06 100755 --- a/apis/insights/v1beta1/zz_applicationinsightswebtest_types.go +++ b/apis/insights/v1beta1/zz_applicationinsightswebtest_types.go @@ -112,27 +112,35 @@ type ApplicationInsightsWebTestParameters struct { ApplicationInsightsIDSelector *v1.Selector `json:"applicationInsightsIdSelector,omitempty" tf:"-"` // An XML configuration specification for a WebTest (see here for more information). + // +kubebuilder:validation:Optional Configuration *string `json:"configuration,omitempty" tf:"configuration,omitempty"` // Purpose/user defined descriptive test for this WebTest. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // Is the test actively being monitored. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Interval in seconds between test runs for this WebTest. Valid options are 300, 600 and 900. Defaults to 300. + // +kubebuilder:validation:Optional Frequency *float64 `json:"frequency,omitempty" tf:"frequency,omitempty"` // A list of where to physically run the tests from to give global coverage for accessibility of your application. + // +kubebuilder:validation:Optional GeoLocations []*string `json:"geoLocations,omitempty" tf:"geo_locations,omitempty"` // The kind of web test that this web test watches. Choices are ping and multistep. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Kind *string `json:"kind,omitempty" tf:"kind,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. It needs to correlate with location of parent resource (azurerm_application_insights). + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the name of the Application Insights WebTest. 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 to create the Application Insights WebTest. Changing this forces a new resource @@ -149,12 +157,15 @@ type ApplicationInsightsWebTestParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Allow for retries should this WebTest fail. + // +kubebuilder:validation:Optional RetryEnabled *bool `json:"retryEnabled,omitempty" tf:"retry_enabled,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Seconds until this WebTest will timeout and fail. Default is 30. + // +kubebuilder:validation:Optional Timeout *float64 `json:"timeout,omitempty" tf:"timeout,omitempty"` } diff --git a/apis/insights/v1beta1/zz_applicationinsightsworkbook_types.go b/apis/insights/v1beta1/zz_applicationinsightsworkbook_types.go index cde4e343d..cff636c86 100755 --- a/apis/insights/v1beta1/zz_applicationinsightsworkbook_types.go +++ b/apis/insights/v1beta1/zz_applicationinsightsworkbook_types.go @@ -88,24 +88,31 @@ type ApplicationInsightsWorkbookObservation struct { type ApplicationInsightsWorkbookParameters struct { // Workbook category, as defined by the user at creation time. There may be additional category types beyond the following: workbook, sentinel. Defaults to workbook. + // +kubebuilder:validation:Optional Category *string `json:"category,omitempty" tf:"category,omitempty"` // Configuration of this particular workbook. Configuration data is a string containing valid JSON. + // +kubebuilder:validation:Optional DataJSON *string `json:"dataJson,omitempty" tf:"data_json,omitempty"` // Specifies the description of the workbook. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // Specifies the user-defined name (display name) of the workbook. + // +kubebuilder:validation:Optional DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` // An identity block as defined below. Changing this forces a new Workbook to be created. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // Specifies the Azure Region where the Workbook should exist. Changing this forces a new Workbook to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the name of this Workbook as a UUID/GUID. It should not contain any uppercase letters. Changing this forces a new Workbook to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the name of the Resource Group where the Workbook should exist. Changing this forces a new Workbook to be created. @@ -122,12 +129,15 @@ type ApplicationInsightsWorkbookParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Resource ID for a source resource. It should not contain any uppercase letters. Defaults to azure monitor. + // +kubebuilder:validation:Optional SourceID *string `json:"sourceId,omitempty" tf:"source_id,omitempty"` // Specifies the Resource Manager ID of the Storage Container when bring your own storage is used. Changing this forces a new Workbook to be created. + // +kubebuilder:validation:Optional StorageContainerID *string `json:"storageContainerId,omitempty" tf:"storage_container_id,omitempty"` // A mapping of tags which should be assigned to the Workbook. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -158,9 +168,11 @@ type IdentityObservation struct { type IdentityParameters struct { // The list of User Assigned Managed Identity IDs assigned to this Workbook. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // The type of Managed Service Identity that is configured on this Workbook. Possible values are UserAssigned, SystemAssigned and SystemAssigned, UserAssigned. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/insights/v1beta1/zz_applicationinsightsworkbooktemplate_types.go b/apis/insights/v1beta1/zz_applicationinsightsworkbooktemplate_types.go index b534ca0b3..3b7739e0e 100755 --- a/apis/insights/v1beta1/zz_applicationinsightsworkbooktemplate_types.go +++ b/apis/insights/v1beta1/zz_applicationinsightsworkbooktemplate_types.go @@ -76,21 +76,27 @@ type ApplicationInsightsWorkbookTemplateObservation struct { type ApplicationInsightsWorkbookTemplateParameters struct { // Information about the author of the workbook template. + // +kubebuilder:validation:Optional Author *string `json:"author,omitempty" tf:"author,omitempty"` // A galleries block as defined below. + // +kubebuilder:validation:Optional Galleries []GalleriesParameters `json:"galleries,omitempty" tf:"galleries,omitempty"` // Key value pairs of localized gallery. Each key is the locale code of languages supported by the Azure portal. + // +kubebuilder:validation:Optional Localized *string `json:"localized,omitempty" tf:"localized,omitempty"` // Specifies the Azure Region where the Application Insights Workbook Template should exist. Changing this forces a new Application Insights Workbook Template to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the name which should be used for this Application Insights Workbook Template. Changing this forces a new Application Insights Workbook Template to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Priority of the template. Determines which template to open when a workbook gallery is opened in viewer mode. Defaults to 0. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // Specifies the name of the Resource Group where the Application Insights Workbook Template should exist. Changing this forces a new Application Insights Workbook Template to be created. @@ -107,9 +113,11 @@ type ApplicationInsightsWorkbookTemplateParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the Application Insights Workbook Template. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Valid JSON object containing workbook template payload. + // +kubebuilder:validation:Optional TemplateData *string `json:"templateData,omitempty" tf:"template_data,omitempty"` } @@ -152,18 +160,23 @@ type GalleriesObservation struct { type GalleriesParameters struct { // Category for the gallery. + // +kubebuilder:validation:Optional Category *string `json:"category,omitempty" tf:"category,omitempty"` // Name of the workbook template in the gallery. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Order of the template within the gallery. Defaults to 0. + // +kubebuilder:validation:Optional Order *float64 `json:"order,omitempty" tf:"order,omitempty"` // Azure resource type supported by the gallery. Defaults to Azure Monitor. + // +kubebuilder:validation:Optional ResourceType *string `json:"resourceType,omitempty" tf:"resource_type,omitempty"` // Type of workbook supported by the workbook template. Defaults to workbook. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/insights/v1beta1/zz_monitoractiongroup_types.go b/apis/insights/v1beta1/zz_monitoractiongroup_types.go index 3eb2ce8e8..5052ee9f2 100755 --- a/apis/insights/v1beta1/zz_monitoractiongroup_types.go +++ b/apis/insights/v1beta1/zz_monitoractiongroup_types.go @@ -40,12 +40,15 @@ type AADAuthObservation struct { type AADAuthParameters struct { // The identifier URI for AAD auth. + // +kubebuilder:validation:Optional IdentifierURI *string `json:"identifierUri,omitempty" tf:"identifier_uri,omitempty"` // The webhook application object Id for AAD auth. + // +kubebuilder:validation:Optional ObjectID *string `json:"objectId,omitempty" tf:"object_id,omitempty"` // The tenant id for AAD auth. + // +kubebuilder:validation:Optional TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` } @@ -76,12 +79,15 @@ type ArmRoleReceiverObservation struct { type ArmRoleReceiverParameters struct { // The name of the ARM role receiver. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The arm role id. + // +kubebuilder:validation:Optional RoleID *string `json:"roleId,omitempty" tf:"role_id,omitempty"` // Enables or disables the common alert schema. + // +kubebuilder:validation:Optional UseCommonAlertSchema *bool `json:"useCommonAlertSchema,omitempty" tf:"use_common_alert_schema,omitempty"` } @@ -136,24 +142,31 @@ type AutomationRunBookReceiverObservation struct { type AutomationRunBookReceiverParameters struct { // The automation account ID which holds this runbook and authenticates to Azure resources. + // +kubebuilder:validation:Optional AutomationAccountID *string `json:"automationAccountId,omitempty" tf:"automation_account_id,omitempty"` // Indicates whether this instance is global runbook. + // +kubebuilder:validation:Optional IsGlobalRunBook *bool `json:"isGlobalRunbook,omitempty" tf:"is_global_runbook,omitempty"` // The name of the automation runbook receiver. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The name for this runbook. + // +kubebuilder:validation:Optional RunBookName *string `json:"runbookName,omitempty" tf:"runbook_name,omitempty"` // The URI where webhooks should be sent. + // +kubebuilder:validation:Optional ServiceURI *string `json:"serviceUri,omitempty" tf:"service_uri,omitempty"` // Enables or disables the common alert schema. + // +kubebuilder:validation:Optional UseCommonAlertSchema *bool `json:"useCommonAlertSchema,omitempty" tf:"use_common_alert_schema,omitempty"` // The resource id for webhook linked to this runbook. + // +kubebuilder:validation:Optional WebhookResourceID *string `json:"webhookResourceId,omitempty" tf:"webhook_resource_id,omitempty"` } @@ -178,9 +191,11 @@ type AzureAppPushReceiverObservation struct { type AzureAppPushReceiverParameters struct { // The email address of the user signed into the mobile app who will receive push notifications from this receiver. + // +kubebuilder:validation:Optional EmailAddress *string `json:"emailAddress,omitempty" tf:"email_address,omitempty"` // The name of the Azure app push receiver. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -223,18 +238,23 @@ type AzureFunctionReceiverObservation struct { type AzureFunctionReceiverParameters struct { // The Azure resource ID of the function app. + // +kubebuilder:validation:Optional FunctionAppResourceID *string `json:"functionAppResourceId,omitempty" tf:"function_app_resource_id,omitempty"` // The function name in the function app. + // +kubebuilder:validation:Optional FunctionName *string `json:"functionName,omitempty" tf:"function_name,omitempty"` // The HTTP trigger url where HTTP request sent to. + // +kubebuilder:validation:Optional HTTPTriggerURL *string `json:"httpTriggerUrl,omitempty" tf:"http_trigger_url,omitempty"` // The name of the Azure Function receiver. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Enables or disables the common alert schema. + // +kubebuilder:validation:Optional UseCommonAlertSchema *bool `json:"useCommonAlertSchema,omitempty" tf:"use_common_alert_schema,omitempty"` } @@ -265,12 +285,15 @@ type EmailReceiverObservation struct { type EmailReceiverParameters struct { // The email address of this receiver. + // +kubebuilder:validation:Optional EmailAddress *string `json:"emailAddress,omitempty" tf:"email_address,omitempty"` // The name of the email receiver. Names must be unique (case-insensitive) across all receivers within an action group. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Enables or disables the common alert schema. + // +kubebuilder:validation:Optional UseCommonAlertSchema *bool `json:"useCommonAlertSchema,omitempty" tf:"use_common_alert_schema,omitempty"` } @@ -325,24 +348,31 @@ type EventHubReceiverObservation struct { type EventHubReceiverParameters struct { // The resource ID of the respective Event Hub. + // +kubebuilder:validation:Optional EventHubID *string `json:"eventHubId,omitempty" tf:"event_hub_id,omitempty"` // The name of the specific Event Hub queue. + // +kubebuilder:validation:Optional EventHubName *string `json:"eventHubName,omitempty" tf:"event_hub_name,omitempty"` // The namespace name of the Event Hub. + // +kubebuilder:validation:Optional EventHubNamespace *string `json:"eventHubNamespace,omitempty" tf:"event_hub_namespace,omitempty"` // The name of the EventHub Receiver, must be unique within action group. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID for the subscription containing this Event Hub. Default to the subscription ID of the Action Group. + // +kubebuilder:validation:Optional SubscriptionID *string `json:"subscriptionId,omitempty" tf:"subscription_id,omitempty"` // The Tenant ID for the subscription containing this Event Hub. + // +kubebuilder:validation:Optional TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` // Indicates whether to use common alert schema. + // +kubebuilder:validation:Optional UseCommonAlertSchema *bool `json:"useCommonAlertSchema,omitempty" tf:"use_common_alert_schema,omitempty"` } @@ -385,18 +415,23 @@ type ItsmReceiverObservation struct { type ItsmReceiverParameters struct { // The unique connection identifier of the ITSM connection. + // +kubebuilder:validation:Optional ConnectionID *string `json:"connectionId,omitempty" tf:"connection_id,omitempty"` // The name of the ITSM receiver. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The region of the workspace. + // +kubebuilder:validation:Optional Region *string `json:"region,omitempty" tf:"region,omitempty"` // A JSON blob for the configurations of the ITSM action. CreateMultipleWorkItems option will be part of this blob as well. + // +kubebuilder:validation:Optional TicketConfiguration *string `json:"ticketConfiguration,omitempty" tf:"ticket_configuration,omitempty"` // The Azure Log Analytics workspace ID where this connection is defined. Format is |, for example 00000000-0000-0000-0000-000000000000|00000000-0000-0000-0000-000000000000. + // +kubebuilder:validation:Optional WorkspaceID *string `json:"workspaceId,omitempty" tf:"workspace_id,omitempty"` } @@ -433,15 +468,19 @@ type LogicAppReceiverObservation struct { type LogicAppReceiverParameters struct { // The callback url where HTTP request sent to. + // +kubebuilder:validation:Optional CallbackURL *string `json:"callbackUrl,omitempty" tf:"callback_url,omitempty"` // The name of the logic app receiver. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Azure resource ID of the logic app. + // +kubebuilder:validation:Optional ResourceID *string `json:"resourceId,omitempty" tf:"resource_id,omitempty"` // Enables or disables the common alert schema. + // +kubebuilder:validation:Optional UseCommonAlertSchema *bool `json:"useCommonAlertSchema,omitempty" tf:"use_common_alert_schema,omitempty"` } @@ -550,33 +589,43 @@ type MonitorActionGroupObservation struct { type MonitorActionGroupParameters struct { // One or more arm_role_receiver blocks as defined below. + // +kubebuilder:validation:Optional ArmRoleReceiver []ArmRoleReceiverParameters `json:"armRoleReceiver,omitempty" tf:"arm_role_receiver,omitempty"` // One or more automation_runbook_receiver blocks as defined below. + // +kubebuilder:validation:Optional AutomationRunBookReceiver []AutomationRunBookReceiverParameters `json:"automationRunbookReceiver,omitempty" tf:"automation_runbook_receiver,omitempty"` // One or more azure_app_push_receiver blocks as defined below. + // +kubebuilder:validation:Optional AzureAppPushReceiver []AzureAppPushReceiverParameters `json:"azureAppPushReceiver,omitempty" tf:"azure_app_push_receiver,omitempty"` // One or more azure_function_receiver blocks as defined below. + // +kubebuilder:validation:Optional AzureFunctionReceiver []AzureFunctionReceiverParameters `json:"azureFunctionReceiver,omitempty" tf:"azure_function_receiver,omitempty"` // One or more email_receiver blocks as defined below. + // +kubebuilder:validation:Optional EmailReceiver []EmailReceiverParameters `json:"emailReceiver,omitempty" tf:"email_receiver,omitempty"` // Whether this action group is enabled. If an action group is not enabled, then none of its receivers will receive communications. Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // One or more event_hub_receiver blocks as defined below. + // +kubebuilder:validation:Optional EventHubReceiver []EventHubReceiverParameters `json:"eventHubReceiver,omitempty" tf:"event_hub_receiver,omitempty"` // One or more itsm_receiver blocks as defined below. + // +kubebuilder:validation:Optional ItsmReceiver []ItsmReceiverParameters `json:"itsmReceiver,omitempty" tf:"itsm_receiver,omitempty"` // The Azure Region where the Action Group should exist. Changing this forces a new Action Group to be created. Defaults to global. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // One or more logic_app_receiver blocks as defined below. + // +kubebuilder:validation:Optional LogicAppReceiver []LogicAppReceiverParameters `json:"logicAppReceiver,omitempty" tf:"logic_app_receiver,omitempty"` // The name of the resource group in which to create the Action Group instance. Changing this forces a new resource to be created. @@ -593,18 +642,23 @@ type MonitorActionGroupParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // One or more sms_receiver blocks as defined below. + // +kubebuilder:validation:Optional SMSReceiver []SMSReceiverParameters `json:"smsReceiver,omitempty" tf:"sms_receiver,omitempty"` // The short name of the action group. This will be used in SMS messages. + // +kubebuilder:validation:Optional ShortName *string `json:"shortName,omitempty" tf:"short_name,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // One or more voice_receiver blocks as defined below. + // +kubebuilder:validation:Optional VoiceReceiver []VoiceReceiverParameters `json:"voiceReceiver,omitempty" tf:"voice_receiver,omitempty"` // One or more webhook_receiver blocks as defined below. + // +kubebuilder:validation:Optional WebhookReceiver []WebhookReceiverParameters `json:"webhookReceiver,omitempty" tf:"webhook_receiver,omitempty"` } @@ -635,12 +689,15 @@ type SMSReceiverObservation struct { type SMSReceiverParameters struct { // The country code of the SMS receiver. + // +kubebuilder:validation:Optional CountryCode *string `json:"countryCode,omitempty" tf:"country_code,omitempty"` // The name of the SMS receiver. Names must be unique (case-insensitive) across all receivers within an action group. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The phone number of the SMS receiver. + // +kubebuilder:validation:Optional PhoneNumber *string `json:"phoneNumber,omitempty" tf:"phone_number,omitempty"` } @@ -671,12 +728,15 @@ type VoiceReceiverObservation struct { type VoiceReceiverParameters struct { // The country code of the voice receiver. + // +kubebuilder:validation:Optional CountryCode *string `json:"countryCode,omitempty" tf:"country_code,omitempty"` // The name of the voice receiver. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The phone number of the voice receiver. + // +kubebuilder:validation:Optional PhoneNumber *string `json:"phoneNumber,omitempty" tf:"phone_number,omitempty"` } @@ -713,15 +773,19 @@ type WebhookReceiverObservation struct { type WebhookReceiverParameters struct { // The aad_auth block as defined below + // +kubebuilder:validation:Optional AADAuth []AADAuthParameters `json:"aadAuth,omitempty" tf:"aad_auth,omitempty"` // The name of the webhook receiver. Names must be unique (case-insensitive) across all receivers within an action group. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The URI where webhooks should be sent. + // +kubebuilder:validation:Optional ServiceURI *string `json:"serviceUri,omitempty" tf:"service_uri,omitempty"` // Enables or disables the common alert schema. + // +kubebuilder:validation:Optional UseCommonAlertSchema *bool `json:"useCommonAlertSchema,omitempty" tf:"use_common_alert_schema,omitempty"` } diff --git a/apis/insights/v1beta1/zz_monitoractivitylogalert_types.go b/apis/insights/v1beta1/zz_monitoractivitylogalert_types.go index 88ec56a51..cf6e020dc 100755 --- a/apis/insights/v1beta1/zz_monitoractivitylogalert_types.go +++ b/apis/insights/v1beta1/zz_monitoractivitylogalert_types.go @@ -45,6 +45,7 @@ type ActionParameters struct { ActionGroupIDSelector *v1.Selector `json:"actionGroupIdSelector,omitempty" tf:"-"` // The map of custom string properties to include with the post operation. These data are appended to the webhook payload. + // +kubebuilder:validation:Optional WebhookProperties map[string]*string `json:"webhookProperties,omitempty" tf:"webhook_properties,omitempty"` } @@ -144,30 +145,39 @@ type CriteriaObservation struct { type CriteriaParameters struct { // The email address or Azure Active Directory identifier of the user who performed the operation. + // +kubebuilder:validation:Optional Caller *string `json:"caller,omitempty" tf:"caller,omitempty"` // The category of the operation. Possible values are Administrative, Autoscale, Policy, Recommendation, ResourceHealth, Security and ServiceHealth. + // +kubebuilder:validation:Optional Category *string `json:"category,omitempty" tf:"category,omitempty"` // The severity level of the event. Possible values are Verbose, Informational, Warning, Error, and Critical. + // +kubebuilder:validation:Optional Level *string `json:"level,omitempty" tf:"level,omitempty"` // The Resource Manager Role-Based Access Control operation name. Supported operation should be of the form: //. + // +kubebuilder:validation:Optional OperationName *string `json:"operationName,omitempty" tf:"operation_name,omitempty"` // The recommendation category of the event. Possible values are Cost, Reliability, OperationalExcellence and Performance. It is only allowed when category is Recommendation. + // +kubebuilder:validation:Optional RecommendationCategory *string `json:"recommendationCategory,omitempty" tf:"recommendation_category,omitempty"` // The recommendation impact of the event. Possible values are High, Medium and Low. It is only allowed when category is Recommendation. + // +kubebuilder:validation:Optional RecommendationImpact *string `json:"recommendationImpact,omitempty" tf:"recommendation_impact,omitempty"` // The recommendation type of the event. It is only allowed when category is Recommendation. + // +kubebuilder:validation:Optional RecommendationType *string `json:"recommendationType,omitempty" tf:"recommendation_type,omitempty"` // The name of resource group monitored by the activity log alert. + // +kubebuilder:validation:Optional ResourceGroup *string `json:"resourceGroup,omitempty" tf:"resource_group,omitempty"` // A block to define fine grain resource health settings. + // +kubebuilder:validation:Optional ResourceHealth []ResourceHealthParameters `json:"resourceHealth,omitempty" tf:"resource_health,omitempty"` // The specific resource monitored by the activity log alert. It should be within one of the scopes. @@ -185,18 +195,23 @@ type CriteriaParameters struct { ResourceIDSelector *v1.Selector `json:"resourceIdSelector,omitempty" tf:"-"` // The name of the resource provider monitored by the activity log alert. + // +kubebuilder:validation:Optional ResourceProvider *string `json:"resourceProvider,omitempty" tf:"resource_provider,omitempty"` // The resource type monitored by the activity log alert. + // +kubebuilder:validation:Optional ResourceType *string `json:"resourceType,omitempty" tf:"resource_type,omitempty"` // A block to define fine grain service health settings. + // +kubebuilder:validation:Optional ServiceHealth []ServiceHealthParameters `json:"serviceHealth,omitempty" tf:"service_health,omitempty"` // The status of the event. For example, Started, Failed, or Succeeded. + // +kubebuilder:validation:Optional Status *string `json:"status,omitempty" tf:"status,omitempty"` // The sub status of the event. + // +kubebuilder:validation:Optional SubStatus *string `json:"subStatus,omitempty" tf:"sub_status,omitempty"` } @@ -254,18 +269,23 @@ type MonitorActivityLogAlertObservation struct { type MonitorActivityLogAlertParameters struct { // One or more action blocks as defined below. + // +kubebuilder:validation:Optional Action []ActionParameters `json:"action,omitempty" tf:"action,omitempty"` // A criteria block as defined below. + // +kubebuilder:validation:Optional Criteria []CriteriaParameters `json:"criteria,omitempty" tf:"criteria,omitempty"` // The description of this activity log alert. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // Should this Activity Log Alert be enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The name of the activity log alert. 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 to create the activity log alert instance. Changing this forces a new resource to be created. @@ -296,6 +316,7 @@ type MonitorActivityLogAlertParameters struct { ScopesSelector *v1.Selector `json:"scopesSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -326,12 +347,15 @@ type ResourceHealthObservation struct { type ResourceHealthParameters struct { // The current resource health statuses that will log an alert. Possible values are Available, Degraded, Unavailable and Unknown. + // +kubebuilder:validation:Optional Current []*string `json:"current,omitempty" tf:"current,omitempty"` // The previous resource health statuses that will log an alert. Possible values are Available, Degraded, Unavailable and Unknown. + // +kubebuilder:validation:Optional Previous []*string `json:"previous,omitempty" tf:"previous,omitempty"` // The reason that will log an alert. Possible values are PlatformInitiated (such as a problem with the resource in an affected region of an Azure incident), UserInitiated (such as a shutdown request of a VM) and Unknown. + // +kubebuilder:validation:Optional Reason []*string `json:"reason,omitempty" tf:"reason,omitempty"` } @@ -362,12 +386,15 @@ type ServiceHealthObservation struct { type ServiceHealthParameters struct { // Events this alert will monitor Possible values are Incident, Maintenance, Informational, ActionRequired and Security. + // +kubebuilder:validation:Optional Events []*string `json:"events,omitempty" tf:"events,omitempty"` // Locations this alert will monitor. For example, West Europe. + // +kubebuilder:validation:Optional Locations []*string `json:"locations,omitempty" tf:"locations,omitempty"` // Services this alert will monitor. For example, Activity Logs & Alerts, Action Groups. Defaults to all Services. + // +kubebuilder:validation:Optional Services []*string `json:"services,omitempty" tf:"services,omitempty"` } diff --git a/apis/insights/v1beta1/zz_monitorautoscalesetting_types.go b/apis/insights/v1beta1/zz_monitorautoscalesetting_types.go index 488163595..a9bfcd5eb 100755 --- a/apis/insights/v1beta1/zz_monitorautoscalesetting_types.go +++ b/apis/insights/v1beta1/zz_monitorautoscalesetting_types.go @@ -40,12 +40,15 @@ type CapacityObservation struct { type CapacityParameters struct { // The number of instances that are available for scaling if metrics are not available for evaluation. The default is only used if the current instance count is lower than the default. Valid values are between 0 and 1000. + // +kubebuilder:validation:Optional Default *float64 `json:"default,omitempty" tf:"default,omitempty"` // The maximum number of instances for this resource. Valid values are between 0 and 1000. + // +kubebuilder:validation:Optional Maximum *float64 `json:"maximum,omitempty" tf:"maximum,omitempty"` // The minimum number of instances for this resource. Valid values are between 0 and 1000. + // +kubebuilder:validation:Optional Minimum *float64 `json:"minimum,omitempty" tf:"minimum,omitempty"` } @@ -76,12 +79,15 @@ type DimensionsObservation struct { type DimensionsParameters struct { // Specifies the name of the profile. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the operator used to compare the metric data and threshold. Possible values are: Equals, NotEquals, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of dimension values. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -112,12 +118,15 @@ type EmailObservation struct { type EmailParameters struct { // Specifies a list of custom email addresses to which the email notifications will be sent. + // +kubebuilder:validation:Optional CustomEmails []*string `json:"customEmails,omitempty" tf:"custom_emails,omitempty"` // Should email notifications be sent to the subscription administrator? Defaults to false. + // +kubebuilder:validation:Optional SendToSubscriptionAdministrator *bool `json:"sendToSubscriptionAdministrator,omitempty" tf:"send_to_subscription_administrator,omitempty"` // Should email notifications be sent to the subscription co-administrator? Defaults to false. + // +kubebuilder:validation:Optional SendToSubscriptionCoAdministrator *bool `json:"sendToSubscriptionCoAdministrator,omitempty" tf:"send_to_subscription_co_administrator,omitempty"` } @@ -148,12 +157,15 @@ type FixedDateObservation struct { type FixedDateParameters struct { // Specifies the end date for the profile, formatted as an RFC3339 date string. + // +kubebuilder:validation:Optional End *string `json:"end,omitempty" tf:"end,omitempty"` // Specifies the start date for the profile, formatted as an RFC3339 date string. + // +kubebuilder:validation:Optional Start *string `json:"start,omitempty" tf:"start,omitempty"` // The Time Zone used for the hours field. A list of possible values can be found here. Defaults to UTC. + // +kubebuilder:validation:Optional Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` } @@ -229,15 +241,19 @@ type MetricTriggerObservation struct { type MetricTriggerParameters struct { // One or more dimensions block as defined below. + // +kubebuilder:validation:Optional Dimensions []DimensionsParameters `json:"dimensions,omitempty" tf:"dimensions,omitempty"` // Whether to enable metric divide by instance count. + // +kubebuilder:validation:Optional DivideByInstanceCount *bool `json:"divideByInstanceCount,omitempty" tf:"divide_by_instance_count,omitempty"` // The name of the metric that defines what the rule monitors, such as Percentage CPU for Virtual Machine Scale Sets and CpuPercentage for App Service Plan. + // +kubebuilder:validation:Optional MetricName *string `json:"metricName,omitempty" tf:"metric_name,omitempty"` // The namespace of the metric that defines what the rule monitors, such as microsoft.compute/virtualmachinescalesets for Virtual Machine Scale Sets. + // +kubebuilder:validation:Optional MetricNamespace *string `json:"metricNamespace,omitempty" tf:"metric_namespace,omitempty"` // The ID of the Resource which the Rule monitors. @@ -255,21 +271,27 @@ type MetricTriggerParameters struct { MetricResourceIDSelector *v1.Selector `json:"metricResourceIdSelector,omitempty" tf:"-"` // Specifies the operator used to compare the metric data and threshold. Possible values are: Equals, NotEquals, GreaterThan, GreaterThanOrEqual, LessThan, LessThanOrEqual. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Specifies how the metrics from multiple instances are combined. Possible values are Average, Max, Min and Sum. + // +kubebuilder:validation:Optional Statistic *string `json:"statistic,omitempty" tf:"statistic,omitempty"` // Specifies the threshold of the metric that triggers the scale action. + // +kubebuilder:validation:Optional Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"` // Specifies how the data that's collected should be combined over time. Possible values include Average, Count, Maximum, Minimum, Last and Total. + // +kubebuilder:validation:Optional TimeAggregation *string `json:"timeAggregation,omitempty" tf:"time_aggregation,omitempty"` // Specifies the granularity of metrics that the rule monitors, which must be one of the pre-defined values returned from the metric definitions for the metric. This value must be between 1 minute and 12 hours an be formatted as an ISO 8601 string. + // +kubebuilder:validation:Optional TimeGrain *string `json:"timeGrain,omitempty" tf:"time_grain,omitempty"` // Specifies the time range for which data is collected, which must be greater than the delay in metric collection (which varies from resource to resource). This value must be between 5 minutes and 12 hours and be formatted as an ISO 8601 string. + // +kubebuilder:validation:Optional TimeWindow *string `json:"timeWindow,omitempty" tf:"time_window,omitempty"` } @@ -327,18 +349,23 @@ type MonitorAutoscaleSettingObservation struct { type MonitorAutoscaleSettingParameters struct { // Specifies whether automatic scaling is enabled for the target resource. Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Specifies the supported Azure location where the AutoScale Setting 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 AutoScale Setting. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies a notification block as defined below. + // +kubebuilder:validation:Optional Notification []NotificationParameters `json:"notification,omitempty" tf:"notification,omitempty"` // Specifies one or more (up to 20) profile blocks as defined below. + // +kubebuilder:validation:Optional Profile []ProfileParameters `json:"profile,omitempty" tf:"profile,omitempty"` // The name of the Resource Group in the AutoScale Setting should be created. Changing this forces a new resource to be created. @@ -355,6 +382,7 @@ type MonitorAutoscaleSettingParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the resource ID of the resource that the autoscale setting should be added to. Changing this forces a new resource to be created. @@ -393,9 +421,11 @@ type NotificationObservation struct { type NotificationParameters struct { // A email block as defined below. + // +kubebuilder:validation:Optional Email []EmailParameters `json:"email,omitempty" tf:"email,omitempty"` // One or more webhook blocks as defined below. + // +kubebuilder:validation:Optional Webhook []WebhookParameters `json:"webhook,omitempty" tf:"webhook,omitempty"` } @@ -438,18 +468,23 @@ type ProfileObservation struct { type ProfileParameters struct { // A capacity block as defined below. + // +kubebuilder:validation:Optional Capacity []CapacityParameters `json:"capacity,omitempty" tf:"capacity,omitempty"` // A fixed_date block as defined below. This cannot be specified if a recurrence block is specified. + // +kubebuilder:validation:Optional FixedDate []FixedDateParameters `json:"fixedDate,omitempty" tf:"fixed_date,omitempty"` // Specifies the name of the profile. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A recurrence block as defined below. This cannot be specified if a fixed_date block is specified. + // +kubebuilder:validation:Optional Recurrence []RecurrenceParameters `json:"recurrence,omitempty" tf:"recurrence,omitempty"` // One or more (up to 10) rule blocks as defined below. + // +kubebuilder:validation:Optional Rule []RuleParameters `json:"rule,omitempty" tf:"rule,omitempty"` } @@ -486,15 +521,19 @@ type RecurrenceObservation struct { type RecurrenceParameters struct { // A list of days that this profile takes effect on. Possible values include Monday, Tuesday, Wednesday, Thursday, Friday, Saturday and Sunday. + // +kubebuilder:validation:Optional Days []*string `json:"days,omitempty" tf:"days,omitempty"` // A list containing a single item, which specifies the Hour interval at which this recurrence should be triggered (in 24-hour time). Possible values are from 0 to 23. + // +kubebuilder:validation:Optional Hours []*float64 `json:"hours,omitempty" tf:"hours,omitempty"` // A list containing a single item which specifies the Minute interval at which this recurrence should be triggered. + // +kubebuilder:validation:Optional Minutes []*float64 `json:"minutes,omitempty" tf:"minutes,omitempty"` // The Time Zone used for the hours field. A list of possible values can be found here. Defaults to UTC. + // +kubebuilder:validation:Optional Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` } @@ -519,9 +558,11 @@ type RuleObservation struct { type RuleParameters struct { // A metric_trigger block as defined below. + // +kubebuilder:validation:Optional MetricTrigger []MetricTriggerParameters `json:"metricTrigger,omitempty" tf:"metric_trigger,omitempty"` // A scale_action block as defined below. + // +kubebuilder:validation:Optional ScaleAction []ScaleActionParameters `json:"scaleAction,omitempty" tf:"scale_action,omitempty"` } @@ -558,15 +599,19 @@ type ScaleActionObservation struct { type ScaleActionParameters struct { // The amount of time to wait since the last scaling action before this action occurs. Must be between 1 minute and 1 week and formatted as a ISO 8601 string. + // +kubebuilder:validation:Optional Cooldown *string `json:"cooldown,omitempty" tf:"cooldown,omitempty"` // The scale direction. Possible values are Increase and Decrease. + // +kubebuilder:validation:Optional Direction *string `json:"direction,omitempty" tf:"direction,omitempty"` // The type of action that should occur. Possible values are ChangeCount, ExactCount, PercentChangeCount and ServiceAllowedNextValue. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // The number of instances involved in the scaling action. + // +kubebuilder:validation:Optional Value *float64 `json:"value,omitempty" tf:"value,omitempty"` } @@ -591,9 +636,11 @@ type WebhookObservation struct { type WebhookParameters struct { // A map of settings. + // +kubebuilder:validation:Optional Properties map[string]*string `json:"properties,omitempty" tf:"properties,omitempty"` // The HTTPS URI which should receive scale notifications. + // +kubebuilder:validation:Optional ServiceURI *string `json:"serviceUri,omitempty" tf:"service_uri,omitempty"` } diff --git a/apis/insights/v1beta1/zz_monitordatacollectionendpoint_types.go b/apis/insights/v1beta1/zz_monitordatacollectionendpoint_types.go index 19668af09..e18c82803 100755 --- a/apis/insights/v1beta1/zz_monitordatacollectionendpoint_types.go +++ b/apis/insights/v1beta1/zz_monitordatacollectionendpoint_types.go @@ -64,15 +64,19 @@ type MonitorDataCollectionEndpointObservation struct { type MonitorDataCollectionEndpointParameters struct { // Specifies a description for the Data Collection Endpoint. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The kind of the Data Collection Endpoint. Possible values are Linux and Windows. + // +kubebuilder:validation:Optional Kind *string `json:"kind,omitempty" tf:"kind,omitempty"` // The Azure Region where the Data Collection Endpoint should exist. Changing this forces a new Data Collection Endpoint to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Whether network access from public internet to the Data Collection Endpoint are allowed. Possible values are true and false. Default to true. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // The name of the Resource Group where the Data Collection Endpoint should exist. Changing this forces a new Data Collection Endpoint to be created. @@ -89,6 +93,7 @@ type MonitorDataCollectionEndpointParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the Data Collection Endpoint. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/insights/v1beta1/zz_monitordatacollectionrule_types.go b/apis/insights/v1beta1/zz_monitordatacollectionrule_types.go index ea30ea6c0..7457f6162 100755 --- a/apis/insights/v1beta1/zz_monitordatacollectionrule_types.go +++ b/apis/insights/v1beta1/zz_monitordatacollectionrule_types.go @@ -28,6 +28,7 @@ type AzureMonitorMetricsObservation struct { type AzureMonitorMetricsParameters struct { // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -52,9 +53,11 @@ type ColumnObservation struct { type ColumnParameters struct { // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Data Collection Rule. Possible values are SystemAssigned and UserAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -97,18 +100,23 @@ type DataFlowObservation struct { type DataFlowParameters struct { // The built-in transform to transform stream data. + // +kubebuilder:validation:Optional BuiltInTransform *string `json:"builtInTransform,omitempty" tf:"built_in_transform,omitempty"` // Specifies a list of destination names. A azure_monitor_metrics data source only allows for stream of kind Microsoft-InsightsMetrics. + // +kubebuilder:validation:Optional Destinations []*string `json:"destinations,omitempty" tf:"destinations,omitempty"` // The output stream of the transform. Only required if the data flow changes data to a different stream. + // +kubebuilder:validation:Optional OutputStream *string `json:"outputStream,omitempty" tf:"output_stream,omitempty"` // Specifies a list of streams. Possible values include but not limited to Microsoft-Event, Microsoft-InsightsMetrics, Microsoft-Perf, Microsoft-Syslog,and Microsoft-WindowsEvent. + // +kubebuilder:validation:Optional Streams []*string `json:"streams,omitempty" tf:"streams,omitempty"` // The KQL query to transform stream data. + // +kubebuilder:validation:Optional TransformKql *string `json:"transformKql,omitempty" tf:"transform_kql,omitempty"` } @@ -127,6 +135,7 @@ type DataImportObservation struct { type DataImportParameters struct { // An event_hub_data_source block as defined below. + // +kubebuilder:validation:Optional EventHubDataSource []EventHubDataSourceParameters `json:"eventHubDataSource,omitempty" tf:"event_hub_data_source,omitempty"` } @@ -199,33 +208,43 @@ type DataSourcesObservation struct { type DataSourcesParameters struct { // A data_import block as defined above. + // +kubebuilder:validation:Optional DataImport []DataImportParameters `json:"dataImport,omitempty" tf:"data_import,omitempty"` // One or more extension blocks as defined below. + // +kubebuilder:validation:Optional Extension []ExtensionParameters `json:"extension,omitempty" tf:"extension,omitempty"` // One or more iis_log blocks as defined below. + // +kubebuilder:validation:Optional IisLog []IisLogParameters `json:"iisLog,omitempty" tf:"iis_log,omitempty"` // One or more log_file blocks as defined below. + // +kubebuilder:validation:Optional LogFile []LogFileParameters `json:"logFile,omitempty" tf:"log_file,omitempty"` // One or more performance_counter blocks as defined below. + // +kubebuilder:validation:Optional PerformanceCounter []PerformanceCounterParameters `json:"performanceCounter,omitempty" tf:"performance_counter,omitempty"` // One or more platform_telemetry blocks as defined below. + // +kubebuilder:validation:Optional PlatformTelemetry []PlatformTelemetryParameters `json:"platformTelemetry,omitempty" tf:"platform_telemetry,omitempty"` // One or more prometheus_forwarder blocks as defined below. + // +kubebuilder:validation:Optional PrometheusForwarder []PrometheusForwarderParameters `json:"prometheusForwarder,omitempty" tf:"prometheus_forwarder,omitempty"` // One or more syslog blocks as defined below. + // +kubebuilder:validation:Optional Syslog []SyslogParameters `json:"syslog,omitempty" tf:"syslog,omitempty"` // One or more windows_event_log blocks as defined below. + // +kubebuilder:validation:Optional WindowsEventLog []WindowsEventLogParameters `json:"windowsEventLog,omitempty" tf:"windows_event_log,omitempty"` // One or more windows_firewall_log blocks as defined below. + // +kubebuilder:validation:Optional WindowsFirewallLog []WindowsFirewallLogParameters `json:"windowsFirewallLog,omitempty" tf:"windows_firewall_log,omitempty"` } @@ -286,27 +305,35 @@ type DestinationsObservation struct { type DestinationsParameters struct { // A azure_monitor_metrics block as defined above. + // +kubebuilder:validation:Optional AzureMonitorMetrics []AzureMonitorMetricsParameters `json:"azureMonitorMetrics,omitempty" tf:"azure_monitor_metrics,omitempty"` // One or more event_hub blocks as defined below. + // +kubebuilder:validation:Optional EventHub []EventHubParameters `json:"eventHub,omitempty" tf:"event_hub,omitempty"` // One or more event_hub blocks as defined below. + // +kubebuilder:validation:Optional EventHubDirect []EventHubDirectParameters `json:"eventHubDirect,omitempty" tf:"event_hub_direct,omitempty"` // One or more log_analytics blocks as defined below. + // +kubebuilder:validation:Optional LogAnalytics []LogAnalyticsParameters `json:"logAnalytics,omitempty" tf:"log_analytics,omitempty"` // One or more monitor_account blocks as defined below. + // +kubebuilder:validation:Optional MonitorAccount []MonitorAccountParameters `json:"monitorAccount,omitempty" tf:"monitor_account,omitempty"` // One or more storage_blob blocks as defined below. + // +kubebuilder:validation:Optional StorageBlob []StorageBlobParameters `json:"storageBlob,omitempty" tf:"storage_blob,omitempty"` // One or more storage_blob_direct blocks as defined below. + // +kubebuilder:validation:Optional StorageBlobDirect []StorageBlobDirectParameters `json:"storageBlobDirect,omitempty" tf:"storage_blob_direct,omitempty"` // One or more storage_table_direct blocks as defined below. + // +kubebuilder:validation:Optional StorageTableDirect []StorageTableDirectParameters `json:"storageTableDirect,omitempty" tf:"storage_table_direct,omitempty"` } @@ -337,12 +364,15 @@ type EventHubDataSourceObservation struct { type EventHubDataSourceParameters struct { // The Event Hub consumer group name. + // +kubebuilder:validation:Optional ConsumerGroup *string `json:"consumerGroup,omitempty" tf:"consumer_group,omitempty"` // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The stream to collect from Event Hub. Possible value should be a custom stream name. + // +kubebuilder:validation:Optional Stream *string `json:"stream,omitempty" tf:"stream,omitempty"` } @@ -367,9 +397,11 @@ type EventHubDirectObservation struct { type EventHubDirectParameters struct { // The resource ID of the Event Hub. + // +kubebuilder:validation:Optional EventHubID *string `json:"eventHubId,omitempty" tf:"event_hub_id,omitempty"` // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -405,6 +437,7 @@ type EventHubParameters struct { EventHubIDSelector *v1.Selector `json:"eventHubIdSelector,omitempty" tf:"-"` // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -447,18 +480,23 @@ type ExtensionObservation struct { type ExtensionParameters struct { // A JSON String which specifies the extension setting. + // +kubebuilder:validation:Optional ExtensionJSON *string `json:"extensionJson,omitempty" tf:"extension_json,omitempty"` // The name of the VM extension. + // +kubebuilder:validation:Optional ExtensionName *string `json:"extensionName,omitempty" tf:"extension_name,omitempty"` // Specifies a list of data sources this extension needs data from. An item should be a name of a supported data source which produces only one stream. Supported data sources type: performance_counter, windows_event_log,and syslog. + // +kubebuilder:validation:Optional InputDataSources []*string `json:"inputDataSources,omitempty" tf:"input_data_sources,omitempty"` // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies a list of streams that this data source will be sent to. A stream indicates what schema will be used for this data and usually what table in Log Analytics the data will be sent to. + // +kubebuilder:validation:Optional Streams []*string `json:"streams,omitempty" tf:"streams,omitempty"` } @@ -489,12 +527,15 @@ type IisLogObservation struct { type IisLogParameters struct { // Specifies a list of absolute paths where the log files are located. + // +kubebuilder:validation:Optional LogDirectories []*string `json:"logDirectories,omitempty" tf:"log_directories,omitempty"` // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies a list of streams that this data source will be sent to. A stream indicates what schema will be used for this data and usually what table in Log Analytics the data will be sent to. + // +kubebuilder:validation:Optional Streams []*string `json:"streams,omitempty" tf:"streams,omitempty"` } @@ -519,9 +560,11 @@ type LabelIncludeFilterObservation struct { type LabelIncludeFilterParameters struct { // The label of the filter. This label should be unique across all label_include_fileter block. Possible value is microsoft_metrics_include_label. + // +kubebuilder:validation:Optional Label *string `json:"label,omitempty" tf:"label,omitempty"` // The value of the filter. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -543,6 +586,7 @@ type LogAnalyticsObservation struct { type LogAnalyticsParameters struct { // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID of a Log Analytic Workspace resource. @@ -599,18 +643,23 @@ type LogFileObservation struct { type LogFileParameters struct { // Specifies a list of file patterns where the log files are located. For example, C:\\JavaLogs\\*.log. + // +kubebuilder:validation:Optional FilePatterns []*string `json:"filePatterns,omitempty" tf:"file_patterns,omitempty"` // The data format of the log files. possible value is text. + // +kubebuilder:validation:Optional Format *string `json:"format,omitempty" tf:"format,omitempty"` // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A settings block as defined below. + // +kubebuilder:validation:Optional Settings []SettingsParameters `json:"settings,omitempty" tf:"settings,omitempty"` // Specifies a list of streams that this data source will be sent to. A stream indicates what schema will be used for this data and usually what table in Log Analytics the data will be sent to. + // +kubebuilder:validation:Optional Streams []*string `json:"streams,omitempty" tf:"streams,omitempty"` } @@ -635,9 +684,11 @@ type MonitorAccountObservation struct { type MonitorAccountParameters struct { // The resource ID of the Monitor Account. + // +kubebuilder:validation:Optional MonitorAccountID *string `json:"monitorAccountId,omitempty" tf:"monitor_account_id,omitempty"` // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -668,9 +719,11 @@ type MonitorDataCollectionRuleIdentityObservation struct { type MonitorDataCollectionRuleIdentityParameters struct { // A list of User Assigned Managed Identity IDs to be assigned to this Data Collection Rule. Currently, up to 1 identity is supported. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Data Collection Rule. Possible values are SystemAssigned and UserAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -763,24 +816,31 @@ type MonitorDataCollectionRuleParameters struct { DataCollectionEndpointIDSelector *v1.Selector `json:"dataCollectionEndpointIdSelector,omitempty" tf:"-"` // One or more data_flow blocks as defined below. + // +kubebuilder:validation:Optional DataFlow []DataFlowParameters `json:"dataFlow,omitempty" tf:"data_flow,omitempty"` // A data_sources block as defined below. This property is optional and can be omitted if the rule is meant to be used via direct calls to the provisioned endpoint. + // +kubebuilder:validation:Optional DataSources []DataSourcesParameters `json:"dataSources,omitempty" tf:"data_sources,omitempty"` // The description of the Data Collection Rule. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // A destinations block as defined below. + // +kubebuilder:validation:Optional Destinations []DestinationsParameters `json:"destinations,omitempty" tf:"destinations,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []MonitorDataCollectionRuleIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // The kind of the Data Collection Rule. Possible values are Linux, Windows,and AgentDirectToStore. A rule of kind Linux does not allow for windows_event_log data sources. And a rule of kind Windows does not allow for syslog data sources. If kind is not specified, all kinds of data sources are allowed. + // +kubebuilder:validation:Optional Kind *string `json:"kind,omitempty" tf:"kind,omitempty"` // The Azure Region where the Data Collection Rule should exist. Changing this forces a new Data Collection Rule to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the Resource Group where the Data Collection Rule should exist. Changing this forces a new Data Collection Rule to be created. @@ -797,9 +857,11 @@ type MonitorDataCollectionRuleParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A stream_declaration block as defined below. + // +kubebuilder:validation:Optional StreamDeclaration []StreamDeclarationParameters `json:"streamDeclaration,omitempty" tf:"stream_declaration,omitempty"` // A mapping of tags which should be assigned to the Data Collection Rule. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -836,15 +898,19 @@ type PerformanceCounterObservation struct { type PerformanceCounterParameters struct { // Specifies a list of specifier names of the performance counters you want to collect. To get a list of performance counters on Windows, run the command typeperf. Please see this document for more information. + // +kubebuilder:validation:Optional CounterSpecifiers []*string `json:"counterSpecifiers,omitempty" tf:"counter_specifiers,omitempty"` // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The number of seconds between consecutive counter measurements (samples). The value should be integer between 1 and 300 inclusive. sampling_frequency_in_seconds must be equal to 60 seconds for counters collected with Microsoft-InsightsMetrics stream. + // +kubebuilder:validation:Optional SamplingFrequencyInSeconds *float64 `json:"samplingFrequencyInSeconds,omitempty" tf:"sampling_frequency_in_seconds,omitempty"` // Specifies a list of streams that this data source will be sent to. A stream indicates what schema will be used for this data and usually what table in Log Analytics the data will be sent to. + // +kubebuilder:validation:Optional Streams []*string `json:"streams,omitempty" tf:"streams,omitempty"` } @@ -869,9 +935,11 @@ type PlatformTelemetryObservation struct { type PlatformTelemetryParameters struct { // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies a list of streams that this data source will be sent to. A stream indicates what schema will be used for this data and usually what table in Log Analytics the data will be sent to. + // +kubebuilder:validation:Optional Streams []*string `json:"streams,omitempty" tf:"streams,omitempty"` } @@ -902,12 +970,15 @@ type PrometheusForwarderObservation struct { type PrometheusForwarderParameters struct { // One or more label_include_filter blocks as defined above. + // +kubebuilder:validation:Optional LabelIncludeFilter []LabelIncludeFilterParameters `json:"labelIncludeFilter,omitempty" tf:"label_include_filter,omitempty"` // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies a list of streams that this data source will be sent to. A stream indicates what schema will be used for this data and usually what table in Log Analytics the data will be sent to. + // +kubebuilder:validation:Optional Streams []*string `json:"streams,omitempty" tf:"streams,omitempty"` } @@ -926,6 +997,7 @@ type SettingsObservation struct { type SettingsParameters struct { // A text block as defined below. + // +kubebuilder:validation:Optional Text []TextParameters `json:"text,omitempty" tf:"text,omitempty"` } @@ -956,12 +1028,15 @@ type StorageBlobDirectObservation struct { type StorageBlobDirectParameters struct { // The Storage Container name. + // +kubebuilder:validation:Optional ContainerName *string `json:"containerName,omitempty" tf:"container_name,omitempty"` // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The resource ID of the Storage Account. + // +kubebuilder:validation:Optional StorageAccountID *string `json:"storageAccountId,omitempty" tf:"storage_account_id,omitempty"` } @@ -999,6 +1074,7 @@ type StorageBlobParameters struct { ContainerNameSelector *v1.Selector `json:"containerNameSelector,omitempty" tf:"-"` // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The resource ID of the Storage Account. @@ -1043,12 +1119,15 @@ type StorageTableDirectObservation struct { type StorageTableDirectParameters struct { // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The resource ID of the Storage Account. + // +kubebuilder:validation:Optional StorageAccountID *string `json:"storageAccountId,omitempty" tf:"storage_account_id,omitempty"` // The Storage Table name. + // +kubebuilder:validation:Optional TableName *string `json:"tableName,omitempty" tf:"table_name,omitempty"` } @@ -1073,9 +1152,11 @@ type StreamDeclarationObservation struct { type StreamDeclarationParameters struct { // One or more column blocks as defined above. + // +kubebuilder:validation:Optional Column []ColumnParameters `json:"column,omitempty" tf:"column,omitempty"` // The name of the custom stream. This name should be unique across all stream_declaration blocks. + // +kubebuilder:validation:Optional StreamName *string `json:"streamName,omitempty" tf:"stream_name,omitempty"` } @@ -1112,15 +1193,19 @@ type SyslogObservation struct { type SyslogParameters struct { // Specifies a list of facility names. Use a wildcard * to collect logs for all facility names. Possible values are auth, authpriv, cron, daemon, kern, lpr, mail, mark, news, syslog, user, uucp, local0, local1, local2, local3, local4, local5, local6, local7,and *. + // +kubebuilder:validation:Optional FacilityNames []*string `json:"facilityNames,omitempty" tf:"facility_names,omitempty"` // Specifies a list of log levels. Use a wildcard * to collect logs for all log levels. Possible values are Debug, Info, Notice, Warning, Error, Critical, Alert, Emergency,and *. + // +kubebuilder:validation:Optional LogLevels []*string `json:"logLevels,omitempty" tf:"log_levels,omitempty"` // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies a list of streams that this data source will be sent to. A stream indicates what schema will be used for this data and usually what table in Log Analytics the data will be sent to. + // +kubebuilder:validation:Optional Streams []*string `json:"streams,omitempty" tf:"streams,omitempty"` } @@ -1139,6 +1224,7 @@ type TextObservation struct { type TextParameters struct { // The timestamp format of the text log files. Possible values are ISO 8601, YYYY-MM-DD HH:MM:SS, M/D/YYYY HH:MM:SS AM/PM, Mon DD, YYYY HH:MM:SS, yyMMdd HH:mm:ss, ddMMyy HH:mm:ss, MMM d hh:mm:ss, dd/MMM/yyyy:HH:mm:ss zzz,and yyyy-MM-ddTHH:mm:ssK. + // +kubebuilder:validation:Optional RecordStartTimestampFormat *string `json:"recordStartTimestampFormat,omitempty" tf:"record_start_timestamp_format,omitempty"` } @@ -1169,12 +1255,15 @@ type WindowsEventLogObservation struct { type WindowsEventLogParameters struct { // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies a list of streams that this data source will be sent to. A stream indicates what schema will be used for this data and usually what table in Log Analytics the data will be sent to. + // +kubebuilder:validation:Optional Streams []*string `json:"streams,omitempty" tf:"streams,omitempty"` // Specifies a list of Windows Event Log queries in XPath expression. Please see this document for more information. + // +kubebuilder:validation:Optional XPathQueries []*string `json:"xPathQueries,omitempty" tf:"x_path_queries,omitempty"` } @@ -1199,9 +1288,11 @@ type WindowsFirewallLogObservation struct { type WindowsFirewallLogParameters struct { // The name which should be used for this data source. This name should be unique across all data sources regardless of type within the Data Collection Rule. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies a list of streams that this data source will be sent to. A stream indicates what schema will be used for this data and usually what table in Log Analytics the data will be sent to. + // +kubebuilder:validation:Optional Streams []*string `json:"streams,omitempty" tf:"streams,omitempty"` } diff --git a/apis/insights/v1beta1/zz_monitordatacollectionruleassociation_types.go b/apis/insights/v1beta1/zz_monitordatacollectionruleassociation_types.go index 9dce2823b..9b9a79ea0 100755 --- a/apis/insights/v1beta1/zz_monitordatacollectionruleassociation_types.go +++ b/apis/insights/v1beta1/zz_monitordatacollectionruleassociation_types.go @@ -68,6 +68,7 @@ type MonitorDataCollectionRuleAssociationParameters struct { DataCollectionRuleIDSelector *v1.Selector `json:"dataCollectionRuleIdSelector,omitempty" tf:"-"` // The description of the Data Collection Rule Association. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The ID of the Azure Resource which to associate to a Data Collection Rule or a Data Collection Endpoint. Changing this forces a new resource to be created. diff --git a/apis/insights/v1beta1/zz_monitormetricalert_types.go b/apis/insights/v1beta1/zz_monitormetricalert_types.go index c39dbba80..619058d7b 100755 --- a/apis/insights/v1beta1/zz_monitormetricalert_types.go +++ b/apis/insights/v1beta1/zz_monitormetricalert_types.go @@ -40,12 +40,15 @@ type ApplicationInsightsWebTestLocationAvailabilityCriteriaObservation struct { type ApplicationInsightsWebTestLocationAvailabilityCriteriaParameters struct { // The ID of the Application Insights Resource. + // +kubebuilder:validation:Optional ComponentID *string `json:"componentId,omitempty" tf:"component_id,omitempty"` // The number of failed locations. + // +kubebuilder:validation:Optional FailedLocationCount *float64 `json:"failedLocationCount,omitempty" tf:"failed_location_count,omitempty"` // The ID of the Application Insights Web Test. + // +kubebuilder:validation:Optional WebTestID *string `json:"webTestId,omitempty" tf:"web_test_id,omitempty"` } @@ -76,12 +79,15 @@ type DimensionObservation struct { type DimensionParameters struct { // The name of the Metric Alert. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The criteria operator. Possible values are LessThan, GreaterThan and GreaterOrLessThan. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // The list of dimension values. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -112,12 +118,15 @@ type DynamicCriteriaDimensionObservation struct { type DynamicCriteriaDimensionParameters struct { // The name of the Metric Alert. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The criteria operator. Possible values are LessThan, GreaterThan and GreaterOrLessThan. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // The list of dimension values. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -190,33 +199,43 @@ type DynamicCriteriaObservation struct { type DynamicCriteriaParameters struct { // The statistic that runs over the metric values. Possible values are Average, Count, Minimum, Maximum and Total. + // +kubebuilder:validation:Optional Aggregation *string `json:"aggregation,omitempty" tf:"aggregation,omitempty"` // The extent of deviation required to trigger an alert. Possible values are Low, Medium and High. + // +kubebuilder:validation:Optional AlertSensitivity *string `json:"alertSensitivity,omitempty" tf:"alert_sensitivity,omitempty"` // One or more dimension blocks as defined below. + // +kubebuilder:validation:Optional Dimension []DynamicCriteriaDimensionParameters `json:"dimension,omitempty" tf:"dimension,omitempty"` // The number of violations to trigger an alert. Should be smaller or equal to evaluation_total_count. Defaults to 4. + // +kubebuilder:validation:Optional EvaluationFailureCount *float64 `json:"evaluationFailureCount,omitempty" tf:"evaluation_failure_count,omitempty"` // The number of aggregated lookback points. The lookback time window is calculated based on the aggregation granularity (window_size) and the selected number of aggregated points. Defaults to 4. + // +kubebuilder:validation:Optional EvaluationTotalCount *float64 `json:"evaluationTotalCount,omitempty" tf:"evaluation_total_count,omitempty"` // The ISO8601 date from which to start learning the metric historical data and calculate the dynamic thresholds. + // +kubebuilder:validation:Optional IgnoreDataBefore *string `json:"ignoreDataBefore,omitempty" tf:"ignore_data_before,omitempty"` // One of the metric names to be monitored. + // +kubebuilder:validation:Optional MetricName *string `json:"metricName,omitempty" tf:"metric_name,omitempty"` // One of the metric namespaces to be monitored. + // +kubebuilder:validation:Optional MetricNamespace *string `json:"metricNamespace,omitempty" tf:"metric_namespace,omitempty"` // The criteria operator. Possible values are LessThan, GreaterThan and GreaterOrLessThan. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Skip the metric validation to allow creating an alert rule on a custom metric that isn't yet emitted? + // +kubebuilder:validation:Optional SkipMetricValidation *bool `json:"skipMetricValidation,omitempty" tf:"skip_metric_validation,omitempty"` } @@ -252,6 +271,7 @@ type MonitorMetricAlertActionParameters struct { ActionGroupIDSelector *v1.Selector `json:"actionGroupIdSelector,omitempty" tf:"-"` // The map of custom string properties to include with the post operation. These data are appended to the webhook payload. + // +kubebuilder:validation:Optional WebhookProperties map[string]*string `json:"webhookProperties,omitempty" tf:"webhook_properties,omitempty"` } @@ -306,24 +326,31 @@ type MonitorMetricAlertCriteriaObservation struct { type MonitorMetricAlertCriteriaParameters struct { // The statistic that runs over the metric values. Possible values are Average, Count, Minimum, Maximum and Total. + // +kubebuilder:validation:Optional Aggregation *string `json:"aggregation,omitempty" tf:"aggregation,omitempty"` // One or more dimension blocks as defined below. + // +kubebuilder:validation:Optional Dimension []DimensionParameters `json:"dimension,omitempty" tf:"dimension,omitempty"` // One of the metric names to be monitored. + // +kubebuilder:validation:Optional MetricName *string `json:"metricName,omitempty" tf:"metric_name,omitempty"` // One of the metric namespaces to be monitored. + // +kubebuilder:validation:Optional MetricNamespace *string `json:"metricNamespace,omitempty" tf:"metric_namespace,omitempty"` // The criteria operator. Possible values are Equals, GreaterThan, GreaterThanOrEqual, LessThan and LessThanOrEqual. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Skip the metric validation to allow creating an alert rule on a custom metric that isn't yet emitted? Defaults to false. + // +kubebuilder:validation:Optional SkipMetricValidation *bool `json:"skipMetricValidation,omitempty" tf:"skip_metric_validation,omitempty"` // The criteria threshold value that activates the alert. + // +kubebuilder:validation:Optional Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"` } @@ -427,27 +454,35 @@ type MonitorMetricAlertObservation struct { type MonitorMetricAlertParameters struct { // One or more action blocks as defined below. + // +kubebuilder:validation:Optional Action []MonitorMetricAlertActionParameters `json:"action,omitempty" tf:"action,omitempty"` // A application_insights_web_test_location_availability_criteria block as defined below. + // +kubebuilder:validation:Optional ApplicationInsightsWebTestLocationAvailabilityCriteria []ApplicationInsightsWebTestLocationAvailabilityCriteriaParameters `json:"applicationInsightsWebTestLocationAvailabilityCriteria,omitempty" tf:"application_insights_web_test_location_availability_criteria,omitempty"` // Should the alerts in this Metric Alert be auto resolved? Defaults to true. + // +kubebuilder:validation:Optional AutoMitigate *bool `json:"autoMitigate,omitempty" tf:"auto_mitigate,omitempty"` // One or more (static) criteria blocks as defined below. + // +kubebuilder:validation:Optional Criteria []MonitorMetricAlertCriteriaParameters `json:"criteria,omitempty" tf:"criteria,omitempty"` // The description of this Metric Alert. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // A dynamic_criteria block as defined below. + // +kubebuilder:validation:Optional DynamicCriteria []DynamicCriteriaParameters `json:"dynamicCriteria,omitempty" tf:"dynamic_criteria,omitempty"` // Should this Metric Alert be enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The evaluation frequency of this Metric Alert, represented in ISO 8601 duration format. Possible values are PT1M, PT5M, PT15M, PT30M and PT1H. Defaults to PT1M. + // +kubebuilder:validation:Optional Frequency *string `json:"frequency,omitempty" tf:"frequency,omitempty"` // The name of the resource group in which to create the Metric Alert instance. Changing this forces a new resource to be created. @@ -478,20 +513,25 @@ type MonitorMetricAlertParameters struct { ScopesSelector *v1.Selector `json:"scopesSelector,omitempty" tf:"-"` // The severity of this Metric Alert. Possible values are 0, 1, 2, 3 and 4. Defaults to 3. + // +kubebuilder:validation:Optional Severity *float64 `json:"severity,omitempty" tf:"severity,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The location of the target resource. // The location of the target pluginsdk. Required when using subscription, resource group scope or multiple scopes. + // +kubebuilder:validation:Optional TargetResourceLocation *string `json:"targetResourceLocation,omitempty" tf:"target_resource_location,omitempty"` // The resource type (e.g. Microsoft.Compute/virtualMachines) of the target resource. // The resource type (e.g. Microsoft.Compute/virtualMachines) of the target pluginsdk. Required when using subscription, resource group scope or multiple scopes. + // +kubebuilder:validation:Optional TargetResourceType *string `json:"targetResourceType,omitempty" tf:"target_resource_type,omitempty"` // The period of time that is used to monitor alert activity, represented in ISO 8601 duration format. This value must be greater than frequency. Possible values are PT1M, PT5M, PT15M, PT30M, PT1H, PT6H, PT12H and P1D. Defaults to PT5M. + // +kubebuilder:validation:Optional WindowSize *string `json:"windowSize,omitempty" tf:"window_size,omitempty"` } diff --git a/apis/insights/v1beta1/zz_monitorprivatelinkscope_types.go b/apis/insights/v1beta1/zz_monitorprivatelinkscope_types.go index c325a054e..e41d3adbc 100755 --- a/apis/insights/v1beta1/zz_monitorprivatelinkscope_types.go +++ b/apis/insights/v1beta1/zz_monitorprivatelinkscope_types.go @@ -47,6 +47,7 @@ type MonitorPrivateLinkScopeParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the Azure Monitor Private Link Scope. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/insights/v1beta1/zz_monitorscheduledqueryrulesalert_types.go b/apis/insights/v1beta1/zz_monitorscheduledqueryrulesalert_types.go index ce7af92aa..1a67a7277 100755 --- a/apis/insights/v1beta1/zz_monitorscheduledqueryrulesalert_types.go +++ b/apis/insights/v1beta1/zz_monitorscheduledqueryrulesalert_types.go @@ -51,9 +51,11 @@ type MonitorScheduledQueryRulesAlertActionParameters struct { ActionGroupSelector *v1.Selector `json:"actionGroupSelector,omitempty" tf:"-"` // Custom payload to be sent for all webhook payloads in alerting action. + // +kubebuilder:validation:Optional CustomWebhookPayload *string `json:"customWebhookPayload,omitempty" tf:"custom_webhook_payload,omitempty"` // Custom subject override for all email ids in Azure action group. + // +kubebuilder:validation:Optional EmailSubject *string `json:"emailSubject,omitempty" tf:"email_subject,omitempty"` } @@ -167,13 +169,16 @@ type MonitorScheduledQueryRulesAlertObservation struct { type MonitorScheduledQueryRulesAlertParameters struct { // An action block as defined below. + // +kubebuilder:validation:Optional Action []MonitorScheduledQueryRulesAlertActionParameters `json:"action,omitempty" tf:"action,omitempty"` // List of Resource IDs referred into query. + // +kubebuilder:validation:Optional AuthorizedResourceIds []*string `json:"authorizedResourceIds,omitempty" tf:"authorized_resource_ids,omitempty"` // Should the alerts in this Metric Alert be auto resolved? Defaults to false. // -> NOTE auto_mitigation_enabled and throttling are mutually exclusive and cannot both be set. + // +kubebuilder:validation:Optional AutoMitigationEnabled *bool `json:"autoMitigationEnabled,omitempty" tf:"auto_mitigation_enabled,omitempty"` // The resource URI over which log search query is to be run. @@ -191,24 +196,31 @@ type MonitorScheduledQueryRulesAlertParameters struct { DataSourceIDSelector *v1.Selector `json:"dataSourceIdSelector,omitempty" tf:"-"` // The description of the scheduled query rule. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // Whether this scheduled query rule is enabled. Default is true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Frequency (in minutes) at which rule condition should be evaluated. Values must be between 5 and 1440 (inclusive). + // +kubebuilder:validation:Optional Frequency *float64 `json:"frequency,omitempty" tf:"frequency,omitempty"` // Specifies the Azure Region where the resource 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 scheduled query rule. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Log search query. + // +kubebuilder:validation:Optional Query *string `json:"query,omitempty" tf:"query,omitempty"` // The type of query results. Possible values are ResultCount and Number. Default is ResultCount. If set to Number, query must include an AggregatedValue column of a numeric type, for example, Heartbeat | summarize AggregatedValue = count() by bin(TimeGenerated, 5m). + // +kubebuilder:validation:Optional QueryType *string `json:"queryType,omitempty" tf:"query_type,omitempty"` // The name of the resource group in which to create the scheduled query rule instance. Changing this forces a new resource to be created. @@ -225,18 +237,23 @@ type MonitorScheduledQueryRulesAlertParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Severity of the alert. Possible values include: 0, 1, 2, 3, or 4. + // +kubebuilder:validation:Optional Severity *float64 `json:"severity,omitempty" tf:"severity,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Time (in minutes) for which Alerts should be throttled or suppressed. Values must be between 0 and 10000 (inclusive). + // +kubebuilder:validation:Optional Throttling *float64 `json:"throttling,omitempty" tf:"throttling,omitempty"` // Time window for which data needs to be fetched for query (must be greater than or equal to frequency). Values must be between 5 and 2880 (inclusive). + // +kubebuilder:validation:Optional TimeWindow *float64 `json:"timeWindow,omitempty" tf:"time_window,omitempty"` // A trigger block as defined below. + // +kubebuilder:validation:Optional Trigger []TriggerParameters `json:"trigger,omitempty" tf:"trigger,omitempty"` } @@ -285,15 +302,19 @@ type TriggerMetricTriggerObservation struct { type TriggerMetricTriggerParameters struct { // Evaluation of metric on a particular column. + // +kubebuilder:validation:Optional MetricColumn *string `json:"metricColumn,omitempty" tf:"metric_column,omitempty"` // Metric Trigger Type - 'Consecutive' or 'Total'. + // +kubebuilder:validation:Optional MetricTriggerType *string `json:"metricTriggerType,omitempty" tf:"metric_trigger_type,omitempty"` // Evaluation operation for rule - 'GreaterThan', GreaterThanOrEqual', 'LessThan', or 'LessThanOrEqual'. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Result or count threshold based on which rule should be triggered. Values must be between 0 and 10000 inclusive. + // +kubebuilder:validation:Optional Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"` } @@ -312,12 +333,15 @@ type TriggerObservation struct { type TriggerParameters struct { // A metric_trigger block as defined above. Trigger condition for metric query rule. + // +kubebuilder:validation:Optional MetricTrigger []TriggerMetricTriggerParameters `json:"metricTrigger,omitempty" tf:"metric_trigger,omitempty"` // Evaluation operation for rule - 'GreaterThan', GreaterThanOrEqual', 'LessThan', or 'LessThanOrEqual'. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Result or count threshold based on which rule should be triggered. Values must be between 0 and 10000 inclusive. + // +kubebuilder:validation:Optional Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"` } diff --git a/apis/insights/v1beta1/zz_monitorscheduledqueryrulesalertv2_types.go b/apis/insights/v1beta1/zz_monitorscheduledqueryrulesalertv2_types.go index 60cce1ba1..17fb77694 100755 --- a/apis/insights/v1beta1/zz_monitorscheduledqueryrulesalertv2_types.go +++ b/apis/insights/v1beta1/zz_monitorscheduledqueryrulesalertv2_types.go @@ -40,12 +40,15 @@ type CriteriaDimensionObservation struct { type CriteriaDimensionParameters struct { // Specifies the name which should be used for this Monitor Scheduled Query Rule. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Operator for dimension values. Possible values are Exclude,and Include. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // List of dimension values. Use a wildcard * to collect all. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -70,9 +73,11 @@ type FailingPeriodsObservation struct { type FailingPeriodsParameters struct { // Specifies the number of violations to trigger an alert. Should be smaller or equal to number_of_evaluation_periods. Possible value is integer between 1 and 6. + // +kubebuilder:validation:Optional MinimumFailingPeriodsToTriggerAlert *float64 `json:"minimumFailingPeriodsToTriggerAlert,omitempty" tf:"minimum_failing_periods_to_trigger_alert,omitempty"` // Specifies the number of aggregated look-back points. The look-back time window is calculated based on the aggregation granularity window_duration and the selected number of aggregated points. Possible value is integer between 1 and 6. + // +kubebuilder:validation:Optional NumberOfEvaluationPeriods *float64 `json:"numberOfEvaluationPeriods,omitempty" tf:"number_of_evaluation_periods,omitempty"` } @@ -97,9 +102,11 @@ type MonitorScheduledQueryRulesAlertV2ActionObservation struct { type MonitorScheduledQueryRulesAlertV2ActionParameters struct { // List of Action Group resource IDs to invoke when the alert fires. + // +kubebuilder:validation:Optional ActionGroups []*string `json:"actionGroups,omitempty" tf:"action_groups,omitempty"` // Specifies the properties of an alert payload. + // +kubebuilder:validation:Optional CustomProperties map[string]*string `json:"customProperties,omitempty" tf:"custom_properties,omitempty"` } @@ -160,27 +167,35 @@ type MonitorScheduledQueryRulesAlertV2CriteriaObservation struct { type MonitorScheduledQueryRulesAlertV2CriteriaParameters struct { // A dimension block as defined below. + // +kubebuilder:validation:Optional Dimension []CriteriaDimensionParameters `json:"dimension,omitempty" tf:"dimension,omitempty"` // A failing_periods block as defined below. + // +kubebuilder:validation:Optional FailingPeriods []FailingPeriodsParameters `json:"failingPeriods,omitempty" tf:"failing_periods,omitempty"` // Specifies the column containing the metric measure number. + // +kubebuilder:validation:Optional MetricMeasureColumn *string `json:"metricMeasureColumn,omitempty" tf:"metric_measure_column,omitempty"` // Specifies the criteria operator. Possible values are Equal, GreaterThan, GreaterThanOrEqual, LessThan,and LessThanOrEqual. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // The query to run on logs. The results returned by this query are used to populate the alert. + // +kubebuilder:validation:Optional Query *string `json:"query,omitempty" tf:"query,omitempty"` // Specifies the column containing the resource ID. The content of the column must be an uri formatted as resource ID. + // +kubebuilder:validation:Optional ResourceIDColumn *string `json:"resourceIdColumn,omitempty" tf:"resource_id_column,omitempty"` // Specifies the criteria threshold value that activates the alert. + // +kubebuilder:validation:Optional Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"` // The type of aggregation to apply to the data points in aggregation granularity. Possible values are Average, Count, Maximum, Minimum,and Total. + // +kubebuilder:validation:Optional TimeAggregationMethod *string `json:"timeAggregationMethod,omitempty" tf:"time_aggregation_method,omitempty"` } @@ -307,33 +322,43 @@ type MonitorScheduledQueryRulesAlertV2Observation struct { type MonitorScheduledQueryRulesAlertV2Parameters struct { // An action block as defined below. + // +kubebuilder:validation:Optional Action []MonitorScheduledQueryRulesAlertV2ActionParameters `json:"action,omitempty" tf:"action,omitempty"` // Specifies the flag that indicates whether the alert should be automatically resolved or not. Value should be true or false. The default is false. + // +kubebuilder:validation:Optional AutoMitigationEnabled *bool `json:"autoMitigationEnabled,omitempty" tf:"auto_mitigation_enabled,omitempty"` // A criteria block as defined below. + // +kubebuilder:validation:Optional Criteria []MonitorScheduledQueryRulesAlertV2CriteriaParameters `json:"criteria,omitempty" tf:"criteria,omitempty"` // Specifies the description of the scheduled query rule. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // Specifies the display name of the alert rule. + // +kubebuilder:validation:Optional DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` // Specifies the flag which indicates whether this scheduled query rule is enabled. Value should be true or false. The default is true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // How often the scheduled query rule is evaluated, represented in ISO 8601 duration format. Possible values are PT1M, PT5M, PT10M, PT15M, PT30M, PT45M, PT1H, PT2H, PT3H, PT4H, PT5H, PT6H, P1D. + // +kubebuilder:validation:Optional EvaluationFrequency *string `json:"evaluationFrequency,omitempty" tf:"evaluation_frequency,omitempty"` // Specifies the Azure Region where the Monitor Scheduled Query Rule should exist. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Mute actions for the chosen period of time in ISO 8601 duration format after the alert is fired. Possible values are PT5M, PT10M, PT15M, PT30M, PT45M, PT1H, PT2H, PT3H, PT4H, PT5H, PT6H, P1D and P2D. + // +kubebuilder:validation:Optional MuteActionsAfterAlertDuration *string `json:"muteActionsAfterAlertDuration,omitempty" tf:"mute_actions_after_alert_duration,omitempty"` // Set this if the alert evaluation period is different from the query time range. If not specified, the value is window_duration*number_of_evaluation_periods. Possible values are PT5M, PT10M, PT15M, PT20M, PT30M, PT45M, PT1H, PT2H, PT3H, PT4H, PT5H, PT6H, P1D and P2D. + // +kubebuilder:validation:Optional QueryTimeRangeOverride *string `json:"queryTimeRangeOverride,omitempty" tf:"query_time_range_override,omitempty"` // Specifies the name of the Resource Group where the Monitor Scheduled Query Rule should exist. Changing this forces a new resource to be created. @@ -364,21 +389,27 @@ type MonitorScheduledQueryRulesAlertV2Parameters struct { ScopesSelector *v1.Selector `json:"scopesSelector,omitempty" tf:"-"` // Severity of the alert. Should be an integer between 0 and 4. Value of 0 is severest. + // +kubebuilder:validation:Optional Severity *float64 `json:"severity,omitempty" tf:"severity,omitempty"` // Specifies the flag which indicates whether the provided query should be validated or not. The default is false. + // +kubebuilder:validation:Optional SkipQueryValidation *bool `json:"skipQueryValidation,omitempty" tf:"skip_query_validation,omitempty"` // A mapping of tags which should be assigned to the Monitor Scheduled Query Rule. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // List of resource type of the target resource(s) on which the alert is created/updated. For example if the scope is a resource group and targetResourceTypes is Microsoft.Compute/virtualMachines, then a different alert will be fired for each virtual machine in the resource group which meet the alert criteria. + // +kubebuilder:validation:Optional TargetResourceTypes []*string `json:"targetResourceTypes,omitempty" tf:"target_resource_types,omitempty"` // Specifies the period of time in ISO 8601 duration format on which the Scheduled Query Rule will be executed (bin size). If evaluation_frequency is PT1M, possible values are PT1M, PT5M, PT10M, PT15M, PT30M, PT45M, PT1H, PT2H, PT3H, PT4H, PT5H, and PT6H. Otherwise, possible values are PT5M, PT10M, PT15M, PT30M, PT45M, PT1H, PT2H, PT3H, PT4H, PT5H, PT6H, P1D, and P2D. + // +kubebuilder:validation:Optional WindowDuration *string `json:"windowDuration,omitempty" tf:"window_duration,omitempty"` // Specifies the flag which indicates whether this scheduled query rule check if storage is configured. Value should be true or false. The default is false. + // +kubebuilder:validation:Optional WorkspaceAlertsStorageEnabled *bool `json:"workspaceAlertsStorageEnabled,omitempty" tf:"workspace_alerts_storage_enabled,omitempty"` } diff --git a/apis/insights/v1beta1/zz_monitorscheduledqueryruleslog_types.go b/apis/insights/v1beta1/zz_monitorscheduledqueryruleslog_types.go index 6ad02778c..4b42e8c24 100755 --- a/apis/insights/v1beta1/zz_monitorscheduledqueryruleslog_types.go +++ b/apis/insights/v1beta1/zz_monitorscheduledqueryruleslog_types.go @@ -40,12 +40,15 @@ type MonitorScheduledQueryRulesLogCriteriaDimensionObservation struct { type MonitorScheduledQueryRulesLogCriteriaDimensionParameters struct { // Name of the dimension. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Operator for dimension values, - 'Include'. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // List of dimension values. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -70,9 +73,11 @@ type MonitorScheduledQueryRulesLogCriteriaObservation struct { type MonitorScheduledQueryRulesLogCriteriaParameters struct { // A dimension block as defined below. + // +kubebuilder:validation:Optional Dimension []MonitorScheduledQueryRulesLogCriteriaDimensionParameters `json:"dimension,omitempty" tf:"dimension,omitempty"` // Name of the metric. Supported metrics are listed in the Azure Monitor Microsoft.OperationalInsights/workspaces metrics namespace. + // +kubebuilder:validation:Optional MetricName *string `json:"metricName,omitempty" tf:"metric_name,omitempty"` } @@ -136,9 +141,11 @@ type MonitorScheduledQueryRulesLogObservation struct { type MonitorScheduledQueryRulesLogParameters struct { // A list of IDs of Resources referred into query. + // +kubebuilder:validation:Optional AuthorizedResourceIds []*string `json:"authorizedResourceIds,omitempty" tf:"authorized_resource_ids,omitempty"` // A criteria block as defined below. + // +kubebuilder:validation:Optional Criteria []MonitorScheduledQueryRulesLogCriteriaParameters `json:"criteria,omitempty" tf:"criteria,omitempty"` // The resource URI over which log search query is to be run. @@ -156,15 +163,19 @@ type MonitorScheduledQueryRulesLogParameters struct { DataSourceIDSelector *v1.Selector `json:"dataSourceIdSelector,omitempty" tf:"-"` // The description of the scheduled query rule. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // Whether this scheduled query rule is enabled. Default is true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Specifies the Azure Region where the resource 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 scheduled query rule. 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 to create the scheduled query rule instance. Changing this forces a new resource to be created. @@ -181,6 +192,7 @@ type MonitorScheduledQueryRulesLogParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/iotcentral/v1beta1/zz_application_types.go b/apis/iotcentral/v1beta1/zz_application_types.go index 3a927a352..c409c366f 100755 --- a/apis/iotcentral/v1beta1/zz_application_types.go +++ b/apis/iotcentral/v1beta1/zz_application_types.go @@ -82,18 +82,23 @@ type ApplicationObservation struct { type ApplicationParameters struct { // A display_name name. Custom display name for the IoT Central application. Default is resource name. + // +kubebuilder:validation:Optional DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // Specifies the supported Azure location where the resource has to be create. 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 IotHub resource. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Whether public network access is allowed for the IoT Central Application. Defaults to true. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // The name of the resource group under which the IotHub resource has to be created. Changing this forces a new resource to be created. @@ -110,15 +115,19 @@ type ApplicationParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A sku name. Possible values is ST0, ST1, ST2, Default value is ST1 + // +kubebuilder:validation:Optional Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // A sub_domain name. Subdomain for the IoT Central URL. Each application must have a unique subdomain. + // +kubebuilder:validation:Optional SubDomain *string `json:"subDomain,omitempty" tf:"sub_domain,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // A template name. IoT Central application template name. Default is a custom application. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Template *string `json:"template,omitempty" tf:"template,omitempty"` } @@ -143,6 +152,7 @@ type IdentityObservation struct { type IdentityParameters struct { // Specifies the type of Managed Service Identity that should be configured on this IoT Central Application. The only possible value is SystemAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/iotcentral/v1beta1/zz_applicationnetworkruleset_types.go b/apis/iotcentral/v1beta1/zz_applicationnetworkruleset_types.go index 0185c48b3..6c8c0fd01 100755 --- a/apis/iotcentral/v1beta1/zz_applicationnetworkruleset_types.go +++ b/apis/iotcentral/v1beta1/zz_applicationnetworkruleset_types.go @@ -46,12 +46,15 @@ type ApplicationNetworkRuleSetObservation struct { type ApplicationNetworkRuleSetParameters struct { // Whether these IP Rules apply for device connectivity to IoT Hub and Device Provisioning Service associated with this IoT Central Application. Possible values are true, false. Defaults to true + // +kubebuilder:validation:Optional ApplyToDevice *bool `json:"applyToDevice,omitempty" tf:"apply_to_device,omitempty"` // Specifies the default action for the IoT Central Application Network Rule Set. Possible values are Allow and Deny. Defaults to Deny. + // +kubebuilder:validation:Optional DefaultAction *string `json:"defaultAction,omitempty" tf:"default_action,omitempty"` // One or more ip_rule blocks as defined below. + // +kubebuilder:validation:Optional IPRule []IPRuleParameters `json:"ipRule,omitempty" tf:"ip_rule,omitempty"` // The ID of the IoT Central Application. Changing this forces a new resource to be created. @@ -90,9 +93,11 @@ type IPRuleObservation struct { type IPRuleParameters struct { // The IP address range in CIDR notation for the IP Rule. + // +kubebuilder:validation:Optional IPMask *string `json:"ipMask,omitempty" tf:"ip_mask,omitempty"` // The name of the IP Rule + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } diff --git a/apis/keyvault/v1beta1/zz_accesspolicy_types.go b/apis/keyvault/v1beta1/zz_accesspolicy_types.go index 1d286a29c..0990a562d 100755 --- a/apis/keyvault/v1beta1/zz_accesspolicy_types.go +++ b/apis/keyvault/v1beta1/zz_accesspolicy_types.go @@ -70,12 +70,15 @@ type AccessPolicyObservation_2 struct { type AccessPolicyParameters_2 struct { // The object ID of an Application in Azure Active Directory. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ApplicationID *string `json:"applicationId,omitempty" tf:"application_id,omitempty"` // List of certificate permissions, must be one or more from the following: Backup, Create, Delete, DeleteIssuers, Get, GetIssuers, Import, List, ListIssuers, ManageContacts, ManageIssuers, Purge, Recover, Restore, SetIssuers and Update. + // +kubebuilder:validation:Optional CertificatePermissions []*string `json:"certificatePermissions,omitempty" tf:"certificate_permissions,omitempty"` // List of key permissions, must be one or more from the following: Backup, Create, Decrypt, Delete, Encrypt, Get, Import, List, Purge, Recover, Restore, Sign, UnwrapKey, Update, Verify, WrapKey, Release, Rotate, GetRotationPolicy and SetRotationPolicy. + // +kubebuilder:validation:Optional KeyPermissions []*string `json:"keyPermissions,omitempty" tf:"key_permissions,omitempty"` // Specifies the id of the Key Vault resource. Changing this forces a new resource to be created. @@ -93,15 +96,19 @@ type AccessPolicyParameters_2 struct { KeyVaultIDSelector *v1.Selector `json:"keyVaultIdSelector,omitempty" tf:"-"` // The object ID of a user, service principal or security group in the Azure Active Directory tenant for the vault. The object ID of a service principal can be fetched from azuread_service_principal.object_id. The object ID must be unique for the list of access policies. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ObjectID *string `json:"objectId,omitempty" tf:"object_id,omitempty"` // List of secret permissions, must be one or more from the following: Backup, Delete, Get, List, Purge, Recover, Restore and Set. + // +kubebuilder:validation:Optional SecretPermissions []*string `json:"secretPermissions,omitempty" tf:"secret_permissions,omitempty"` // List of storage permissions, must be one or more from the following: Backup, Delete, DeleteSAS, Get, GetSAS, List, ListSAS, Purge, Recover, RegenerateKey, Restore, Set, SetSAS and Update. + // +kubebuilder:validation:Optional StoragePermissions []*string `json:"storagePermissions,omitempty" tf:"storage_permissions,omitempty"` // The Azure Active Directory tenant ID that should be used for authenticating requests to the key vault. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` } diff --git a/apis/keyvault/v1beta1/zz_certificate_types.go b/apis/keyvault/v1beta1/zz_certificate_types.go index 82e08a681..62e182567 100755 --- a/apis/keyvault/v1beta1/zz_certificate_types.go +++ b/apis/keyvault/v1beta1/zz_certificate_types.go @@ -28,6 +28,7 @@ type ActionObservation struct { type ActionParameters struct { // The Type of action to be performed when the lifetime trigger is triggerec. Possible values include AutoRenew and EmailContacts. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ActionType *string `json:"actionType,omitempty" tf:"action_type,omitempty"` } @@ -138,9 +139,11 @@ type CertificateObservation struct { type CertificateParameters struct { // A certificate block as defined below, used to Import an existing certificate. + // +kubebuilder:validation:Optional Certificate []CertificateCertificateParameters `json:"certificate,omitempty" tf:"certificate,omitempty"` // A certificate_policy block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional CertificatePolicy []CertificatePolicyParameters `json:"certificatePolicy,omitempty" tf:"certificate_policy,omitempty"` // The ID of the Key Vault where the Certificate should be created. Changing this forces a new resource to be created. @@ -158,6 +161,7 @@ type CertificateParameters struct { KeyVaultIDSelector *v1.Selector `json:"keyVaultIdSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -200,18 +204,23 @@ type CertificatePolicyObservation struct { type CertificatePolicyParameters struct { // A issuer_parameters block as defined below. + // +kubebuilder:validation:Optional IssuerParameters []IssuerParametersParameters `json:"issuerParameters,omitempty" tf:"issuer_parameters,omitempty"` // A key_properties block as defined below. + // +kubebuilder:validation:Optional KeyProperties []KeyPropertiesParameters `json:"keyProperties,omitempty" tf:"key_properties,omitempty"` // A lifetime_action block as defined below. + // +kubebuilder:validation:Optional LifetimeAction []LifetimeActionParameters `json:"lifetimeAction,omitempty" tf:"lifetime_action,omitempty"` // A secret_properties block as defined below. + // +kubebuilder:validation:Optional SecretProperties []SecretPropertiesParameters `json:"secretProperties,omitempty" tf:"secret_properties,omitempty"` // A x509_certificate_properties block as defined below. Required when certificate block is not specified. + // +kubebuilder:validation:Optional X509CertificateProperties []X509CertificatePropertiesParameters `json:"x509CertificateProperties,omitempty" tf:"x509_certificate_properties,omitempty"` } @@ -230,6 +239,7 @@ type IssuerParametersObservation struct { type IssuerParametersParameters struct { // The name of the Certificate Issuer. Possible values include Self (for self-signed certificate), or Unknown (for a certificate issuing authority like Let's Encrypt and Azure direct supported ones). Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -272,18 +282,23 @@ type KeyPropertiesObservation struct { type KeyPropertiesParameters struct { // Specifies the curve to use when creating an EC key. Possible values are P-256, P-256K, P-384, and P-521. This field will be required in a future release if key_type is EC or EC-HSM. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Curve *string `json:"curve,omitempty" tf:"curve,omitempty"` // Is this certificate exportable? Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Exportable *bool `json:"exportable,omitempty" tf:"exportable,omitempty"` // The size of the key used in the certificate. Possible values include 2048, 3072, and 4096 for RSA keys, or 256, 384, and 521 for EC keys. This property is required when using RSA keys. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional KeySize *float64 `json:"keySize,omitempty" tf:"key_size,omitempty"` // Specifies the type of key. Possible values are EC, EC-HSM, RSA, RSA-HSM and oct. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional KeyType *string `json:"keyType,omitempty" tf:"key_type,omitempty"` // Is the key reusable? Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ReuseKey *bool `json:"reuseKey,omitempty" tf:"reuse_key,omitempty"` } @@ -308,9 +323,11 @@ type LifetimeActionObservation struct { type LifetimeActionParameters struct { // A action block as defined below. + // +kubebuilder:validation:Optional Action []ActionParameters `json:"action,omitempty" tf:"action,omitempty"` // A trigger block as defined below. + // +kubebuilder:validation:Optional Trigger []TriggerParameters `json:"trigger,omitempty" tf:"trigger,omitempty"` } @@ -329,6 +346,7 @@ type SecretPropertiesObservation struct { type SecretPropertiesParameters struct { // The Content-Type of the Certificate, such as application/x-pkcs12 for a PFX or application/x-pem-file for a PEM. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ContentType *string `json:"contentType,omitempty" tf:"content_type,omitempty"` } @@ -359,12 +377,15 @@ type SubjectAlternativeNamesObservation struct { type SubjectAlternativeNamesParameters struct { // A list of alternative DNS names (FQDNs) identified by the Certificate. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DNSNames []*string `json:"dnsNames,omitempty" tf:"dns_names,omitempty"` // A list of email addresses identified by this Certificate. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Emails []*string `json:"emails,omitempty" tf:"emails,omitempty"` // A list of User Principal Names identified by the Certificate. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Upns []*string `json:"upns,omitempty" tf:"upns,omitempty"` } @@ -389,9 +410,11 @@ type TriggerObservation struct { type TriggerParameters struct { // The number of days before the Certificate expires that the action associated with this Trigger should run. Changing this forces a new resource to be created. Conflicts with lifetime_percentage. + // +kubebuilder:validation:Optional DaysBeforeExpiry *float64 `json:"daysBeforeExpiry,omitempty" tf:"days_before_expiry,omitempty"` // The percentage at which during the Certificates Lifetime the action associated with this Trigger should run. Changing this forces a new resource to be created. Conflicts with days_before_expiry. + // +kubebuilder:validation:Optional LifetimePercentage *float64 `json:"lifetimePercentage,omitempty" tf:"lifetime_percentage,omitempty"` } @@ -434,18 +457,23 @@ type X509CertificatePropertiesObservation struct { type X509CertificatePropertiesParameters struct { // A list of Extended/Enhanced Key Usages. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ExtendedKeyUsage []*string `json:"extendedKeyUsage,omitempty" tf:"extended_key_usage,omitempty"` // A list of uses associated with this Key. Possible values include cRLSign, dataEncipherment, decipherOnly, digitalSignature, encipherOnly, keyAgreement, keyCertSign, keyEncipherment and nonRepudiation and are case-sensitive. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional KeyUsage []*string `json:"keyUsage,omitempty" tf:"key_usage,omitempty"` // The Certificate's Subject. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Subject *string `json:"subject,omitempty" tf:"subject,omitempty"` // A subject_alternative_names block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SubjectAlternativeNames []SubjectAlternativeNamesParameters `json:"subjectAlternativeNames,omitempty" tf:"subject_alternative_names,omitempty"` // The Certificates Validity Period in Months. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ValidityInMonths *float64 `json:"validityInMonths,omitempty" tf:"validity_in_months,omitempty"` } diff --git a/apis/keyvault/v1beta1/zz_certificatecontacts_types.go b/apis/keyvault/v1beta1/zz_certificatecontacts_types.go index 58d28b937..693561d11 100755 --- a/apis/keyvault/v1beta1/zz_certificatecontacts_types.go +++ b/apis/keyvault/v1beta1/zz_certificatecontacts_types.go @@ -40,12 +40,15 @@ type CertificateContactsContactObservation struct { type CertificateContactsContactParameters struct { // E-mail address of the contact. + // +kubebuilder:validation:Optional Email *string `json:"email,omitempty" tf:"email,omitempty"` // Name of the contact. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Phone number of the contact. + // +kubebuilder:validation:Optional Phone *string `json:"phone,omitempty" tf:"phone,omitempty"` } @@ -70,6 +73,7 @@ type CertificateContactsObservation struct { type CertificateContactsParameters struct { // One or more contact blocks as defined below. + // +kubebuilder:validation:Optional Contact []CertificateContactsContactParameters `json:"contact,omitempty" tf:"contact,omitempty"` // The ID of the Key Vault. Changing this forces a new resource to be created. diff --git a/apis/keyvault/v1beta1/zz_certificateissuer_types.go b/apis/keyvault/v1beta1/zz_certificateissuer_types.go index 40c5d5dec..4d494ef9c 100755 --- a/apis/keyvault/v1beta1/zz_certificateissuer_types.go +++ b/apis/keyvault/v1beta1/zz_certificateissuer_types.go @@ -46,15 +46,19 @@ type AdminObservation struct { type AdminParameters struct { // E-mail address of the admin. + // +kubebuilder:validation:Optional EmailAddress *string `json:"emailAddress,omitempty" tf:"email_address,omitempty"` // First name of the admin. + // +kubebuilder:validation:Optional FirstName *string `json:"firstName,omitempty" tf:"first_name,omitempty"` // Last name of the admin. + // +kubebuilder:validation:Optional LastName *string `json:"lastName,omitempty" tf:"last_name,omitempty"` // Phone number of the admin. + // +kubebuilder:validation:Optional Phone *string `json:"phone,omitempty" tf:"phone,omitempty"` } @@ -97,9 +101,11 @@ type CertificateIssuerObservation struct { type CertificateIssuerParameters struct { // The account number with the third-party Certificate Issuer. + // +kubebuilder:validation:Optional AccountID *string `json:"accountId,omitempty" tf:"account_id,omitempty"` // One or more admin blocks as defined below. + // +kubebuilder:validation:Optional Admin []AdminParameters `json:"admin,omitempty" tf:"admin,omitempty"` // The ID of the Key Vault in which to create the Certificate Issuer. Changing this forces a new resource to be created. @@ -117,6 +123,7 @@ type CertificateIssuerParameters struct { KeyVaultIDSelector *v1.Selector `json:"keyVaultIdSelector,omitempty" tf:"-"` // The ID of the organization as provided to the issuer. + // +kubebuilder:validation:Optional OrgID *string `json:"orgId,omitempty" tf:"org_id,omitempty"` // The password associated with the account and organization ID at the third-party Certificate Issuer. If not specified, will not overwrite any previous value. @@ -124,6 +131,7 @@ type CertificateIssuerParameters struct { PasswordSecretRef *v1.SecretKeySelector `json:"passwordSecretRef,omitempty" tf:"-"` // The name of the third-party Certificate Issuer. Possible values are: DigiCert, GlobalSign, OneCertV2-PrivateCA, OneCertV2-PublicCA and SslAdminV2. + // +kubebuilder:validation:Optional ProviderName *string `json:"providerName,omitempty" tf:"provider_name,omitempty"` } diff --git a/apis/keyvault/v1beta1/zz_key_types.go b/apis/keyvault/v1beta1/zz_key_types.go index 51a1cc289..0d1adb0d7 100755 --- a/apis/keyvault/v1beta1/zz_key_types.go +++ b/apis/keyvault/v1beta1/zz_key_types.go @@ -34,9 +34,11 @@ type AutomaticObservation struct { type AutomaticParameters struct { // Rotate automatically at a duration after create as an ISO 8601 duration. + // +kubebuilder:validation:Optional TimeAfterCreation *string `json:"timeAfterCreation,omitempty" tf:"time_after_creation,omitempty"` // Rotate automatically at a duration before expiry as an ISO 8601 duration. + // +kubebuilder:validation:Optional TimeBeforeExpiry *string `json:"timeBeforeExpiry,omitempty" tf:"time_before_expiry,omitempty"` } @@ -133,18 +135,23 @@ type KeyObservation struct { type KeyParameters struct { // Specifies the curve to use when creating an EC key. Possible values are P-256, P-256K, P-384, and P-521. This field will be required in a future release if key_type is EC or EC-HSM. The API will default to P-256 if nothing is specified. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Curve *string `json:"curve,omitempty" tf:"curve,omitempty"` // Expiration UTC datetime (Y-m-d'T'H:M:S'Z'). + // +kubebuilder:validation:Optional ExpirationDate *string `json:"expirationDate,omitempty" tf:"expiration_date,omitempty"` // A list of JSON web key operations. Possible values include: decrypt, encrypt, sign, unwrapKey, verify and wrapKey. Please note these values are case sensitive. + // +kubebuilder:validation:Optional KeyOpts []*string `json:"keyOpts,omitempty" tf:"key_opts,omitempty"` // Specifies the Size of the RSA key to create in bytes. For example, 1024 or 2048. Note: This field is required if key_type is RSA or RSA-HSM. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional KeySize *float64 `json:"keySize,omitempty" tf:"key_size,omitempty"` // Specifies the Key Type to use for this Key Vault Key. Possible values are EC (Elliptic Curve), EC-HSM, RSA and RSA-HSM. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional KeyType *string `json:"keyType,omitempty" tf:"key_type,omitempty"` // The ID of the Key Vault where the Key should be created. Changing this forces a new resource to be created. @@ -162,12 +169,15 @@ type KeyParameters struct { KeyVaultIDSelector *v1.Selector `json:"keyVaultIdSelector,omitempty" tf:"-"` // Key not usable before the provided UTC datetime (Y-m-d'T'H:M:S'Z'). + // +kubebuilder:validation:Optional NotBeforeDate *string `json:"notBeforeDate,omitempty" tf:"not_before_date,omitempty"` // A rotation_policy block as defined below. + // +kubebuilder:validation:Optional RotationPolicy []RotationPolicyParameters `json:"rotationPolicy,omitempty" tf:"rotation_policy,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -198,12 +208,15 @@ type RotationPolicyObservation struct { type RotationPolicyParameters struct { // An automatic block as defined below. + // +kubebuilder:validation:Optional Automatic []AutomaticParameters `json:"automatic,omitempty" tf:"automatic,omitempty"` // Expire a Key Vault Key after given duration as an ISO 8601 duration. + // +kubebuilder:validation:Optional ExpireAfter *string `json:"expireAfter,omitempty" tf:"expire_after,omitempty"` // Notify at a given duration before expiry as an ISO 8601 duration. Default is P30D. + // +kubebuilder:validation:Optional NotifyBeforeExpiry *string `json:"notifyBeforeExpiry,omitempty" tf:"notify_before_expiry,omitempty"` } diff --git a/apis/keyvault/v1beta1/zz_managedhardwaresecuritymodule_types.go b/apis/keyvault/v1beta1/zz_managedhardwaresecuritymodule_types.go index 71f60f9a0..a1dd5e227 100755 --- a/apis/keyvault/v1beta1/zz_managedhardwaresecuritymodule_types.go +++ b/apis/keyvault/v1beta1/zz_managedhardwaresecuritymodule_types.go @@ -64,9 +64,11 @@ type ManagedHardwareSecurityModuleNetworkAclsObservation struct { type ManagedHardwareSecurityModuleNetworkAclsParameters struct { // Specifies which traffic can bypass the network rules. Possible values are AzureServices and None. + // +kubebuilder:validation:Optional Bypass *string `json:"bypass,omitempty" tf:"bypass,omitempty"` // The Default Action to use. Possible values are Allow and Deny. + // +kubebuilder:validation:Optional DefaultAction *string `json:"defaultAction,omitempty" tf:"default_action,omitempty"` } @@ -112,18 +114,23 @@ type ManagedHardwareSecurityModuleObservation struct { type ManagedHardwareSecurityModuleParameters struct { // Specifies a list of administrators object IDs for the key vault Managed Hardware Security Module. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional AdminObjectIds []*string `json:"adminObjectIds,omitempty" tf:"admin_object_ids,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // A network_acls block as defined below. + // +kubebuilder:validation:Optional NetworkAcls []ManagedHardwareSecurityModuleNetworkAclsParameters `json:"networkAcls,omitempty" tf:"network_acls,omitempty"` // Whether traffic from public networks is permitted. Defaults to true. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // Is Purge Protection enabled for this Key Vault Managed Hardware Security Module? Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PurgeProtectionEnabled *bool `json:"purgeProtectionEnabled,omitempty" tf:"purge_protection_enabled,omitempty"` // The name of the resource group in which to create the Key Vault Managed Hardware Security Module. Changing this forces a new resource to be created. @@ -140,15 +147,19 @@ type ManagedHardwareSecurityModuleParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The Name of the SKU used for this Key Vault Managed Hardware Security Module. Possible value is Standard_B1. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // The number of days that items should be retained for once soft-deleted. This value can be between 7 and 90 days. Defaults to 90. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SoftDeleteRetentionDays *float64 `json:"softDeleteRetentionDays,omitempty" tf:"soft_delete_retention_days,omitempty"` // A mapping of tags to assign to the resource. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The Azure Active Directory Tenant ID that should be used for authenticating requests to the key vault Managed Hardware Security Module. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` } diff --git a/apis/keyvault/v1beta1/zz_managedstorageaccount_types.go b/apis/keyvault/v1beta1/zz_managedstorageaccount_types.go index f512e716c..4fa4c02d9 100755 --- a/apis/keyvault/v1beta1/zz_managedstorageaccount_types.go +++ b/apis/keyvault/v1beta1/zz_managedstorageaccount_types.go @@ -69,9 +69,11 @@ type ManagedStorageAccountParameters struct { KeyVaultIDSelector *v1.Selector `json:"keyVaultIdSelector,omitempty" tf:"-"` // Should Storage Account access key be regenerated periodically? + // +kubebuilder:validation:Optional RegenerateKeyAutomatically *bool `json:"regenerateKeyAutomatically,omitempty" tf:"regenerate_key_automatically,omitempty"` // How often Storage Account access key should be regenerated. Value needs to be in ISO 8601 duration format. + // +kubebuilder:validation:Optional RegenerationPeriod *string `json:"regenerationPeriod,omitempty" tf:"regeneration_period,omitempty"` // The ID of the Storage Account. @@ -89,9 +91,11 @@ type ManagedStorageAccountParameters struct { StorageAccountIDSelector *v1.Selector `json:"storageAccountIdSelector,omitempty" tf:"-"` // Which Storage Account access key that is managed by Key Vault. Possible values are key1 and key2. + // +kubebuilder:validation:Optional StorageAccountKey *string `json:"storageAccountKey,omitempty" tf:"storage_account_key,omitempty"` // A mapping of tags which should be assigned to the Key Vault Managed Storage Account. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/keyvault/v1beta1/zz_managedstorageaccountsastokendefinition_types.go b/apis/keyvault/v1beta1/zz_managedstorageaccountsastokendefinition_types.go index 1e7149774..e6f1a776d 100755 --- a/apis/keyvault/v1beta1/zz_managedstorageaccountsastokendefinition_types.go +++ b/apis/keyvault/v1beta1/zz_managedstorageaccountsastokendefinition_types.go @@ -69,15 +69,19 @@ type ManagedStorageAccountSASTokenDefinitionParameters struct { ManagedStorageAccountIDSelector *v1.Selector `json:"managedStorageAccountIdSelector,omitempty" tf:"-"` // The SAS definition token template signed with an arbitrary key. Tokens created according to the SAS definition will have the same properties as the template, but regenerated with a new validity period. + // +kubebuilder:validation:Optional SASTemplateURI *string `json:"sasTemplateUri,omitempty" tf:"sas_template_uri,omitempty"` // The type of SAS token the SAS definition will create. Possible values are account and service. + // +kubebuilder:validation:Optional SASType *string `json:"sasType,omitempty" tf:"sas_type,omitempty"` // A mapping of tags which should be assigned to the SAS Definition. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Validity period of SAS token. Value needs to be in ISO 8601 duration format. + // +kubebuilder:validation:Optional ValidityPeriod *string `json:"validityPeriod,omitempty" tf:"validity_period,omitempty"` } diff --git a/apis/keyvault/v1beta1/zz_secret_types.go b/apis/keyvault/v1beta1/zz_secret_types.go index 2ac229891..5a794daff 100755 --- a/apis/keyvault/v1beta1/zz_secret_types.go +++ b/apis/keyvault/v1beta1/zz_secret_types.go @@ -64,9 +64,11 @@ type SecretObservation struct { type SecretParameters struct { // Specifies the content type for the Key Vault Secret. + // +kubebuilder:validation:Optional ContentType *string `json:"contentType,omitempty" tf:"content_type,omitempty"` // Expiration UTC datetime (Y-m-d'T'H:M:S'Z'). + // +kubebuilder:validation:Optional ExpirationDate *string `json:"expirationDate,omitempty" tf:"expiration_date,omitempty"` // The ID of the Key Vault where the Secret should be created. Changing this forces a new resource to be created. @@ -84,9 +86,11 @@ type SecretParameters struct { KeyVaultIDSelector *v1.Selector `json:"keyVaultIdSelector,omitempty" tf:"-"` // Key not usable before the provided UTC datetime (Y-m-d'T'H:M:S'Z'). + // +kubebuilder:validation:Optional NotBeforeDate *string `json:"notBeforeDate,omitempty" tf:"not_before_date,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the value of the Key Vault Secret. diff --git a/apis/keyvault/v1beta1/zz_vault_types.go b/apis/keyvault/v1beta1/zz_vault_types.go index 1d62e9ed3..0c4b538aa 100755 --- a/apis/keyvault/v1beta1/zz_vault_types.go +++ b/apis/keyvault/v1beta1/zz_vault_types.go @@ -70,12 +70,15 @@ type ContactObservation struct { type ContactParameters struct { // E-mail address of the contact. + // +kubebuilder:validation:Optional Email *string `json:"email,omitempty" tf:"email,omitempty"` // Name of the contact. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Phone number of the contact. + // +kubebuilder:validation:Optional Phone *string `json:"phone,omitempty" tf:"phone,omitempty"` } @@ -112,15 +115,19 @@ type NetworkAclsObservation struct { type NetworkAclsParameters struct { // Specifies which traffic can bypass the network rules. Possible values are AzureServices and None. + // +kubebuilder:validation:Optional Bypass *string `json:"bypass,omitempty" tf:"bypass,omitempty"` // The Default Action to use when no rules match from ip_rules / virtual_network_subnet_ids. Possible values are Allow and Deny. + // +kubebuilder:validation:Optional DefaultAction *string `json:"defaultAction,omitempty" tf:"default_action,omitempty"` // One or more IP Addresses, or CIDR Blocks which should be able to access the Key Vault. + // +kubebuilder:validation:Optional IPRules []*string `json:"ipRules,omitempty" tf:"ip_rules,omitempty"` // One or more Subnet IDs which should be able to access this Key Vault. + // +kubebuilder:validation:Optional VirtualNetworkSubnetIds []*string `json:"virtualNetworkSubnetIds,omitempty" tf:"virtual_network_subnet_ids,omitempty"` } @@ -223,30 +230,39 @@ type VaultObservation struct { type VaultParameters struct { // One or more contact block as defined below. + // +kubebuilder:validation:Optional Contact []ContactParameters `json:"contact,omitempty" tf:"contact,omitempty"` // Boolean flag to specify whether Azure Key Vault uses Role Based Access Control (RBAC) for authorization of data actions. + // +kubebuilder:validation:Optional EnableRbacAuthorization *bool `json:"enableRbacAuthorization,omitempty" tf:"enable_rbac_authorization,omitempty"` // Boolean flag to specify whether Azure Virtual Machines are permitted to retrieve certificates stored as secrets from the key vault. + // +kubebuilder:validation:Optional EnabledForDeployment *bool `json:"enabledForDeployment,omitempty" tf:"enabled_for_deployment,omitempty"` // Boolean flag to specify whether Azure Disk Encryption is permitted to retrieve secrets from the vault and unwrap keys. + // +kubebuilder:validation:Optional EnabledForDiskEncryption *bool `json:"enabledForDiskEncryption,omitempty" tf:"enabled_for_disk_encryption,omitempty"` // Boolean flag to specify whether Azure Resource Manager is permitted to retrieve secrets from the key vault. + // +kubebuilder:validation:Optional EnabledForTemplateDeployment *bool `json:"enabledForTemplateDeployment,omitempty" tf:"enabled_for_template_deployment,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // A network_acls block as defined below. + // +kubebuilder:validation:Optional NetworkAcls []NetworkAclsParameters `json:"networkAcls,omitempty" tf:"network_acls,omitempty"` // Whether public network access is allowed for this Key Vault. Defaults to true. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // Is Purge Protection enabled for this Key Vault? + // +kubebuilder:validation:Optional PurgeProtectionEnabled *bool `json:"purgeProtectionEnabled,omitempty" tf:"purge_protection_enabled,omitempty"` // The name of the resource group in which to create the Key Vault. Changing this forces a new resource to be created. @@ -263,15 +279,19 @@ type VaultParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The Name of the SKU used for this Key Vault. Possible values are standard and premium. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // The number of days that items should be retained for once soft-deleted. This value can be between 7 and 90 (the default) days. + // +kubebuilder:validation:Optional SoftDeleteRetentionDays *float64 `json:"softDeleteRetentionDays,omitempty" tf:"soft_delete_retention_days,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The Azure Active Directory tenant ID that should be used for authenticating requests to the key vault. + // +kubebuilder:validation:Optional TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` } diff --git a/apis/kusto/v1beta1/zz_attacheddatabaseconfiguration_types.go b/apis/kusto/v1beta1/zz_attacheddatabaseconfiguration_types.go index 78331f94b..754a66a1e 100755 --- a/apis/kusto/v1beta1/zz_attacheddatabaseconfiguration_types.go +++ b/apis/kusto/v1beta1/zz_attacheddatabaseconfiguration_types.go @@ -104,12 +104,15 @@ type AttachedDatabaseConfigurationParameters struct { DatabaseNameSelector *v1.Selector `json:"databaseNameSelector,omitempty" tf:"-"` // The default principals modification kind. Valid values are: None (default), Replace and Union. + // +kubebuilder:validation:Optional DefaultPrincipalModificationKind *string `json:"defaultPrincipalModificationKind,omitempty" tf:"default_principal_modification_kind,omitempty"` // Specifies the location of the Kusto Cluster for which the configuration will be created. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the Kusto Attached Database Configuration to create. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the resource group of the Kusto Cluster for which the configuration will be created. Changing this forces a new resource to be created. @@ -126,6 +129,7 @@ type AttachedDatabaseConfigurationParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A sharing block as defined below. + // +kubebuilder:validation:Optional Sharing []SharingParameters `json:"sharing,omitempty" tf:"sharing,omitempty"` } @@ -174,21 +178,27 @@ type SharingObservation struct { type SharingParameters struct { // List of external tables exclude from the follower database. + // +kubebuilder:validation:Optional ExternalTablesToExclude []*string `json:"externalTablesToExclude,omitempty" tf:"external_tables_to_exclude,omitempty"` // List of external tables to include in the follower database. + // +kubebuilder:validation:Optional ExternalTablesToInclude []*string `json:"externalTablesToInclude,omitempty" tf:"external_tables_to_include,omitempty"` // List of materialized views exclude from the follower database. + // +kubebuilder:validation:Optional MaterializedViewsToExclude []*string `json:"materializedViewsToExclude,omitempty" tf:"materialized_views_to_exclude,omitempty"` // List of materialized views to include in the follower database. + // +kubebuilder:validation:Optional MaterializedViewsToInclude []*string `json:"materializedViewsToInclude,omitempty" tf:"materialized_views_to_include,omitempty"` // List of tables to exclude from the follower database. + // +kubebuilder:validation:Optional TablesToExclude []*string `json:"tablesToExclude,omitempty" tf:"tables_to_exclude,omitempty"` // List of tables to include in the follower database. + // +kubebuilder:validation:Optional TablesToInclude []*string `json:"tablesToInclude,omitempty" tf:"tables_to_include,omitempty"` } diff --git a/apis/kusto/v1beta1/zz_cluster_types.go b/apis/kusto/v1beta1/zz_cluster_types.go index fa757d3fa..1d939a31d 100755 --- a/apis/kusto/v1beta1/zz_cluster_types.go +++ b/apis/kusto/v1beta1/zz_cluster_types.go @@ -154,45 +154,59 @@ type ClusterObservation struct { type ClusterParameters struct { // List of allowed FQDNs(Fully Qualified Domain Name) for egress from Cluster. + // +kubebuilder:validation:Optional AllowedFqdns []*string `json:"allowedFqdns,omitempty" tf:"allowed_fqdns,omitempty"` // The list of ips in the format of CIDR allowed to connect to the cluster. + // +kubebuilder:validation:Optional AllowedIPRanges []*string `json:"allowedIpRanges,omitempty" tf:"allowed_ip_ranges,omitempty"` // Specifies if the cluster could be automatically stopped (due to lack of data or no activity for many days). Defaults to true. + // +kubebuilder:validation:Optional AutoStopEnabled *bool `json:"autoStopEnabled,omitempty" tf:"auto_stop_enabled,omitempty"` // Specifies if the cluster's disks are encrypted. + // +kubebuilder:validation:Optional DiskEncryptionEnabled *bool `json:"diskEncryptionEnabled,omitempty" tf:"disk_encryption_enabled,omitempty"` // Is the cluster's double encryption enabled? Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DoubleEncryptionEnabled *bool `json:"doubleEncryptionEnabled,omitempty" tf:"double_encryption_enabled,omitempty"` // . The engine type that will be used in the backend. Possible values are V2 and V3. Defaults to V2. Changing this forces a new Kusto Cluster to be created. + // +kubebuilder:validation:Optional Engine *string `json:"engine,omitempty" tf:"engine,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // An list of language_extensions to enable. Valid values are: PYTHON and R. + // +kubebuilder:validation:Optional LanguageExtensions []*string `json:"languageExtensions,omitempty" tf:"language_extensions,omitempty"` // The location where the Kusto Cluster should be created. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // An optimized_auto_scale block as defined below. + // +kubebuilder:validation:Optional OptimizedAutoScale []OptimizedAutoScaleParameters `json:"optimizedAutoScale,omitempty" tf:"optimized_auto_scale,omitempty"` // Whether to restrict outbound network access. Value is optional but if passed in, must be true or false, default is false. + // +kubebuilder:validation:Optional OutboundNetworkAccessRestricted *bool `json:"outboundNetworkAccessRestricted,omitempty" tf:"outbound_network_access_restricted,omitempty"` // Indicates what public IP type to create - IPv4 (default), or DualStack (both IPv4 and IPv6). + // +kubebuilder:validation:Optional PublicIPType *string `json:"publicIpType,omitempty" tf:"public_ip_type,omitempty"` // Is the public network access enabled? Defaults to true. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // Specifies if the purge operations are enabled. + // +kubebuilder:validation:Optional PurgeEnabled *bool `json:"purgeEnabled,omitempty" tf:"purge_enabled,omitempty"` // Specifies the Resource Group where the Kusto Cluster should exist. Changing this forces a new resource to be created. @@ -209,21 +223,27 @@ type ClusterParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A sku block as defined below. + // +kubebuilder:validation:Optional Sku []SkuParameters `json:"sku,omitempty" tf:"sku,omitempty"` // Specifies if the streaming ingest is enabled. + // +kubebuilder:validation:Optional StreamingIngestionEnabled *bool `json:"streamingIngestionEnabled,omitempty" tf:"streaming_ingestion_enabled,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies a list of tenant IDs that are trusted by the cluster. Default setting trusts all other tenants. Use trusted_external_tenants = ["*"] to explicitly allow all other tenants, trusted_external_tenants = ["MyTenantOnly"] for only your tenant or trusted_external_tenants = ["", ""] to allow specific other tenants. + // +kubebuilder:validation:Optional TrustedExternalTenants []*string `json:"trustedExternalTenants,omitempty" tf:"trusted_external_tenants,omitempty"` // A virtual_network_configuration block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VirtualNetworkConfiguration []VirtualNetworkConfigurationParameters `json:"virtualNetworkConfiguration,omitempty" tf:"virtual_network_configuration,omitempty"` // Specifies a list of Availability Zones in which this Kusto Cluster should be located. Changing this forces a new Kusto Cluster to be created. + // +kubebuilder:validation:Optional Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } @@ -254,9 +274,11 @@ type IdentityObservation struct { type IdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Kusto Cluster. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that is configured on this Kusto Cluster. Possible values are: SystemAssigned, UserAssigned and SystemAssigned, UserAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -281,9 +303,11 @@ type OptimizedAutoScaleObservation struct { type OptimizedAutoScaleParameters struct { // The maximum number of allowed instances. Must between 0 and 1000. + // +kubebuilder:validation:Optional MaximumInstances *float64 `json:"maximumInstances,omitempty" tf:"maximum_instances,omitempty"` // The minimum number of allowed instances. Must between 0 and 1000. + // +kubebuilder:validation:Optional MinimumInstances *float64 `json:"minimumInstances,omitempty" tf:"minimum_instances,omitempty"` } @@ -308,9 +332,11 @@ type SkuObservation struct { type SkuParameters struct { // Specifies the node count for the cluster. Boundaries depend on the SKU name. + // +kubebuilder:validation:Optional Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` // The name of the SKU. Valid values are: Dev(No SLA)_Standard_D11_v2, Dev(No SLA)_Standard_E2a_v4, Standard_D11_v2, Standard_D12_v2, Standard_D13_v2, Standard_D14_v2, Standard_D16d_v5, Standard_D32d_v4, Standard_D32d_v5, Standard_DS13_v2+1TB_PS, Standard_DS13_v2+2TB_PS, Standard_DS14_v2+3TB_PS, Standard_DS14_v2+4TB_PS, Standard_E16a_v4, Standard_E16ads_v5, Standard_E16as_v4+3TB_PS, Standard_E16as_v4+4TB_PS, Standard_E16as_v5+3TB_PS, Standard_E16as_v5+4TB_PS, Standard_E16s_v4+3TB_PS, Standard_E16s_v4+4TB_PS, Standard_E16s_v5+3TB_PS, Standard_E16s_v5+4TB_PS, Standard_E2a_v4, Standard_E2ads_v5,Standard_E4a_v4, Standard_E4ads_v5, Standard_E64i_v3, Standard_E80ids_v4, Standard_E8a_v4, Standard_E8ads_v5, Standard_E8as_v4+1TB_PS, Standard_E8as_v4+2TB_PS, Standard_E8as_v5+1TB_PS, Standard_E8as_v5+2TB_PS, Standard_E8s_v4+1TB_PS, Standard_E8s_v4+2TB_PS, Standard_E8s_v5+1TB_PS, Standard_E8s_v5+2TB_PS, Standard_L16s, Standard_L16s_v2, Standard_L4s, Standard_L8s, Standard_L8s_v2, "Standard_L8s_v3", Standard_L16s_v3, Standard_L8as_v3, Standard_L16as_v3, Standard_EC8as_v5+1TB_PS, Standard_EC8as_v5+2TB_PS, Standard_EC16as_v5+3TB_PS, Standard_EC16as_v5+4TB_PS, Standard_EC8ads_v5, Standard_EC16ads_v5, Standard_E2d_v4, Standard_E4d_v4, Standard_E8d_v4, Standard_E16d_v4, Standard_E2d_v5, Standard_E4d_v5, Standard_E8d_v5 and Standard_E16d_v5. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -338,9 +364,11 @@ type VirtualNetworkConfigurationObservation struct { type VirtualNetworkConfigurationParameters struct { // Data management's service public IP address resource id. + // +kubebuilder:validation:Optional DataManagementPublicIPID *string `json:"dataManagementPublicIpId,omitempty" tf:"data_management_public_ip_id,omitempty"` // Engine service's public IP address resource id. + // +kubebuilder:validation:Optional EnginePublicIPID *string `json:"enginePublicIpId,omitempty" tf:"engine_public_ip_id,omitempty"` // The subnet resource id. diff --git a/apis/kusto/v1beta1/zz_clustermanagedprivateendpoint_types.go b/apis/kusto/v1beta1/zz_clustermanagedprivateendpoint_types.go index 60cd7d266..06d88baef 100755 --- a/apis/kusto/v1beta1/zz_clustermanagedprivateendpoint_types.go +++ b/apis/kusto/v1beta1/zz_clustermanagedprivateendpoint_types.go @@ -61,6 +61,7 @@ type ClusterManagedPrivateEndpointParameters struct { ClusterNameSelector *v1.Selector `json:"clusterNameSelector,omitempty" tf:"-"` // The group id in which the managed private endpoint is created. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional GroupID *string `json:"groupId,omitempty" tf:"group_id,omitempty"` // The ARM resource ID of the resource for which the managed private endpoint is created. Changing this forces a new resource to be created. @@ -92,6 +93,7 @@ type ClusterManagedPrivateEndpointParameters struct { PrivateLinkResourceRegionSelector *v1.Selector `json:"privateLinkResourceRegionSelector,omitempty" tf:"-"` // The user request message. + // +kubebuilder:validation:Optional RequestMessage *string `json:"requestMessage,omitempty" tf:"request_message,omitempty"` // Specifies the Resource Group where the Kusto Cluster should exist. Changing this forces a new resource to be created. diff --git a/apis/kusto/v1beta1/zz_clusterprincipalassignment_types.go b/apis/kusto/v1beta1/zz_clusterprincipalassignment_types.go index d34527ac5..4fe474a93 100755 --- a/apis/kusto/v1beta1/zz_clusterprincipalassignment_types.go +++ b/apis/kusto/v1beta1/zz_clusterprincipalassignment_types.go @@ -74,9 +74,11 @@ type ClusterPrincipalAssignmentParameters struct { ClusterNameSelector *v1.Selector `json:"clusterNameSelector,omitempty" tf:"-"` // The object id of the principal. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PrincipalID *string `json:"principalId,omitempty" tf:"principal_id,omitempty"` // The type of the principal. Valid values include App, Group, User. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PrincipalType *string `json:"principalType,omitempty" tf:"principal_type,omitempty"` // The name of the resource group in which to create the resource. Changing this forces a new resource to be created. @@ -93,9 +95,11 @@ type ClusterPrincipalAssignmentParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The cluster role assigned to the principal. Valid values include AllDatabasesAdmin and AllDatabasesViewer. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Role *string `json:"role,omitempty" tf:"role,omitempty"` // The tenant id in which the principal resides. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` } diff --git a/apis/kusto/v1beta1/zz_database_types.go b/apis/kusto/v1beta1/zz_database_types.go index e76758566..478a95573 100755 --- a/apis/kusto/v1beta1/zz_database_types.go +++ b/apis/kusto/v1beta1/zz_database_types.go @@ -65,9 +65,11 @@ type DatabaseParameters struct { ClusterNameSelector *v1.Selector `json:"clusterNameSelector,omitempty" tf:"-"` // The time the data that should be kept in cache for fast queries as ISO 8601 timespan. Default is unlimited. For more information see: ISO 8601 Timespan + // +kubebuilder:validation:Optional HotCachePeriod *string `json:"hotCachePeriod,omitempty" tf:"hot_cache_period,omitempty"` // The location where the Kusto Database should be created. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the Resource Group where the Kusto Database should exist. Changing this forces a new resource to be created. @@ -84,6 +86,7 @@ type DatabaseParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The time the data should be kept before it stops being accessible to queries as ISO 8601 timespan. Default is unlimited. For more information see: ISO 8601 Timespan + // +kubebuilder:validation:Optional SoftDeletePeriod *string `json:"softDeletePeriod,omitempty" tf:"soft_delete_period,omitempty"` } diff --git a/apis/kusto/v1beta1/zz_databaseprincipalassignment_types.go b/apis/kusto/v1beta1/zz_databaseprincipalassignment_types.go index 15577c73b..5b676a54f 100755 --- a/apis/kusto/v1beta1/zz_databaseprincipalassignment_types.go +++ b/apis/kusto/v1beta1/zz_databaseprincipalassignment_types.go @@ -90,9 +90,11 @@ type DatabasePrincipalAssignmentParameters struct { DatabaseNameSelector *v1.Selector `json:"databaseNameSelector,omitempty" tf:"-"` // The object id of the principal. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PrincipalID *string `json:"principalId,omitempty" tf:"principal_id,omitempty"` // The type of the principal. Valid values include App, Group, User. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PrincipalType *string `json:"principalType,omitempty" tf:"principal_type,omitempty"` // The name of the resource group in which to create the resource. Changing this forces a new resource to be created. @@ -109,9 +111,11 @@ type DatabasePrincipalAssignmentParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The database role assigned to the principal. Valid values include Admin, Ingestor, Monitor, UnrestrictedViewer, User and Viewer. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Role *string `json:"role,omitempty" tf:"role,omitempty"` // The tenant id in which the principal resides. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` } diff --git a/apis/kusto/v1beta1/zz_eventgriddataconnection_types.go b/apis/kusto/v1beta1/zz_eventgriddataconnection_types.go index a7d3a9293..472929924 100755 --- a/apis/kusto/v1beta1/zz_eventgriddataconnection_types.go +++ b/apis/kusto/v1beta1/zz_eventgriddataconnection_types.go @@ -97,6 +97,7 @@ type EventGridDataConnectionObservation struct { type EventGridDataConnectionParameters struct { // Specifies the blob storage event type that needs to be processed. Possible Values are Microsoft.Storage.BlobCreated and Microsoft.Storage.BlobRenamed. Defaults to Microsoft.Storage.BlobCreated. + // +kubebuilder:validation:Optional BlobStorageEventType *string `json:"blobStorageEventType,omitempty" tf:"blob_storage_event_type,omitempty"` // Specifies the name of the Kusto Cluster this data connection will be added to. Changing this forces a new resource to be created. @@ -113,6 +114,7 @@ type EventGridDataConnectionParameters struct { ClusterNameSelector *v1.Selector `json:"clusterNameSelector,omitempty" tf:"-"` // Specifies the data format of the EventHub messages. Allowed values: APACHEAVRO, AVRO, CSV, JSON, MULTIJSON, ORC, PARQUET, PSV, RAW, SCSV, SINGLEJSON, SOHSV, TSV, TSVE, TXT and W3CLOGFILE. + // +kubebuilder:validation:Optional DataFormat *string `json:"dataFormat,omitempty" tf:"data_format,omitempty"` // Specifies the name of the Kusto Database this data connection will be added to. Changing this forces a new resource to be created. @@ -129,9 +131,11 @@ type EventGridDataConnectionParameters struct { DatabaseNameSelector *v1.Selector `json:"databaseNameSelector,omitempty" tf:"-"` // Indication for database routing information from the data connection, by default only database routing information is allowed. Allowed values: Single, Multi. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DatabaseRoutingType *string `json:"databaseRoutingType,omitempty" tf:"database_routing_type,omitempty"` // The resource ID of the event grid that is subscribed to the storage account events. + // +kubebuilder:validation:Optional EventGridResourceID *string `json:"eventgridResourceId,omitempty" tf:"eventgrid_resource_id,omitempty"` // Specifies the Event Hub consumer group this data connection will use for ingestion. Changing this forces a new resource to be created. @@ -162,12 +166,15 @@ type EventGridDataConnectionParameters struct { EventHubIDSelector *v1.Selector `json:"eventhubIdSelector,omitempty" tf:"-"` // The location where the Kusto Database should be created. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Empty for non-managed identity based data connection. For system assigned identity, provide cluster resource Id. For user assigned identity (UAI) provide the UAI resource Id. + // +kubebuilder:validation:Optional ManagedIdentityResourceID *string `json:"managedIdentityResourceId,omitempty" tf:"managed_identity_resource_id,omitempty"` // Specifies the mapping rule used for the message ingestion. Mapping rule must exist before resource is created. + // +kubebuilder:validation:Optional MappingRuleName *string `json:"mappingRuleName,omitempty" tf:"mapping_rule_name,omitempty"` // Specifies the Resource Group where the Kusto Database should exist. Changing this forces a new resource to be created. @@ -184,6 +191,7 @@ type EventGridDataConnectionParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // is the first record of every file ignored? Defaults to false. + // +kubebuilder:validation:Optional SkipFirstRecord *bool `json:"skipFirstRecord,omitempty" tf:"skip_first_record,omitempty"` // Specifies the resource id of the Storage Account this data connection will use for ingestion. Changing this forces a new resource to be created. @@ -201,6 +209,7 @@ type EventGridDataConnectionParameters struct { StorageAccountIDSelector *v1.Selector `json:"storageAccountIdSelector,omitempty" tf:"-"` // Specifies the target table name used for the message ingestion. Table must exist before resource is created. + // +kubebuilder:validation:Optional TableName *string `json:"tableName,omitempty" tf:"table_name,omitempty"` } diff --git a/apis/kusto/v1beta1/zz_eventhubdataconnection_types.go b/apis/kusto/v1beta1/zz_eventhubdataconnection_types.go index 3c19248b7..ce8d47296 100755 --- a/apis/kusto/v1beta1/zz_eventhubdataconnection_types.go +++ b/apis/kusto/v1beta1/zz_eventhubdataconnection_types.go @@ -101,6 +101,7 @@ type EventHubDataConnectionParameters struct { ClusterNameSelector *v1.Selector `json:"clusterNameSelector,omitempty" tf:"-"` // Specifies compression type for the connection. Allowed values: GZip and None. Defaults to None. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Compression *string `json:"compression,omitempty" tf:"compression,omitempty"` // Specifies the EventHub consumer group this data connection will use for ingestion. Changing this forces a new resource to be created. @@ -117,6 +118,7 @@ type EventHubDataConnectionParameters struct { ConsumerGroupSelector *v1.Selector `json:"consumerGroupSelector,omitempty" tf:"-"` // Specifies the data format of the EventHub messages. Allowed values: APACHEAVRO, AVRO, CSV, JSON, MULTIJSON, ORC, PARQUET, PSV, RAW, SCSV, SINGLEJSON, SOHSV, TSVE, TSV, TXT, and W3CLOGFILE. + // +kubebuilder:validation:Optional DataFormat *string `json:"dataFormat,omitempty" tf:"data_format,omitempty"` // Specifies the name of the Kusto Database this data connection will be added to. Changing this forces a new resource to be created. @@ -133,6 +135,7 @@ type EventHubDataConnectionParameters struct { DatabaseNameSelector *v1.Selector `json:"databaseNameSelector,omitempty" tf:"-"` // Indication for database routing information from the data connection, by default only database routing information is allowed. Allowed values: Single, Multi. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DatabaseRoutingType *string `json:"databaseRoutingType,omitempty" tf:"database_routing_type,omitempty"` // Specifies the resource id of the EventHub this data connection will use for ingestion. Changing this forces a new resource to be created. @@ -150,15 +153,19 @@ type EventHubDataConnectionParameters struct { EventHubIDSelector *v1.Selector `json:"eventhubIdSelector,omitempty" tf:"-"` // Specifies a list of system properties for the Event Hub. + // +kubebuilder:validation:Optional EventSystemProperties []*string `json:"eventSystemProperties,omitempty" tf:"event_system_properties,omitempty"` // The resource ID of a managed identity (system or user assigned) to be used to authenticate with event hub. + // +kubebuilder:validation:Optional IdentityID *string `json:"identityId,omitempty" tf:"identity_id,omitempty"` // The location where the Kusto Database should be created. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the mapping rule used for the message ingestion. Mapping rule must exist before resource is created. + // +kubebuilder:validation:Optional MappingRuleName *string `json:"mappingRuleName,omitempty" tf:"mapping_rule_name,omitempty"` // Specifies the Resource Group where the Kusto Database should exist. Changing this forces a new resource to be created. @@ -175,6 +182,7 @@ type EventHubDataConnectionParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Specifies the target table name used for the message ingestion. Table must exist before resource is created. + // +kubebuilder:validation:Optional TableName *string `json:"tableName,omitempty" tf:"table_name,omitempty"` } diff --git a/apis/kusto/v1beta1/zz_iothubdataconnection_types.go b/apis/kusto/v1beta1/zz_iothubdataconnection_types.go index c04d646ce..85d4c9ab4 100755 --- a/apis/kusto/v1beta1/zz_iothubdataconnection_types.go +++ b/apis/kusto/v1beta1/zz_iothubdataconnection_types.go @@ -111,6 +111,7 @@ type IOTHubDataConnectionParameters struct { ConsumerGroupSelector *v1.Selector `json:"consumerGroupSelector,omitempty" tf:"-"` // Specifies the data format of the IoTHub messages. Allowed values: APACHEAVRO, AVRO, CSV, JSON, MULTIJSON, ORC, PARQUET, PSV, RAW, SCSV, SINGLEJSON, SOHSV, TSV, TSVE, TXT and W3CLOGFILE. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DataFormat *string `json:"dataFormat,omitempty" tf:"data_format,omitempty"` // Specifies the name of the Kusto Database this data connection will be added to. Changing this forces a new resource to be created. @@ -127,9 +128,11 @@ type IOTHubDataConnectionParameters struct { DatabaseNameSelector *v1.Selector `json:"databaseNameSelector,omitempty" tf:"-"` // Indication for database routing information from the data connection, by default only database routing information is allowed. Allowed values: Single, Multi. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DatabaseRoutingType *string `json:"databaseRoutingType,omitempty" tf:"database_routing_type,omitempty"` // Specifies the System Properties that each IoT Hub message should contain. Changing this forces a new resource to be created. Possible values are message-id, sequence-number, to, absolute-expiry-time, iothub-enqueuedtime, correlation-id, user-id, iothub-ack, iothub-connection-device-id, iothub-connection-auth-generation-id and iothub-connection-auth-method. + // +kubebuilder:validation:Optional EventSystemProperties []*string `json:"eventSystemProperties,omitempty" tf:"event_system_properties,omitempty"` // Specifies the resource id of the IotHub this data connection will use for ingestion. Changing this forces a new resource to be created. @@ -147,12 +150,15 @@ type IOTHubDataConnectionParameters struct { IOTHubIDSelector *v1.Selector `json:"iothubIdSelector,omitempty" tf:"-"` // The location where the Kusto Database should be created. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the mapping rule used for the message ingestion. Mapping rule must exist before resource is created. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional MappingRuleName *string `json:"mappingRuleName,omitempty" tf:"mapping_rule_name,omitempty"` // The name of the Kusto IotHub Data Connection to create. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the Resource Group where the Kusto Database should exist. Changing this forces a new resource to be created. @@ -182,6 +188,7 @@ type IOTHubDataConnectionParameters struct { SharedAccessPolicyNameSelector *v1.Selector `json:"sharedAccessPolicyNameSelector,omitempty" tf:"-"` // Specifies the target table name used for the message ingestion. Table must exist before resource is created. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional TableName *string `json:"tableName,omitempty" tf:"table_name,omitempty"` } diff --git a/apis/labservices/v1beta1/zz_labservicelab_types.go b/apis/labservices/v1beta1/zz_labservicelab_types.go index 703db8878..a146f30de 100755 --- a/apis/labservices/v1beta1/zz_labservicelab_types.go +++ b/apis/labservices/v1beta1/zz_labservicelab_types.go @@ -32,6 +32,7 @@ type AdminUserParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The username to use when signing in to Lab Service Lab VMs. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } @@ -68,15 +69,19 @@ type AutoShutdownObservation struct { type AutoShutdownParameters struct { // The amount of time a VM will stay running after a user disconnects if this behavior is enabled. This value must be formatted as an ISO 8601 string. + // +kubebuilder:validation:Optional DisconnectDelay *string `json:"disconnectDelay,omitempty" tf:"disconnect_delay,omitempty"` // The amount of time a VM will idle before it is shutdown if this behavior is enabled. This value must be formatted as an ISO 8601 string. + // +kubebuilder:validation:Optional IdleDelay *string `json:"idleDelay,omitempty" tf:"idle_delay,omitempty"` // The amount of time a VM will stay running before it is shutdown if no connection is made and this behavior is enabled. This value must be formatted as an ISO 8601 string. + // +kubebuilder:validation:Optional NoConnectDelay *string `json:"noConnectDelay,omitempty" tf:"no_connect_delay,omitempty"` // A VM will get shutdown when it has idled for a period of time. Possible values are LowUsage and UserAbsence. + // +kubebuilder:validation:Optional ShutdownOnIdle *string `json:"shutdownOnIdle,omitempty" tf:"shutdown_on_idle,omitempty"` } @@ -101,9 +106,11 @@ type ConnectionSettingObservation struct { type ConnectionSettingParameters struct { // The enabled access level for Client Access over RDP. Possible value is Public. + // +kubebuilder:validation:Optional ClientRdpAccess *string `json:"clientRdpAccess,omitempty" tf:"client_rdp_access,omitempty"` // The enabled access level for Client Access over SSH. Possible value is Public. + // +kubebuilder:validation:Optional ClientSSHAccess *string `json:"clientSshAccess,omitempty" tf:"client_ssh_access,omitempty"` } @@ -146,18 +153,23 @@ type ImageReferenceObservation struct { type ImageReferenceParameters struct { // The resource ID of the image. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ID *string `json:"id,omitempty" tf:"id,omitempty"` // The image offer if applicable. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Offer *string `json:"offer,omitempty" tf:"offer,omitempty"` // The image publisher. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` // A sku block as defined below. + // +kubebuilder:validation:Optional Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // The image version specified on creation. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` } @@ -242,21 +254,27 @@ type LabServiceLabObservation struct { type LabServiceLabParameters struct { // An auto_shutdown block as defined below. + // +kubebuilder:validation:Optional AutoShutdown []AutoShutdownParameters `json:"autoShutdown,omitempty" tf:"auto_shutdown,omitempty"` // A connection_setting block as defined below. + // +kubebuilder:validation:Optional ConnectionSetting []ConnectionSettingParameters `json:"connectionSetting,omitempty" tf:"connection_setting,omitempty"` // The description of the Lab Service Lab. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The resource ID of the Lab Plan that is used during resource creation to provide defaults and acts as a permission container when creating a Lab Service Lab via labs.azure.com. + // +kubebuilder:validation:Optional LabPlanID *string `json:"labPlanId,omitempty" tf:"lab_plan_id,omitempty"` // The Azure Region where the Lab Service Lab should exist. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // A network block as defined below. + // +kubebuilder:validation:Optional Network []NetworkParameters `json:"network,omitempty" tf:"network,omitempty"` // The name of the Resource Group where the Lab Service Lab should exist. Changing this forces a new resource to be created. @@ -273,18 +291,23 @@ type LabServiceLabParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A roster block as defined below. + // +kubebuilder:validation:Optional Roster []RosterParameters `json:"roster,omitempty" tf:"roster,omitempty"` // A security block as defined below. + // +kubebuilder:validation:Optional Security []SecurityParameters `json:"security,omitempty" tf:"security,omitempty"` // A mapping of tags which should be assigned to the Lab Service Lab. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The title of the Lab Service Lab. + // +kubebuilder:validation:Optional Title *string `json:"title,omitempty" tf:"title,omitempty"` // A virtual_machine block as defined below. + // +kubebuilder:validation:Optional VirtualMachine []VirtualMachineParameters `json:"virtualMachine,omitempty" tf:"virtual_machine,omitempty"` } @@ -339,6 +362,7 @@ type NonAdminUserParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The username to use when signing in to Lab Service Lab VMs. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } @@ -381,18 +405,23 @@ type RosterObservation struct { type RosterParameters struct { // The AAD group ID which this Lab Service Lab roster is populated from. + // +kubebuilder:validation:Optional ActiveDirectoryGroupID *string `json:"activeDirectoryGroupId,omitempty" tf:"active_directory_group_id,omitempty"` // The base URI identifying the lms instance. + // +kubebuilder:validation:Optional LmsInstance *string `json:"lmsInstance,omitempty" tf:"lms_instance,omitempty"` // The unique id of the Azure Lab Service tool in the lms. + // +kubebuilder:validation:Optional LtiClientID *string `json:"ltiClientId,omitempty" tf:"lti_client_id,omitempty"` // The unique context identifier for the Lab Service Lab in the lms. + // +kubebuilder:validation:Optional LtiContextID *string `json:"ltiContextId,omitempty" tf:"lti_context_id,omitempty"` // The URI of the names and roles service endpoint on the lms for the class attached to this Lab Service Lab. + // +kubebuilder:validation:Optional LtiRosterEndpoint *string `json:"ltiRosterEndpoint,omitempty" tf:"lti_roster_endpoint,omitempty"` } @@ -414,6 +443,7 @@ type SecurityObservation struct { type SecurityParameters struct { // Is open access enabled to allow any user or only specified users to register to a Lab Service Lab? + // +kubebuilder:validation:Optional OpenAccessEnabled *bool `json:"openAccessEnabled,omitempty" tf:"open_access_enabled,omitempty"` } @@ -438,9 +468,11 @@ type SkuObservation struct { type SkuParameters struct { // The capacity for the SKU. Possible values are between 0 and 400. + // +kubebuilder:validation:Optional Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` // The name of the SKU. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -501,27 +533,35 @@ type VirtualMachineObservation struct { type VirtualMachineParameters struct { // Is flagged to pre-install dedicated GPU drivers? Defaults to false. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional AdditionalCapabilityGpuDriversInstalled *bool `json:"additionalCapabilityGpuDriversInstalled,omitempty" tf:"additional_capability_gpu_drivers_installed,omitempty"` // An admin_user block as defined below. + // +kubebuilder:validation:Optional AdminUser []AdminUserParameters `json:"adminUser,omitempty" tf:"admin_user,omitempty"` // The create option to indicate what Lab Service Lab VMs are created from. Possible values are Image and TemplateVM. Defaults to Image. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional CreateOption *string `json:"createOption,omitempty" tf:"create_option,omitempty"` // An image_reference block as defined below. + // +kubebuilder:validation:Optional ImageReference []ImageReferenceParameters `json:"imageReference,omitempty" tf:"image_reference,omitempty"` // A non_admin_user block as defined below. + // +kubebuilder:validation:Optional NonAdminUser []NonAdminUserParameters `json:"nonAdminUser,omitempty" tf:"non_admin_user,omitempty"` // Is the shared password enabled with the same password for all user VMs? Defaults to false. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SharedPasswordEnabled *bool `json:"sharedPasswordEnabled,omitempty" tf:"shared_password_enabled,omitempty"` // A sku block as defined below. + // +kubebuilder:validation:Optional Sku []SkuParameters `json:"sku,omitempty" tf:"sku,omitempty"` // The initial quota allocated to each Lab Service Lab user. Defaults to PT0S. This value must be formatted as an ISO 8601 string. + // +kubebuilder:validation:Optional UsageQuota *string `json:"usageQuota,omitempty" tf:"usage_quota,omitempty"` } diff --git a/apis/labservices/v1beta1/zz_labserviceplan_types.go b/apis/labservices/v1beta1/zz_labserviceplan_types.go index be1e11d64..6a8b0320b 100755 --- a/apis/labservices/v1beta1/zz_labserviceplan_types.go +++ b/apis/labservices/v1beta1/zz_labserviceplan_types.go @@ -46,15 +46,19 @@ type DefaultAutoShutdownObservation struct { type DefaultAutoShutdownParameters struct { // The amount of time a VM will stay running after a user disconnects if this behavior is enabled. This value must be formatted as an ISO 8601 string. + // +kubebuilder:validation:Optional DisconnectDelay *string `json:"disconnectDelay,omitempty" tf:"disconnect_delay,omitempty"` // The amount of time a VM will idle before it is shutdown if this behavior is enabled. This value must be formatted as an ISO 8601 string. + // +kubebuilder:validation:Optional IdleDelay *string `json:"idleDelay,omitempty" tf:"idle_delay,omitempty"` // The amount of time a VM will stay running before it is shutdown if no connection is made and this behavior is enabled. This value must be formatted as an ISO 8601 string. + // +kubebuilder:validation:Optional NoConnectDelay *string `json:"noConnectDelay,omitempty" tf:"no_connect_delay,omitempty"` // Will a VM get shutdown when it has idled for a period of time? Possible values are LowUsage and UserAbsence. + // +kubebuilder:validation:Optional ShutdownOnIdle *string `json:"shutdownOnIdle,omitempty" tf:"shutdown_on_idle,omitempty"` } @@ -91,15 +95,19 @@ type DefaultConnectionObservation struct { type DefaultConnectionParameters struct { // The enabled access level for Client Access over RDP. Possible values are Private and Public. + // +kubebuilder:validation:Optional ClientRdpAccess *string `json:"clientRdpAccess,omitempty" tf:"client_rdp_access,omitempty"` // The enabled access level for Client Access over SSH. Possible values are Private and Public. + // +kubebuilder:validation:Optional ClientSSHAccess *string `json:"clientSshAccess,omitempty" tf:"client_ssh_access,omitempty"` // The enabled access level for Web Access over RDP. Possible values are Private and Public. + // +kubebuilder:validation:Optional WebRdpAccess *string `json:"webRdpAccess,omitempty" tf:"web_rdp_access,omitempty"` // The enabled access level for Web Access over SSH. Possible values are Private and Public. + // +kubebuilder:validation:Optional WebSSHAccess *string `json:"webSshAccess,omitempty" tf:"web_ssh_access,omitempty"` } @@ -163,12 +171,15 @@ type LabServicePlanObservation struct { type LabServicePlanParameters struct { // The allowed regions for the lab creator to use when creating labs using this Lab Service Plan. The allowed region's count must be between 1 and 28. + // +kubebuilder:validation:Optional AllowedRegions []*string `json:"allowedRegions,omitempty" tf:"allowed_regions,omitempty"` // A default_auto_shutdown block as defined below. + // +kubebuilder:validation:Optional DefaultAutoShutdown []DefaultAutoShutdownParameters `json:"defaultAutoShutdown,omitempty" tf:"default_auto_shutdown,omitempty"` // A default_connection block as defined below. + // +kubebuilder:validation:Optional DefaultConnection []DefaultConnectionParameters `json:"defaultConnection,omitempty" tf:"default_connection,omitempty"` // The resource ID of the Subnet for the Lab Service Plan network profile. @@ -186,6 +197,7 @@ type LabServicePlanParameters struct { DefaultNetworkSubnetIDSelector *v1.Selector `json:"defaultNetworkSubnetIdSelector,omitempty" tf:"-"` // The Azure Region where the Lab Service Plan 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 where the Lab Service Plan should exist. Changing this forces a new resource to be created. @@ -202,12 +214,15 @@ type LabServicePlanParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The resource ID of the Shared Image Gallery attached to this Lab Service Plan. When saving a lab template virtual machine image it will be persisted in this gallery. The shared images from the gallery can be made available to use when creating new labs. + // +kubebuilder:validation:Optional SharedGalleryID *string `json:"sharedGalleryId,omitempty" tf:"shared_gallery_id,omitempty"` // A support block as defined below. + // +kubebuilder:validation:Optional Support []SupportParameters `json:"support,omitempty" tf:"support,omitempty"` // A mapping of tags which should be assigned to the Lab Service Plan. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -244,15 +259,19 @@ type SupportObservation struct { type SupportParameters struct { // The email address for the support contact. + // +kubebuilder:validation:Optional Email *string `json:"email,omitempty" tf:"email,omitempty"` // The instructions for users of the Lab Service Plan. + // +kubebuilder:validation:Optional Instructions *string `json:"instructions,omitempty" tf:"instructions,omitempty"` // The phone number for the support contact. + // +kubebuilder:validation:Optional Phone *string `json:"phone,omitempty" tf:"phone,omitempty"` // The web address for users of the Lab Service Plan. + // +kubebuilder:validation:Optional URL *string `json:"url,omitempty" tf:"url,omitempty"` } diff --git a/apis/logic/v1beta1/zz_appactioncustom_types.go b/apis/logic/v1beta1/zz_appactioncustom_types.go index 58a3bea40..203dda3dc 100755 --- a/apis/logic/v1beta1/zz_appactioncustom_types.go +++ b/apis/logic/v1beta1/zz_appactioncustom_types.go @@ -34,6 +34,7 @@ type AppActionCustomObservation struct { type AppActionCustomParameters struct { // Specifies the JSON Blob defining the Body of this Custom Action. + // +kubebuilder:validation:Optional Body *string `json:"body,omitempty" tf:"body,omitempty"` // Specifies the ID of the Logic App Workflow. Changing this forces a new resource to be created. diff --git a/apis/logic/v1beta1/zz_appactionhttp_types.go b/apis/logic/v1beta1/zz_appactionhttp_types.go index 82526b9bc..314390333 100755 --- a/apis/logic/v1beta1/zz_appactionhttp_types.go +++ b/apis/logic/v1beta1/zz_appactionhttp_types.go @@ -64,9 +64,11 @@ type AppActionHTTPObservation struct { type AppActionHTTPParameters struct { // Specifies the HTTP Body that should be sent to the uri when this HTTP Action is triggered. + // +kubebuilder:validation:Optional Body *string `json:"body,omitempty" tf:"body,omitempty"` // Specifies a Map of Key-Value Pairs that should be sent to the uri when this HTTP Action is triggered. + // +kubebuilder:validation:Optional Headers map[string]*string `json:"headers,omitempty" tf:"headers,omitempty"` // Specifies the ID of the Logic App Workflow. Changing this forces a new resource to be created. @@ -84,15 +86,19 @@ type AppActionHTTPParameters struct { LogicAppIDSelector *v1.Selector `json:"logicAppIdSelector,omitempty" tf:"-"` // Specifies the HTTP Method which should be used for this HTTP Action. Possible values include DELETE, GET, PATCH, POST and PUT. + // +kubebuilder:validation:Optional Method *string `json:"method,omitempty" tf:"method,omitempty"` // Specifies a Map of Key-Value Pairs that should be sent to the uri when this HTTP Action is triggered. + // +kubebuilder:validation:Optional Queries map[string]*string `json:"queries,omitempty" tf:"queries,omitempty"` // Specifies the place of the HTTP Action in the Logic App Workflow. If not specified, the HTTP Action is right after the Trigger. A run_after block is as defined below. + // +kubebuilder:validation:Optional RunAfter []RunAfterParameters `json:"runAfter,omitempty" tf:"run_after,omitempty"` // Specifies the URI which will be called when this HTTP Action is triggered. + // +kubebuilder:validation:Optional URI *string `json:"uri,omitempty" tf:"uri,omitempty"` } @@ -117,9 +123,11 @@ type RunAfterObservation struct { type RunAfterParameters struct { // Specifies the name of the precedent HTTP Action. + // +kubebuilder:validation:Optional ActionName *string `json:"actionName,omitempty" tf:"action_name,omitempty"` // Specifies the expected result of the precedent HTTP Action, only after which the current HTTP Action will be triggered. Possible values include Succeeded, Failed, Skipped and TimedOut. + // +kubebuilder:validation:Optional ActionResult *string `json:"actionResult,omitempty" tf:"action_result,omitempty"` } diff --git a/apis/logic/v1beta1/zz_appintegrationaccount_types.go b/apis/logic/v1beta1/zz_appintegrationaccount_types.go index c152f7a58..cf5d778fa 100755 --- a/apis/logic/v1beta1/zz_appintegrationaccount_types.go +++ b/apis/logic/v1beta1/zz_appintegrationaccount_types.go @@ -58,12 +58,15 @@ type AppIntegrationAccountObservation struct { type AppIntegrationAccountParameters struct { // The resource ID of the Integration Service Environment. Changing this forces a new Logic App Integration Account to be created. + // +kubebuilder:validation:Optional IntegrationServiceEnvironmentID *string `json:"integrationServiceEnvironmentId,omitempty" tf:"integration_service_environment_id,omitempty"` // The Azure Region where the Logic App Integration Account should exist. Changing this forces a new Logic App Integration Account to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name which should be used for this Logic App Integration Account. Changing this forces a new Logic App Integration Account to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The name of the Resource Group where the Logic App Integration Account should exist. Changing this forces a new Logic App Integration Account to be created. @@ -80,9 +83,11 @@ type AppIntegrationAccountParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The SKU name of the Logic App Integration Account. Possible Values are Basic, Free and Standard. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // A mapping of tags which should be assigned to the Logic App Integration Account. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/logic/v1beta1/zz_appintegrationaccountbatchconfiguration_types.go b/apis/logic/v1beta1/zz_appintegrationaccountbatchconfiguration_types.go index 835596cad..0497f5fe7 100755 --- a/apis/logic/v1beta1/zz_appintegrationaccountbatchconfiguration_types.go +++ b/apis/logic/v1beta1/zz_appintegrationaccountbatchconfiguration_types.go @@ -55,6 +55,7 @@ type AppIntegrationAccountBatchConfigurationObservation struct { type AppIntegrationAccountBatchConfigurationParameters struct { // The batch group name of the Logic App Integration Batch Configuration. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional BatchGroupName *string `json:"batchGroupName,omitempty" tf:"batch_group_name,omitempty"` // The name of the Logic App Integration Account. Changing this forces a new resource to be created. @@ -72,12 +73,15 @@ type AppIntegrationAccountBatchConfigurationParameters struct { IntegrationAccountNameSelector *v1.Selector `json:"integrationAccountNameSelector,omitempty" tf:"-"` // A JSON mapping of any Metadata for this Logic App Integration Account Batch Configuration. + // +kubebuilder:validation:Optional Metadata map[string]*string `json:"metadata,omitempty" tf:"metadata,omitempty"` // The name which should be used for this Logic App Integration Account Batch Configuration. Only Alphanumeric characters allowed. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A release_criteria block as documented below, which is used to select the criteria to meet before processing each batch. + // +kubebuilder:validation:Optional ReleaseCriteria []ReleaseCriteriaParameters `json:"releaseCriteria,omitempty" tf:"release_criteria,omitempty"` // The name of the Resource Group where the Logic App Integration Account Batch Configuration should exist. Changing this forces a new resource to be created. @@ -115,9 +119,11 @@ type MonthlyObservation struct { type MonthlyParameters struct { // The occurrence of the week within the month. + // +kubebuilder:validation:Optional Week *float64 `json:"week,omitempty" tf:"week,omitempty"` // The day of the occurrence. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday and Saturday. + // +kubebuilder:validation:Optional Weekday *string `json:"weekday,omitempty" tf:"weekday,omitempty"` } @@ -166,21 +172,27 @@ type RecurrenceObservation struct { type RecurrenceParameters struct { // The end time of the schedule, formatted as an RFC3339 string. + // +kubebuilder:validation:Optional EndTime *string `json:"endTime,omitempty" tf:"end_time,omitempty"` // The frequency of the schedule. Possible values are Day, Hour, Minute, Month, NotSpecified, Second, Week and Year. + // +kubebuilder:validation:Optional Frequency *string `json:"frequency,omitempty" tf:"frequency,omitempty"` // The number of frequencys between runs. + // +kubebuilder:validation:Optional Interval *float64 `json:"interval,omitempty" tf:"interval,omitempty"` // A schedule block as documented below. + // +kubebuilder:validation:Optional Schedule []ScheduleParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` // The start time of the schedule, formatted as an RFC3339 string. + // +kubebuilder:validation:Optional StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` // The timezone of the start/end time. + // +kubebuilder:validation:Optional TimeZone *string `json:"timeZone,omitempty" tf:"time_zone,omitempty"` } @@ -211,12 +223,15 @@ type ReleaseCriteriaObservation struct { type ReleaseCriteriaParameters struct { // The batch size in bytes for the Logic App Integration Batch Configuration. + // +kubebuilder:validation:Optional BatchSize *float64 `json:"batchSize,omitempty" tf:"batch_size,omitempty"` // The message count for the Logic App Integration Batch Configuration. + // +kubebuilder:validation:Optional MessageCount *float64 `json:"messageCount,omitempty" tf:"message_count,omitempty"` // A recurrence block as documented below. + // +kubebuilder:validation:Optional Recurrence []RecurrenceParameters `json:"recurrence,omitempty" tf:"recurrence,omitempty"` } @@ -259,18 +274,23 @@ type ScheduleObservation struct { type ScheduleParameters struct { // A list containing a single item, which specifies the Hour interval at which this recurrence should be triggered. + // +kubebuilder:validation:Optional Hours []*float64 `json:"hours,omitempty" tf:"hours,omitempty"` // A list containing a single item which specifies the Minute interval at which this recurrence should be triggered. + // +kubebuilder:validation:Optional Minutes []*float64 `json:"minutes,omitempty" tf:"minutes,omitempty"` // A list of days of the month that the job should execute on. + // +kubebuilder:validation:Optional MonthDays []*float64 `json:"monthDays,omitempty" tf:"month_days,omitempty"` // A monthly block as documented below. + // +kubebuilder:validation:Optional Monthly []MonthlyParameters `json:"monthly,omitempty" tf:"monthly,omitempty"` // A list of days of the week that the job should execute on. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday and Saturday. + // +kubebuilder:validation:Optional WeekDays []*string `json:"weekDays,omitempty" tf:"week_days,omitempty"` } diff --git a/apis/logic/v1beta1/zz_appintegrationaccountpartner_types.go b/apis/logic/v1beta1/zz_appintegrationaccountpartner_types.go index 3c97fd47e..1568d755f 100755 --- a/apis/logic/v1beta1/zz_appintegrationaccountpartner_types.go +++ b/apis/logic/v1beta1/zz_appintegrationaccountpartner_types.go @@ -43,6 +43,7 @@ type AppIntegrationAccountPartnerObservation struct { type AppIntegrationAccountPartnerParameters struct { // A business_identity block as documented below. + // +kubebuilder:validation:Optional BusinessIdentity []BusinessIdentityParameters `json:"businessIdentity,omitempty" tf:"business_identity,omitempty"` // The name of the Logic App Integration Account. Changing this forces a new Logic App Integration Account Partner to be created. @@ -60,6 +61,7 @@ type AppIntegrationAccountPartnerParameters struct { IntegrationAccountNameSelector *v1.Selector `json:"integrationAccountNameSelector,omitempty" tf:"-"` // A JSON mapping of any Metadata for this Logic App Integration Account Partner. + // +kubebuilder:validation:Optional Metadata *string `json:"metadata,omitempty" tf:"metadata,omitempty"` // The name of the Resource Group where the Logic App Integration Account Partner should exist. Changing this forces a new Logic App Integration Account Partner to be created. @@ -97,9 +99,11 @@ type BusinessIdentityObservation struct { type BusinessIdentityParameters struct { // The authenticating body that provides unique business identities to organizations. + // +kubebuilder:validation:Optional Qualifier *string `json:"qualifier,omitempty" tf:"qualifier,omitempty"` // The value that identifies the documents that your logic apps receive. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } diff --git a/apis/logic/v1beta1/zz_appintegrationaccountschema_types.go b/apis/logic/v1beta1/zz_appintegrationaccountschema_types.go index 98148f0fc..b97dcc808 100755 --- a/apis/logic/v1beta1/zz_appintegrationaccountschema_types.go +++ b/apis/logic/v1beta1/zz_appintegrationaccountschema_types.go @@ -49,9 +49,11 @@ type AppIntegrationAccountSchemaObservation struct { type AppIntegrationAccountSchemaParameters struct { // The content of the Logic App Integration Account Schema. + // +kubebuilder:validation:Optional Content *string `json:"content,omitempty" tf:"content,omitempty"` // The file name of the Logic App Integration Account Schema. + // +kubebuilder:validation:Optional FileName *string `json:"fileName,omitempty" tf:"file_name,omitempty"` // The name of the Logic App Integration Account. Changing this forces a new Logic App Integration Account Schema to be created. @@ -69,6 +71,7 @@ type AppIntegrationAccountSchemaParameters struct { IntegrationAccountNameSelector *v1.Selector `json:"integrationAccountNameSelector,omitempty" tf:"-"` // The metadata of the Logic App Integration Account Schema. + // +kubebuilder:validation:Optional Metadata *string `json:"metadata,omitempty" tf:"metadata,omitempty"` // The name of the Resource Group where the Logic App Integration Account Schema should exist. Changing this forces a new Logic App Integration Account Schema to be created. diff --git a/apis/logic/v1beta1/zz_appintegrationaccountsession_types.go b/apis/logic/v1beta1/zz_appintegrationaccountsession_types.go index b42c02aad..14d9087da 100755 --- a/apis/logic/v1beta1/zz_appintegrationaccountsession_types.go +++ b/apis/logic/v1beta1/zz_appintegrationaccountsession_types.go @@ -37,6 +37,7 @@ type AppIntegrationAccountSessionObservation struct { type AppIntegrationAccountSessionParameters struct { // The content of the Logic App Integration Account Session. + // +kubebuilder:validation:Optional Content *string `json:"content,omitempty" tf:"content,omitempty"` // The name of the Logic App Integration Account. Changing this forces a new Logic App Integration Account Session to be created. diff --git a/apis/logic/v1beta1/zz_apptriggercustom_types.go b/apis/logic/v1beta1/zz_apptriggercustom_types.go index 06512634a..46182359d 100755 --- a/apis/logic/v1beta1/zz_apptriggercustom_types.go +++ b/apis/logic/v1beta1/zz_apptriggercustom_types.go @@ -34,6 +34,7 @@ type AppTriggerCustomObservation struct { type AppTriggerCustomParameters struct { // Specifies the JSON Blob defining the Body of this Custom Trigger. + // +kubebuilder:validation:Optional Body *string `json:"body,omitempty" tf:"body,omitempty"` // Specifies the ID of the Logic App Workflow. Changing this forces a new resource to be created. diff --git a/apis/logic/v1beta1/zz_apptriggerhttprequest_types.go b/apis/logic/v1beta1/zz_apptriggerhttprequest_types.go index 97a5af686..7dc8acf18 100755 --- a/apis/logic/v1beta1/zz_apptriggerhttprequest_types.go +++ b/apis/logic/v1beta1/zz_apptriggerhttprequest_types.go @@ -63,12 +63,15 @@ type AppTriggerHTTPRequestParameters struct { LogicAppIDSelector *v1.Selector `json:"logicAppIdSelector,omitempty" tf:"-"` // Specifies the HTTP Method which the request be using. Possible values include DELETE, GET, PATCH, POST or PUT. + // +kubebuilder:validation:Optional Method *string `json:"method,omitempty" tf:"method,omitempty"` // Specifies the Relative Path used for this Request. + // +kubebuilder:validation:Optional RelativePath *string `json:"relativePath,omitempty" tf:"relative_path,omitempty"` // A JSON Blob defining the Schema of the incoming request. This needs to be valid JSON. + // +kubebuilder:validation:Optional Schema *string `json:"schema,omitempty" tf:"schema,omitempty"` } diff --git a/apis/logic/v1beta1/zz_apptriggerrecurrence_types.go b/apis/logic/v1beta1/zz_apptriggerrecurrence_types.go index 601dfe496..cdf369f84 100755 --- a/apis/logic/v1beta1/zz_apptriggerrecurrence_types.go +++ b/apis/logic/v1beta1/zz_apptriggerrecurrence_types.go @@ -58,9 +58,11 @@ type AppTriggerRecurrenceObservation struct { type AppTriggerRecurrenceParameters struct { // Specifies the Frequency at which this Trigger should be run. Possible values include Month, Week, Day, Hour, Minute and Second. + // +kubebuilder:validation:Optional Frequency *string `json:"frequency,omitempty" tf:"frequency,omitempty"` // Specifies interval used for the Frequency, for example a value of 4 for interval and hour for frequency would run the Trigger every 4 hours. + // +kubebuilder:validation:Optional Interval *float64 `json:"interval,omitempty" tf:"interval,omitempty"` // Specifies the ID of the Logic App Workflow. Changing this forces a new resource to be created. @@ -78,12 +80,15 @@ type AppTriggerRecurrenceParameters struct { LogicAppIDSelector *v1.Selector `json:"logicAppIdSelector,omitempty" tf:"-"` // A schedule block as specified below. + // +kubebuilder:validation:Optional Schedule []AppTriggerRecurrenceScheduleParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` // Specifies the start date and time for this trigger in RFC3339 format: 2000-01-02T03:04:05Z. + // +kubebuilder:validation:Optional StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` // Specifies the time zone for this trigger. Supported time zone options are listed here + // +kubebuilder:validation:Optional TimeZone *string `json:"timeZone,omitempty" tf:"time_zone,omitempty"` } @@ -114,12 +119,15 @@ type AppTriggerRecurrenceScheduleObservation struct { type AppTriggerRecurrenceScheduleParameters struct { // Specifies a list of hours when the trigger should run. Valid values are between 0 and 23. + // +kubebuilder:validation:Optional AtTheseHours []*float64 `json:"atTheseHours,omitempty" tf:"at_these_hours,omitempty"` // Specifies a list of minutes when the trigger should run. Valid values are between 0 and 59. + // +kubebuilder:validation:Optional AtTheseMinutes []*float64 `json:"atTheseMinutes,omitempty" tf:"at_these_minutes,omitempty"` // Specifies a list of days when the trigger should run. Valid values include Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, and Sunday. + // +kubebuilder:validation:Optional OnTheseDays []*string `json:"onTheseDays,omitempty" tf:"on_these_days,omitempty"` } diff --git a/apis/logic/v1beta1/zz_appworkflow_types.go b/apis/logic/v1beta1/zz_appworkflow_types.go index 4a16b3547..d127dcae9 100755 --- a/apis/logic/v1beta1/zz_appworkflow_types.go +++ b/apis/logic/v1beta1/zz_appworkflow_types.go @@ -46,15 +46,19 @@ type AccessControlObservation struct { type AccessControlParameters struct { // A action block as defined below. + // +kubebuilder:validation:Optional Action []ActionParameters `json:"action,omitempty" tf:"action,omitempty"` // A content block as defined below. + // +kubebuilder:validation:Optional Content []ContentParameters `json:"content,omitempty" tf:"content,omitempty"` // A trigger block as defined below. + // +kubebuilder:validation:Optional Trigger []TriggerParameters `json:"trigger,omitempty" tf:"trigger,omitempty"` // A workflow_management block as defined below. + // +kubebuilder:validation:Optional WorkflowManagement []WorkflowManagementParameters `json:"workflowManagement,omitempty" tf:"workflow_management,omitempty"` } @@ -73,6 +77,7 @@ type ActionObservation struct { type ActionParameters struct { // A list of the allowed caller IP address ranges. + // +kubebuilder:validation:Optional AllowedCallerIPAddressRange []*string `json:"allowedCallerIpAddressRange,omitempty" tf:"allowed_caller_ip_address_range,omitempty"` } @@ -172,24 +177,31 @@ type AppWorkflowObservation struct { type AppWorkflowParameters struct { // A access_control block as defined below. + // +kubebuilder:validation:Optional AccessControl []AccessControlParameters `json:"accessControl,omitempty" tf:"access_control,omitempty"` // Is the Logic App Workflow enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // The ID of the Integration Service Environment to which this Logic App Workflow belongs. Changing this forces a new Logic App Workflow to be created. + // +kubebuilder:validation:Optional IntegrationServiceEnvironmentID *string `json:"integrationServiceEnvironmentId,omitempty" tf:"integration_service_environment_id,omitempty"` // Specifies the supported Azure location where the Logic App Workflow exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The ID of the integration account linked by this Logic App Workflow. + // +kubebuilder:validation:Optional LogicAppIntegrationAccountID *string `json:"logicAppIntegrationAccountId,omitempty" tf:"logic_app_integration_account_id,omitempty"` // A map of Key-Value pairs. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The name of the Resource Group in which the Logic App Workflow should be created. Changing this forces a new resource to be created. @@ -206,15 +218,19 @@ type AppWorkflowParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies a map of Key-Value pairs of the Parameter Definitions to use for this Logic App Workflow. The key is the parameter name, and the value is a JSON encoded string of the parameter definition (see: https://docs.microsoft.com/azure/logic-apps/logic-apps-workflow-definition-language#parameters). + // +kubebuilder:validation:Optional WorkflowParameters map[string]*string `json:"workflowParameters,omitempty" tf:"workflow_parameters,omitempty"` // Specifies the Schema to use for this Logic App Workflow. Defaults to https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional WorkflowSchema *string `json:"workflowSchema,omitempty" tf:"workflow_schema,omitempty"` // Specifies the version of the Schema used for this Logic App Workflow. Defaults to 1.0.0.0. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional WorkflowVersion *string `json:"workflowVersion,omitempty" tf:"workflow_version,omitempty"` } @@ -239,9 +255,11 @@ type ClaimObservation struct { type ClaimParameters struct { // The OAuth policy name for the Logic App Workflow. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The value of the OAuth policy claim for the Logic App Workflow. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -260,6 +278,7 @@ type ContentObservation struct { type ContentParameters struct { // A list of the allowed caller IP address ranges. + // +kubebuilder:validation:Optional AllowedCallerIPAddressRange []*string `json:"allowedCallerIpAddressRange,omitempty" tf:"allowed_caller_ip_address_range,omitempty"` } @@ -290,9 +309,11 @@ type IdentityObservation struct { type IdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Logic App Workflow. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Logic App Workflow. Possible values are SystemAssigned, UserAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -317,9 +338,11 @@ type OpenAuthenticationPolicyObservation struct { type OpenAuthenticationPolicyParameters struct { // A claim block as defined below. + // +kubebuilder:validation:Optional Claim []ClaimParameters `json:"claim,omitempty" tf:"claim,omitempty"` // The OAuth policy name for the Logic App Workflow. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -344,9 +367,11 @@ type TriggerObservation struct { type TriggerParameters struct { // A list of the allowed caller IP address ranges. + // +kubebuilder:validation:Optional AllowedCallerIPAddressRange []*string `json:"allowedCallerIpAddressRange,omitempty" tf:"allowed_caller_ip_address_range,omitempty"` // A open_authentication_policy block as defined below. + // +kubebuilder:validation:Optional OpenAuthenticationPolicy []OpenAuthenticationPolicyParameters `json:"openAuthenticationPolicy,omitempty" tf:"open_authentication_policy,omitempty"` } @@ -365,6 +390,7 @@ type WorkflowManagementObservation struct { type WorkflowManagementParameters struct { // A list of the allowed caller IP address ranges. + // +kubebuilder:validation:Optional AllowedCallerIPAddressRange []*string `json:"allowedCallerIpAddressRange,omitempty" tf:"allowed_caller_ip_address_range,omitempty"` } diff --git a/apis/logic/v1beta1/zz_integrationserviceenvironment_types.go b/apis/logic/v1beta1/zz_integrationserviceenvironment_types.go index f74ca831a..f636d5e49 100755 --- a/apis/logic/v1beta1/zz_integrationserviceenvironment_types.go +++ b/apis/logic/v1beta1/zz_integrationserviceenvironment_types.go @@ -67,9 +67,11 @@ type IntegrationServiceEnvironmentObservation struct { type IntegrationServiceEnvironmentParameters struct { // The type of access endpoint to use for the Integration Service Environment. Possible Values are Internal and External. Changing this forces a new Integration Service Environment to be created. + // +kubebuilder:validation:Optional AccessEndpointType *string `json:"accessEndpointType,omitempty" tf:"access_endpoint_type,omitempty"` // The Azure Region where the Integration Service Environment should exist. Changing this forces a new Integration Service Environment to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the Resource Group where the Integration Service Environment should exist. Changing this forces a new Integration Service Environment to be created. @@ -86,9 +88,11 @@ type IntegrationServiceEnvironmentParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The SKU name and capacity of the Integration Service Environment. Possible values are Developer_0, Premium_0, Premium_1, Premium_2, Premium_3, Premium_4, Premium_5, Premium_6, Premium_7, Premium_8, Premium_9 and Premium_10. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // A mapping of tags which should be assigned to the Integration Service Environment. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // A list of virtual network subnet ids to be used by Integration Service Environment. Exactly four distinct ids to /27 subnets must be provided. Changing this forces a new Integration Service Environment to be created. diff --git a/apis/logz/v1beta1/zz_monitor_types.go b/apis/logz/v1beta1/zz_monitor_types.go index 36a06764d..1804a579c 100755 --- a/apis/logz/v1beta1/zz_monitor_types.go +++ b/apis/logz/v1beta1/zz_monitor_types.go @@ -76,18 +76,23 @@ type MonitorObservation struct { type MonitorParameters struct { // Name of the Logz organization. Changing this forces a new logz Monitor to be created. + // +kubebuilder:validation:Optional CompanyName *string `json:"companyName,omitempty" tf:"company_name,omitempty"` // Whether the resource monitoring is enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The ID of the Enterprise App. Changing this forces a new logz Monitor to be created. + // +kubebuilder:validation:Optional EnterpriseAppID *string `json:"enterpriseAppId,omitempty" tf:"enterprise_app_id,omitempty"` // The Azure Region where the logz Monitor should exist. Changing this forces a new logz Monitor to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // A plan block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Plan []PlanParameters `json:"plan,omitempty" tf:"plan,omitempty"` // The name of the Resource Group where the logz Monitor should exist. Changing this forces a new logz Monitor to be created. @@ -104,9 +109,11 @@ type MonitorParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the logz Monitor. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // A user block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional User []UserParameters `json:"user,omitempty" tf:"user,omitempty"` } @@ -143,15 +150,19 @@ type PlanObservation struct { type PlanParameters struct { // Different billing cycles. Possible values are MONTHLY or WEEKLY. Changing this forces a new logz Monitor to be created. + // +kubebuilder:validation:Optional BillingCycle *string `json:"billingCycle,omitempty" tf:"billing_cycle,omitempty"` // Date when plan was applied. Changing this forces a new logz Monitor to be created. + // +kubebuilder:validation:Optional EffectiveDate *string `json:"effectiveDate,omitempty" tf:"effective_date,omitempty"` // Plan id as published by Logz. The only possible value is 100gb14days. Defaults to 100gb14days. Changing this forces a new logz Monitor to be created. + // +kubebuilder:validation:Optional PlanID *string `json:"planId,omitempty" tf:"plan_id,omitempty"` // Different usage types. Possible values are PAYG or COMMITTED. Changing this forces a new logz Monitor to be created. + // +kubebuilder:validation:Optional UsageType *string `json:"usageType,omitempty" tf:"usage_type,omitempty"` } @@ -188,15 +199,19 @@ type UserObservation struct { type UserParameters struct { // Email of the user used by Logz for contacting them if needed. Changing this forces a new logz Monitor to be created. + // +kubebuilder:validation:Optional Email *string `json:"email,omitempty" tf:"email,omitempty"` // First Name of the user. Changing this forces a new logz Monitor to be created. + // +kubebuilder:validation:Optional FirstName *string `json:"firstName,omitempty" tf:"first_name,omitempty"` // Last Name of the user. Changing this forces a new logz Monitor to be created. + // +kubebuilder:validation:Optional LastName *string `json:"lastName,omitempty" tf:"last_name,omitempty"` // Phone number of the user used by Logz for contacting them if needed. Changing this forces a new logz Monitor to be created. + // +kubebuilder:validation:Optional PhoneNumber *string `json:"phoneNumber,omitempty" tf:"phone_number,omitempty"` } diff --git a/apis/logz/v1beta1/zz_subaccount_types.go b/apis/logz/v1beta1/zz_subaccount_types.go index 0bd1898b3..a57be766e 100755 --- a/apis/logz/v1beta1/zz_subaccount_types.go +++ b/apis/logz/v1beta1/zz_subaccount_types.go @@ -46,6 +46,7 @@ type SubAccountObservation struct { type SubAccountParameters struct { // Whether the resource monitoring is enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The ID of the Logz Monitor. Changing this forces a new logz Sub Account to be created. @@ -63,9 +64,11 @@ type SubAccountParameters struct { LogzMonitorIDSelector *v1.Selector `json:"logzMonitorIdSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the logz Sub Account. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // A user block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional User []SubAccountUserParameters `json:"user,omitempty" tf:"user,omitempty"` } @@ -102,15 +105,19 @@ type SubAccountUserObservation struct { type SubAccountUserParameters struct { // Email of the user used by Logz for contacting them if needed. A valid email address consists of an email prefix and an email domain. The prefix and domain may contain only letters, numbers, underscores, periods and dashes. Changing this forces a new logz Sub Account to be created. + // +kubebuilder:validation:Optional Email *string `json:"email,omitempty" tf:"email,omitempty"` // First Name of the user. Possible values must be between 1 and 50 characters in length. Changing this forces a new logz Sub Account to be created. + // +kubebuilder:validation:Optional FirstName *string `json:"firstName,omitempty" tf:"first_name,omitempty"` // Last Name of the user. Possible values must be between 1 and 50 characters in length. Changing this forces a new logz Sub Account to be created. + // +kubebuilder:validation:Optional LastName *string `json:"lastName,omitempty" tf:"last_name,omitempty"` // Phone number of the user used by Logz for contacting them if needed. Possible values must be between 1 and 40 characters in length. Changing this forces a new logz Sub Account to be created. + // +kubebuilder:validation:Optional PhoneNumber *string `json:"phoneNumber,omitempty" tf:"phone_number,omitempty"` } diff --git a/apis/logz/v1beta1/zz_subaccounttagrule_types.go b/apis/logz/v1beta1/zz_subaccounttagrule_types.go index b709ab5f0..eb462dab6 100755 --- a/apis/logz/v1beta1/zz_subaccounttagrule_types.go +++ b/apis/logz/v1beta1/zz_subaccounttagrule_types.go @@ -66,15 +66,19 @@ type SubAccountTagRuleParameters struct { LogzSubAccountIDSelector *v1.Selector `json:"logzSubAccountIdSelector,omitempty" tf:"-"` // Whether AAD logs should be sent to the Monitor resource? + // +kubebuilder:validation:Optional SendAADLogs *bool `json:"sendAadLogs,omitempty" tf:"send_aad_logs,omitempty"` // Whether activity logs from this Logz Sub Account Tag Rule should be sent to the Monitor resource? + // +kubebuilder:validation:Optional SendActivityLogs *bool `json:"sendActivityLogs,omitempty" tf:"send_activity_logs,omitempty"` // Whether subscription logs should be sent to the Monitor resource? + // +kubebuilder:validation:Optional SendSubscriptionLogs *bool `json:"sendSubscriptionLogs,omitempty" tf:"send_subscription_logs,omitempty"` // One or more (up to 10) tag_filter blocks as defined below. + // +kubebuilder:validation:Optional TagFilter []TagFilterParameters `json:"tagFilter,omitempty" tf:"tag_filter,omitempty"` } @@ -105,12 +109,15 @@ type TagFilterObservation struct { type TagFilterParameters struct { // The action is used to limit logs collection to include or exclude Azure resources with specific tags. Possible values are Include and Exclude. Note that the Exclude takes priority over the Include. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // The name of the tag to match. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The value of the tag to match. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } diff --git a/apis/logz/v1beta1/zz_tagrule_types.go b/apis/logz/v1beta1/zz_tagrule_types.go index db4205441..8ca200ec9 100755 --- a/apis/logz/v1beta1/zz_tagrule_types.go +++ b/apis/logz/v1beta1/zz_tagrule_types.go @@ -66,15 +66,19 @@ type TagRuleParameters struct { LogzMonitorIDSelector *v1.Selector `json:"logzMonitorIdSelector,omitempty" tf:"-"` // Whether AAD logs should be sent to the Monitor resource? + // +kubebuilder:validation:Optional SendAADLogs *bool `json:"sendAadLogs,omitempty" tf:"send_aad_logs,omitempty"` // Whether activity logs from Azure resources should be sent to the Monitor resource? + // +kubebuilder:validation:Optional SendActivityLogs *bool `json:"sendActivityLogs,omitempty" tf:"send_activity_logs,omitempty"` // Whether subscription logs should be sent to the Monitor resource? + // +kubebuilder:validation:Optional SendSubscriptionLogs *bool `json:"sendSubscriptionLogs,omitempty" tf:"send_subscription_logs,omitempty"` // One or more (up to 10) tag_filter blocks as defined below. + // +kubebuilder:validation:Optional TagFilter []TagRuleTagFilterParameters `json:"tagFilter,omitempty" tf:"tag_filter,omitempty"` } @@ -105,12 +109,15 @@ type TagRuleTagFilterObservation struct { type TagRuleTagFilterParameters struct { // The action for a filtering tag. Possible values are Include and Exclude is allowed. Note that the Exclude takes priority over the Include. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // The name of this tag_filter. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The value of this tag_filter. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } diff --git a/apis/machinelearningservices/v1beta1/zz_computecluster_types.go b/apis/machinelearningservices/v1beta1/zz_computecluster_types.go index ce811a0f5..380cfaab1 100755 --- a/apis/machinelearningservices/v1beta1/zz_computecluster_types.go +++ b/apis/machinelearningservices/v1beta1/zz_computecluster_types.go @@ -97,15 +97,19 @@ type ComputeClusterObservation struct { type ComputeClusterParameters struct { // The description of the Machine Learning compute. Changing this forces a new Machine Learning Compute Cluster to be created. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // An identity block as defined below. Changing this forces a new Machine Learning Compute Cluster to be created. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // Whether local authentication methods is enabled. Defaults to true. Changing this forces a new Machine Learning Compute Cluster to be created. + // +kubebuilder:validation:Optional LocalAuthEnabled *bool `json:"localAuthEnabled,omitempty" tf:"local_auth_enabled,omitempty"` // The Azure Region where the Machine Learning Compute Cluster should exist. Changing this forces a new Machine Learning Compute Cluster to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The ID of the Machine Learning Workspace. Changing this forces a new Machine Learning Compute Cluster to be created. @@ -123,15 +127,19 @@ type ComputeClusterParameters struct { MachineLearningWorkspaceIDSelector *v1.Selector `json:"machineLearningWorkspaceIdSelector,omitempty" tf:"-"` // The name which should be used for this Machine Learning Compute Cluster. Changing this forces a new Machine Learning Compute Cluster to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Credentials for an administrator user account that will be created on each compute node. A ssh block as defined below. Changing this forces a new Machine Learning Compute Cluster to be created. + // +kubebuilder:validation:Optional SSH []SSHParameters `json:"ssh,omitempty" tf:"ssh,omitempty"` // A boolean value indicating whether enable the public SSH port. Changing this forces a new Machine Learning Compute Cluster to be created. + // +kubebuilder:validation:Optional SSHPublicAccessEnabled *bool `json:"sshPublicAccessEnabled,omitempty" tf:"ssh_public_access_enabled,omitempty"` // A scale_settings block as defined below. Changing this forces a new Machine Learning Compute Cluster to be created. + // +kubebuilder:validation:Optional ScaleSettings []ScaleSettingsParameters `json:"scaleSettings,omitempty" tf:"scale_settings,omitempty"` // The ID of the Subnet that the Compute Cluster should reside in. Changing this forces a new Machine Learning Compute Cluster to be created. @@ -149,12 +157,15 @@ type ComputeClusterParameters struct { SubnetResourceIDSelector *v1.Selector `json:"subnetResourceIdSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the Machine Learning Compute Cluster. Changing this forces a new Machine Learning Compute Cluster to be created. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The priority of the VM. Changing this forces a new Machine Learning Compute Cluster to be created. Accepted values are Dedicated and LowPriority. + // +kubebuilder:validation:Optional VMPriority *string `json:"vmPriority,omitempty" tf:"vm_priority,omitempty"` // The size of the VM. Changing this forces a new Machine Learning Compute Cluster to be created. + // +kubebuilder:validation:Optional VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` } @@ -185,9 +196,11 @@ type IdentityObservation struct { type IdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Machine Learning Compute Cluster. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Machine Learning Compute Cluster. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -218,12 +231,15 @@ type SSHObservation struct { type SSHParameters struct { // Password of the administrator user account. Changing this forces a new Machine Learning Compute Cluster to be created. + // +kubebuilder:validation:Optional AdminPassword *string `json:"adminPassword,omitempty" tf:"admin_password,omitempty"` // Name of the administrator user account which can be used to SSH to nodes. Changing this forces a new Machine Learning Compute Cluster to be created. + // +kubebuilder:validation:Optional AdminUsername *string `json:"adminUsername,omitempty" tf:"admin_username,omitempty"` // SSH public key of the administrator user account. Changing this forces a new Machine Learning Compute Cluster to be created. + // +kubebuilder:validation:Optional KeyValue *string `json:"keyValue,omitempty" tf:"key_value,omitempty"` } @@ -254,12 +270,15 @@ type ScaleSettingsObservation struct { type ScaleSettingsParameters struct { // Maximum node count. Changing this forces a new Machine Learning Compute Cluster to be created. + // +kubebuilder:validation:Optional MaxNodeCount *float64 `json:"maxNodeCount,omitempty" tf:"max_node_count,omitempty"` // Minimal node count. Changing this forces a new Machine Learning Compute Cluster to be created. + // +kubebuilder:validation:Optional MinNodeCount *float64 `json:"minNodeCount,omitempty" tf:"min_node_count,omitempty"` // Node Idle Time Before Scale Down: defines the time until the compute is shutdown when it has gone into Idle state. Is defined according to W3C XML schema standard for duration. Changing this forces a new Machine Learning Compute Cluster to be created. + // +kubebuilder:validation:Optional ScaleDownNodesAfterIdleDuration *string `json:"scaleDownNodesAfterIdleDuration,omitempty" tf:"scale_down_nodes_after_idle_duration,omitempty"` } diff --git a/apis/machinelearningservices/v1beta1/zz_computeinstance_types.go b/apis/machinelearningservices/v1beta1/zz_computeinstance_types.go index 62e0981b5..4e8bcdf97 100755 --- a/apis/machinelearningservices/v1beta1/zz_computeinstance_types.go +++ b/apis/machinelearningservices/v1beta1/zz_computeinstance_types.go @@ -34,9 +34,11 @@ type AssignToUserObservation struct { type AssignToUserParameters struct { // User’s AAD Object Id. + // +kubebuilder:validation:Optional ObjectID *string `json:"objectId,omitempty" tf:"object_id,omitempty"` // User’s AAD Tenant Id. + // +kubebuilder:validation:Optional TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` } @@ -67,9 +69,11 @@ type ComputeInstanceIdentityObservation struct { type ComputeInstanceIdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Machine Learning Compute Instance. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Machine Learning Compute Instance. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -145,21 +149,27 @@ type ComputeInstanceObservation struct { type ComputeInstanceParameters struct { // A assign_to_user block as defined below. A user explicitly assigned to a personal compute instance. Changing this forces a new Machine Learning Compute Instance to be created. + // +kubebuilder:validation:Optional AssignToUser []AssignToUserParameters `json:"assignToUser,omitempty" tf:"assign_to_user,omitempty"` // The Compute Instance Authorization type. Possible values include: personal. Changing this forces a new Machine Learning Compute Instance to be created. + // +kubebuilder:validation:Optional AuthorizationType *string `json:"authorizationType,omitempty" tf:"authorization_type,omitempty"` // The description of the Machine Learning Compute Instance. Changing this forces a new Machine Learning Compute Instance to be created. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // An identity block as defined below. Changing this forces a new Machine Learning Compute Instance to be created. + // +kubebuilder:validation:Optional Identity []ComputeInstanceIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // Whether local authentication methods is enabled. Defaults to true. Changing this forces a new Machine Learning Compute Instance to be created. + // +kubebuilder:validation:Optional LocalAuthEnabled *bool `json:"localAuthEnabled,omitempty" tf:"local_auth_enabled,omitempty"` // The Azure Region where the Machine Learning Compute Instance should exist. Changing this forces a new Machine Learning Compute Instance to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The ID of the Machine Learning Workspace. Changing this forces a new Machine Learning Compute Instance to be created. @@ -177,6 +187,7 @@ type ComputeInstanceParameters struct { MachineLearningWorkspaceIDSelector *v1.Selector `json:"machineLearningWorkspaceIdSelector,omitempty" tf:"-"` // A ssh block as defined below. Specifies policy and settings for SSH access. Changing this forces a new Machine Learning Compute Instance to be created. + // +kubebuilder:validation:Optional SSH []ComputeInstanceSSHParameters `json:"ssh,omitempty" tf:"ssh,omitempty"` // Virtual network subnet resource ID the compute nodes belong to. Changing this forces a new Machine Learning Compute Instance to be created. @@ -194,9 +205,11 @@ type ComputeInstanceParameters struct { SubnetResourceIDSelector *v1.Selector `json:"subnetResourceIdSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the Machine Learning Compute Instance. Changing this forces a new Machine Learning Compute Instance to be created. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The Virtual Machine Size. Changing this forces a new Machine Learning Compute Instance to be created. + // +kubebuilder:validation:Optional VirtualMachineSize *string `json:"virtualMachineSize,omitempty" tf:"virtual_machine_size,omitempty"` } @@ -221,6 +234,7 @@ type ComputeInstanceSSHObservation struct { type ComputeInstanceSSHParameters struct { // Specifies the SSH rsa public key file as a string. Use "ssh-keygen -t rsa -b 2048" to generate your SSH key pairs. + // +kubebuilder:validation:Optional PublicKey *string `json:"publicKey,omitempty" tf:"public_key,omitempty"` } diff --git a/apis/machinelearningservices/v1beta1/zz_synapsespark_types.go b/apis/machinelearningservices/v1beta1/zz_synapsespark_types.go index d0159ffc7..29bf1866b 100755 --- a/apis/machinelearningservices/v1beta1/zz_synapsespark_types.go +++ b/apis/machinelearningservices/v1beta1/zz_synapsespark_types.go @@ -40,9 +40,11 @@ type SynapseSparkIdentityObservation struct { type SynapseSparkIdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Machine Learning Synapse Spark. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Machine Learning Synapse Spark. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -94,15 +96,19 @@ type SynapseSparkObservation struct { type SynapseSparkParameters struct { // The description of the Machine Learning Synapse Spark. Changing this forces a new Machine Learning Synapse Spark to be created. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // An identity block as defined below. Changing this forces a new Machine Learning Synapse Spark to be created. + // +kubebuilder:validation:Optional Identity []SynapseSparkIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // Whether local authentication methods is enabled. Defaults to true. Changing this forces a new Machine Learning Synapse Spark to be created. + // +kubebuilder:validation:Optional LocalAuthEnabled *bool `json:"localAuthEnabled,omitempty" tf:"local_auth_enabled,omitempty"` // The Azure Region where the Machine Learning Synapse Spark should exist. Changing this forces a new Machine Learning Synapse Spark to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The ID of the Machine Learning Workspace. Changing this forces a new Machine Learning Synapse Spark to be created. @@ -134,6 +140,7 @@ type SynapseSparkParameters struct { SynapseSparkPoolIDSelector *v1.Selector `json:"synapseSparkPoolIdSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the Machine Learning Synapse Spark. Changing this forces a new Machine Learning Synapse Spark to be created. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/machinelearningservices/v1beta1/zz_workspace_types.go b/apis/machinelearningservices/v1beta1/zz_workspace_types.go index 042c22eca..e3a3d7c9f 100755 --- a/apis/machinelearningservices/v1beta1/zz_workspace_types.go +++ b/apis/machinelearningservices/v1beta1/zz_workspace_types.go @@ -100,9 +100,11 @@ type WorkspaceIdentityObservation struct { type WorkspaceIdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Machine Learning Workspace. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Machine Learning Workspace. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -231,24 +233,31 @@ type WorkspaceParameters struct { ApplicationInsightsIDSelector *v1.Selector `json:"applicationInsightsIdSelector,omitempty" tf:"-"` // The ID of the container registry associated with this Machine Learning Workspace. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ContainerRegistryID *string `json:"containerRegistryId,omitempty" tf:"container_registry_id,omitempty"` // The description of this Machine Learning Workspace. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // An encryption block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Encryption []EncryptionParameters `json:"encryption,omitempty" tf:"encryption,omitempty"` // Display name for this Machine Learning Workspace. + // +kubebuilder:validation:Optional FriendlyName *string `json:"friendlyName,omitempty" tf:"friendly_name,omitempty"` // Flag to signal High Business Impact (HBI) data in the workspace and reduce diagnostic data collected by the service + // +kubebuilder:validation:Optional HighBusinessImpact *bool `json:"highBusinessImpact,omitempty" tf:"high_business_impact,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []WorkspaceIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // The compute name for image build of the Machine Learning Workspace. + // +kubebuilder:validation:Optional ImageBuildComputeName *string `json:"imageBuildComputeName,omitempty" tf:"image_build_compute_name,omitempty"` // The ID of key vault associated with this Machine Learning Workspace. Changing this forces a new resource to be created. @@ -266,6 +275,7 @@ type WorkspaceParameters struct { KeyVaultIDSelector *v1.Selector `json:"keyVaultIdSelector,omitempty" tf:"-"` // Specifies the supported Azure location where the Machine Learning Workspace should exist. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The user assigned identity id that represents the workspace identity. @@ -283,9 +293,11 @@ type WorkspaceParameters struct { PrimaryUserAssignedIdentitySelector *v1.Selector `json:"primaryUserAssignedIdentitySelector,omitempty" tf:"-"` // Enable public access when this Machine Learning Workspace is behind a VNet. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PublicAccessBehindVirtualNetworkEnabled *bool `json:"publicAccessBehindVirtualNetworkEnabled,omitempty" tf:"public_access_behind_virtual_network_enabled,omitempty"` // Enable public access when this Machine Learning Workspace is behind VNet. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // Specifies the name of the Resource Group in which the Machine Learning Workspace should exist. Changing this forces a new resource to be created. @@ -302,6 +314,7 @@ type WorkspaceParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // SKU/edition of the Machine Learning Workspace, possible values are Basic. Defaults to Basic. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // The ID of the Storage Account associated with this Machine Learning Workspace. Changing this forces a new resource to be created. @@ -319,9 +332,11 @@ type WorkspaceParameters struct { StorageAccountIDSelector *v1.Selector `json:"storageAccountIdSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Enable V1 API features, enabling v1_legacy_mode may prevent you from using features provided by the v2 API. Defaults to false. + // +kubebuilder:validation:Optional V1LegacyModeEnabled *bool `json:"v1LegacyModeEnabled,omitempty" tf:"v1_legacy_mode_enabled,omitempty"` } diff --git a/apis/maintenance/v1beta1/zz_maintenanceassignmentdedicatedhost_types.go b/apis/maintenance/v1beta1/zz_maintenanceassignmentdedicatedhost_types.go index 2ec7d58a7..7737de6ed 100755 --- a/apis/maintenance/v1beta1/zz_maintenanceassignmentdedicatedhost_types.go +++ b/apis/maintenance/v1beta1/zz_maintenanceassignmentdedicatedhost_types.go @@ -51,6 +51,7 @@ type MaintenanceAssignmentDedicatedHostParameters struct { DedicatedHostIDSelector *v1.Selector `json:"dedicatedHostIdSelector,omitempty" tf:"-"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the ID of the Maintenance Configuration Resource. Changing this forces a new resource to be created. diff --git a/apis/maintenance/v1beta1/zz_maintenanceassignmentvirtualmachine_types.go b/apis/maintenance/v1beta1/zz_maintenanceassignmentvirtualmachine_types.go index 7f7ab4ace..2ad7e4ceb 100755 --- a/apis/maintenance/v1beta1/zz_maintenanceassignmentvirtualmachine_types.go +++ b/apis/maintenance/v1beta1/zz_maintenanceassignmentvirtualmachine_types.go @@ -37,6 +37,7 @@ type MaintenanceAssignmentVirtualMachineObservation struct { type MaintenanceAssignmentVirtualMachineParameters struct { // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the ID of the Maintenance Configuration Resource. Changing this forces a new resource to be created. diff --git a/apis/maintenance/v1beta1/zz_maintenanceconfiguration_types.go b/apis/maintenance/v1beta1/zz_maintenanceconfiguration_types.go index a28a6fb1b..d85bd8bde 100755 --- a/apis/maintenance/v1beta1/zz_maintenanceconfiguration_types.go +++ b/apis/maintenance/v1beta1/zz_maintenanceconfiguration_types.go @@ -40,12 +40,15 @@ type InstallPatchesObservation struct { type InstallPatchesParameters struct { // A linux block as defined above. This property only applies when scope is set to InGuestPatch + // +kubebuilder:validation:Optional Linux []LinuxParameters `json:"linux,omitempty" tf:"linux,omitempty"` // Possible reboot preference as defined by the user based on which it would be decided to reboot the machine or not after the patch operation is completed. Possible values are Always, IfRequired and Never. This property only applies when scope is set to InGuestPatch. + // +kubebuilder:validation:Optional Reboot *string `json:"reboot,omitempty" tf:"reboot,omitempty"` // A windows block as defined above. This property only applies when scope is set to InGuestPatch + // +kubebuilder:validation:Optional Windows []WindowsParameters `json:"windows,omitempty" tf:"windows,omitempty"` } @@ -76,12 +79,15 @@ type LinuxObservation struct { type LinuxParameters struct { // List of Classification category of patches to be patched. Possible values are Critical, Security, UpdateRollup, FeaturePack, ServicePack, Definition, Tools and Updates. + // +kubebuilder:validation:Optional ClassificationsToInclude []*string `json:"classificationsToInclude,omitempty" tf:"classifications_to_include,omitempty"` // List of package names to be excluded from patching. + // +kubebuilder:validation:Optional PackageNamesMaskToExclude []*string `json:"packageNamesMaskToExclude,omitempty" tf:"package_names_mask_to_exclude,omitempty"` // List of package names to be included for patching. + // +kubebuilder:validation:Optional PackageNamesMaskToInclude []*string `json:"packageNamesMaskToInclude,omitempty" tf:"package_names_mask_to_include,omitempty"` } @@ -148,15 +154,19 @@ type MaintenanceConfigurationObservation struct { type MaintenanceConfigurationParameters struct { // The in guest user patch mode. Possible values are Platform or User. Must be specified when scope is InGuestPatch. + // +kubebuilder:validation:Optional InGuestUserPatchMode *string `json:"inGuestUserPatchMode,omitempty" tf:"in_guest_user_patch_mode,omitempty"` // An install_patches block as defined below. + // +kubebuilder:validation:Optional InstallPatches []InstallPatchesParameters `json:"installPatches,omitempty" tf:"install_patches,omitempty"` // Specified the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // A mapping of properties to assign to the resource. + // +kubebuilder:validation:Optional Properties map[string]*string `json:"properties,omitempty" tf:"properties,omitempty"` // The name of the Resource Group where the Maintenance Configuration should exist. Changing this forces a new resource to be created. @@ -173,15 +183,19 @@ type MaintenanceConfigurationParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The scope of the Maintenance Configuration. Possible values are Extension, Host, InGuestPatch, OSImage, SQLDB or SQLManagedInstance. + // +kubebuilder:validation:Optional Scope *string `json:"scope,omitempty" tf:"scope,omitempty"` // A mapping of tags to assign to the resource. The key could not contain upper case letter. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The visibility of the Maintenance Configuration. The only allowable value is Custom. + // +kubebuilder:validation:Optional Visibility *string `json:"visibility,omitempty" tf:"visibility,omitempty"` // A window block as defined below. + // +kubebuilder:validation:Optional Window []WindowParameters `json:"window,omitempty" tf:"window,omitempty"` } @@ -224,18 +238,23 @@ type WindowObservation struct { type WindowParameters struct { // The duration of the maintenance window in HH:mm format. + // +kubebuilder:validation:Optional Duration *string `json:"duration,omitempty" tf:"duration,omitempty"` // Effective expiration date of the maintenance window in YYYY-MM-DD hh:mm format. + // +kubebuilder:validation:Optional ExpirationDateTime *string `json:"expirationDateTime,omitempty" tf:"expiration_date_time,omitempty"` // The rate at which a maintenance window is expected to recur. The rate can be expressed as daily, weekly, or monthly schedules. + // +kubebuilder:validation:Optional RecurEvery *string `json:"recurEvery,omitempty" tf:"recur_every,omitempty"` // Effective start date of the maintenance window in YYYY-MM-DD hh:mm format. + // +kubebuilder:validation:Optional StartDateTime *string `json:"startDateTime,omitempty" tf:"start_date_time,omitempty"` // The time zone for the maintenance window. A list of timezones can be obtained by executing [System.TimeZoneInfo]::GetSystemTimeZones() in PowerShell. + // +kubebuilder:validation:Optional TimeZone *string `json:"timeZone,omitempty" tf:"time_zone,omitempty"` } @@ -266,12 +285,15 @@ type WindowsObservation struct { type WindowsParameters struct { // List of Classification category of patches to be patched. Possible values are Critical, Security, UpdateRollup, FeaturePack, ServicePack, Definition, Tools and Updates. + // +kubebuilder:validation:Optional ClassificationsToInclude []*string `json:"classificationsToInclude,omitempty" tf:"classifications_to_include,omitempty"` // List of KB numbers to be excluded from patching. + // +kubebuilder:validation:Optional KbNumbersToExclude []*string `json:"kbNumbersToExclude,omitempty" tf:"kb_numbers_to_exclude,omitempty"` // List of KB numbers to be included for patching. + // +kubebuilder:validation:Optional KbNumbersToInclude []*string `json:"kbNumbersToInclude,omitempty" tf:"kb_numbers_to_include,omitempty"` } diff --git a/apis/managedidentity/v1beta1/zz_federatedidentitycredential_types.go b/apis/managedidentity/v1beta1/zz_federatedidentitycredential_types.go index 5a00e6470..dd5c28424 100755 --- a/apis/managedidentity/v1beta1/zz_federatedidentitycredential_types.go +++ b/apis/managedidentity/v1beta1/zz_federatedidentitycredential_types.go @@ -49,9 +49,11 @@ type FederatedIdentityCredentialObservation struct { type FederatedIdentityCredentialParameters struct { // Specifies the audience for this Federated Identity Credential. Changing this forces a new Federated Identity Credential to be created. + // +kubebuilder:validation:Optional Audience []*string `json:"audience,omitempty" tf:"audience,omitempty"` // Specifies the issuer of this Federated Identity Credential. Changing this forces a new Federated Identity Credential to be created. + // +kubebuilder:validation:Optional Issuer *string `json:"issuer,omitempty" tf:"issuer,omitempty"` // Specifies parent ID of User Assigned Identity for this Federated Identity Credential. Changing this forces a new Federated Identity Credential to be created. @@ -82,6 +84,7 @@ type FederatedIdentityCredentialParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Specifies the subject for this Federated Identity Credential. Changing this forces a new Federated Identity Credential to be created. + // +kubebuilder:validation:Optional Subject *string `json:"subject,omitempty" tf:"subject,omitempty"` } diff --git a/apis/managedidentity/v1beta1/zz_userassignedidentity_types.go b/apis/managedidentity/v1beta1/zz_userassignedidentity_types.go index 78fb7ccb6..d9187706a 100755 --- a/apis/managedidentity/v1beta1/zz_userassignedidentity_types.go +++ b/apis/managedidentity/v1beta1/zz_userassignedidentity_types.go @@ -55,9 +55,11 @@ type UserAssignedIdentityObservation struct { type UserAssignedIdentityParameters struct { // The Azure Region where the User Assigned Identity should exist. Changing this forces a new User Assigned Identity to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the name of this User Assigned Identity. Changing this forces a new User Assigned Identity to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the name of the Resource Group within which this User Assigned Identity should exist. Changing this forces a new User Assigned Identity to be created. @@ -74,6 +76,7 @@ type UserAssignedIdentityParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the User Assigned Identity. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/management/v1beta1/zz_managementgroup_types.go b/apis/management/v1beta1/zz_managementgroup_types.go index 4fffc2931..5905c7d96 100755 --- a/apis/management/v1beta1/zz_managementgroup_types.go +++ b/apis/management/v1beta1/zz_managementgroup_types.go @@ -40,6 +40,7 @@ type ManagementGroupObservation struct { type ManagementGroupParameters struct { // A friendly name for this Management Group. If not specified, this will be the same as the name. + // +kubebuilder:validation:Optional DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` // The ID of the Parent Management Group. @@ -57,6 +58,7 @@ type ManagementGroupParameters struct { ParentManagementGroupIDSelector *v1.Selector `json:"parentManagementGroupIdSelector,omitempty" tf:"-"` // A list of Subscription GUIDs which should be assigned to the Management Group. + // +kubebuilder:validation:Optional SubscriptionIds []*string `json:"subscriptionIds,omitempty" tf:"subscription_ids,omitempty"` } diff --git a/apis/maps/v1beta1/zz_account_types.go b/apis/maps/v1beta1/zz_account_types.go index 62602e3f1..cac4953ce 100755 --- a/apis/maps/v1beta1/zz_account_types.go +++ b/apis/maps/v1beta1/zz_account_types.go @@ -56,9 +56,11 @@ type AccountParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The SKU of the Azure Maps Account. Possible values are S0, S1 and G2. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // A mapping of tags to assign to the Azure Maps Account. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/maps/v1beta1/zz_creator_types.go b/apis/maps/v1beta1/zz_creator_types.go index 41e4e2c13..11e65ec53 100755 --- a/apis/maps/v1beta1/zz_creator_types.go +++ b/apis/maps/v1beta1/zz_creator_types.go @@ -46,6 +46,7 @@ type CreatorObservation struct { type CreatorParameters struct { // The Azure Region where the Azure Maps Creator should exist. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The ID of the Azure Maps Creator. Changing this forces a new resource to be created. @@ -63,9 +64,11 @@ type CreatorParameters struct { MapsAccountIDSelector *v1.Selector `json:"mapsAccountIdSelector,omitempty" tf:"-"` // The storage units to be allocated. Integer values from 1 to 100, inclusive. + // +kubebuilder:validation:Optional StorageUnits *float64 `json:"storageUnits,omitempty" tf:"storage_units,omitempty"` // A mapping of tags which should be assigned to the Azure Maps Creator. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/marketplaceordering/v1beta1/zz_marketplaceagreement_types.go b/apis/marketplaceordering/v1beta1/zz_marketplaceagreement_types.go index 92ba2aac7..b5fe3f8d0 100755 --- a/apis/marketplaceordering/v1beta1/zz_marketplaceagreement_types.go +++ b/apis/marketplaceordering/v1beta1/zz_marketplaceagreement_types.go @@ -47,12 +47,15 @@ type MarketplaceAgreementObservation struct { type MarketplaceAgreementParameters struct { // The Offer of the Marketplace Image. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Offer *string `json:"offer,omitempty" tf:"offer,omitempty"` // The Plan of the Marketplace Image. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Plan *string `json:"plan,omitempty" tf:"plan,omitempty"` // The Publisher of the Marketplace Image. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` } diff --git a/apis/media/v1beta1/zz_asset_types.go b/apis/media/v1beta1/zz_asset_types.go index 808b6620d..e7ce65a4a 100755 --- a/apis/media/v1beta1/zz_asset_types.go +++ b/apis/media/v1beta1/zz_asset_types.go @@ -55,12 +55,15 @@ type AssetObservation struct { type AssetParameters struct { // The alternate ID of the Asset. + // +kubebuilder:validation:Optional AlternateID *string `json:"alternateId,omitempty" tf:"alternate_id,omitempty"` // The name of the asset blob container. Changing this forces a new Media Asset to be created. + // +kubebuilder:validation:Optional Container *string `json:"container,omitempty" tf:"container,omitempty"` // The Asset description. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // Specifies the name of the Media Services Account. Changing this forces a new Media Asset to be created. @@ -90,6 +93,7 @@ type AssetParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The name of the storage account where to store the media asset. Changing this forces a new Media Asset to be created. + // +kubebuilder:validation:Optional StorageAccountName *string `json:"storageAccountName,omitempty" tf:"storage_account_name,omitempty"` } diff --git a/apis/media/v1beta1/zz_assetfilter_types.go b/apis/media/v1beta1/zz_assetfilter_types.go index 007d1207f..10999d082 100755 --- a/apis/media/v1beta1/zz_assetfilter_types.go +++ b/apis/media/v1beta1/zz_assetfilter_types.go @@ -60,12 +60,15 @@ type AssetFilterParameters struct { AssetIDSelector *v1.Selector `json:"assetIdSelector,omitempty" tf:"-"` // The first quality bitrate. Sets the first video track to appear in the Live Streaming playlist to allow HLS native players to start downloading from this quality level at the beginning. + // +kubebuilder:validation:Optional FirstQualityBitrate *float64 `json:"firstQualityBitrate,omitempty" tf:"first_quality_bitrate,omitempty"` // A presentation_time_range block as defined below. + // +kubebuilder:validation:Optional PresentationTimeRange []PresentationTimeRangeParameters `json:"presentationTimeRange,omitempty" tf:"presentation_time_range,omitempty"` // One or more track_selection blocks as defined below. + // +kubebuilder:validation:Optional TrackSelection []TrackSelectionParameters `json:"trackSelection,omitempty" tf:"track_selection,omitempty"` } @@ -96,12 +99,15 @@ type ConditionObservation struct { type ConditionParameters struct { // The condition operation to test a track property against. Supported values are Equal and NotEqual. + // +kubebuilder:validation:Optional Operation *string `json:"operation,omitempty" tf:"operation,omitempty"` // The track property to compare. Supported values are Bitrate, FourCC, Language, Name and Type. Check documentation for more details. + // +kubebuilder:validation:Optional Property *string `json:"property,omitempty" tf:"property,omitempty"` // The track property value to match or not match. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -155,22 +161,28 @@ type PresentationTimeRangeParameters struct { // The absolute end time boundary. Applies to Video on Demand (VoD). // For the Live Streaming presentation, it is silently ignored and applied when the presentation ends and the stream becomes VoD. This is a long value that represents an absolute end point of the presentation, rounded to the closest next GOP start. The unit is defined by unit_timescale_in_miliseconds, so an end_in_units of 180 would be for 3 minutes. Use start_in_units and end_in_units to trim the fragments that will be in the playlist (manifest). For example, start_in_units set to 20 and end_in_units set to 60 using unit_timescale_in_miliseconds in 1000 will generate a playlist that contains fragments from between 20 seconds and 60 seconds of the VoD presentation. If a fragment straddles the boundary, the entire fragment will be included in the manifest. + // +kubebuilder:validation:Optional EndInUnits *float64 `json:"endInUnits,omitempty" tf:"end_in_units,omitempty"` // Indicates whether the end_in_units property must be present. If true, end_in_units must be specified or a bad request code is returned. Applies to Live Streaming only. Allowed values: false, true. + // +kubebuilder:validation:Optional ForceEnd *bool `json:"forceEnd,omitempty" tf:"force_end,omitempty"` // The relative to end right edge. Applies to Live Streaming only. // This value defines the latest live position that a client can seek to. Using this property, you can delay live playback position and create a server-side buffer for players. The unit is defined by unit_timescale_in_miliseconds. The maximum live back off duration is 300 seconds. For example, a value of 20 means that the latest available content is 20 seconds delayed from the real live edge. + // +kubebuilder:validation:Optional LiveBackoffInUnits *float64 `json:"liveBackoffInUnits,omitempty" tf:"live_backoff_in_units,omitempty"` // The relative to end sliding window. Applies to Live Streaming only. Use presentation_window_in_units to apply a sliding window of fragments to include in a playlist. The unit is defined by unit_timescale_in_miliseconds. For example, set presentation_window_in_units to 120 to apply a two-minute sliding window. Media within 2 minutes of the live edge will be included in the playlist. If a fragment straddles the boundary, the entire fragment will be included in the playlist. The minimum presentation window duration is 60 seconds. + // +kubebuilder:validation:Optional PresentationWindowInUnits *float64 `json:"presentationWindowInUnits,omitempty" tf:"presentation_window_in_units,omitempty"` // The absolute start time boundary. Applies to Video on Demand (VoD) or Live Streaming. This is a long value that represents an absolute start point of the stream. The value gets rounded to the closest next GOP start. The unit is defined by unit_timescale_in_miliseconds, so a start_in_units of 15 would be for 15 seconds. Use start_in_units and end_in_units to trim the fragments that will be in the playlist (manifest). For example, start_in_units set to 20 and end_in_units set to 60 using unit_timescale_in_miliseconds in 1000 will generate a playlist that contains fragments from between 20 seconds and 60 seconds of the VoD presentation. If a fragment straddles the boundary, the entire fragment will be included in the manifest. + // +kubebuilder:validation:Optional StartInUnits *float64 `json:"startInUnits,omitempty" tf:"start_in_units,omitempty"` // Specified as the number of miliseconds in one unit timescale. For example, if you want to set a start_in_units at 30 seconds, you would use a value of 30 when using the unit_timescale_in_miliseconds in 1000. Or if you want to set start_in_units in 30 miliseconds, you would use a value of 30 when using the unit_timescale_in_miliseconds in 1. Applies timescale to start_in_units, start_timescale and presentation_window_in_timescale and live_backoff_in_timescale. + // +kubebuilder:validation:Optional UnitTimescaleInMiliseconds *float64 `json:"unitTimescaleInMiliseconds,omitempty" tf:"unit_timescale_in_miliseconds,omitempty"` } @@ -189,6 +201,7 @@ type TrackSelectionObservation struct { type TrackSelectionParameters struct { // One or more condition blocks as defined above. + // +kubebuilder:validation:Optional Condition []ConditionParameters `json:"condition,omitempty" tf:"condition,omitempty"` } diff --git a/apis/media/v1beta1/zz_contentkeypolicy_types.go b/apis/media/v1beta1/zz_contentkeypolicy_types.go index da01fb068..b57509fe6 100755 --- a/apis/media/v1beta1/zz_contentkeypolicy_types.go +++ b/apis/media/v1beta1/zz_contentkeypolicy_types.go @@ -68,6 +68,7 @@ type ContentKeyPolicyObservation struct { type ContentKeyPolicyParameters struct { // A description for the Policy. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The Media Services account name. Changing this forces a new Content Key Policy to be created. @@ -84,6 +85,7 @@ type ContentKeyPolicyParameters struct { MediaServicesAccountNameSelector *v1.Selector `json:"mediaServicesAccountNameSelector,omitempty" tf:"-"` // One or more policy_option blocks as defined below. + // +kubebuilder:validation:Optional PolicyOption []PolicyOptionParameters `json:"policyOption,omitempty" tf:"policy_option,omitempty"` // The name of the Resource Group where the Content Key Policy should exist. Changing this forces a new Content Key Policy to be created. @@ -121,9 +123,11 @@ type ExplicitAnalogTelevisionOutputRestrictionObservation struct { type ExplicitAnalogTelevisionOutputRestrictionParameters struct { // Indicates whether this restriction is enforced on a best effort basis. Possible values are true or false. Defaults to false. + // +kubebuilder:validation:Optional BestEffortEnforced *bool `json:"bestEffortEnforced,omitempty" tf:"best_effort_enforced,omitempty"` // The restriction control bits. Possible value is integer between 0 and 3 inclusive. + // +kubebuilder:validation:Optional ControlBits *float64 `json:"controlBits,omitempty" tf:"control_bits,omitempty"` } @@ -158,6 +162,7 @@ type FairplayConfigurationParameters struct { AskSecretRef *v1.SecretKeySelector `json:"askSecretRef,omitempty" tf:"-"` // A offline_rental_configuration block as defined below. + // +kubebuilder:validation:Optional OfflineRentalConfiguration []OfflineRentalConfigurationParameters `json:"offlineRentalConfiguration,omitempty" tf:"offline_rental_configuration,omitempty"` // The password encrypting FairPlay certificate in PKCS 12 (pfx) format. @@ -169,9 +174,11 @@ type FairplayConfigurationParameters struct { PfxSecretRef *v1.SecretKeySelector `json:"pfxSecretRef,omitempty" tf:"-"` // The rental and lease key type. Supported values are DualExpiry, PersistentLimited, PersistentUnlimited or Undefined. + // +kubebuilder:validation:Optional RentalAndLeaseKeyType *string `json:"rentalAndLeaseKeyType,omitempty" tf:"rental_and_lease_key_type,omitempty"` // The rental duration. Must be greater than 0. + // +kubebuilder:validation:Optional RentalDurationSeconds *float64 `json:"rentalDurationSeconds,omitempty" tf:"rental_duration_seconds,omitempty"` } @@ -196,9 +203,11 @@ type OfflineRentalConfigurationObservation struct { type OfflineRentalConfigurationParameters struct { // Playback duration. + // +kubebuilder:validation:Optional PlaybackDurationSeconds *float64 `json:"playbackDurationSeconds,omitempty" tf:"playback_duration_seconds,omitempty"` // Storage duration. + // +kubebuilder:validation:Optional StorageDurationSeconds *float64 `json:"storageDurationSeconds,omitempty" tf:"storage_duration_seconds,omitempty"` } @@ -289,42 +298,55 @@ type PlayRightObservation struct { type PlayRightParameters struct { // Configures Automatic Gain Control (AGC) and Color Stripe in the license. Must be between 0 and 3 inclusive. + // +kubebuilder:validation:Optional AgcAndColorStripeRestriction *float64 `json:"agcAndColorStripeRestriction,omitempty" tf:"agc_and_color_stripe_restriction,omitempty"` // Configures Unknown output handling settings of the license. Supported values are Allowed, AllowedWithVideoConstriction or NotAllowed. + // +kubebuilder:validation:Optional AllowPassingVideoContentToUnknownOutput *string `json:"allowPassingVideoContentToUnknownOutput,omitempty" tf:"allow_passing_video_content_to_unknown_output,omitempty"` // Specifies the output protection level for compressed digital audio. Supported values are 100, 150 or 200. + // +kubebuilder:validation:Optional AnalogVideoOpl *float64 `json:"analogVideoOpl,omitempty" tf:"analog_video_opl,omitempty"` // Specifies the output protection level for compressed digital audio.Supported values are 100, 150, 200, 250 or 300. + // +kubebuilder:validation:Optional CompressedDigitalAudioOpl *float64 `json:"compressedDigitalAudioOpl,omitempty" tf:"compressed_digital_audio_opl,omitempty"` // Specifies the output protection level for compressed digital video. Supported values are 400 or 500. + // +kubebuilder:validation:Optional CompressedDigitalVideoOpl *float64 `json:"compressedDigitalVideoOpl,omitempty" tf:"compressed_digital_video_opl,omitempty"` // Enables the Image Constraint For Analog Component Video Restriction in the license. + // +kubebuilder:validation:Optional DigitalVideoOnlyContentRestriction *bool `json:"digitalVideoOnlyContentRestriction,omitempty" tf:"digital_video_only_content_restriction,omitempty"` // An explicit_analog_television_output_restriction block as defined above. + // +kubebuilder:validation:Optional ExplicitAnalogTelevisionOutputRestriction []ExplicitAnalogTelevisionOutputRestrictionParameters `json:"explicitAnalogTelevisionOutputRestriction,omitempty" tf:"explicit_analog_television_output_restriction,omitempty"` // The amount of time that the license is valid after the license is first used to play content. + // +kubebuilder:validation:Optional FirstPlayExpiration *string `json:"firstPlayExpiration,omitempty" tf:"first_play_expiration,omitempty"` // Enables the Image Constraint For Analog Component Video Restriction in the license. + // +kubebuilder:validation:Optional ImageConstraintForAnalogComponentVideoRestriction *bool `json:"imageConstraintForAnalogComponentVideoRestriction,omitempty" tf:"image_constraint_for_analog_component_video_restriction,omitempty"` // Enables the Image Constraint For Analog Component Video Restriction in the license. + // +kubebuilder:validation:Optional ImageConstraintForAnalogComputerMonitorRestriction *bool `json:"imageConstraintForAnalogComputerMonitorRestriction,omitempty" tf:"image_constraint_for_analog_computer_monitor_restriction,omitempty"` // Configures the Serial Copy Management System (SCMS) in the license. Must be between 0 and 3 inclusive. + // +kubebuilder:validation:Optional ScmsRestriction *float64 `json:"scmsRestriction,omitempty" tf:"scms_restriction,omitempty"` // Specifies the output protection level for uncompressed digital audio. Supported values are 100, 150, 200, 250 or 300. + // +kubebuilder:validation:Optional UncompressedDigitalAudioOpl *float64 `json:"uncompressedDigitalAudioOpl,omitempty" tf:"uncompressed_digital_audio_opl,omitempty"` // Specifies the output protection level for uncompressed digital video. Supported values are 100, 250, 270 or 300. + // +kubebuilder:validation:Optional UncompressedDigitalVideoOpl *float64 `json:"uncompressedDigitalVideoOpl,omitempty" tf:"uncompressed_digital_video_opl,omitempty"` } @@ -403,21 +425,27 @@ type PlayreadyConfigurationLicenseObservation struct { type PlayreadyConfigurationLicenseParameters struct { // A flag indicating whether test devices can use the license. + // +kubebuilder:validation:Optional AllowTestDevices *bool `json:"allowTestDevices,omitempty" tf:"allow_test_devices,omitempty"` // The begin date of license. + // +kubebuilder:validation:Optional BeginDate *string `json:"beginDate,omitempty" tf:"begin_date,omitempty"` // Specifies that the content key ID is in the PlayReady header. + // +kubebuilder:validation:Optional ContentKeyLocationFromHeaderEnabled *bool `json:"contentKeyLocationFromHeaderEnabled,omitempty" tf:"content_key_location_from_header_enabled,omitempty"` // The content key ID. Specifies that the content key ID is specified in the PlayReady configuration. + // +kubebuilder:validation:Optional ContentKeyLocationFromKeyID *string `json:"contentKeyLocationFromKeyId,omitempty" tf:"content_key_location_from_key_id,omitempty"` // The PlayReady content type. Supported values are UltraVioletDownload, UltraVioletStreaming or Unspecified. + // +kubebuilder:validation:Optional ContentType *string `json:"contentType,omitempty" tf:"content_type,omitempty"` // The expiration date of license. + // +kubebuilder:validation:Optional ExpirationDate *string `json:"expirationDate,omitempty" tf:"expiration_date,omitempty"` // The grace period of license. @@ -425,18 +453,23 @@ type PlayreadyConfigurationLicenseParameters struct { GracePeriodSecretRef *v1.SecretKeySelector `json:"gracePeriodSecretRef,omitempty" tf:"-"` // The license type. Supported values are NonPersistent or Persistent. + // +kubebuilder:validation:Optional LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"` // A play_right block as defined above. + // +kubebuilder:validation:Optional PlayRight []PlayRightParameters `json:"playRight,omitempty" tf:"play_right,omitempty"` // The relative begin date of license. + // +kubebuilder:validation:Optional RelativeBeginDate *string `json:"relativeBeginDate,omitempty" tf:"relative_begin_date,omitempty"` // The relative expiration date of license. + // +kubebuilder:validation:Optional RelativeExpirationDate *string `json:"relativeExpirationDate,omitempty" tf:"relative_expiration_date,omitempty"` // The security level of the PlayReady license. Possible values are SL150, SL2000 and SL3000. Please see this document for more information about security level. See this document for more information about SL3000 support. + // +kubebuilder:validation:Optional SecurityLevel *string `json:"securityLevel,omitempty" tf:"security_level,omitempty"` } @@ -497,27 +530,35 @@ type PolicyOptionObservation struct { type PolicyOptionParameters struct { // Enable a configuration for non-DRM keys. + // +kubebuilder:validation:Optional ClearKeyConfigurationEnabled *bool `json:"clearKeyConfigurationEnabled,omitempty" tf:"clear_key_configuration_enabled,omitempty"` // A fairplay_configuration block as defined above. Check license requirements here https://docs.microsoft.com/azure/media-services/latest/fairplay-license-overview. + // +kubebuilder:validation:Optional FairplayConfiguration []FairplayConfigurationParameters `json:"fairplayConfiguration,omitempty" tf:"fairplay_configuration,omitempty"` // The name which should be used for this Policy Option. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Enable an open restriction. License or key will be delivered on every request. + // +kubebuilder:validation:Optional OpenRestrictionEnabled *bool `json:"openRestrictionEnabled,omitempty" tf:"open_restriction_enabled,omitempty"` // One or more playready_configuration_license blocks as defined above. + // +kubebuilder:validation:Optional PlayreadyConfigurationLicense []PlayreadyConfigurationLicenseParameters `json:"playreadyConfigurationLicense,omitempty" tf:"playready_configuration_license,omitempty"` // The custom response data of the PlayReady configuration. This only applies when playready_configuration_license is specified. + // +kubebuilder:validation:Optional PlayreadyResponseCustomData *string `json:"playreadyResponseCustomData,omitempty" tf:"playready_response_custom_data,omitempty"` // A token_restriction block as defined below. + // +kubebuilder:validation:Optional TokenRestriction []TokenRestrictionParameters `json:"tokenRestriction,omitempty" tf:"token_restriction,omitempty"` // The Widevine template. + // +kubebuilder:validation:Optional WidevineConfigurationTemplate *string `json:"widevineConfigurationTemplate,omitempty" tf:"widevine_configuration_template,omitempty"` } @@ -542,9 +583,11 @@ type RequiredClaimObservation struct { type RequiredClaimParameters struct { // Token claim type. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // Token claim value. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -593,15 +636,19 @@ type TokenRestrictionObservation struct { type TokenRestrictionParameters struct { // One or more alternate_key block as defined above. + // +kubebuilder:validation:Optional AlternateKey []AlternateKeyParameters `json:"alternateKey,omitempty" tf:"alternate_key,omitempty"` // The audience for the token. + // +kubebuilder:validation:Optional Audience *string `json:"audience,omitempty" tf:"audience,omitempty"` // The token issuer. + // +kubebuilder:validation:Optional Issuer *string `json:"issuer,omitempty" tf:"issuer,omitempty"` // The OpenID connect discovery document. + // +kubebuilder:validation:Optional OpenIDConnectDiscoveryDocument *string `json:"openIdConnectDiscoveryDocument,omitempty" tf:"open_id_connect_discovery_document,omitempty"` // The RSA parameter exponent. @@ -621,9 +668,11 @@ type TokenRestrictionParameters struct { PrimaryX509TokenKeyRawSecretRef *v1.SecretKeySelector `json:"primaryX509TokenKeyRawSecretRef,omitempty" tf:"-"` // One or more required_claim blocks as defined above. + // +kubebuilder:validation:Optional RequiredClaim []RequiredClaimParameters `json:"requiredClaim,omitempty" tf:"required_claim,omitempty"` // The type of token. Supported values are Jwt or Swt. + // +kubebuilder:validation:Optional TokenType *string `json:"tokenType,omitempty" tf:"token_type,omitempty"` } diff --git a/apis/media/v1beta1/zz_job_types.go b/apis/media/v1beta1/zz_job_types.go index 17a7c9978..31a644f0e 100755 --- a/apis/media/v1beta1/zz_job_types.go +++ b/apis/media/v1beta1/zz_job_types.go @@ -31,6 +31,7 @@ type InputAssetObservation struct { type InputAssetParameters struct { // A label that is assigned to a JobInputClip, that is used to satisfy a reference used in the Transform. For example, a Transform can be authored so as to take an image file with the label 'xyz' and apply it as an overlay onto the input video before it is encoded. When submitting a Job, exactly one of the JobInputs should be the image file, and it should have the label 'xyz'. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Label *string `json:"label,omitempty" tf:"label,omitempty"` // The name of the input Asset. Changing this forces a new Media Job to be created. @@ -92,9 +93,11 @@ type JobObservation struct { type JobParameters struct { // Optional customer supplied description of the Job. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // A input_asset block as defined below. Changing this forces a new Media Job to be created. + // +kubebuilder:validation:Optional InputAsset []InputAssetParameters `json:"inputAsset,omitempty" tf:"input_asset,omitempty"` // The Media Services account name. Changing this forces a new Transform to be created. @@ -111,9 +114,11 @@ type JobParameters struct { MediaServicesAccountNameSelector *v1.Selector `json:"mediaServicesAccountNameSelector,omitempty" tf:"-"` // One or more output_asset blocks as defined below. Changing this forces a new Media Job to be created. + // +kubebuilder:validation:Optional OutputAsset []OutputAssetParameters `json:"outputAsset,omitempty" tf:"output_asset,omitempty"` // Priority with which the job should be processed. Higher priority jobs are processed before lower priority jobs. If not set, the default is normal. Changing this forces a new Media Job to be created. Possible values are High, Normal and Low. + // +kubebuilder:validation:Optional Priority *string `json:"priority,omitempty" tf:"priority,omitempty"` // The name of the Resource Group where the Media Job should exist. Changing this forces a new Media Job to be created. @@ -161,6 +166,7 @@ type OutputAssetObservation struct { type OutputAssetParameters struct { // A label that is assigned to a JobOutput in order to help uniquely identify it. This is useful when your Transform has more than one TransformOutput, whereby your Job has more than one JobOutput. In such cases, when you submit the Job, you will add two or more JobOutputs, in the same order as TransformOutputs in the Transform. Subsequently, when you retrieve the Job, either through events or on a GET request, you can use the label to easily identify the JobOutput. If a label is not provided, a default value of '{presetName}_{outputIndex}' will be used, where the preset name is the name of the preset in the corresponding TransformOutput and the output index is the relative index of the this JobOutput within the Job. Note that this index is the same as the relative index of the corresponding TransformOutput within its Transform. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Label *string `json:"label,omitempty" tf:"label,omitempty"` // The name of the output Asset. Changing this forces a new Media Job to be created. diff --git a/apis/media/v1beta1/zz_liveevent_types.go b/apis/media/v1beta1/zz_liveevent_types.go index ee121b30b..981cc5820 100755 --- a/apis/media/v1beta1/zz_liveevent_types.go +++ b/apis/media/v1beta1/zz_liveevent_types.go @@ -34,9 +34,11 @@ type CrossSiteAccessPolicyObservation struct { type CrossSiteAccessPolicyParameters struct { // The content of clientaccesspolicy.xml used by Silverlight. + // +kubebuilder:validation:Optional ClientAccessPolicy *string `json:"clientAccessPolicy,omitempty" tf:"client_access_policy,omitempty"` // The content of the Cross Domain Policy (crossdomain.xml). + // +kubebuilder:validation:Optional CrossDomainPolicy *string `json:"crossDomainPolicy,omitempty" tf:"cross_domain_policy,omitempty"` } @@ -73,15 +75,19 @@ type EncodingObservation struct { type EncodingParameters struct { // Use an ISO 8601 time value between 0.5 to 20 seconds to specify the output fragment length for the video and audio tracks of an encoding live event. For example, use PT2S to indicate 2 seconds. For the video track it also defines the key frame interval, or the length of a GoP (group of pictures). If this value is not set for an encoding live event, the fragment duration defaults to 2 seconds. The value cannot be set for pass-through live events. + // +kubebuilder:validation:Optional KeyFrameInterval *string `json:"keyFrameInterval,omitempty" tf:"key_frame_interval,omitempty"` // The optional encoding preset name, used when type is not None. If the type is set to Standard, then the default preset name is Default720p. Else if the type is set to Premium1080p, the default preset is Default1080p. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PresetName *string `json:"presetName,omitempty" tf:"preset_name,omitempty"` // Specifies how the input video will be resized to fit the desired output resolution(s). Allowed values are None, AutoFit or AutoSize. Default is None. + // +kubebuilder:validation:Optional StretchMode *string `json:"stretchMode,omitempty" tf:"stretch_mode,omitempty"` // Live event type. Allowed values are None, Premium1080p or Standard. When set to None, the service simply passes through the incoming video and audio layer(s) to the output. When type is set to Standard or Premium1080p, a live encoder transcodes the incoming stream into multiple bitrates or layers. Defaults to None. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -124,12 +130,15 @@ type IPAccessControlAllowObservation struct { type IPAccessControlAllowParameters struct { // The IP address or CIDR range. + // +kubebuilder:validation:Optional Address *string `json:"address,omitempty" tf:"address,omitempty"` // The name which should be used for this Live Event. Changing this forces a new Live Event to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The subnet mask prefix length (see CIDR notation). + // +kubebuilder:validation:Optional SubnetPrefixLength *float64 `json:"subnetPrefixLength,omitempty" tf:"subnet_prefix_length,omitempty"` } @@ -168,15 +177,19 @@ type InputObservation struct { type InputParameters struct { // A UUID in string form to uniquely identify the stream. If omitted, the service will generate a unique value. Changing this forces a new value to be created. + // +kubebuilder:validation:Optional AccessToken *string `json:"accessToken,omitempty" tf:"access_token,omitempty"` // One or more ip_access_control_allow blocks as defined below. + // +kubebuilder:validation:Optional IPAccessControlAllow []IPAccessControlAllowParameters `json:"ipAccessControlAllow,omitempty" tf:"ip_access_control_allow,omitempty"` // ISO 8601 time duration of the key frame interval duration of the input. This value sets the EXT-X-TARGETDURATION property in the HLS output. For example, use PT2S to indicate 2 seconds. This field cannot be set when type is set to Encoding. + // +kubebuilder:validation:Optional KeyFrameIntervalDuration *string `json:"keyFrameIntervalDuration,omitempty" tf:"key_frame_interval_duration,omitempty"` // The input protocol for the live event. Allowed values are FragmentedMP4 and RTMP. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional StreamingProtocol *string `json:"streamingProtocol,omitempty" tf:"streaming_protocol,omitempty"` } @@ -270,24 +283,31 @@ type LiveEventObservation struct { type LiveEventParameters struct { // The flag indicates if the resource should be automatically started on creation. Default is false. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional AutoStartEnabled *bool `json:"autoStartEnabled,omitempty" tf:"auto_start_enabled,omitempty"` // A cross_site_access_policy block as defined below. + // +kubebuilder:validation:Optional CrossSiteAccessPolicy []CrossSiteAccessPolicyParameters `json:"crossSiteAccessPolicy,omitempty" tf:"cross_site_access_policy,omitempty"` // A description for the live event. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // A encoding block as defined below. + // +kubebuilder:validation:Optional Encoding []EncodingParameters `json:"encoding,omitempty" tf:"encoding,omitempty"` // When use_static_hostname is set to true, the hostname_prefix specifies the first part of the hostname assigned to the live event preview and ingest endpoints. The final hostname would be a combination of this prefix, the media service account name and a short code for the Azure Media Services data center. + // +kubebuilder:validation:Optional HostNamePrefix *string `json:"hostnamePrefix,omitempty" tf:"hostname_prefix,omitempty"` // A input block as defined below. + // +kubebuilder:validation:Optional Input []InputParameters `json:"input,omitempty" tf:"input,omitempty"` // The Azure Region where the Live Event should exist. Changing this forces a new Live Event to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The Media Services account name. Changing this forces a new Live Event to be created. @@ -304,6 +324,7 @@ type LiveEventParameters struct { MediaServicesAccountNameSelector *v1.Selector `json:"mediaServicesAccountNameSelector,omitempty" tf:"-"` // A preview block as defined below. + // +kubebuilder:validation:Optional Preview []PreviewParameters `json:"preview,omitempty" tf:"preview,omitempty"` // The name of the Resource Group where the Live Event should exist. Changing this forces a new Live Event to be created. @@ -320,15 +341,19 @@ type LiveEventParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A list of options to use for the LiveEvent. Possible values are Default, LowLatency, LowLatencyV2. Please see more at this document. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional StreamOptions []*string `json:"streamOptions,omitempty" tf:"stream_options,omitempty"` // A mapping of tags which should be assigned to the Live Event. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies a list of languages (locale) to be used for speech-to-text transcription – it should match the spoken language in the audio track. The value should be in BCP-47 format (e.g: en-US). See the Microsoft Documentation for more information about the live transcription feature and the list of supported languages. + // +kubebuilder:validation:Optional TranscriptionLanguages []*string `json:"transcriptionLanguages,omitempty" tf:"transcription_languages,omitempty"` // Specifies whether a static hostname would be assigned to the live event preview and ingest endpoints. Changing this forces a new Live Event to be created. + // +kubebuilder:validation:Optional UseStaticHostName *bool `json:"useStaticHostname,omitempty" tf:"use_static_hostname,omitempty"` } @@ -371,12 +396,15 @@ type PreviewIPAccessControlAllowObservation struct { type PreviewIPAccessControlAllowParameters struct { // The IP address or CIDR range. + // +kubebuilder:validation:Optional Address *string `json:"address,omitempty" tf:"address,omitempty"` // The name which should be used for this Live Event. Changing this forces a new Live Event to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The subnet mask prefix length (see CIDR notation). + // +kubebuilder:validation:Optional SubnetPrefixLength *float64 `json:"subnetPrefixLength,omitempty" tf:"subnet_prefix_length,omitempty"` } @@ -415,15 +443,19 @@ type PreviewObservation struct { type PreviewParameters struct { // An alternative media identifier associated with the streaming locator created for the preview. The identifier can be used in the CustomLicenseAcquisitionUrlTemplate or the CustomKeyAcquisitionUrlTemplate of the Streaming Policy specified in the streaming_policy_name field. + // +kubebuilder:validation:Optional AlternativeMediaID *string `json:"alternativeMediaId,omitempty" tf:"alternative_media_id,omitempty"` // One or more ip_access_control_allow blocks as defined above. + // +kubebuilder:validation:Optional IPAccessControlAllow []PreviewIPAccessControlAllowParameters `json:"ipAccessControlAllow,omitempty" tf:"ip_access_control_allow,omitempty"` // The identifier of the preview locator in GUID format. Specifying this at creation time allows the caller to know the preview locator url before the event is created. If omitted, the service will generate a random identifier. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PreviewLocator *string `json:"previewLocator,omitempty" tf:"preview_locator,omitempty"` // The name of streaming policy used for the live event preview. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional StreamingPolicyName *string `json:"streamingPolicyName,omitempty" tf:"streaming_policy_name,omitempty"` } diff --git a/apis/media/v1beta1/zz_liveeventoutput_types.go b/apis/media/v1beta1/zz_liveeventoutput_types.go index 41bff0b42..187aa1901 100755 --- a/apis/media/v1beta1/zz_liveeventoutput_types.go +++ b/apis/media/v1beta1/zz_liveeventoutput_types.go @@ -65,6 +65,7 @@ type LiveEventOutputObservation struct { type LiveEventOutputParameters struct { // ISO 8601 time between 1 minute to 25 hours to indicate the maximum content length that can be archived in the asset for this live output. This also sets the maximum content length for the rewind window. For example, use PT1H30M to indicate 1 hour and 30 minutes of archive window. Changing this forces a new Live Output to be created. + // +kubebuilder:validation:Optional ArchiveWindowDuration *string `json:"archiveWindowDuration,omitempty" tf:"archive_window_duration,omitempty"` // The asset that the live output will write to. Changing this forces a new Live Output to be created. @@ -81,9 +82,11 @@ type LiveEventOutputParameters struct { AssetNameSelector *v1.Selector `json:"assetNameSelector,omitempty" tf:"-"` // The description of the live output. Changing this forces a new Live Output to be created. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The number of fragments in an HTTP Live Streaming (HLS) TS segment in the output of the live event. This value does not affect the packing ratio for HLS CMAF output. Changing this forces a new Live Output to be created. + // +kubebuilder:validation:Optional HlsFragmentsPerTSSegment *float64 `json:"hlsFragmentsPerTsSegment,omitempty" tf:"hls_fragments_per_ts_segment,omitempty"` // The id of the live event. Changing this forces a new Live Output to be created. @@ -101,11 +104,14 @@ type LiveEventOutputParameters struct { LiveEventIDSelector *v1.Selector `json:"liveEventIdSelector,omitempty" tf:"-"` // The manifest file name. If not provided, the service will generate one automatically. Changing this forces a new Live Output to be created. + // +kubebuilder:validation:Optional ManifestName *string `json:"manifestName,omitempty" tf:"manifest_name,omitempty"` // The initial timestamp that the live output will start at, any content before this value will not be archived. Changing this forces a new Live Output to be created. + // +kubebuilder:validation:Optional OutputSnapTimeInSeconds *float64 `json:"outputSnapTimeInSeconds,omitempty" tf:"output_snap_time_in_seconds,omitempty"` + // +kubebuilder:validation:Optional RewindWindowDuration *string `json:"rewindWindowDuration,omitempty" tf:"rewind_window_duration,omitempty"` } diff --git a/apis/media/v1beta1/zz_servicesaccount_types.go b/apis/media/v1beta1/zz_servicesaccount_types.go index ea04d599e..68fa1d38c 100755 --- a/apis/media/v1beta1/zz_servicesaccount_types.go +++ b/apis/media/v1beta1/zz_servicesaccount_types.go @@ -43,12 +43,15 @@ type EncryptionObservation struct { type EncryptionParameters struct { // Specifies the URI of the Key Vault Key used to encrypt data. The key may either be versioned (for example https://vault/keys/mykey/version1) or reference a key without a version (for example https://vault/keys/mykey). + // +kubebuilder:validation:Optional KeyVaultKeyIdentifier *string `json:"keyVaultKeyIdentifier,omitempty" tf:"key_vault_key_identifier,omitempty"` // A managed_identity block as defined below. + // +kubebuilder:validation:Optional ManagedIdentity []ManagedIdentityParameters `json:"managedIdentity,omitempty" tf:"managed_identity,omitempty"` // Specifies the type of key used to encrypt the account data. Possible values are SystemKey and CustomerKey. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -79,9 +82,11 @@ type IdentityObservation struct { type IdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Media Services Account. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Media Services Account. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -106,9 +111,11 @@ type KeyDeliveryAccessControlObservation struct { type KeyDeliveryAccessControlParameters struct { // The Default Action to use when no rules match from ip_allow_list. Possible values are Allow and Deny. + // +kubebuilder:validation:Optional DefaultAction *string `json:"defaultAction,omitempty" tf:"default_action,omitempty"` // One or more IP Addresses, or CIDR Blocks which should be able to access the Key Delivery. + // +kubebuilder:validation:Optional IPAllowList []*string `json:"ipAllowList,omitempty" tf:"ip_allow_list,omitempty"` } @@ -133,9 +140,11 @@ type ManagedIdentityObservation struct { type ManagedIdentityParameters struct { // Whether to use System Assigned Identity. Possible Values are true and false. + // +kubebuilder:validation:Optional UseSystemAssignedIdentity *bool `json:"useSystemAssignedIdentity,omitempty" tf:"use_system_assigned_identity,omitempty"` // The ID of the User Assigned Identity. This value can only be set when use_system_assigned_identity is false + // +kubebuilder:validation:Optional UserAssignedIdentityID *string `json:"userAssignedIdentityId,omitempty" tf:"user_assigned_identity_id,omitempty"` } @@ -202,18 +211,23 @@ type ServicesAccountObservation struct { type ServicesAccountParameters struct { // An encryption block as defined below. + // +kubebuilder:validation:Optional Encryption []EncryptionParameters `json:"encryption,omitempty" tf:"encryption,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // A key_delivery_access_control block as defined below. + // +kubebuilder:validation:Optional KeyDeliveryAccessControl []KeyDeliveryAccessControlParameters `json:"keyDeliveryAccessControl,omitempty" tf:"key_delivery_access_control,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Whether public network access is allowed for this server. Defaults to true. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // The name of the resource group in which to create the Media Services Account. Changing this forces a new resource to be created. @@ -230,12 +244,15 @@ type ServicesAccountParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // One or more storage_account blocks as defined below. + // +kubebuilder:validation:Optional StorageAccount []StorageAccountParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` // Specifies the storage authentication type. Possible value is ManagedIdentity or System. + // +kubebuilder:validation:Optional StorageAuthenticationType *string `json:"storageAuthenticationType,omitempty" tf:"storage_authentication_type,omitempty"` // A mapping of tags assigned to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -269,9 +286,11 @@ type StorageAccountManagedIdentityObservation struct { type StorageAccountManagedIdentityParameters struct { // Whether to use System Assigned Identity. Possible Values are true and false. + // +kubebuilder:validation:Optional UseSystemAssignedIdentity *bool `json:"useSystemAssignedIdentity,omitempty" tf:"use_system_assigned_identity,omitempty"` // The ID of the User Assigned Identity. This value can only be set when use_system_assigned_identity is false + // +kubebuilder:validation:Optional UserAssignedIdentityID *string `json:"userAssignedIdentityId,omitempty" tf:"user_assigned_identity_id,omitempty"` } @@ -304,9 +323,11 @@ type StorageAccountParameters struct { IDSelector *v1.Selector `json:"idSelector,omitempty" tf:"-"` // Specifies whether the storage account should be the primary account or not. Defaults to false. + // +kubebuilder:validation:Optional IsPrimary *bool `json:"isPrimary,omitempty" tf:"is_primary,omitempty"` // A managed_identity block as defined below. + // +kubebuilder:validation:Optional ManagedIdentity []StorageAccountManagedIdentityParameters `json:"managedIdentity,omitempty" tf:"managed_identity,omitempty"` } diff --git a/apis/media/v1beta1/zz_servicesaccountfilter_types.go b/apis/media/v1beta1/zz_servicesaccountfilter_types.go index fd7076368..03940d4ab 100755 --- a/apis/media/v1beta1/zz_servicesaccountfilter_types.go +++ b/apis/media/v1beta1/zz_servicesaccountfilter_types.go @@ -49,6 +49,7 @@ type ServicesAccountFilterObservation struct { type ServicesAccountFilterParameters struct { // The first quality bitrate. Sets the first video track to appear in the Live Streaming playlist to allow HLS native players to start downloading from this quality level at the beginning. + // +kubebuilder:validation:Optional FirstQualityBitrate *float64 `json:"firstQualityBitrate,omitempty" tf:"first_quality_bitrate,omitempty"` // The Media Services account name. Changing this forces a new Account Filter to be created. @@ -65,6 +66,7 @@ type ServicesAccountFilterParameters struct { MediaServicesAccountNameSelector *v1.Selector `json:"mediaServicesAccountNameSelector,omitempty" tf:"-"` // A presentation_time_range block as defined below. + // +kubebuilder:validation:Optional PresentationTimeRange []ServicesAccountFilterPresentationTimeRangeParameters `json:"presentationTimeRange,omitempty" tf:"presentation_time_range,omitempty"` // The name of the Resource Group where the Account Filter should exist. Changing this forces a new Account Filter to be created. @@ -81,6 +83,7 @@ type ServicesAccountFilterParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // One or more track_selection blocks as defined below. + // +kubebuilder:validation:Optional TrackSelection []ServicesAccountFilterTrackSelectionParameters `json:"trackSelection,omitempty" tf:"track_selection,omitempty"` } @@ -134,22 +137,28 @@ type ServicesAccountFilterPresentationTimeRangeParameters struct { // The absolute end time boundary. Applies to Video on Demand (VoD). // For the Live Streaming presentation, it is silently ignored and applied when the presentation ends and the stream becomes VoD. This is a long value that represents an absolute end point of the presentation, rounded to the closest next GOP start. The unit is defined by unit_timescale_in_milliseconds, so an end_in_units of 180 would be for 3 minutes. Use start_in_units and end_in_units to trim the fragments that will be in the playlist (manifest). For example, start_in_units set to 20 and end_in_units set to 60 using unit_timescale_in_milliseconds in 1000 will generate a playlist that contains fragments from between 20 seconds and 60 seconds of the VoD presentation. If a fragment straddles the boundary, the entire fragment will be included in the manifest. + // +kubebuilder:validation:Optional EndInUnits *float64 `json:"endInUnits,omitempty" tf:"end_in_units,omitempty"` // Indicates whether the end_in_units property must be present. If true, end_in_units must be specified or a bad request code is returned. Applies to Live Streaming only. Allowed values: false, true. + // +kubebuilder:validation:Optional ForceEnd *bool `json:"forceEnd,omitempty" tf:"force_end,omitempty"` // The relative to end right edge. Applies to Live Streaming only. // This value defines the latest live position that a client can seek to. Using this property, you can delay live playback position and create a server-side buffer for players. The unit is defined by unit_timescale_in_milliseconds. The maximum live back off duration is 300 seconds. For example, a value of 20 means that the latest available content is 20 seconds delayed from the real live edge. + // +kubebuilder:validation:Optional LiveBackoffInUnits *float64 `json:"liveBackoffInUnits,omitempty" tf:"live_backoff_in_units,omitempty"` // The relative to end sliding window. Applies to Live Streaming only. Use presentation_window_in_units to apply a sliding window of fragments to include in a playlist. The unit is defined by unit_timescale_in_milliseconds. For example, set presentation_window_in_units to 120 to apply a two-minute sliding window. Media within 2 minutes of the live edge will be included in the playlist. If a fragment straddles the boundary, the entire fragment will be included in the playlist. The minimum presentation window duration is 60 seconds. + // +kubebuilder:validation:Optional PresentationWindowInUnits *float64 `json:"presentationWindowInUnits,omitempty" tf:"presentation_window_in_units,omitempty"` // The absolute start time boundary. Applies to Video on Demand (VoD) or Live Streaming. This is a long value that represents an absolute start point of the stream. The value gets rounded to the closest next GOP start. The unit is defined by unit_timescale_in_milliseconds, so a start_in_units of 15 would be for 15 seconds. Use start_in_units and end_in_units to trim the fragments that will be in the playlist (manifest). For example, start_in_units set to 20 and end_in_units set to 60 using unit_timescale_in_milliseconds in 1000 will generate a playlist that contains fragments from between 20 seconds and 60 seconds of the VoD presentation. If a fragment straddles the boundary, the entire fragment will be included in the manifest. + // +kubebuilder:validation:Optional StartInUnits *float64 `json:"startInUnits,omitempty" tf:"start_in_units,omitempty"` // Specified as the number of milliseconds in one unit timescale. For example, if you want to set a start_in_units at 30 seconds, you would use a value of 30 when using the unit_timescale_in_milliseconds in 1000. Or if you want to set start_in_units in 30 milliseconds, you would use a value of 30 when using the unit_timescale_in_milliseconds in 1. Applies timescale to start_in_units, start_timescale and presentation_window_in_timescale and live_backoff_in_timescale. + // +kubebuilder:validation:Optional UnitTimescaleInMilliseconds *float64 `json:"unitTimescaleInMilliseconds,omitempty" tf:"unit_timescale_in_milliseconds,omitempty"` } @@ -168,6 +177,7 @@ type ServicesAccountFilterTrackSelectionObservation struct { type ServicesAccountFilterTrackSelectionParameters struct { // One or more selection blocks as defined above. + // +kubebuilder:validation:Optional Condition []TrackSelectionConditionParameters `json:"condition,omitempty" tf:"condition,omitempty"` } @@ -198,12 +208,15 @@ type TrackSelectionConditionObservation struct { type TrackSelectionConditionParameters struct { // The condition operation to test a track property against. Supported values are Equal and NotEqual. + // +kubebuilder:validation:Optional Operation *string `json:"operation,omitempty" tf:"operation,omitempty"` // The track property to compare. Supported values are Bitrate, FourCC, Language, Name and Type. Check documentation for more details. + // +kubebuilder:validation:Optional Property *string `json:"property,omitempty" tf:"property,omitempty"` // The track property value to match or not match. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } diff --git a/apis/media/v1beta1/zz_streamingendpoint_types.go b/apis/media/v1beta1/zz_streamingendpoint_types.go index 5dd7f53d1..3166fc325 100755 --- a/apis/media/v1beta1/zz_streamingendpoint_types.go +++ b/apis/media/v1beta1/zz_streamingendpoint_types.go @@ -34,9 +34,11 @@ type AccessControlObservation struct { type AccessControlParameters struct { // One or more akamai_signature_header_authentication_key blocks as defined below. + // +kubebuilder:validation:Optional AkamaiSignatureHeaderAuthenticationKey []AkamaiSignatureHeaderAuthenticationKeyParameters `json:"akamaiSignatureHeaderAuthenticationKey,omitempty" tf:"akamai_signature_header_authentication_key,omitempty"` // A ip_allow block as defined below. + // +kubebuilder:validation:Optional IPAllow []IPAllowParameters `json:"ipAllow,omitempty" tf:"ip_allow,omitempty"` } @@ -67,12 +69,15 @@ type AkamaiSignatureHeaderAuthenticationKeyObservation struct { type AkamaiSignatureHeaderAuthenticationKeyParameters struct { // Authentication key. + // +kubebuilder:validation:Optional Base64Key *string `json:"base64Key,omitempty" tf:"base64_key,omitempty"` // The expiration time of the authentication key. + // +kubebuilder:validation:Optional Expiration *string `json:"expiration,omitempty" tf:"expiration,omitempty"` // Identifier of the key. + // +kubebuilder:validation:Optional Identifier *string `json:"identifier,omitempty" tf:"identifier,omitempty"` } @@ -103,12 +108,15 @@ type IPAllowObservation struct { type IPAllowParameters struct { // The IP address to allow. + // +kubebuilder:validation:Optional Address *string `json:"address,omitempty" tf:"address,omitempty"` // The sku name of Streaming Endpoint. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The subnet mask prefix length (see CIDR notation). + // +kubebuilder:validation:Optional SubnetPrefixLength *float64 `json:"subnetPrefixLength,omitempty" tf:"subnet_prefix_length,omitempty"` } @@ -148,9 +156,11 @@ type StreamingEndpointCrossSiteAccessPolicyObservation struct { type StreamingEndpointCrossSiteAccessPolicyParameters struct { // The content of clientaccesspolicy.xml used by Silverlight. + // +kubebuilder:validation:Optional ClientAccessPolicy *string `json:"clientAccessPolicy,omitempty" tf:"client_access_policy,omitempty"` // The content of crossdomain.xml used by Silverlight. + // +kubebuilder:validation:Optional CrossDomainPolicy *string `json:"crossDomainPolicy,omitempty" tf:"cross_domain_policy,omitempty"` } @@ -250,33 +260,43 @@ type StreamingEndpointObservation struct { type StreamingEndpointParameters struct { // A access_control block as defined below. + // +kubebuilder:validation:Optional AccessControl []AccessControlParameters `json:"accessControl,omitempty" tf:"access_control,omitempty"` // The flag indicates if the resource should be automatically started on creation. + // +kubebuilder:validation:Optional AutoStartEnabled *bool `json:"autoStartEnabled,omitempty" tf:"auto_start_enabled,omitempty"` // The CDN enabled flag. + // +kubebuilder:validation:Optional CdnEnabled *bool `json:"cdnEnabled,omitempty" tf:"cdn_enabled,omitempty"` // The CDN profile name. + // +kubebuilder:validation:Optional CdnProfile *string `json:"cdnProfile,omitempty" tf:"cdn_profile,omitempty"` // The CDN provider name. Supported value are StandardVerizon,PremiumVerizon and StandardAkamai + // +kubebuilder:validation:Optional CdnProvider *string `json:"cdnProvider,omitempty" tf:"cdn_provider,omitempty"` // A cross_site_access_policy block as defined below. + // +kubebuilder:validation:Optional CrossSiteAccessPolicy []StreamingEndpointCrossSiteAccessPolicyParameters `json:"crossSiteAccessPolicy,omitempty" tf:"cross_site_access_policy,omitempty"` // The custom host names of the streaming endpoint. + // +kubebuilder:validation:Optional CustomHostNames []*string `json:"customHostNames,omitempty" tf:"custom_host_names,omitempty"` // The streaming endpoint description. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The Azure Region where the Streaming Endpoint should exist. Changing this forces a new Streaming Endpoint to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Max cache age in seconds. + // +kubebuilder:validation:Optional MaxCacheAgeSeconds *float64 `json:"maxCacheAgeSeconds,omitempty" tf:"max_cache_age_seconds,omitempty"` // The Media Services account name. Changing this forces a new Streaming Endpoint to be created. @@ -306,9 +326,11 @@ type StreamingEndpointParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The number of scale units. To create a Standard Streaming Endpoint set 0. For Premium Streaming Endpoint valid values are between 1 and 10. + // +kubebuilder:validation:Optional ScaleUnits *float64 `json:"scaleUnits,omitempty" tf:"scale_units,omitempty"` // A mapping of tags which should be assigned to the Streaming Endpoint. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/media/v1beta1/zz_streaminglocator_types.go b/apis/media/v1beta1/zz_streaminglocator_types.go index e7600b708..42ce10e5f 100755 --- a/apis/media/v1beta1/zz_streaminglocator_types.go +++ b/apis/media/v1beta1/zz_streaminglocator_types.go @@ -52,18 +52,23 @@ type ContentKeyObservation struct { type ContentKeyParameters struct { // ID of Content Key. Changing this forces a new Streaming Locator to be created. + // +kubebuilder:validation:Optional ContentKeyID *string `json:"contentKeyId,omitempty" tf:"content_key_id,omitempty"` // Label of Content Key as specified in the Streaming Policy. Changing this forces a new Streaming Locator to be created. + // +kubebuilder:validation:Optional LabelReferenceInStreamingPolicy *string `json:"labelReferenceInStreamingPolicy,omitempty" tf:"label_reference_in_streaming_policy,omitempty"` // Content Key Policy used by Content Key. Changing this forces a new Streaming Locator to be created. + // +kubebuilder:validation:Optional PolicyName *string `json:"policyName,omitempty" tf:"policy_name,omitempty"` // Encryption type of Content Key. Supported values are CommonEncryptionCbcs, CommonEncryptionCenc or EnvelopeEncryption. Changing this forces a new Streaming Locator to be created. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // Value of Content Key. Changing this forces a new Streaming Locator to be created. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -136,6 +141,7 @@ type StreamingLocatorObservation struct { type StreamingLocatorParameters struct { // Alternative Media ID of this Streaming Locator. Changing this forces a new Streaming Locator to be created. + // +kubebuilder:validation:Optional AlternativeMediaID *string `json:"alternativeMediaId,omitempty" tf:"alternative_media_id,omitempty"` // Asset Name. Changing this forces a new Streaming Locator to be created. @@ -152,15 +158,19 @@ type StreamingLocatorParameters struct { AssetNameSelector *v1.Selector `json:"assetNameSelector,omitempty" tf:"-"` // One or more content_key blocks as defined below. Changing this forces a new Streaming Locator to be created. + // +kubebuilder:validation:Optional ContentKey []ContentKeyParameters `json:"contentKey,omitempty" tf:"content_key,omitempty"` // Name of the default Content Key Policy used by this Streaming Locator.Changing this forces a new Streaming Locator to be created. + // +kubebuilder:validation:Optional DefaultContentKeyPolicyName *string `json:"defaultContentKeyPolicyName,omitempty" tf:"default_content_key_policy_name,omitempty"` // The end time of the Streaming Locator. Changing this forces a new Streaming Locator to be created. + // +kubebuilder:validation:Optional EndTime *string `json:"endTime,omitempty" tf:"end_time,omitempty"` // A list of names of asset or account filters which apply to this Streaming Locator. Changing this forces a new Streaming Locator to be created. + // +kubebuilder:validation:Optional FilterNames []*string `json:"filterNames,omitempty" tf:"filter_names,omitempty"` // The Media Services account name. Changing this forces a new Streaming Locator to be created. @@ -190,12 +200,15 @@ type StreamingLocatorParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The start time of the Streaming Locator. Changing this forces a new Streaming Locator to be created. + // +kubebuilder:validation:Optional StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` // The ID of the Streaming Locator. Changing this forces a new Streaming Locator to be created. + // +kubebuilder:validation:Optional StreamingLocatorID *string `json:"streamingLocatorId,omitempty" tf:"streaming_locator_id,omitempty"` // Name of the Streaming Policy used by this Streaming Locator. Either specify the name of Streaming Policy you created or use one of the predefined Streaming Policies. The predefined Streaming Policies available are: Predefined_DownloadOnly, Predefined_ClearStreamingOnly, Predefined_DownloadAndClearStreaming, Predefined_ClearKey, Predefined_MultiDrmCencStreaming and Predefined_MultiDrmStreaming. Changing this forces a new Streaming Locator to be created. + // +kubebuilder:validation:Optional StreamingPolicyName *string `json:"streamingPolicyName,omitempty" tf:"streaming_policy_name,omitempty"` } diff --git a/apis/media/v1beta1/zz_streamingpolicy_types.go b/apis/media/v1beta1/zz_streamingpolicy_types.go index 179e51803..2af2818ac 100755 --- a/apis/media/v1beta1/zz_streamingpolicy_types.go +++ b/apis/media/v1beta1/zz_streamingpolicy_types.go @@ -28,6 +28,7 @@ type ClearKeyEncryptionObservation struct { type ClearKeyEncryptionParameters struct { // The URL template for the custom service that delivers content keys to the end user. This is not required when using Azure Media Services for issuing keys. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional CustomKeysAcquisitionURLTemplate *string `json:"customKeysAcquisitionUrlTemplate,omitempty" tf:"custom_keys_acquisition_url_template,omitempty"` } @@ -58,12 +59,15 @@ type ClearTrackConditionObservation struct { type ClearTrackConditionParameters struct { // The track property condition operation. Possible value is Equal. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional Operation *string `json:"operation,omitempty" tf:"operation,omitempty"` // The track property type. Possible value is FourCC. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional Property *string `json:"property,omitempty" tf:"property,omitempty"` // The track property value. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -82,6 +86,7 @@ type ClearTrackObservation struct { type ClearTrackParameters struct { // One or more condition blocks as defined below. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional Condition []ClearTrackConditionParameters `json:"condition,omitempty" tf:"condition,omitempty"` } @@ -118,15 +123,19 @@ type CommonEncryptionCbcsObservation struct { type CommonEncryptionCbcsParameters struct { // A clear_key_encryption block as defined below. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional ClearKeyEncryption []ClearKeyEncryptionParameters `json:"clearKeyEncryption,omitempty" tf:"clear_key_encryption,omitempty"` // A default_content_key block as defined below. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional DefaultContentKey []DefaultContentKeyParameters `json:"defaultContentKey,omitempty" tf:"default_content_key,omitempty"` // A drm_fairplay block as defined below. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional DrmFairplay []DrmFairplayParameters `json:"drmFairplay,omitempty" tf:"drm_fairplay,omitempty"` // A enabled_protocols block as defined below. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional EnabledProtocols []EnabledProtocolsParameters `json:"enabledProtocols,omitempty" tf:"enabled_protocols,omitempty"` } @@ -145,6 +154,7 @@ type CommonEncryptionCencClearKeyEncryptionObservation struct { type CommonEncryptionCencClearKeyEncryptionParameters struct { // The URL template for the custom service that delivers content keys to the end user. This is not required when using Azure Media Services for issuing keys. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional CustomKeysAcquisitionURLTemplate *string `json:"customKeysAcquisitionUrlTemplate,omitempty" tf:"custom_keys_acquisition_url_template,omitempty"` } @@ -166,6 +176,7 @@ type CommonEncryptionCencDefaultContentKeyObservation struct { type CommonEncryptionCencDefaultContentKeyParameters struct { // Label can be used to specify Content Key when creating a Streaming Locator. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional Label *string `json:"label,omitempty" tf:"label,omitempty"` // Policy used by Default Key. Changing this forces a new Streaming Policy to be created. @@ -215,15 +226,19 @@ type CommonEncryptionCencEnabledProtocolsObservation struct { type CommonEncryptionCencEnabledProtocolsParameters struct { // Enable DASH protocol or not. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional Dash *bool `json:"dash,omitempty" tf:"dash,omitempty"` // Enable Download protocol or not. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional Download *bool `json:"download,omitempty" tf:"download,omitempty"` // Enable HLS protocol or not. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional Hls *bool `json:"hls,omitempty" tf:"hls,omitempty"` // Enable SmoothStreaming protocol or not. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional SmoothStreaming *bool `json:"smoothStreaming,omitempty" tf:"smooth_streaming,omitempty"` } @@ -278,24 +293,31 @@ type CommonEncryptionCencObservation struct { type CommonEncryptionCencParameters struct { // A clear_key_encryption block as defined below. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional ClearKeyEncryption []CommonEncryptionCencClearKeyEncryptionParameters `json:"clearKeyEncryption,omitempty" tf:"clear_key_encryption,omitempty"` // One or more clear_track blocks as defined below. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional ClearTrack []ClearTrackParameters `json:"clearTrack,omitempty" tf:"clear_track,omitempty"` // One or more content_key_to_track_mapping blocks as defined below. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional ContentKeyToTrackMapping []ContentKeyToTrackMappingParameters `json:"contentKeyToTrackMapping,omitempty" tf:"content_key_to_track_mapping,omitempty"` // A default_content_key block as defined below. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional DefaultContentKey []CommonEncryptionCencDefaultContentKeyParameters `json:"defaultContentKey,omitempty" tf:"default_content_key,omitempty"` // A drm_playready block as defined below. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional DrmPlayready []DrmPlayreadyParameters `json:"drmPlayready,omitempty" tf:"drm_playready,omitempty"` // The URL template for the custom service that delivers licenses to the end user. This is not required when using Azure Media Services for issuing licenses. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional DrmWidevineCustomLicenseAcquisitionURLTemplate *string `json:"drmWidevineCustomLicenseAcquisitionUrlTemplate,omitempty" tf:"drm_widevine_custom_license_acquisition_url_template,omitempty"` // A enabled_protocols block as defined below. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional EnabledProtocols []CommonEncryptionCencEnabledProtocolsParameters `json:"enabledProtocols,omitempty" tf:"enabled_protocols,omitempty"` } @@ -326,12 +348,15 @@ type ContentKeyToTrackMappingObservation struct { type ContentKeyToTrackMappingParameters struct { // Label can be used to specify Content Key when creating a Streaming Locator. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional Label *string `json:"label,omitempty" tf:"label,omitempty"` // Policy used by Default Key. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional PolicyName *string `json:"policyName,omitempty" tf:"policy_name,omitempty"` // One or more track blocks as defined below. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional Track []TrackParameters `json:"track,omitempty" tf:"track,omitempty"` } @@ -356,9 +381,11 @@ type DefaultContentKeyObservation struct { type DefaultContentKeyParameters struct { // Label can be used to specify Content Key when creating a Streaming Locator. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional Label *string `json:"label,omitempty" tf:"label,omitempty"` // Policy used by Default Key. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional PolicyName *string `json:"policyName,omitempty" tf:"policy_name,omitempty"` } @@ -383,9 +410,11 @@ type DrmFairplayObservation struct { type DrmFairplayParameters struct { // All license to be persistent or not. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional AllowPersistentLicense *bool `json:"allowPersistentLicense,omitempty" tf:"allow_persistent_license,omitempty"` // The URL template for the custom service that delivers licenses to the end user. This is not required when using Azure Media Services for issuing licenses. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional CustomLicenseAcquisitionURLTemplate *string `json:"customLicenseAcquisitionUrlTemplate,omitempty" tf:"custom_license_acquisition_url_template,omitempty"` } @@ -410,9 +439,11 @@ type DrmPlayreadyObservation struct { type DrmPlayreadyParameters struct { // Custom attributes for PlayReady. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional CustomAttributes *string `json:"customAttributes,omitempty" tf:"custom_attributes,omitempty"` // The URL template for the custom service that delivers licenses to the end user. This is not required when using Azure Media Services for issuing licenses. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional CustomLicenseAcquisitionURLTemplate *string `json:"customLicenseAcquisitionUrlTemplate,omitempty" tf:"custom_license_acquisition_url_template,omitempty"` } @@ -449,15 +480,19 @@ type EnabledProtocolsObservation struct { type EnabledProtocolsParameters struct { // Enable DASH protocol or not. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional Dash *bool `json:"dash,omitempty" tf:"dash,omitempty"` // Enable Download protocol or not. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional Download *bool `json:"download,omitempty" tf:"download,omitempty"` // Enable HLS protocol or not. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional Hls *bool `json:"hls,omitempty" tf:"hls,omitempty"` // Enable SmoothStreaming protocol or not. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional SmoothStreaming *bool `json:"smoothStreaming,omitempty" tf:"smooth_streaming,omitempty"` } @@ -482,9 +517,11 @@ type EnvelopeEncryptionDefaultContentKeyObservation struct { type EnvelopeEncryptionDefaultContentKeyParameters struct { // Label can be used to specify Content Key when creating a Streaming Locator. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional Label *string `json:"label,omitempty" tf:"label,omitempty"` // Policy used by Default Key. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional PolicyName *string `json:"policyName,omitempty" tf:"policy_name,omitempty"` } @@ -521,15 +558,19 @@ type EnvelopeEncryptionEnabledProtocolsObservation struct { type EnvelopeEncryptionEnabledProtocolsParameters struct { // Enable DASH protocol or not. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional Dash *bool `json:"dash,omitempty" tf:"dash,omitempty"` // Enable Download protocol or not. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional Download *bool `json:"download,omitempty" tf:"download,omitempty"` // Enable HLS protocol or not. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional Hls *bool `json:"hls,omitempty" tf:"hls,omitempty"` // Enable SmoothStreaming protocol or not. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional SmoothStreaming *bool `json:"smoothStreaming,omitempty" tf:"smooth_streaming,omitempty"` } @@ -560,12 +601,15 @@ type EnvelopeEncryptionObservation struct { type EnvelopeEncryptionParameters struct { // The URL template for the custom service that delivers content keys to the end user. This is not required when using Azure Media Services for issuing keys. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional CustomKeysAcquisitionURLTemplate *string `json:"customKeysAcquisitionUrlTemplate,omitempty" tf:"custom_keys_acquisition_url_template,omitempty"` // A default_content_key block as defined above. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional DefaultContentKey []EnvelopeEncryptionDefaultContentKeyParameters `json:"defaultContentKey,omitempty" tf:"default_content_key,omitempty"` // A enabled_protocols block as defined above. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional EnabledProtocols []EnvelopeEncryptionEnabledProtocolsParameters `json:"enabledProtocols,omitempty" tf:"enabled_protocols,omitempty"` } @@ -602,15 +646,19 @@ type NoEncryptionEnabledProtocolsObservation struct { type NoEncryptionEnabledProtocolsParameters struct { // Enable DASH protocol or not. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional Dash *bool `json:"dash,omitempty" tf:"dash,omitempty"` // Enable Download protocol or not. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional Download *bool `json:"download,omitempty" tf:"download,omitempty"` // Enable HLS protocol or not. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional Hls *bool `json:"hls,omitempty" tf:"hls,omitempty"` // Enable SmoothStreaming protocol or not. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional SmoothStreaming *bool `json:"smoothStreaming,omitempty" tf:"smooth_streaming,omitempty"` } @@ -662,15 +710,19 @@ type StreamingPolicyObservation struct { type StreamingPolicyParameters struct { // A common_encryption_cbcs block as defined below. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional CommonEncryptionCbcs []CommonEncryptionCbcsParameters `json:"commonEncryptionCbcs,omitempty" tf:"common_encryption_cbcs,omitempty"` // A common_encryption_cenc block as defined below. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional CommonEncryptionCenc []CommonEncryptionCencParameters `json:"commonEncryptionCenc,omitempty" tf:"common_encryption_cenc,omitempty"` // Default Content Key used by current Streaming Policy. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional DefaultContentKeyPolicyName *string `json:"defaultContentKeyPolicyName,omitempty" tf:"default_content_key_policy_name,omitempty"` // A envelope_encryption block as defined below. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional EnvelopeEncryption []EnvelopeEncryptionParameters `json:"envelopeEncryption,omitempty" tf:"envelope_encryption,omitempty"` // The Media Services account name. Changing this forces a new Streaming Policy to be created. @@ -687,6 +739,7 @@ type StreamingPolicyParameters struct { MediaServicesAccountNameSelector *v1.Selector `json:"mediaServicesAccountNameSelector,omitempty" tf:"-"` // A no_encryption_enabled_protocols block as defined below. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional NoEncryptionEnabledProtocols []NoEncryptionEnabledProtocolsParameters `json:"noEncryptionEnabledProtocols,omitempty" tf:"no_encryption_enabled_protocols,omitempty"` // The name of the Resource Group where the Streaming Policy should exist. Changing this forces a new Streaming Policy to be created. @@ -730,12 +783,15 @@ type TrackConditionObservation struct { type TrackConditionParameters struct { // The track property condition operation. Possible value is Equal. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional Operation *string `json:"operation,omitempty" tf:"operation,omitempty"` // The track property type. Possible value is FourCC. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional Property *string `json:"property,omitempty" tf:"property,omitempty"` // The track property value. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -754,6 +810,7 @@ type TrackObservation struct { type TrackParameters struct { // One or more condition blocks as defined below. Changing this forces a new Streaming Policy to be created. + // +kubebuilder:validation:Optional Condition []TrackConditionParameters `json:"condition,omitempty" tf:"condition,omitempty"` } diff --git a/apis/media/v1beta1/zz_transform_types.go b/apis/media/v1beta1/zz_transform_types.go index f6db4ac10..cf3a1c9f0 100755 --- a/apis/media/v1beta1/zz_transform_types.go +++ b/apis/media/v1beta1/zz_transform_types.go @@ -52,18 +52,23 @@ type AacAudioObservation struct { type AacAudioParameters struct { // The average bitrate in bits per second at which to encode the input video when generating this layer. + // +kubebuilder:validation:Optional Bitrate *float64 `json:"bitrate,omitempty" tf:"bitrate,omitempty"` // The number of audio channels. Default to 2. + // +kubebuilder:validation:Optional Channels *float64 `json:"channels,omitempty" tf:"channels,omitempty"` // Specifies the label for the codec. The label can be used to control muxing behavior. + // +kubebuilder:validation:Optional Label *string `json:"label,omitempty" tf:"label,omitempty"` // The H.264 profile. Possible values are Auto, Baseline, High, High422, High444,or Main. Default to Auto. + // +kubebuilder:validation:Optional Profile *string `json:"profile,omitempty" tf:"profile,omitempty"` // The sampling rate to use for encoding in Hertz. Default to 48000. + // +kubebuilder:validation:Optional SamplingRate *float64 `json:"samplingRate,omitempty" tf:"sampling_rate,omitempty"` } @@ -94,12 +99,15 @@ type AudioAnalyzerPresetObservation struct { type AudioAnalyzerPresetParameters struct { // Possible values are Basic or Standard. Determines the set of audio analysis operations to be performed. Default to Standard. + // +kubebuilder:validation:Optional AudioAnalysisMode *string `json:"audioAnalysisMode,omitempty" tf:"audio_analysis_mode,omitempty"` // The language for the audio payload in the input using the BCP-47 format of 'language tag-region' (e.g: 'en-US'). If you know the language of your content, it is recommended that you specify it. The language must be specified explicitly for AudioAnalysisMode:Basic, since automatic language detection is not included in basic mode. If the language isn't specified, automatic language detection will choose the first language detected and process with the selected language for the duration of the file. It does not currently support dynamically switching between languages after the first language is detected. The automatic detection works best with audio recordings with clearly discernible speech. If automatic detection fails to find the language, transcription would fall back to en-US. The list of supported languages is available here: https://go.microsoft.com/fwlink/?linkid=2109463. + // +kubebuilder:validation:Optional AudioLanguage *string `json:"audioLanguage,omitempty" tf:"audio_language,omitempty"` // Dictionary containing key value pairs for parameters not exposed in the preset itself. + // +kubebuilder:validation:Optional ExperimentalOptions map[string]*string `json:"experimentalOptions,omitempty" tf:"experimental_options,omitempty"` } @@ -148,21 +156,27 @@ type AudioObservation struct { type AudioParameters struct { // The gain level of audio in the overlay. The value should be in range between 0 to 1.0. The default is 1.0. + // +kubebuilder:validation:Optional AudioGainLevel *float64 `json:"audioGainLevel,omitempty" tf:"audio_gain_level,omitempty"` // The end position, with reference to the input video, at which the overlay ends. The value should be in ISO 8601 format. For example, PT30S to end the overlay at 30 seconds into the input video. If not specified or the value is greater than the input video duration, the overlay will be applied until the end of the input video if the overlay media duration is greater than the input video duration, else the overlay will last as long as the overlay media duration. + // +kubebuilder:validation:Optional End *string `json:"end,omitempty" tf:"end,omitempty"` // The duration over which the overlay fades in onto the input video. The value should be in ISO 8601 duration format. If not specified the default behavior is to have no fade in (same as PT0S). + // +kubebuilder:validation:Optional FadeInDuration *string `json:"fadeInDuration,omitempty" tf:"fade_in_duration,omitempty"` // The duration over which the overlay fades out of the input video. The value should be in ISO 8601 duration format. If not specified the default behavior is to have no fade out (same as PT0S). + // +kubebuilder:validation:Optional FadeOutDuration *string `json:"fadeOutDuration,omitempty" tf:"fade_out_duration,omitempty"` // The label of the job input which is to be used as an overlay. The input must specify exact one file. You can specify an image file in JPG, PNG, GIF or BMP format, or an audio file (such as a WAV, MP3, WMA or M4A file), or a video file. + // +kubebuilder:validation:Optional InputLabel *string `json:"inputLabel,omitempty" tf:"input_label,omitempty"` // The start position, with reference to the input video, at which the overlay starts. The value should be in ISO 8601 format. For example, PT05S to start the overlay at 5 seconds into the input video. If not specified the overlay starts from the beginning of the input video. + // +kubebuilder:validation:Optional Start *string `json:"start,omitempty" tf:"start,omitempty"` } @@ -187,9 +201,11 @@ type BuiltinPresetObservation struct { type BuiltinPresetParameters struct { // A present_configuration block as defined below. + // +kubebuilder:validation:Optional PresetConfiguration []PresetConfigurationParameters `json:"presetConfiguration,omitempty" tf:"preset_configuration,omitempty"` // The built-in preset to be used for encoding videos. The Possible values are AACGoodQualityAudio, AdaptiveStreaming, ContentAwareEncoding, ContentAwareEncodingExperimental, CopyAllBitrateNonInterleaved, DDGoodQualityAudio, H265AdaptiveStreaming, H265ContentAwareEncoding, H265SingleBitrate4K, H265SingleBitrate1080p, H265SingleBitrate720p, H264MultipleBitrate1080p, H264MultipleBitrateSD, H264MultipleBitrate720p, H264SingleBitrate1080p, H264SingleBitrateSD and H264SingleBitrate720p. + // +kubebuilder:validation:Optional PresetName *string `json:"presetName,omitempty" tf:"preset_name,omitempty"` } @@ -250,27 +266,35 @@ type CodecObservation struct { type CodecParameters struct { // A aac_audio block as defined above. + // +kubebuilder:validation:Optional AacAudio []AacAudioParameters `json:"aacAudio,omitempty" tf:"aac_audio,omitempty"` // A copy_audio block as defined below. + // +kubebuilder:validation:Optional CopyAudio []CopyAudioParameters `json:"copyAudio,omitempty" tf:"copy_audio,omitempty"` // A copy_video block as defined below. + // +kubebuilder:validation:Optional CopyVideo []CopyVideoParameters `json:"copyVideo,omitempty" tf:"copy_video,omitempty"` // A dd_audio block as defined below. + // +kubebuilder:validation:Optional DdAudio []DdAudioParameters `json:"ddAudio,omitempty" tf:"dd_audio,omitempty"` // A h264_video block as defined below. + // +kubebuilder:validation:Optional H264Video []H264VideoParameters `json:"h264Video,omitempty" tf:"h264_video,omitempty"` // A h265_video block as defined below. + // +kubebuilder:validation:Optional H265Video []H265VideoParameters `json:"h265Video,omitempty" tf:"h265_video,omitempty"` // A jpg_image block as defined below. + // +kubebuilder:validation:Optional JpgImage []JpgImageParameters `json:"jpgImage,omitempty" tf:"jpg_image,omitempty"` // A png_image block as defined below. + // +kubebuilder:validation:Optional PngImage []PngImageParameters `json:"pngImage,omitempty" tf:"png_image,omitempty"` } @@ -289,6 +313,7 @@ type CopyAudioObservation struct { type CopyAudioParameters struct { // Specifies the label for the codec. The label can be used to control muxing behavior. + // +kubebuilder:validation:Optional Label *string `json:"label,omitempty" tf:"label,omitempty"` } @@ -307,6 +332,7 @@ type CopyVideoObservation struct { type CopyVideoParameters struct { // Specifies the label for the codec. The label can be used to control muxing behavior. + // +kubebuilder:validation:Optional Label *string `json:"label,omitempty" tf:"label,omitempty"` } @@ -343,15 +369,19 @@ type CropRectangleObservation struct { type CropRectangleParameters struct { // The height of the rectangular region in pixels. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + // +kubebuilder:validation:Optional Height *string `json:"height,omitempty" tf:"height,omitempty"` // The number of pixels from the left-margin. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + // +kubebuilder:validation:Optional Left *string `json:"left,omitempty" tf:"left,omitempty"` // The number of pixels from the top-margin. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + // +kubebuilder:validation:Optional Top *string `json:"top,omitempty" tf:"top,omitempty"` // The width of the rectangular region in pixels. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + // +kubebuilder:validation:Optional Width *string `json:"width,omitempty" tf:"width,omitempty"` } @@ -382,12 +412,15 @@ type CustomPresetObservation struct { type CustomPresetParameters struct { // One or more codec blocks as defined above. + // +kubebuilder:validation:Optional Codec []CodecParameters `json:"codec,omitempty" tf:"codec,omitempty"` // A filter block as defined below. + // +kubebuilder:validation:Optional Filter []FilterParameters `json:"filter,omitempty" tf:"filter,omitempty"` // One or more format blocks as defined below. + // +kubebuilder:validation:Optional Format []FormatParameters `json:"format,omitempty" tf:"format,omitempty"` } @@ -424,15 +457,19 @@ type DdAudioObservation struct { type DdAudioParameters struct { // The average bitrate in bits per second at which to encode the input video when generating this layer. + // +kubebuilder:validation:Optional Bitrate *float64 `json:"bitrate,omitempty" tf:"bitrate,omitempty"` // The number of audio channels. Default to 2. + // +kubebuilder:validation:Optional Channels *float64 `json:"channels,omitempty" tf:"channels,omitempty"` // Specifies the label for the codec. The label can be used to control muxing behavior. + // +kubebuilder:validation:Optional Label *string `json:"label,omitempty" tf:"label,omitempty"` // The sampling rate to use for encoding in Hertz. Default to 48000. + // +kubebuilder:validation:Optional SamplingRate *float64 `json:"samplingRate,omitempty" tf:"sampling_rate,omitempty"` } @@ -457,9 +494,11 @@ type DeinterlaceObservation struct { type DeinterlaceParameters struct { // The deinterlacing mode. Possible values are AutoPixelAdaptive or Off. Default to AutoPixelAdaptive. + // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // The field parity to use for deinterlacing. Possible values are Auto, TopFieldFirst or BottomFieldFirst. Default to Auto. + // +kubebuilder:validation:Optional Parity *string `json:"parity,omitempty" tf:"parity,omitempty"` } @@ -496,15 +535,19 @@ type FaceDetectorPresetObservation struct { type FaceDetectorPresetParameters struct { // Possible values are SourceResolution or StandardDefinition. Specifies the maximum resolution at which your video is analyzed. which will keep the input video at its original resolution when analyzed. Using StandardDefinition will resize input videos to standard definition while preserving the appropriate aspect ratio. It will only resize if the video is of higher resolution. For example, a 1920x1080 input would be scaled to 640x360 before processing. Switching to StandardDefinition will reduce the time it takes to process high resolution video. It may also reduce the cost of using this component (see https://azure.microsoft.com/en-us/pricing/details/media-services/#analytics for details). However, faces that end up being too small in the resized video may not be detected. Default to SourceResolution. + // +kubebuilder:validation:Optional AnalysisResolution *string `json:"analysisResolution,omitempty" tf:"analysis_resolution,omitempty"` // Specifies the type of blur to apply to faces in the output video. Possible values are Black, Box, High, Low,and Med. + // +kubebuilder:validation:Optional BlurType *string `json:"blurType,omitempty" tf:"blur_type,omitempty"` // Dictionary containing key value pairs for parameters not exposed in the preset itself. + // +kubebuilder:validation:Optional ExperimentalOptions map[string]*string `json:"experimentalOptions,omitempty" tf:"experimental_options,omitempty"` // This mode provides the ability to choose between the following settings: 1) Analyze - For detection only. This mode generates a metadata JSON file marking appearances of faces throughout the video. Where possible, appearances of the same person are assigned the same ID. 2) Combined - Additionally redacts(blurs) detected faces. 3) Redact - This enables a 2-pass process, allowing for selective redaction of a subset of detected faces. It takes in the metadata file from a prior analyze pass, along with the source video, and a user-selected subset of IDs that require redaction. Default to Analyze. + // +kubebuilder:validation:Optional FaceRedactorMode *string `json:"faceRedactorMode,omitempty" tf:"face_redactor_mode,omitempty"` } @@ -535,12 +578,15 @@ type FadeInObservation struct { type FadeInParameters struct { // The duration of the fade effect in the video. The value can be in ISO 8601 format (For example, PT05S to fade In/Out a color during 5 seconds), or a frame count (For example, 10 to fade 10 frames from the start time), or a relative value to stream duration (For example, 10% to fade 10% of stream duration). + // +kubebuilder:validation:Optional Duration *string `json:"duration,omitempty" tf:"duration,omitempty"` // The color for the fade in/out. It can be on the CSS Level1 colors or an RGB/hex value: e.g: rgb(255,0,0), 0xFF0000 or #FF0000. + // +kubebuilder:validation:Optional FadeColor *string `json:"fadeColor,omitempty" tf:"fade_color,omitempty"` // The start position, with reference to the input video, at which the overlay starts. The value should be in ISO 8601 format. For example, PT05S to start the overlay at 5 seconds into the input video. If not specified the overlay starts from the beginning of the input video. + // +kubebuilder:validation:Optional Start *string `json:"start,omitempty" tf:"start,omitempty"` } @@ -571,12 +617,15 @@ type FadeOutObservation struct { type FadeOutParameters struct { // The duration of the fade effect in the video. The value can be in ISO 8601 format (For example, PT05S to fade In/Out a color during 5 seconds), or a frame count (For example, 10 to fade 10 frames from the start time), or a relative value to stream duration (For example, 10% to fade 10% of stream duration). + // +kubebuilder:validation:Optional Duration *string `json:"duration,omitempty" tf:"duration,omitempty"` // The color for the fade in/out. It can be on the CSS Level1 colors or an RGB/hex value: e.g: rgb(255,0,0), 0xFF0000 or #FF0000. + // +kubebuilder:validation:Optional FadeColor *string `json:"fadeColor,omitempty" tf:"fade_color,omitempty"` // The start position, with reference to the input video, at which the overlay starts. The value should be in ISO 8601 format. For example, PT05S to start the overlay at 5 seconds into the input video. If not specified the overlay starts from the beginning of the input video. + // +kubebuilder:validation:Optional Start *string `json:"start,omitempty" tf:"start,omitempty"` } @@ -625,21 +674,27 @@ type FilterObservation struct { type FilterParameters struct { // A crop_rectangle block as defined above. + // +kubebuilder:validation:Optional CropRectangle []CropRectangleParameters `json:"cropRectangle,omitempty" tf:"crop_rectangle,omitempty"` // A deinterlace block as defined below. + // +kubebuilder:validation:Optional Deinterlace []DeinterlaceParameters `json:"deinterlace,omitempty" tf:"deinterlace,omitempty"` // A fade_in block as defined above. + // +kubebuilder:validation:Optional FadeIn []FadeInParameters `json:"fadeIn,omitempty" tf:"fade_in,omitempty"` // A fade_out block as defined above. + // +kubebuilder:validation:Optional FadeOut []FadeOutParameters `json:"fadeOut,omitempty" tf:"fade_out,omitempty"` // One or more overlay blocks as defined below. + // +kubebuilder:validation:Optional Overlay []OverlayParameters `json:"overlay,omitempty" tf:"overlay,omitempty"` // The rotation to be applied to the input video before it is encoded. Possible values are Auto, None, Rotate90, Rotate180, Rotate270,or Rotate0. Default to Auto. + // +kubebuilder:validation:Optional Rotation *string `json:"rotation,omitempty" tf:"rotation,omitempty"` } @@ -676,15 +731,19 @@ type FormatObservation struct { type FormatParameters struct { // A jpg block as defined below. + // +kubebuilder:validation:Optional Jpg []JpgParameters `json:"jpg,omitempty" tf:"jpg,omitempty"` // A mp4 block as defined below. + // +kubebuilder:validation:Optional Mp4 []Mp4Parameters `json:"mp4,omitempty" tf:"mp4,omitempty"` // A png block as defined below. + // +kubebuilder:validation:Optional Png []PngParameters `json:"png,omitempty" tf:"png,omitempty"` // A transport_stream block as defined below. + // +kubebuilder:validation:Optional TransportStream []TransportStreamParameters `json:"transportStream,omitempty" tf:"transport_stream,omitempty"` } @@ -745,27 +804,35 @@ type H264VideoObservation struct { type H264VideoParameters struct { // The complexity of the encoding. Possible values are Balanced, Speed or Quality. + // +kubebuilder:validation:Optional Complexity *string `json:"complexity,omitempty" tf:"complexity,omitempty"` // The distance between two key frames. The value should be non-zero in the range 0.5 to 20 seconds, specified in ISO 8601 format. The default is 2 seconds (PT2S). Note that this setting is ignored if sync_mode is set to Passthrough, where the KeyFrameInterval value will follow the input source setting. + // +kubebuilder:validation:Optional KeyFrameInterval *string `json:"keyFrameInterval,omitempty" tf:"key_frame_interval,omitempty"` // Specifies the label for the codec. The label can be used to control muxing behavior. + // +kubebuilder:validation:Optional Label *string `json:"label,omitempty" tf:"label,omitempty"` // One or more layer blocks as defined below. + // +kubebuilder:validation:Optional Layer []LayerParameters `json:"layer,omitempty" tf:"layer,omitempty"` // The rate control mode. Possible values are ABR, CBR or CRF. Default to ABR. + // +kubebuilder:validation:Optional RateControlMode *string `json:"rateControlMode,omitempty" tf:"rate_control_mode,omitempty"` // Whether the encoder should insert key frames at scene changes. This flag should be set to true only when the encoder is being configured to produce a single output video. Default to false. + // +kubebuilder:validation:Optional SceneChangeDetectionEnabled *bool `json:"sceneChangeDetectionEnabled,omitempty" tf:"scene_change_detection_enabled,omitempty"` // The resizing mode, which indicates how the input video will be resized to fit the desired output resolution(s). Possible values are AutoFit, AutoSize or None. Default to AutoSize. + // +kubebuilder:validation:Optional StretchMode *string `json:"stretchMode,omitempty" tf:"stretch_mode,omitempty"` // Specifies the synchronization mode for the video. Possible values are Auto, Cfr, Passthrough or Vfr. Default to Auto. + // +kubebuilder:validation:Optional SyncMode *string `json:"syncMode,omitempty" tf:"sync_mode,omitempty"` } @@ -886,45 +953,59 @@ type H265VideoLayerObservation struct { type H265VideoLayerParameters struct { // Whether adaptive B-frames are used when encoding this layer. If not specified, the encoder will turn it on whenever the video profile permits its use. Default to true. + // +kubebuilder:validation:Optional AdaptiveBFrameEnabled *bool `json:"adaptiveBFrameEnabled,omitempty" tf:"adaptive_b_frame_enabled,omitempty"` // The number of B-frames to use when encoding this layer. If not specified, the encoder chooses an appropriate number based on the video profile and level. + // +kubebuilder:validation:Optional BFrames *float64 `json:"bFrames,omitempty" tf:"b_frames,omitempty"` // The average bitrate in bits per second at which to encode the input video when generating this layer. + // +kubebuilder:validation:Optional Bitrate *float64 `json:"bitrate,omitempty" tf:"bitrate,omitempty"` // Specifies the maximum amount of time that the encoder should buffer frames before encoding. The value should be in ISO 8601 format. The value should be in the range 0.1 to 100 seconds. The default is 5 seconds (PT5S). + // +kubebuilder:validation:Optional BufferWindow *string `json:"bufferWindow,omitempty" tf:"buffer_window,omitempty"` // The value of CRF to be used when encoding this layer. This setting takes effect when rate_control_mode is set CRF. The range of CRF value is between 0 and 51, where lower values would result in better quality, at the expense of higher file sizes. Higher values mean more compression, but at some point quality degradation will be noticed. Default to 23. + // +kubebuilder:validation:Optional Crf *float64 `json:"crf,omitempty" tf:"crf,omitempty"` // The frame rate (in frames per second) at which to encode this layer. The value can be in the form of M/N where M and N are integers (For example, 30000/1001), or in the form of a number (For example, 30, or 29.97). The encoder enforces constraints on allowed frame rates based on the profile and level. If it is not specified, the encoder will use the same frame rate as the input video. + // +kubebuilder:validation:Optional FrameRate *string `json:"frameRate,omitempty" tf:"frame_rate,omitempty"` // The height of the rectangular region in pixels. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + // +kubebuilder:validation:Optional Height *string `json:"height,omitempty" tf:"height,omitempty"` // Specifies the label for the codec. The label can be used to control muxing behavior. + // +kubebuilder:validation:Optional Label *string `json:"label,omitempty" tf:"label,omitempty"` // The H.264 levels. Currently, the resource support Level up to 6.2. The value can be auto, or a number that matches the H.264 profile. If not specified, the default is auto, which lets the encoder choose the Level that is appropriate for this layer. + // +kubebuilder:validation:Optional Level *string `json:"level,omitempty" tf:"level,omitempty"` // The maximum bitrate (in bits per second), at which the VBV buffer should be assumed to refill. If not specified, defaults to the same value as bitrate. + // +kubebuilder:validation:Optional MaxBitrate *float64 `json:"maxBitrate,omitempty" tf:"max_bitrate,omitempty"` // The H.264 profile. Possible values are Auto, Baseline, High, High422, High444,or Main. Default to Auto. + // +kubebuilder:validation:Optional Profile *string `json:"profile,omitempty" tf:"profile,omitempty"` // The number of reference frames to be used when encoding this layer. If not specified, the encoder determines an appropriate number based on the encoder complexity setting. + // +kubebuilder:validation:Optional ReferenceFrames *float64 `json:"referenceFrames,omitempty" tf:"reference_frames,omitempty"` // The number of slices to be used when encoding this layer. If not specified, default is 1, which means that encoder will use a single slice for each frame. + // +kubebuilder:validation:Optional Slices *float64 `json:"slices,omitempty" tf:"slices,omitempty"` // The width of the rectangular region in pixels. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + // +kubebuilder:validation:Optional Width *string `json:"width,omitempty" tf:"width,omitempty"` } @@ -955,24 +1036,31 @@ type H265VideoObservation struct { type H265VideoParameters struct { // The complexity of the encoding. Possible values are Balanced, Speed or Quality. + // +kubebuilder:validation:Optional Complexity *string `json:"complexity,omitempty" tf:"complexity,omitempty"` // The distance between two key frames. The value should be non-zero in the range 0.5 to 20 seconds, specified in ISO 8601 format. The default is 2 seconds (PT2S). Note that this setting is ignored if sync_mode is set to Passthrough, where the KeyFrameInterval value will follow the input source setting. + // +kubebuilder:validation:Optional KeyFrameInterval *string `json:"keyFrameInterval,omitempty" tf:"key_frame_interval,omitempty"` // Specifies the label for the codec. The label can be used to control muxing behavior. + // +kubebuilder:validation:Optional Label *string `json:"label,omitempty" tf:"label,omitempty"` // One or more layer blocks as defined below. + // +kubebuilder:validation:Optional Layer []H265VideoLayerParameters `json:"layer,omitempty" tf:"layer,omitempty"` // Whether the encoder should insert key frames at scene changes. This flag should be set to true only when the encoder is being configured to produce a single output video. Default to false. + // +kubebuilder:validation:Optional SceneChangeDetectionEnabled *bool `json:"sceneChangeDetectionEnabled,omitempty" tf:"scene_change_detection_enabled,omitempty"` // The resizing mode, which indicates how the input video will be resized to fit the desired output resolution(s). Possible values are AutoFit, AutoSize or None. Default to AutoSize. + // +kubebuilder:validation:Optional StretchMode *string `json:"stretchMode,omitempty" tf:"stretch_mode,omitempty"` // Specifies the synchronization mode for the video. Possible values are Auto, Cfr, Passthrough or Vfr. Default to Auto. + // +kubebuilder:validation:Optional SyncMode *string `json:"syncMode,omitempty" tf:"sync_mode,omitempty"` } @@ -1039,15 +1127,19 @@ type JpgImageLayerObservation struct { type JpgImageLayerParameters struct { // The height of the rectangular region in pixels. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + // +kubebuilder:validation:Optional Height *string `json:"height,omitempty" tf:"height,omitempty"` // Specifies the label for the codec. The label can be used to control muxing behavior. + // +kubebuilder:validation:Optional Label *string `json:"label,omitempty" tf:"label,omitempty"` // The compression quality of the JPEG output. Range is from 0 to 100 and the default is 70. + // +kubebuilder:validation:Optional Quality *float64 `json:"quality,omitempty" tf:"quality,omitempty"` // The width of the rectangular region in pixels. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + // +kubebuilder:validation:Optional Width *string `json:"width,omitempty" tf:"width,omitempty"` } @@ -1084,30 +1176,39 @@ type JpgImageObservation struct { type JpgImageParameters struct { // The distance between two key frames. The value should be non-zero in the range 0.5 to 20 seconds, specified in ISO 8601 format. The default is 2 seconds (PT2S). Note that this setting is ignored if sync_mode is set to Passthrough, where the KeyFrameInterval value will follow the input source setting. + // +kubebuilder:validation:Optional KeyFrameInterval *string `json:"keyFrameInterval,omitempty" tf:"key_frame_interval,omitempty"` // Specifies the label for the codec. The label can be used to control muxing behavior. + // +kubebuilder:validation:Optional Label *string `json:"label,omitempty" tf:"label,omitempty"` // One or more layer blocks as defined below. + // +kubebuilder:validation:Optional Layer []JpgImageLayerParameters `json:"layer,omitempty" tf:"layer,omitempty"` // The position relative to transform preset start time in the input video at which to stop generating thumbnails. The value can be in ISO 8601 format (For example, PT5M30S to stop at 5 minutes and 30 seconds from start time), or a frame count (For example, 300 to stop at the 300th frame from the frame at start time. If this value is 1, it means only producing one thumbnail at start time), or a relative value to the stream duration (For example, 50% to stop at half of stream duration from start time). The default value is 100%, which means to stop at the end of the stream. + // +kubebuilder:validation:Optional Range *string `json:"range,omitempty" tf:"range,omitempty"` // Sets the number of columns used in thumbnail sprite image. The number of rows are automatically calculated and a VTT file is generated with the coordinate mappings for each thumbnail in the sprite. Note: this value should be a positive integer and a proper value is recommended so that the output image resolution will not go beyond JPEG maximum pixel resolution limit 65535x65535. + // +kubebuilder:validation:Optional SpriteColumn *float64 `json:"spriteColumn,omitempty" tf:"sprite_column,omitempty"` // The start position, with reference to the input video, at which the overlay starts. The value should be in ISO 8601 format. For example, PT05S to start the overlay at 5 seconds into the input video. If not specified the overlay starts from the beginning of the input video. + // +kubebuilder:validation:Optional Start *string `json:"start,omitempty" tf:"start,omitempty"` // The intervals at which thumbnails are generated. The value can be in ISO 8601 format (For example, PT05S for one image every 5 seconds), or a frame count (For example, 30 for one image every 30 frames), or a relative value to stream duration (For example, 10% for one image every 10% of stream duration). Note: Step value will affect the first generated thumbnail, which may not be exactly the one specified at transform preset start time. This is due to the encoder, which tries to select the best thumbnail between start time and Step position from start time as the first output. As the default value is 10%, it means if stream has long duration, the first generated thumbnail might be far away from the one specified at start time. Try to select reasonable value for Step if the first thumbnail is expected close to start time, or set Range value at 1 if only one thumbnail is needed at start time. + // +kubebuilder:validation:Optional Step *string `json:"step,omitempty" tf:"step,omitempty"` // The resizing mode, which indicates how the input video will be resized to fit the desired output resolution(s). Possible values are AutoFit, AutoSize or None. Default to AutoSize. + // +kubebuilder:validation:Optional StretchMode *string `json:"stretchMode,omitempty" tf:"stretch_mode,omitempty"` // Specifies the synchronization mode for the video. Possible values are Auto, Cfr, Passthrough or Vfr. Default to Auto. + // +kubebuilder:validation:Optional SyncMode *string `json:"syncMode,omitempty" tf:"sync_mode,omitempty"` } @@ -1126,6 +1227,7 @@ type JpgObservation struct { type JpgParameters struct { // The file naming pattern used for the creation of output files. The following macros are supported in the file name: {Basename} - An expansion macro that will use the name of the input video file. If the base name(the file suffix is not included) of the input video file is less than 32 characters long, the base name of input video files will be used. If the length of base name of the input video file exceeds 32 characters, the base name is truncated to the first 32 characters in total length. {Extension} - The appropriate extension for this format. {Label} - The label assigned to the codec/layer. {Index} - A unique index for thumbnails. Only applicable to thumbnails. {AudioStream} - string "Audio" plus audio stream number(start from 1). {Bitrate} - The audio/video bitrate in kbps. Not applicable to thumbnails. {Codec} - The type of the audio/video codec. {Resolution} - The video resolution. Any unsubstituted macros will be collapsed and removed from the filename. + // +kubebuilder:validation:Optional FilenamePattern *string `json:"filenamePattern,omitempty" tf:"filename_pattern,omitempty"` } @@ -1228,48 +1330,63 @@ type LayerObservation struct { type LayerParameters struct { // Whether adaptive B-frames are used when encoding this layer. If not specified, the encoder will turn it on whenever the video profile permits its use. Default to true. + // +kubebuilder:validation:Optional AdaptiveBFrameEnabled *bool `json:"adaptiveBFrameEnabled,omitempty" tf:"adaptive_b_frame_enabled,omitempty"` // The number of B-frames to use when encoding this layer. If not specified, the encoder chooses an appropriate number based on the video profile and level. + // +kubebuilder:validation:Optional BFrames *float64 `json:"bFrames,omitempty" tf:"b_frames,omitempty"` // The average bitrate in bits per second at which to encode the input video when generating this layer. + // +kubebuilder:validation:Optional Bitrate *float64 `json:"bitrate,omitempty" tf:"bitrate,omitempty"` // Specifies the maximum amount of time that the encoder should buffer frames before encoding. The value should be in ISO 8601 format. The value should be in the range 0.1 to 100 seconds. The default is 5 seconds (PT5S). + // +kubebuilder:validation:Optional BufferWindow *string `json:"bufferWindow,omitempty" tf:"buffer_window,omitempty"` // The value of CRF to be used when encoding this layer. This setting takes effect when rate_control_mode is set CRF. The range of CRF value is between 0 and 51, where lower values would result in better quality, at the expense of higher file sizes. Higher values mean more compression, but at some point quality degradation will be noticed. Default to 23. + // +kubebuilder:validation:Optional Crf *float64 `json:"crf,omitempty" tf:"crf,omitempty"` // The entropy mode to be used for this layer. Possible values are Cabac or Cavlc. If not specified, the encoder chooses the mode that is appropriate for the profile and level. + // +kubebuilder:validation:Optional EntropyMode *string `json:"entropyMode,omitempty" tf:"entropy_mode,omitempty"` // The frame rate (in frames per second) at which to encode this layer. The value can be in the form of M/N where M and N are integers (For example, 30000/1001), or in the form of a number (For example, 30, or 29.97). The encoder enforces constraints on allowed frame rates based on the profile and level. If it is not specified, the encoder will use the same frame rate as the input video. + // +kubebuilder:validation:Optional FrameRate *string `json:"frameRate,omitempty" tf:"frame_rate,omitempty"` // The height of the rectangular region in pixels. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + // +kubebuilder:validation:Optional Height *string `json:"height,omitempty" tf:"height,omitempty"` // Specifies the label for the codec. The label can be used to control muxing behavior. + // +kubebuilder:validation:Optional Label *string `json:"label,omitempty" tf:"label,omitempty"` // The H.264 levels. Currently, the resource support Level up to 6.2. The value can be auto, or a number that matches the H.264 profile. If not specified, the default is auto, which lets the encoder choose the Level that is appropriate for this layer. + // +kubebuilder:validation:Optional Level *string `json:"level,omitempty" tf:"level,omitempty"` // The maximum bitrate (in bits per second), at which the VBV buffer should be assumed to refill. If not specified, defaults to the same value as bitrate. + // +kubebuilder:validation:Optional MaxBitrate *float64 `json:"maxBitrate,omitempty" tf:"max_bitrate,omitempty"` // The H.264 profile. Possible values are Auto, Baseline, High, High422, High444,or Main. Default to Auto. + // +kubebuilder:validation:Optional Profile *string `json:"profile,omitempty" tf:"profile,omitempty"` // The number of reference frames to be used when encoding this layer. If not specified, the encoder determines an appropriate number based on the encoder complexity setting. + // +kubebuilder:validation:Optional ReferenceFrames *float64 `json:"referenceFrames,omitempty" tf:"reference_frames,omitempty"` // The number of slices to be used when encoding this layer. If not specified, default is 1, which means that encoder will use a single slice for each frame. + // +kubebuilder:validation:Optional Slices *float64 `json:"slices,omitempty" tf:"slices,omitempty"` // The width of the rectangular region in pixels. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + // +kubebuilder:validation:Optional Width *string `json:"width,omitempty" tf:"width,omitempty"` } @@ -1294,9 +1411,11 @@ type Mp4Observation struct { type Mp4Parameters struct { // The file naming pattern used for the creation of output files. The following macros are supported in the file name: {Basename} - An expansion macro that will use the name of the input video file. If the base name(the file suffix is not included) of the input video file is less than 32 characters long, the base name of input video files will be used. If the length of base name of the input video file exceeds 32 characters, the base name is truncated to the first 32 characters in total length. {Extension} - The appropriate extension for this format. {Label} - The label assigned to the codec/layer. {Index} - A unique index for thumbnails. Only applicable to thumbnails. {AudioStream} - string "Audio" plus audio stream number(start from 1). {Bitrate} - The audio/video bitrate in kbps. Not applicable to thumbnails. {Codec} - The type of the audio/video codec. {Resolution} - The video resolution. Any unsubstituted macros will be collapsed and removed from the filename. + // +kubebuilder:validation:Optional FilenamePattern *string `json:"filenamePattern,omitempty" tf:"filename_pattern,omitempty"` // One or more output_file blocks as defined above. + // +kubebuilder:validation:Optional OutputFile []OutputFileParameters `json:"outputFile,omitempty" tf:"output_file,omitempty"` } @@ -1315,6 +1434,7 @@ type OutputFileObservation struct { type OutputFileParameters struct { // The list of labels that describe how the encoder should multiplex video and audio into an output file. For example, if the encoder is producing two video layers with labels v1 and v2, and one audio layer with label a1, then an array like ["v1", "a1"] tells the encoder to produce an output file with the video track represented by v1 and the audio track represented by a1. + // +kubebuilder:validation:Optional Labels []*string `json:"labels,omitempty" tf:"labels,omitempty"` } @@ -1369,24 +1489,31 @@ type OutputObservation struct { type OutputParameters struct { // An audio_analyzer_preset block as defined above. + // +kubebuilder:validation:Optional AudioAnalyzerPreset []AudioAnalyzerPresetParameters `json:"audioAnalyzerPreset,omitempty" tf:"audio_analyzer_preset,omitempty"` // A builtin_preset block as defined above. + // +kubebuilder:validation:Optional BuiltinPreset []BuiltinPresetParameters `json:"builtinPreset,omitempty" tf:"builtin_preset,omitempty"` // A custom_preset block as defined above. + // +kubebuilder:validation:Optional CustomPreset []CustomPresetParameters `json:"customPreset,omitempty" tf:"custom_preset,omitempty"` // A face_detector_preset block as defined above. + // +kubebuilder:validation:Optional FaceDetectorPreset []FaceDetectorPresetParameters `json:"faceDetectorPreset,omitempty" tf:"face_detector_preset,omitempty"` // A Transform can define more than one outputs. This property defines what the service should do when one output fails - either continue to produce other outputs, or, stop the other outputs. The overall Job state will not reflect failures of outputs that are specified with ContinueJob. Possible values are StopProcessingJob or ContinueJob. The default is StopProcessingJob. + // +kubebuilder:validation:Optional OnErrorAction *string `json:"onErrorAction,omitempty" tf:"on_error_action,omitempty"` // Sets the relative priority of the TransformOutputs within a Transform. This sets the priority that the service uses for processing Transform Outputs. Possible values are High, Normal or Low. Defaults to Normal. + // +kubebuilder:validation:Optional RelativePriority *string `json:"relativePriority,omitempty" tf:"relative_priority,omitempty"` // A video_analyzer_preset block as defined below. + // +kubebuilder:validation:Optional VideoAnalyzerPreset []VideoAnalyzerPresetParameters `json:"videoAnalyzerPreset,omitempty" tf:"video_analyzer_preset,omitempty"` } @@ -1411,9 +1538,11 @@ type OverlayObservation struct { type OverlayParameters struct { // An audio block as defined above. + // +kubebuilder:validation:Optional Audio []AudioParameters `json:"audio,omitempty" tf:"audio,omitempty"` // A video block as defined below. + // +kubebuilder:validation:Optional Video []VideoParameters `json:"video,omitempty" tf:"video,omitempty"` } @@ -1471,12 +1600,15 @@ type PngImageLayerObservation struct { type PngImageLayerParameters struct { // The height of the rectangular region in pixels. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + // +kubebuilder:validation:Optional Height *string `json:"height,omitempty" tf:"height,omitempty"` // Specifies the label for the codec. The label can be used to control muxing behavior. + // +kubebuilder:validation:Optional Label *string `json:"label,omitempty" tf:"label,omitempty"` // The width of the rectangular region in pixels. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + // +kubebuilder:validation:Optional Width *string `json:"width,omitempty" tf:"width,omitempty"` } @@ -1510,27 +1642,35 @@ type PngImageObservation struct { type PngImageParameters struct { // The distance between two key frames. The value should be non-zero in the range 0.5 to 20 seconds, specified in ISO 8601 format. The default is 2 seconds (PT2S). Note that this setting is ignored if sync_mode is set to Passthrough, where the KeyFrameInterval value will follow the input source setting. + // +kubebuilder:validation:Optional KeyFrameInterval *string `json:"keyFrameInterval,omitempty" tf:"key_frame_interval,omitempty"` // Specifies the label for the codec. The label can be used to control muxing behavior. + // +kubebuilder:validation:Optional Label *string `json:"label,omitempty" tf:"label,omitempty"` // One or more layer blocks as defined below. + // +kubebuilder:validation:Optional Layer []PngImageLayerParameters `json:"layer,omitempty" tf:"layer,omitempty"` // The position relative to transform preset start time in the input video at which to stop generating thumbnails. The value can be in ISO 8601 format (For example, PT5M30S to stop at 5 minutes and 30 seconds from start time), or a frame count (For example, 300 to stop at the 300th frame from the frame at start time. If this value is 1, it means only producing one thumbnail at start time), or a relative value to the stream duration (For example, 50% to stop at half of stream duration from start time). The default value is 100%, which means to stop at the end of the stream. + // +kubebuilder:validation:Optional Range *string `json:"range,omitempty" tf:"range,omitempty"` // The start position, with reference to the input video, at which the overlay starts. The value should be in ISO 8601 format. For example, PT05S to start the overlay at 5 seconds into the input video. If not specified the overlay starts from the beginning of the input video. + // +kubebuilder:validation:Optional Start *string `json:"start,omitempty" tf:"start,omitempty"` // The intervals at which thumbnails are generated. The value can be in ISO 8601 format (For example, PT05S for one image every 5 seconds), or a frame count (For example, 30 for one image every 30 frames), or a relative value to stream duration (For example, 10% for one image every 10% of stream duration). Note: Step value will affect the first generated thumbnail, which may not be exactly the one specified at transform preset start time. This is due to the encoder, which tries to select the best thumbnail between start time and Step position from start time as the first output. As the default value is 10%, it means if stream has long duration, the first generated thumbnail might be far away from the one specified at start time. Try to select reasonable value for Step if the first thumbnail is expected close to start time, or set Range value at 1 if only one thumbnail is needed at start time. + // +kubebuilder:validation:Optional Step *string `json:"step,omitempty" tf:"step,omitempty"` // The resizing mode, which indicates how the input video will be resized to fit the desired output resolution(s). Possible values are AutoFit, AutoSize or None. Default to AutoSize. + // +kubebuilder:validation:Optional StretchMode *string `json:"stretchMode,omitempty" tf:"stretch_mode,omitempty"` // Specifies the synchronization mode for the video. Possible values are Auto, Cfr, Passthrough or Vfr. Default to Auto. + // +kubebuilder:validation:Optional SyncMode *string `json:"syncMode,omitempty" tf:"sync_mode,omitempty"` } @@ -1549,6 +1689,7 @@ type PngObservation struct { type PngParameters struct { // The file naming pattern used for the creation of output files. The following macros are supported in the file name: {Basename} - An expansion macro that will use the name of the input video file. If the base name(the file suffix is not included) of the input video file is less than 32 characters long, the base name of input video files will be used. If the length of base name of the input video file exceeds 32 characters, the base name is truncated to the first 32 characters in total length. {Extension} - The appropriate extension for this format. {Label} - The label assigned to the codec/layer. {Index} - A unique index for thumbnails. Only applicable to thumbnails. {AudioStream} - string "Audio" plus audio stream number(start from 1). {Bitrate} - The audio/video bitrate in kbps. Not applicable to thumbnails. {Codec} - The type of the audio/video codec. {Resolution} - The video resolution. Any unsubstituted macros will be collapsed and removed from the filename. + // +kubebuilder:validation:Optional FilenamePattern *string `json:"filenamePattern,omitempty" tf:"filename_pattern,omitempty"` } @@ -1585,15 +1726,19 @@ type PositionObservation struct { type PositionParameters struct { // The height of the rectangular region in pixels. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + // +kubebuilder:validation:Optional Height *string `json:"height,omitempty" tf:"height,omitempty"` // The number of pixels from the left-margin. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + // +kubebuilder:validation:Optional Left *string `json:"left,omitempty" tf:"left,omitempty"` // The number of pixels from the top-margin. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + // +kubebuilder:validation:Optional Top *string `json:"top,omitempty" tf:"top,omitempty"` // The width of the rectangular region in pixels. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + // +kubebuilder:validation:Optional Width *string `json:"width,omitempty" tf:"width,omitempty"` } @@ -1654,27 +1799,35 @@ type PresetConfigurationObservation struct { type PresetConfigurationParameters struct { // The complexity of the encoding. Possible values are Balanced, Speed or Quality. + // +kubebuilder:validation:Optional Complexity *string `json:"complexity,omitempty" tf:"complexity,omitempty"` // Specifies the interleave mode of the output to control how audio are stored in the container format. Possible values are InterleavedOutput and NonInterleavedOutput. + // +kubebuilder:validation:Optional InterleaveOutput *string `json:"interleaveOutput,omitempty" tf:"interleave_output,omitempty"` // The key frame interval in seconds. Possible value is a positive float. For example, set as 2.0 to reduce the playback buffering for some players. + // +kubebuilder:validation:Optional KeyFrameIntervalInSeconds *float64 `json:"keyFrameIntervalInSeconds,omitempty" tf:"key_frame_interval_in_seconds,omitempty"` // The maximum bitrate in bits per second (threshold for the top video layer). For example, set as 6000000 to avoid producing very high bitrate outputs for contents with high complexity. + // +kubebuilder:validation:Optional MaxBitrateBps *float64 `json:"maxBitrateBps,omitempty" tf:"max_bitrate_bps,omitempty"` // The maximum height of output video layers. For example, set as 720 to produce output layers up to 720P even if the input is 4K. + // +kubebuilder:validation:Optional MaxHeight *float64 `json:"maxHeight,omitempty" tf:"max_height,omitempty"` // The maximum number of output video layers. For example, set as 4 to make sure at most 4 output layers are produced to control the overall cost of the encoding job. + // +kubebuilder:validation:Optional MaxLayers *float64 `json:"maxLayers,omitempty" tf:"max_layers,omitempty"` // The minimum bitrate in bits per second (threshold for the bottom video layer). For example, set as 200000 to have a bottom layer that covers users with low network bandwidth. + // +kubebuilder:validation:Optional MinBitrateBps *float64 `json:"minBitrateBps,omitempty" tf:"min_bitrate_bps,omitempty"` // The minimum height of output video layers. For example, set as 360 to avoid output layers of smaller resolutions like 180P. + // +kubebuilder:validation:Optional MinHeight *float64 `json:"minHeight,omitempty" tf:"min_height,omitempty"` } @@ -1708,6 +1861,7 @@ type TransformObservation struct { type TransformParameters struct { // An optional verbose description of the Transform. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The Media Services account name. Changing this forces a new Transform to be created. @@ -1724,6 +1878,7 @@ type TransformParameters struct { MediaServicesAccountNameSelector *v1.Selector `json:"mediaServicesAccountNameSelector,omitempty" tf:"-"` // One or more output blocks as defined below. At least one output must be defined. + // +kubebuilder:validation:Optional Output []OutputParameters `json:"output,omitempty" tf:"output,omitempty"` // The name of the Resource Group where the Transform should exist. Changing this forces a new Transform to be created. @@ -1773,15 +1928,18 @@ type TransportStreamOutputFileObservation struct { type TransportStreamOutputFileParameters struct { // The list of labels that describe how the encoder should multiplex video and audio into an output file. For example, if the encoder is producing two video layers with labels v1 and v2, and one audio layer with label a1, then an array like ["v1", "a1"] tells the encoder to produce an output file with the video track represented by v1 and the audio track represented by a1. + // +kubebuilder:validation:Optional Labels []*string `json:"labels,omitempty" tf:"labels,omitempty"` } type TransportStreamParameters struct { // The file naming pattern used for the creation of output files. The following macros are supported in the file name: {Basename} - An expansion macro that will use the name of the input video file. If the base name(the file suffix is not included) of the input video file is less than 32 characters long, the base name of input video files will be used. If the length of base name of the input video file exceeds 32 characters, the base name is truncated to the first 32 characters in total length. {Extension} - The appropriate extension for this format. {Label} - The label assigned to the codec/layer. {Index} - A unique index for thumbnails. Only applicable to thumbnails. {AudioStream} - string "Audio" plus audio stream number(start from 1). {Bitrate} - The audio/video bitrate in kbps. Not applicable to thumbnails. {Codec} - The type of the audio/video codec. {Resolution} - The video resolution. Any unsubstituted macros will be collapsed and removed from the filename. + // +kubebuilder:validation:Optional FilenamePattern *string `json:"filenamePattern,omitempty" tf:"filename_pattern,omitempty"` // One or more output_file blocks as defined above. + // +kubebuilder:validation:Optional OutputFile []TransportStreamOutputFileParameters `json:"outputFile,omitempty" tf:"output_file,omitempty"` } @@ -1818,15 +1976,19 @@ type VideoAnalyzerPresetObservation struct { type VideoAnalyzerPresetParameters struct { // Possible values are Basic or Standard. Determines the set of audio analysis operations to be performed. Default to Standard. + // +kubebuilder:validation:Optional AudioAnalysisMode *string `json:"audioAnalysisMode,omitempty" tf:"audio_analysis_mode,omitempty"` // The language for the audio payload in the input using the BCP-47 format of 'language tag-region' (e.g: 'en-US'). If you know the language of your content, it is recommended that you specify it. The language must be specified explicitly for AudioAnalysisMode:Basic, since automatic language detection is not included in basic mode. If the language isn't specified, automatic language detection will choose the first language detected and process with the selected language for the duration of the file. It does not currently support dynamically switching between languages after the first language is detected. The automatic detection works best with audio recordings with clearly discernible speech. If automatic detection fails to find the language, transcription would fall back to en-US. The list of supported languages is available here: https://go.microsoft.com/fwlink/?linkid=2109463. + // +kubebuilder:validation:Optional AudioLanguage *string `json:"audioLanguage,omitempty" tf:"audio_language,omitempty"` // Dictionary containing key value pairs for parameters not exposed in the preset itself. + // +kubebuilder:validation:Optional ExperimentalOptions map[string]*string `json:"experimentalOptions,omitempty" tf:"experimental_options,omitempty"` // Defines the type of insights that you want the service to generate. The allowed values are AudioInsightsOnly, VideoInsightsOnly, and AllInsights. If you set this to AllInsights and the input is audio only, then only audio insights are generated. Similarly, if the input is video only, then only video insights are generated. It is recommended that you not use AudioInsightsOnly if you expect some of your inputs to be video only; or use VideoInsightsOnly if you expect some of your inputs to be audio only. Your Jobs in such conditions would error out. Default to AllInsights. + // +kubebuilder:validation:Optional InsightsType *string `json:"insightsType,omitempty" tf:"insights_type,omitempty"` } @@ -1863,15 +2025,19 @@ type VideoCropRectangleObservation struct { type VideoCropRectangleParameters struct { // The height of the rectangular region in pixels. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + // +kubebuilder:validation:Optional Height *string `json:"height,omitempty" tf:"height,omitempty"` // The number of pixels from the left-margin. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + // +kubebuilder:validation:Optional Left *string `json:"left,omitempty" tf:"left,omitempty"` // The number of pixels from the top-margin. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + // +kubebuilder:validation:Optional Top *string `json:"top,omitempty" tf:"top,omitempty"` // The width of the rectangular region in pixels. This can be absolute pixel value (e.g 100), or relative to the size of the video (For example, 50%). + // +kubebuilder:validation:Optional Width *string `json:"width,omitempty" tf:"width,omitempty"` } @@ -1938,30 +2104,39 @@ type VideoObservation struct { type VideoParameters struct { // The gain level of audio in the overlay. The value should be in range between 0 to 1.0. The default is 1.0. + // +kubebuilder:validation:Optional AudioGainLevel *float64 `json:"audioGainLevel,omitempty" tf:"audio_gain_level,omitempty"` // A crop_rectangle block as defined above. + // +kubebuilder:validation:Optional CropRectangle []VideoCropRectangleParameters `json:"cropRectangle,omitempty" tf:"crop_rectangle,omitempty"` // The end position, with reference to the input video, at which the overlay ends. The value should be in ISO 8601 format. For example, PT30S to end the overlay at 30 seconds into the input video. If not specified or the value is greater than the input video duration, the overlay will be applied until the end of the input video if the overlay media duration is greater than the input video duration, else the overlay will last as long as the overlay media duration. + // +kubebuilder:validation:Optional End *string `json:"end,omitempty" tf:"end,omitempty"` // The duration over which the overlay fades in onto the input video. The value should be in ISO 8601 duration format. If not specified the default behavior is to have no fade in (same as PT0S). + // +kubebuilder:validation:Optional FadeInDuration *string `json:"fadeInDuration,omitempty" tf:"fade_in_duration,omitempty"` // The duration over which the overlay fades out of the input video. The value should be in ISO 8601 duration format. If not specified the default behavior is to have no fade out (same as PT0S). + // +kubebuilder:validation:Optional FadeOutDuration *string `json:"fadeOutDuration,omitempty" tf:"fade_out_duration,omitempty"` // The label of the job input which is to be used as an overlay. The input must specify exact one file. You can specify an image file in JPG, PNG, GIF or BMP format, or an audio file (such as a WAV, MP3, WMA or M4A file), or a video file. + // +kubebuilder:validation:Optional InputLabel *string `json:"inputLabel,omitempty" tf:"input_label,omitempty"` // The opacity of the overlay. The value should be in the range between 0 to 1.0. Default to 1.0, which means the overlay is opaque. + // +kubebuilder:validation:Optional Opacity *float64 `json:"opacity,omitempty" tf:"opacity,omitempty"` // A position block as defined above. + // +kubebuilder:validation:Optional Position []PositionParameters `json:"position,omitempty" tf:"position,omitempty"` // The start position, with reference to the input video, at which the overlay starts. The value should be in ISO 8601 format. For example, PT05S to start the overlay at 5 seconds into the input video. If not specified the overlay starts from the beginning of the input video. + // +kubebuilder:validation:Optional Start *string `json:"start,omitempty" tf:"start,omitempty"` } diff --git a/apis/mixedreality/v1beta1/zz_spatialanchorsaccount_types.go b/apis/mixedreality/v1beta1/zz_spatialanchorsaccount_types.go index 3db6a0d31..1f391af70 100755 --- a/apis/mixedreality/v1beta1/zz_spatialanchorsaccount_types.go +++ b/apis/mixedreality/v1beta1/zz_spatialanchorsaccount_types.go @@ -46,6 +46,7 @@ type SpatialAnchorsAccountObservation struct { type SpatialAnchorsAccountParameters struct { // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the resource group in which to create the Spatial Anchors Account. Changing this forces a new resource to be created. @@ -62,6 +63,7 @@ type SpatialAnchorsAccountParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/netapp/v1beta1/zz_account_types.go b/apis/netapp/v1beta1/zz_account_types.go index 3c54dd4a4..23d63ae8a 100755 --- a/apis/netapp/v1beta1/zz_account_types.go +++ b/apis/netapp/v1beta1/zz_account_types.go @@ -46,9 +46,11 @@ type AccountObservation struct { type AccountParameters struct { // A active_directory block as defined below. + // +kubebuilder:validation:Optional ActiveDirectory []ActiveDirectoryParameters `json:"activeDirectory,omitempty" tf:"active_directory,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the resource group where the NetApp Account should be created. Changing this forces a new resource to be created. @@ -65,6 +67,7 @@ type AccountParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -107,12 +110,15 @@ type ActiveDirectoryObservation struct { type ActiveDirectoryParameters struct { // A list of DNS server IP addresses for the Active Directory domain. Only allows IPv4 address. + // +kubebuilder:validation:Optional DNSServers []*string `json:"dnsServers,omitempty" tf:"dns_servers,omitempty"` // The name of the Active Directory domain. + // +kubebuilder:validation:Optional Domain *string `json:"domain,omitempty" tf:"domain,omitempty"` // The Organizational Unit (OU) within the Active Directory Domain. + // +kubebuilder:validation:Optional OrganizationalUnit *string `json:"organizationalUnit,omitempty" tf:"organizational_unit,omitempty"` // The password associated with the username. @@ -120,9 +126,11 @@ type ActiveDirectoryParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The NetBIOS name which should be used for the NetApp SMB Server, which will be registered as a computer account in the AD and used to mount volumes. + // +kubebuilder:validation:Optional SMBServerName *string `json:"smbServerName,omitempty" tf:"smb_server_name,omitempty"` // The Username of Active Directory Domain Administrator. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } diff --git a/apis/netapp/v1beta1/zz_pool_types.go b/apis/netapp/v1beta1/zz_pool_types.go index 73d3802ed..f0c00a78d 100755 --- a/apis/netapp/v1beta1/zz_pool_types.go +++ b/apis/netapp/v1beta1/zz_pool_types.go @@ -74,9 +74,11 @@ type PoolParameters struct { AccountNameSelector *v1.Selector `json:"accountNameSelector,omitempty" tf:"-"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // QoS Type of the pool. Valid values include Auto or Manual. + // +kubebuilder:validation:Optional QosType *string `json:"qosType,omitempty" tf:"qos_type,omitempty"` // The name of the resource group where the NetApp Pool should be created. Changing this forces a new resource to be created. @@ -93,12 +95,15 @@ type PoolParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The service level of the file system. Valid values include Premium, Standard, or Ultra. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ServiceLevel *string `json:"serviceLevel,omitempty" tf:"service_level,omitempty"` // Provisioned size of the pool in TB. Value must be between 4 and 500. + // +kubebuilder:validation:Optional SizeInTb *float64 `json:"sizeInTb,omitempty" tf:"size_in_tb,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/netapp/v1beta1/zz_snapshot_types.go b/apis/netapp/v1beta1/zz_snapshot_types.go index 1fea7f4a3..068f5bff1 100755 --- a/apis/netapp/v1beta1/zz_snapshot_types.go +++ b/apis/netapp/v1beta1/zz_snapshot_types.go @@ -56,6 +56,7 @@ type SnapshotParameters struct { AccountNameSelector *v1.Selector `json:"accountNameSelector,omitempty" tf:"-"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the NetApp pool in which the NetApp Volume should be created. Changing this forces a new resource to be created. diff --git a/apis/netapp/v1beta1/zz_snapshotpolicy_types.go b/apis/netapp/v1beta1/zz_snapshotpolicy_types.go index f44d9cea6..8d4f279b7 100755 --- a/apis/netapp/v1beta1/zz_snapshotpolicy_types.go +++ b/apis/netapp/v1beta1/zz_snapshotpolicy_types.go @@ -40,12 +40,15 @@ type DailyScheduleObservation struct { type DailyScheduleParameters struct { // Hour of the day that the snapshots will be created, valid range is from 0 to 23. + // +kubebuilder:validation:Optional Hour *float64 `json:"hour,omitempty" tf:"hour,omitempty"` // Minute of the hour that the snapshots will be created, valid range is from 0 to 59. + // +kubebuilder:validation:Optional Minute *float64 `json:"minute,omitempty" tf:"minute,omitempty"` // How many hourly snapshots to keep, valid range is from 0 to 255. + // +kubebuilder:validation:Optional SnapshotsToKeep *float64 `json:"snapshotsToKeep,omitempty" tf:"snapshots_to_keep,omitempty"` } @@ -70,9 +73,11 @@ type HourlyScheduleObservation struct { type HourlyScheduleParameters struct { // Minute of the hour that the snapshots will be created, valid range is from 0 to 59. + // +kubebuilder:validation:Optional Minute *float64 `json:"minute,omitempty" tf:"minute,omitempty"` // How many hourly snapshots to keep, valid range is from 0 to 255. + // +kubebuilder:validation:Optional SnapshotsToKeep *float64 `json:"snapshotsToKeep,omitempty" tf:"snapshots_to_keep,omitempty"` } @@ -109,15 +114,19 @@ type MonthlyScheduleObservation struct { type MonthlyScheduleParameters struct { // List of the days of the month when the snapshots will be created, valid range is from 1 to 30. + // +kubebuilder:validation:Optional DaysOfMonth []*float64 `json:"daysOfMonth,omitempty" tf:"days_of_month,omitempty"` // Hour of the day that the snapshots will be created, valid range is from 0 to 23. + // +kubebuilder:validation:Optional Hour *float64 `json:"hour,omitempty" tf:"hour,omitempty"` // Minute of the hour that the snapshots will be created, valid range is from 0 to 59. + // +kubebuilder:validation:Optional Minute *float64 `json:"minute,omitempty" tf:"minute,omitempty"` // How many hourly snapshots to keep, valid range is from 0 to 255. + // +kubebuilder:validation:Optional SnapshotsToKeep *float64 `json:"snapshotsToKeep,omitempty" tf:"snapshots_to_keep,omitempty"` } @@ -194,18 +203,23 @@ type SnapshotPolicyParameters struct { AccountNameSelector *v1.Selector `json:"accountNameSelector,omitempty" tf:"-"` // Sets a daily snapshot schedule. See details in below daily_schedule block. + // +kubebuilder:validation:Optional DailySchedule []DailyScheduleParameters `json:"dailySchedule,omitempty" tf:"daily_schedule,omitempty"` // Defines that the NetApp Snapshot Policy is enabled or not. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Sets an hourly snapshot schedule. See details in below hourly_schedule block. + // +kubebuilder:validation:Optional HourlySchedule []HourlyScheduleParameters `json:"hourlySchedule,omitempty" tf:"hourly_schedule,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Sets a monthly snapshot schedule. See details in below monthly_schedule block. + // +kubebuilder:validation:Optional MonthlySchedule []MonthlyScheduleParameters `json:"monthlySchedule,omitempty" tf:"monthly_schedule,omitempty"` // The name of the resource group where the NetApp Snapshot Policy should be created. Changing this forces a new resource to be created. @@ -222,9 +236,11 @@ type SnapshotPolicyParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Sets a weekly snapshot schedule. See details in below weekly_schedule block. + // +kubebuilder:validation:Optional WeeklySchedule []WeeklyScheduleParameters `json:"weeklySchedule,omitempty" tf:"weekly_schedule,omitempty"` } @@ -261,15 +277,19 @@ type WeeklyScheduleObservation struct { type WeeklyScheduleParameters struct { // List of the week days using English names when the snapshots will be created. + // +kubebuilder:validation:Optional DaysOfWeek []*string `json:"daysOfWeek,omitempty" tf:"days_of_week,omitempty"` // Hour of the day that the snapshots will be created, valid range is from 0 to 23. + // +kubebuilder:validation:Optional Hour *float64 `json:"hour,omitempty" tf:"hour,omitempty"` // Minute of the hour that the snapshots will be created, valid range is from 0 to 59. + // +kubebuilder:validation:Optional Minute *float64 `json:"minute,omitempty" tf:"minute,omitempty"` // How many hourly snapshots to keep, valid range is from 0 to 255. + // +kubebuilder:validation:Optional SnapshotsToKeep *float64 `json:"snapshotsToKeep,omitempty" tf:"snapshots_to_keep,omitempty"` } diff --git a/apis/netapp/v1beta1/zz_volume_types.go b/apis/netapp/v1beta1/zz_volume_types.go index b1b101a70..55ca2a11e 100755 --- a/apis/netapp/v1beta1/zz_volume_types.go +++ b/apis/netapp/v1beta1/zz_volume_types.go @@ -43,9 +43,11 @@ type DataProtectionReplicationObservation struct { type DataProtectionReplicationParameters struct { // The endpoint type, default value is dst for destination. + // +kubebuilder:validation:Optional EndpointType *string `json:"endpointType,omitempty" tf:"endpoint_type,omitempty"` // Location of the primary volume. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional RemoteVolumeLocation *string `json:"remoteVolumeLocation,omitempty" tf:"remote_volume_location,omitempty"` // Resource ID of the primary volume. @@ -63,6 +65,7 @@ type DataProtectionReplicationParameters struct { RemoteVolumeResourceIDSelector *v1.Selector `json:"remoteVolumeResourceIdSelector,omitempty" tf:"-"` // Replication frequency, supported values are '10minutes', 'hourly', 'daily', values are case sensitive. + // +kubebuilder:validation:Optional ReplicationFrequency *string `json:"replicationFrequency,omitempty" tf:"replication_frequency,omitempty"` } @@ -137,21 +140,27 @@ type ExportPolicyRuleObservation struct { type ExportPolicyRuleParameters struct { // A list of allowed clients IPv4 addresses. + // +kubebuilder:validation:Optional AllowedClients []*string `json:"allowedClients,omitempty" tf:"allowed_clients,omitempty"` // A list of allowed protocols. Valid values include CIFS, NFSv3, or NFSv4.1. Only one value is supported at this time. This replaces the previous arguments: cifs_enabled, nfsv3_enabled and nfsv4_enabled. + // +kubebuilder:validation:Optional ProtocolsEnabled []*string `json:"protocolsEnabled,omitempty" tf:"protocols_enabled,omitempty"` // Is root access permitted to this volume? + // +kubebuilder:validation:Optional RootAccessEnabled *bool `json:"rootAccessEnabled,omitempty" tf:"root_access_enabled,omitempty"` // The index number of the rule. + // +kubebuilder:validation:Optional RuleIndex *float64 `json:"ruleIndex,omitempty" tf:"rule_index,omitempty"` // Is the file system on unix read only? + // +kubebuilder:validation:Optional UnixReadOnly *bool `json:"unixReadOnly,omitempty" tf:"unix_read_only,omitempty"` // Is the file system on unix read and write? + // +kubebuilder:validation:Optional UnixReadWrite *bool `json:"unixReadWrite,omitempty" tf:"unix_read_write,omitempty"` } @@ -288,6 +297,7 @@ type VolumeParameters struct { AccountNameSelector *v1.Selector `json:"accountNameSelector,omitempty" tf:"-"` // Is the NetApp Volume enabled for Azure VMware Solution (AVS) datastore purpose. Defaults to false. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional AzureVMwareDataStoreEnabled *bool `json:"azureVmwareDataStoreEnabled,omitempty" tf:"azure_vmware_data_store_enabled,omitempty"` // Creates volume from snapshot. Following properties must be the same as the original volume where the snapshot was taken from: protocols, subnet_id, location, service_level, resource_group_name, account_name and pool_name. Changing this forces a new resource to be created. @@ -305,18 +315,23 @@ type VolumeParameters struct { CreateFromSnapshotResourceIDSelector *v1.Selector `json:"createFromSnapshotResourceIdSelector,omitempty" tf:"-"` // A data_protection_replication block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DataProtectionReplication []DataProtectionReplicationParameters `json:"dataProtectionReplication,omitempty" tf:"data_protection_replication,omitempty"` // A data_protection_snapshot_policy block as defined below. + // +kubebuilder:validation:Optional DataProtectionSnapshotPolicy []DataProtectionSnapshotPolicyParameters `json:"dataProtectionSnapshotPolicy,omitempty" tf:"data_protection_snapshot_policy,omitempty"` // One or more export_policy_rule block defined below. + // +kubebuilder:validation:Optional ExportPolicyRule []ExportPolicyRuleParameters `json:"exportPolicyRule,omitempty" tf:"export_policy_rule,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Indicates which network feature to use, accepted values are Basic or Standard, it defaults to Basic if not defined. This is a feature in public preview and for more information about it and how to register, please refer to Configure network features for an Azure NetApp Files volume. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional NetworkFeatures *string `json:"networkFeatures,omitempty" tf:"network_features,omitempty"` // The name of the NetApp pool in which the NetApp Volume should be created. Changing this forces a new resource to be created. @@ -333,6 +348,7 @@ type VolumeParameters struct { PoolNameSelector *v1.Selector `json:"poolNameSelector,omitempty" tf:"-"` // The target volume protocol expressed as a list. Supported single value include CIFS, NFSv3, or NFSv4.1. If argument is not defined it will default to NFSv3. Changing this forces a new resource to be created and data will be lost. Dual protocol scenario is supported for CIFS and NFSv3, for more information, please refer to Create a dual-protocol volume for Azure NetApp Files document. + // +kubebuilder:validation:Optional Protocols []*string `json:"protocols,omitempty" tf:"protocols,omitempty"` // The name of the resource group where the NetApp Volume should be created. Changing this forces a new resource to be created. @@ -349,15 +365,19 @@ type VolumeParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Volume security style, accepted values are Unix or Ntfs. If not provided, single-protocol volume is created defaulting to Unix if it is NFSv3 or NFSv4.1 volume, if CIFS, it will default to Ntfs. In a dual-protocol volume, if not provided, its value will be Ntfs. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SecurityStyle *string `json:"securityStyle,omitempty" tf:"security_style,omitempty"` // The target performance of the file system. Valid values include Premium, Standard, or Ultra. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ServiceLevel *string `json:"serviceLevel,omitempty" tf:"service_level,omitempty"` // Specifies whether the .snapshot (NFS clients) or ~snapshot (SMB clients) path of a volume is visible, default value is true. + // +kubebuilder:validation:Optional SnapshotDirectoryVisible *bool `json:"snapshotDirectoryVisible,omitempty" tf:"snapshot_directory_visible,omitempty"` // The maximum Storage Quota allowed for a file system in Gigabytes. + // +kubebuilder:validation:Optional StorageQuotaInGb *float64 `json:"storageQuotaInGb,omitempty" tf:"storage_quota_in_gb,omitempty"` // The ID of the Subnet the NetApp Volume resides in, which must have the Microsoft.NetApp/volumes delegation. Changing this forces a new resource to be created. @@ -375,15 +395,19 @@ type VolumeParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Throughput of this volume in Mibps. + // +kubebuilder:validation:Optional ThroughputInMibps *float64 `json:"throughputInMibps,omitempty" tf:"throughput_in_mibps,omitempty"` // A unique file path for the volume. Used when creating mount targets. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VolumePath *string `json:"volumePath,omitempty" tf:"volume_path,omitempty"` // Specifies the Availability Zone in which the Volume should be located. Possible values are 1, 2 and 3. Changing this forces a new resource to be created. This feature is currently in preview, for more information on how to enable it, please refer to Manage availability zone volume placement for Azure NetApp Files. + // +kubebuilder:validation:Optional Zone *string `json:"zone,omitempty" tf:"zone,omitempty"` } diff --git a/apis/network/v1beta1/zz_applicationgateway_types.go b/apis/network/v1beta1/zz_applicationgateway_types.go index 6c7236e35..6f1c6b8b5 100755 --- a/apis/network/v1beta1/zz_applicationgateway_types.go +++ b/apis/network/v1beta1/zz_applicationgateway_types.go @@ -217,63 +217,83 @@ type ApplicationGatewayObservation struct { type ApplicationGatewayParameters struct { // One or more authentication_certificate blocks as defined below. + // +kubebuilder:validation:Optional AuthenticationCertificate []AuthenticationCertificateParameters `json:"authenticationCertificate,omitempty" tf:"authentication_certificate,omitempty"` // A autoscale_configuration block as defined below. + // +kubebuilder:validation:Optional AutoscaleConfiguration []AutoscaleConfigurationParameters `json:"autoscaleConfiguration,omitempty" tf:"autoscale_configuration,omitempty"` // One or more backend_address_pool blocks as defined below. + // +kubebuilder:validation:Optional BackendAddressPool []BackendAddressPoolParameters `json:"backendAddressPool,omitempty" tf:"backend_address_pool,omitempty"` // One or more backend_http_settings blocks as defined below. + // +kubebuilder:validation:Optional BackendHTTPSettings []BackendHTTPSettingsParameters `json:"backendHttpSettings,omitempty" tf:"backend_http_settings,omitempty"` // One or more custom_error_configuration blocks as defined below. + // +kubebuilder:validation:Optional CustomErrorConfiguration []CustomErrorConfigurationParameters `json:"customErrorConfiguration,omitempty" tf:"custom_error_configuration,omitempty"` // Is HTTP2 enabled on the application gateway resource? Defaults to false. + // +kubebuilder:validation:Optional EnableHttp2 *bool `json:"enableHttp2,omitempty" tf:"enable_http2,omitempty"` // Is FIPS enabled on the Application Gateway? + // +kubebuilder:validation:Optional FipsEnabled *bool `json:"fipsEnabled,omitempty" tf:"fips_enabled,omitempty"` // The ID of the Web Application Firewall Policy. + // +kubebuilder:validation:Optional FirewallPolicyID *string `json:"firewallPolicyId,omitempty" tf:"firewall_policy_id,omitempty"` // Is the Firewall Policy associated with the Application Gateway? + // +kubebuilder:validation:Optional ForceFirewallPolicyAssociation *bool `json:"forceFirewallPolicyAssociation,omitempty" tf:"force_firewall_policy_association,omitempty"` // One or more frontend_ip_configuration blocks as defined below. + // +kubebuilder:validation:Optional FrontendIPConfiguration []FrontendIPConfigurationParameters `json:"frontendIpConfiguration,omitempty" tf:"frontend_ip_configuration,omitempty"` // One or more frontend_port blocks as defined below. + // +kubebuilder:validation:Optional FrontendPort []FrontendPortParameters `json:"frontendPort,omitempty" tf:"frontend_port,omitempty"` // One or more gateway_ip_configuration blocks as defined below. + // +kubebuilder:validation:Optional GatewayIPConfiguration []GatewayIPConfigurationParameters `json:"gatewayIpConfiguration,omitempty" tf:"gateway_ip_configuration,omitempty"` // A global block as defined below. + // +kubebuilder:validation:Optional Global []GlobalParameters `json:"global,omitempty" tf:"global,omitempty"` // One or more http_listener blocks as defined below. + // +kubebuilder:validation:Optional HTTPListener []HTTPListenerParameters `json:"httpListener,omitempty" tf:"http_listener,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // The Azure region where the Application Gateway should exist. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // One or more private_link_configuration blocks as defined below. + // +kubebuilder:validation:Optional PrivateLinkConfiguration []PrivateLinkConfigurationParameters `json:"privateLinkConfiguration,omitempty" tf:"private_link_configuration,omitempty"` // One or more probe blocks as defined below. + // +kubebuilder:validation:Optional Probe []ProbeParameters `json:"probe,omitempty" tf:"probe,omitempty"` // One or more redirect_configuration blocks as defined below. + // +kubebuilder:validation:Optional RedirectConfiguration []RedirectConfigurationParameters `json:"redirectConfiguration,omitempty" tf:"redirect_configuration,omitempty"` // One or more request_routing_rule blocks as defined below. + // +kubebuilder:validation:Optional RequestRoutingRule []RequestRoutingRuleParameters `json:"requestRoutingRule,omitempty" tf:"request_routing_rule,omitempty"` // The name of the resource group in which to the Application Gateway should exist. Changing this forces a new resource to be created. @@ -290,36 +310,47 @@ type ApplicationGatewayParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // One or more rewrite_rule_set blocks as defined below. Only valid for v2 SKUs. + // +kubebuilder:validation:Optional RewriteRuleSet []RewriteRuleSetParameters `json:"rewriteRuleSet,omitempty" tf:"rewrite_rule_set,omitempty"` // One or more ssl_certificate blocks as defined below. + // +kubebuilder:validation:Optional SSLCertificate []SSLCertificateParameters `json:"sslCertificate,omitempty" tf:"ssl_certificate,omitempty"` // a ssl_policy block as defined below. + // +kubebuilder:validation:Optional SSLPolicy []SSLPolicyParameters `json:"sslPolicy,omitempty" tf:"ssl_policy,omitempty"` // One or more ssl_profile blocks as defined below. + // +kubebuilder:validation:Optional SSLProfile []SSLProfileParameters `json:"sslProfile,omitempty" tf:"ssl_profile,omitempty"` // A sku block as defined below. + // +kubebuilder:validation:Optional Sku []SkuParameters `json:"sku,omitempty" tf:"sku,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // One or more trusted_client_certificate blocks as defined below. + // +kubebuilder:validation:Optional TrustedClientCertificate []TrustedClientCertificateParameters `json:"trustedClientCertificate,omitempty" tf:"trusted_client_certificate,omitempty"` // One or more trusted_root_certificate blocks as defined below. + // +kubebuilder:validation:Optional TrustedRootCertificate []TrustedRootCertificateParameters `json:"trustedRootCertificate,omitempty" tf:"trusted_root_certificate,omitempty"` // One or more url_path_map blocks as defined below. + // +kubebuilder:validation:Optional URLPathMap []URLPathMapParameters `json:"urlPathMap,omitempty" tf:"url_path_map,omitempty"` // A waf_configuration block as defined below. + // +kubebuilder:validation:Optional WafConfiguration []WafConfigurationParameters `json:"wafConfiguration,omitempty" tf:"waf_configuration,omitempty"` // Specifies a list of Availability Zones in which this Application Gateway should be located. Changing this forces a new Application Gateway to be created. + // +kubebuilder:validation:Optional Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } @@ -345,6 +376,7 @@ type AuthenticationCertificateParameters struct { DataSecretRef v1.SecretKeySelector `json:"dataSecretRef" tf:"-"` // The Name of the Authentication Certificate to use. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -369,9 +401,11 @@ type AutoscaleConfigurationObservation struct { type AutoscaleConfigurationParameters struct { // Maximum capacity for autoscaling. Accepted values are in the range 2 to 125. + // +kubebuilder:validation:Optional MaxCapacity *float64 `json:"maxCapacity,omitempty" tf:"max_capacity,omitempty"` // Minimum capacity for autoscaling. Accepted values are in the range 0 to 100. + // +kubebuilder:validation:Optional MinCapacity *float64 `json:"minCapacity,omitempty" tf:"min_capacity,omitempty"` } @@ -405,12 +439,15 @@ type BackendAddressPoolObservation struct { type BackendAddressPoolParameters struct { // A list of FQDN's which should be part of the Backend Address Pool. + // +kubebuilder:validation:Optional Fqdns []*string `json:"fqdns,omitempty" tf:"fqdns,omitempty"` // A list of IP Addresses which should be part of the Backend Address Pool. + // +kubebuilder:validation:Optional IPAddresses []*string `json:"ipAddresses,omitempty" tf:"ip_addresses,omitempty"` // The name of the Backend Address Pool. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -432,6 +469,7 @@ type BackendHTTPSettingsAuthenticationCertificateObservation struct { type BackendHTTPSettingsAuthenticationCertificateParameters struct { // The Name of the URL Path Map. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -528,42 +566,55 @@ type BackendHTTPSettingsObservation struct { type BackendHTTPSettingsParameters struct { // The name of the affinity cookie. + // +kubebuilder:validation:Optional AffinityCookieName *string `json:"affinityCookieName,omitempty" tf:"affinity_cookie_name,omitempty"` // One or more authentication_certificate blocks as defined below. + // +kubebuilder:validation:Optional AuthenticationCertificate []BackendHTTPSettingsAuthenticationCertificateParameters `json:"authenticationCertificate,omitempty" tf:"authentication_certificate,omitempty"` // A connection_draining block as defined below. + // +kubebuilder:validation:Optional ConnectionDraining []ConnectionDrainingParameters `json:"connectionDraining,omitempty" tf:"connection_draining,omitempty"` // Is Cookie-Based Affinity enabled? Possible values are Enabled and Disabled. + // +kubebuilder:validation:Optional CookieBasedAffinity *string `json:"cookieBasedAffinity,omitempty" tf:"cookie_based_affinity,omitempty"` // Host header to be sent to the backend servers. Cannot be set if pick_host_name_from_backend_address is set to true. + // +kubebuilder:validation:Optional HostName *string `json:"hostName,omitempty" tf:"host_name,omitempty"` // The name of the Backend HTTP Settings Collection. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Path which should be used as a prefix for all HTTP requests. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` // Whether host header should be picked from the host name of the backend server. Defaults to false. + // +kubebuilder:validation:Optional PickHostNameFromBackendAddress *bool `json:"pickHostNameFromBackendAddress,omitempty" tf:"pick_host_name_from_backend_address,omitempty"` // The port which should be used for this Backend HTTP Settings Collection. + // +kubebuilder:validation:Optional Port *float64 `json:"port,omitempty" tf:"port,omitempty"` // The name of an associated HTTP Probe. + // +kubebuilder:validation:Optional ProbeName *string `json:"probeName,omitempty" tf:"probe_name,omitempty"` // The Protocol which should be used. Possible values are Http and Https. + // +kubebuilder:validation:Optional Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` // The request timeout in seconds, which must be between 1 and 86400 seconds. Defaults to 30. + // +kubebuilder:validation:Optional RequestTimeout *float64 `json:"requestTimeout,omitempty" tf:"request_timeout,omitempty"` // A list of trusted_root_certificate names. + // +kubebuilder:validation:Optional TrustedRootCertificateNames []*string `json:"trustedRootCertificateNames,omitempty" tf:"trusted_root_certificate_names,omitempty"` } @@ -600,15 +651,19 @@ type ConditionObservation struct { type ConditionParameters struct { // Perform a case in-sensitive comparison. Defaults to false + // +kubebuilder:validation:Optional IgnoreCase *bool `json:"ignoreCase,omitempty" tf:"ignore_case,omitempty"` // Negate the result of the condition evaluation. Defaults to false + // +kubebuilder:validation:Optional Negate *bool `json:"negate,omitempty" tf:"negate,omitempty"` // The pattern, either fixed string or regular expression, that evaluates the truthfulness of the condition. + // +kubebuilder:validation:Optional Pattern *string `json:"pattern,omitempty" tf:"pattern,omitempty"` // The variable of the condition. + // +kubebuilder:validation:Optional Variable *string `json:"variable,omitempty" tf:"variable,omitempty"` } @@ -633,9 +688,11 @@ type ConnectionDrainingObservation struct { type ConnectionDrainingParameters struct { // The number of seconds connection draining is active. Acceptable values are from 1 second to 3600 seconds. + // +kubebuilder:validation:Optional DrainTimeoutSec *float64 `json:"drainTimeoutSec,omitempty" tf:"drain_timeout_sec,omitempty"` // Is the Web Application Firewall enabled? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` } @@ -663,9 +720,11 @@ type CustomErrorConfigurationObservation struct { type CustomErrorConfigurationParameters struct { // Error page URL of the application gateway customer error. + // +kubebuilder:validation:Optional CustomErrorPageURL *string `json:"customErrorPageUrl,omitempty" tf:"custom_error_page_url,omitempty"` // Status code of the application gateway customer error. Possible values are HttpStatus403 and HttpStatus502 + // +kubebuilder:validation:Optional StatusCode *string `json:"statusCode,omitempty" tf:"status_code,omitempty"` } @@ -690,9 +749,11 @@ type DisabledRuleGroupObservation struct { type DisabledRuleGroupParameters struct { // The rule group where specific rules should be disabled. Possible values are BadBots, crs_20_protocol_violations, crs_21_protocol_anomalies, crs_23_request_limits, crs_30_http_policy, crs_35_bad_robots, crs_40_generic_attacks, crs_41_sql_injection_attacks, crs_41_xss_attacks, crs_42_tight_security, crs_45_trojans, General, GoodBots, Known-CVEs, REQUEST-911-METHOD-ENFORCEMENT, REQUEST-913-SCANNER-DETECTION, REQUEST-920-PROTOCOL-ENFORCEMENT, REQUEST-921-PROTOCOL-ATTACK, REQUEST-930-APPLICATION-ATTACK-LFI, REQUEST-931-APPLICATION-ATTACK-RFI, REQUEST-932-APPLICATION-ATTACK-RCE, REQUEST-933-APPLICATION-ATTACK-PHP, REQUEST-941-APPLICATION-ATTACK-XSS, REQUEST-942-APPLICATION-ATTACK-SQLI, REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION, REQUEST-944-APPLICATION-ATTACK-JAVA and UnknownBots. + // +kubebuilder:validation:Optional RuleGroupName *string `json:"ruleGroupName,omitempty" tf:"rule_group_name,omitempty"` // A list of rules which should be disabled in that group. Disables all rules in the specified group if rules is not specified. + // +kubebuilder:validation:Optional Rules []*float64 `json:"rules,omitempty" tf:"rules,omitempty"` } @@ -723,12 +784,15 @@ type ExclusionObservation struct { type ExclusionParameters struct { // Match variable of the exclusion rule to exclude header, cookie or GET arguments. Possible values are RequestArgKeys, RequestArgNames, RequestArgValues, RequestCookieKeys, RequestCookieNames, RequestCookieValues, RequestHeaderKeys, RequestHeaderNames and RequestHeaderValues + // +kubebuilder:validation:Optional MatchVariable *string `json:"matchVariable,omitempty" tf:"match_variable,omitempty"` // String value which will be used for the filter operation. If empty will exclude all traffic on this match_variable + // +kubebuilder:validation:Optional Selector *string `json:"selector,omitempty" tf:"selector,omitempty"` // Operator which will be used to search in the variable content. Possible values are Contains, EndsWith, Equals, EqualsAny and StartsWith. If empty will exclude all traffic on this match_variable + // +kubebuilder:validation:Optional SelectorMatchOperator *string `json:"selectorMatchOperator,omitempty" tf:"selector_match_operator,omitempty"` } @@ -777,15 +841,19 @@ type FrontendIPConfigurationObservation struct { type FrontendIPConfigurationParameters struct { // The name of the Frontend IP Configuration. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Private IP Address to use for the Application Gateway. + // +kubebuilder:validation:Optional PrivateIPAddress *string `json:"privateIpAddress,omitempty" tf:"private_ip_address,omitempty"` // The Allocation Method for the Private IP Address. Possible values are Dynamic and Static. + // +kubebuilder:validation:Optional PrivateIPAddressAllocation *string `json:"privateIpAddressAllocation,omitempty" tf:"private_ip_address_allocation,omitempty"` // The name of the private link configuration to use for this frontend IP configuration. + // +kubebuilder:validation:Optional PrivateLinkConfigurationName *string `json:"privateLinkConfigurationName,omitempty" tf:"private_link_configuration_name,omitempty"` // The ID of a Public IP Address which the Application Gateway should use. The allocation method for the Public IP Address depends on the sku of this Application Gateway. Please refer to the Azure documentation for public IP addresses for details. @@ -841,9 +909,11 @@ type FrontendPortObservation struct { type FrontendPortParameters struct { // The name of the Frontend Port. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The port used for this Frontend Port. + // +kubebuilder:validation:Optional Port *float64 `json:"port,omitempty" tf:"port,omitempty"` } @@ -868,6 +938,7 @@ type GatewayIPConfigurationObservation struct { type GatewayIPConfigurationParameters struct { // The Name of this Gateway IP Configuration. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID of the Subnet which the Application Gateway should be connected to. @@ -906,9 +977,11 @@ type GlobalObservation struct { type GlobalParameters struct { // Whether Application Gateway's Request buffer is enabled. + // +kubebuilder:validation:Optional RequestBufferingEnabled *bool `json:"requestBufferingEnabled,omitempty" tf:"request_buffering_enabled,omitempty"` // Whether Application Gateway's Response buffer is enabled. + // +kubebuilder:validation:Optional ResponseBufferingEnabled *bool `json:"responseBufferingEnabled,omitempty" tf:"response_buffering_enabled,omitempty"` } @@ -936,9 +1009,11 @@ type HTTPListenerCustomErrorConfigurationObservation struct { type HTTPListenerCustomErrorConfigurationParameters struct { // Error page URL of the application gateway customer error. + // +kubebuilder:validation:Optional CustomErrorPageURL *string `json:"customErrorPageUrl,omitempty" tf:"custom_error_page_url,omitempty"` // A list of allowed status codes for this Health Probe. + // +kubebuilder:validation:Optional StatusCode *string `json:"statusCode,omitempty" tf:"status_code,omitempty"` } @@ -1032,36 +1107,47 @@ type HTTPListenerObservation struct { type HTTPListenerParameters struct { // One or more custom_error_configuration blocks as defined below. + // +kubebuilder:validation:Optional CustomErrorConfiguration []HTTPListenerCustomErrorConfigurationParameters `json:"customErrorConfiguration,omitempty" tf:"custom_error_configuration,omitempty"` // The ID of the Web Application Firewall Policy which should be used for this HTTP Listener. + // +kubebuilder:validation:Optional FirewallPolicyID *string `json:"firewallPolicyId,omitempty" tf:"firewall_policy_id,omitempty"` // The Name of the Frontend IP Configuration used for this HTTP Listener. + // +kubebuilder:validation:Optional FrontendIPConfigurationName *string `json:"frontendIpConfigurationName,omitempty" tf:"frontend_ip_configuration_name,omitempty"` // The Name of the Frontend Port use for this HTTP Listener. + // +kubebuilder:validation:Optional FrontendPortName *string `json:"frontendPortName,omitempty" tf:"frontend_port_name,omitempty"` // The Hostname which should be used for this HTTP Listener. Setting this value changes Listener Type to 'Multi site'. + // +kubebuilder:validation:Optional HostName *string `json:"hostName,omitempty" tf:"host_name,omitempty"` // A list of Hostname(s) should be used for this HTTP Listener. It allows special wildcard characters. + // +kubebuilder:validation:Optional HostNames []*string `json:"hostNames,omitempty" tf:"host_names,omitempty"` // The Name of the HTTP Listener. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Protocol to use for this HTTP Listener. Possible values are Http and Https. + // +kubebuilder:validation:Optional Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` // Should Server Name Indication be Required? Defaults to false. + // +kubebuilder:validation:Optional RequireSni *bool `json:"requireSni,omitempty" tf:"require_sni,omitempty"` // The name of the associated SSL Certificate which should be used for this HTTP Listener. + // +kubebuilder:validation:Optional SSLCertificateName *string `json:"sslCertificateName,omitempty" tf:"ssl_certificate_name,omitempty"` // The name of the associated SSL Profile which should be used for this HTTP Listener. + // +kubebuilder:validation:Optional SSLProfileName *string `json:"sslProfileName,omitempty" tf:"ssl_profile_name,omitempty"` } @@ -1101,15 +1187,19 @@ type IPConfigurationObservation struct { type IPConfigurationParameters struct { // The Name of the URL Path Map. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Is this the Primary IP Configuration? + // +kubebuilder:validation:Optional Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"` // The Static IP Address which should be used. + // +kubebuilder:validation:Optional PrivateIPAddress *string `json:"privateIpAddress,omitempty" tf:"private_ip_address,omitempty"` // The allocation method used for the Private IP Address. Possible values are Dynamic and Static. + // +kubebuilder:validation:Optional PrivateIPAddressAllocation *string `json:"privateIpAddressAllocation,omitempty" tf:"private_ip_address_allocation,omitempty"` // The ID of the subnet the private link configuration should connect to. @@ -1148,9 +1238,11 @@ type IdentityObservation struct { type IdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Application Gateway. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Application Gateway. Only possible value is UserAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -1175,9 +1267,11 @@ type MatchObservation struct { type MatchParameters struct { // A snippet from the Response Body which must be present in the Response. + // +kubebuilder:validation:Optional Body *string `json:"body,omitempty" tf:"body,omitempty"` // A list of allowed status codes for this Health Probe. + // +kubebuilder:validation:Optional StatusCode []*string `json:"statusCode,omitempty" tf:"status_code,omitempty"` } @@ -1247,24 +1341,31 @@ type PathRuleObservation struct { type PathRuleParameters struct { // The Name of the Backend Address Pool which should be used for this Routing Rule. Cannot be set if redirect_configuration_name is set. + // +kubebuilder:validation:Optional BackendAddressPoolName *string `json:"backendAddressPoolName,omitempty" tf:"backend_address_pool_name,omitempty"` // The Name of the Backend HTTP Settings Collection which should be used for this Routing Rule. Cannot be set if redirect_configuration_name is set. + // +kubebuilder:validation:Optional BackendHTTPSettingsName *string `json:"backendHttpSettingsName,omitempty" tf:"backend_http_settings_name,omitempty"` // The ID of the Web Application Firewall Policy which should be used as a HTTP Listener. + // +kubebuilder:validation:Optional FirewallPolicyID *string `json:"firewallPolicyId,omitempty" tf:"firewall_policy_id,omitempty"` // The Name of the URL Path Map. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A list of Paths used in this Path Rule. + // +kubebuilder:validation:Optional Paths []*string `json:"paths,omitempty" tf:"paths,omitempty"` // The Name of the Redirect Configuration which should be used for this Routing Rule. Cannot be set if either backend_address_pool_name or backend_http_settings_name is set. + // +kubebuilder:validation:Optional RedirectConfigurationName *string `json:"redirectConfigurationName,omitempty" tf:"redirect_configuration_name,omitempty"` // The Name of the Rewrite Rule Set which should be used for this Routing Rule. Only valid for v2 SKUs. + // +kubebuilder:validation:Optional RewriteRuleSetName *string `json:"rewriteRuleSetName,omitempty" tf:"rewrite_rule_set_name,omitempty"` } @@ -1307,9 +1408,11 @@ type PrivateLinkConfigurationObservation struct { type PrivateLinkConfigurationParameters struct { // One or more ip_configuration blocks as defined below. + // +kubebuilder:validation:Optional IPConfiguration []IPConfigurationParameters `json:"ipConfiguration,omitempty" tf:"ip_configuration,omitempty"` // The name of the private link configuration. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -1391,36 +1494,47 @@ type ProbeObservation struct { type ProbeParameters struct { // The Hostname used for this Probe. If the Application Gateway is configured for a single site, by default the Host name should be specified as 127.0.0.1, unless otherwise configured in custom probe. Cannot be set if pick_host_name_from_backend_http_settings is set to true. + // +kubebuilder:validation:Optional Host *string `json:"host,omitempty" tf:"host,omitempty"` // The Interval between two consecutive probes in seconds. Possible values range from 1 second to a maximum of 86,400 seconds. + // +kubebuilder:validation:Optional Interval *float64 `json:"interval,omitempty" tf:"interval,omitempty"` // A match block as defined above. + // +kubebuilder:validation:Optional Match []MatchParameters `json:"match,omitempty" tf:"match,omitempty"` // The minimum number of servers that are always marked as healthy. Defaults to 0. + // +kubebuilder:validation:Optional MinimumServers *float64 `json:"minimumServers,omitempty" tf:"minimum_servers,omitempty"` // The Name of the Probe. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Path used for this Probe. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` // Whether the host header should be picked from the backend HTTP settings. Defaults to false. + // +kubebuilder:validation:Optional PickHostNameFromBackendHTTPSettings *bool `json:"pickHostNameFromBackendHttpSettings,omitempty" tf:"pick_host_name_from_backend_http_settings,omitempty"` // Custom port which will be used for probing the backend servers. The valid value ranges from 1 to 65535. In case not set, port from HTTP settings will be used. This property is valid for Standard_v2 and WAF_v2 only. + // +kubebuilder:validation:Optional Port *float64 `json:"port,omitempty" tf:"port,omitempty"` // The Protocol used for this Probe. Possible values are Http and Https. + // +kubebuilder:validation:Optional Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` // The Timeout used for this Probe, which indicates when a probe becomes unhealthy. Possible values range from 1 second to a maximum of 86,400 seconds. + // +kubebuilder:validation:Optional Timeout *float64 `json:"timeout,omitempty" tf:"timeout,omitempty"` // The Unhealthy Threshold for this Probe, which indicates the amount of retries which should be attempted before a node is deemed unhealthy. Possible values are from 1 to 20. + // +kubebuilder:validation:Optional UnhealthyThreshold *float64 `json:"unhealthyThreshold,omitempty" tf:"unhealthy_threshold,omitempty"` } @@ -1475,21 +1589,27 @@ type RedirectConfigurationObservation struct { type RedirectConfigurationParameters struct { // Whether or not to include the path in the redirected Url. Defaults to false + // +kubebuilder:validation:Optional IncludePath *bool `json:"includePath,omitempty" tf:"include_path,omitempty"` // Whether or not to include the query string in the redirected Url. Default to false + // +kubebuilder:validation:Optional IncludeQueryString *bool `json:"includeQueryString,omitempty" tf:"include_query_string,omitempty"` // Unique name of the redirect configuration block + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The type of redirect. Possible values are Permanent, Temporary, Found and SeeOther + // +kubebuilder:validation:Optional RedirectType *string `json:"redirectType,omitempty" tf:"redirect_type,omitempty"` // The name of the listener to redirect to. Cannot be set if target_url is set. + // +kubebuilder:validation:Optional TargetListenerName *string `json:"targetListenerName,omitempty" tf:"target_listener_name,omitempty"` // The Url to redirect the request to. Cannot be set if target_listener_name is set. + // +kubebuilder:validation:Optional TargetURL *string `json:"targetUrl,omitempty" tf:"target_url,omitempty"` } @@ -1514,9 +1634,11 @@ type RequestHeaderConfigurationObservation struct { type RequestHeaderConfigurationParameters struct { // Header name of the header configuration. + // +kubebuilder:validation:Optional HeaderName *string `json:"headerName,omitempty" tf:"header_name,omitempty"` // Header value of the header configuration. To delete a response header set this property to an empty string. + // +kubebuilder:validation:Optional HeaderValue *string `json:"headerValue,omitempty" tf:"header_value,omitempty"` } @@ -1604,30 +1726,39 @@ type RequestRoutingRuleObservation struct { type RequestRoutingRuleParameters struct { // The Name of the Backend Address Pool which should be used for this Routing Rule. Cannot be set if redirect_configuration_name is set. + // +kubebuilder:validation:Optional BackendAddressPoolName *string `json:"backendAddressPoolName,omitempty" tf:"backend_address_pool_name,omitempty"` // The Name of the Backend HTTP Settings Collection which should be used for this Routing Rule. Cannot be set if redirect_configuration_name is set. + // +kubebuilder:validation:Optional BackendHTTPSettingsName *string `json:"backendHttpSettingsName,omitempty" tf:"backend_http_settings_name,omitempty"` // The Name of the HTTP Listener which should be used for this Routing Rule. + // +kubebuilder:validation:Optional HTTPListenerName *string `json:"httpListenerName,omitempty" tf:"http_listener_name,omitempty"` // The Name of this Request Routing Rule. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Rule evaluation order can be dictated by specifying an integer value from 1 to 20000 with 1 being the highest priority and 20000 being the lowest priority. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // The Name of the Redirect Configuration which should be used for this Routing Rule. Cannot be set if either backend_address_pool_name or backend_http_settings_name is set. + // +kubebuilder:validation:Optional RedirectConfigurationName *string `json:"redirectConfigurationName,omitempty" tf:"redirect_configuration_name,omitempty"` // The Name of the Rewrite Rule Set which should be used for this Routing Rule. Only valid for v2 SKUs. + // +kubebuilder:validation:Optional RewriteRuleSetName *string `json:"rewriteRuleSetName,omitempty" tf:"rewrite_rule_set_name,omitempty"` // The Type of Routing that should be used for this Rule. Possible values are Basic and PathBasedRouting. + // +kubebuilder:validation:Optional RuleType *string `json:"ruleType,omitempty" tf:"rule_type,omitempty"` // The Name of the URL Path Map which should be associated with this Routing Rule. + // +kubebuilder:validation:Optional URLPathMapName *string `json:"urlPathMapName,omitempty" tf:"url_path_map_name,omitempty"` } @@ -1652,9 +1783,11 @@ type ResponseHeaderConfigurationObservation struct { type ResponseHeaderConfigurationParameters struct { // Header name of the header configuration. + // +kubebuilder:validation:Optional HeaderName *string `json:"headerName,omitempty" tf:"header_name,omitempty"` // Header value of the header configuration. To delete a response header set this property to an empty string. + // +kubebuilder:validation:Optional HeaderValue *string `json:"headerValue,omitempty" tf:"header_value,omitempty"` } @@ -1703,21 +1836,27 @@ type RewriteRuleObservation struct { type RewriteRuleParameters struct { // One or more condition blocks as defined above. + // +kubebuilder:validation:Optional Condition []ConditionParameters `json:"condition,omitempty" tf:"condition,omitempty"` // The Name of the URL Path Map. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // One or more request_header_configuration blocks as defined above. + // +kubebuilder:validation:Optional RequestHeaderConfiguration []RequestHeaderConfigurationParameters `json:"requestHeaderConfiguration,omitempty" tf:"request_header_configuration,omitempty"` // One or more response_header_configuration blocks as defined above. + // +kubebuilder:validation:Optional ResponseHeaderConfiguration []ResponseHeaderConfigurationParameters `json:"responseHeaderConfiguration,omitempty" tf:"response_header_configuration,omitempty"` // Rule sequence of the rewrite rule that determines the order of execution in a set. + // +kubebuilder:validation:Optional RuleSequence *float64 `json:"ruleSequence,omitempty" tf:"rule_sequence,omitempty"` // One url block as defined below + // +kubebuilder:validation:Optional URL []URLParameters `json:"url,omitempty" tf:"url,omitempty"` } @@ -1745,9 +1884,11 @@ type RewriteRuleSetObservation struct { type RewriteRuleSetParameters struct { // Unique name of the rewrite rule set block + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // One or more rewrite_rule blocks as defined above. + // +kubebuilder:validation:Optional RewriteRule []RewriteRuleParameters `json:"rewriteRule,omitempty" tf:"rewrite_rule,omitempty"` } @@ -1782,9 +1923,11 @@ type SSLCertificateParameters struct { DataSecretRef *v1.SecretKeySelector `json:"dataSecretRef,omitempty" tf:"-"` // Secret Id of (base-64 encoded unencrypted pfx) Secret or Certificate object stored in Azure KeyVault. You need to enable soft delete for keyvault to use this feature. Required if data is not set. + // +kubebuilder:validation:Optional KeyVaultSecretID *string `json:"keyVaultSecretId,omitempty" tf:"key_vault_secret_id,omitempty"` // The Name of the SSL certificate that is unique within this Application Gateway + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Password for the pfx file specified in data. Required if data is set. @@ -1831,18 +1974,23 @@ type SSLPolicyObservation struct { type SSLPolicyParameters struct { // A List of accepted cipher suites. Possible values are: TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA, TLS_DHE_DSS_WITH_AES_128_CBC_SHA, TLS_DHE_DSS_WITH_AES_128_CBC_SHA256, TLS_DHE_DSS_WITH_AES_256_CBC_SHA, TLS_DHE_DSS_WITH_AES_256_CBC_SHA256, TLS_DHE_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_128_GCM_SHA256, TLS_DHE_RSA_WITH_AES_256_CBC_SHA, TLS_DHE_RSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384, TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384, TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384, TLS_RSA_WITH_3DES_EDE_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_256_CBC_SHA256 and TLS_RSA_WITH_AES_256_GCM_SHA384. + // +kubebuilder:validation:Optional CipherSuites []*string `json:"cipherSuites,omitempty" tf:"cipher_suites,omitempty"` // A list of SSL Protocols which should be disabled on this Application Gateway. Possible values are TLSv1_0, TLSv1_1, TLSv1_2 and TLSv1_3. + // +kubebuilder:validation:Optional DisabledProtocols []*string `json:"disabledProtocols,omitempty" tf:"disabled_protocols,omitempty"` // The minimal TLS version. Possible values are TLSv1_0, TLSv1_1, TLSv1_2 and TLSv1_3. + // +kubebuilder:validation:Optional MinProtocolVersion *string `json:"minProtocolVersion,omitempty" tf:"min_protocol_version,omitempty"` // The Name of the Policy e.g AppGwSslPolicy20170401S. Required if policy_type is set to Predefined. Possible values can change over time and are published here https://docs.microsoft.com/azure/application-gateway/application-gateway-ssl-policy-overview. Not compatible with disabled_protocols. + // +kubebuilder:validation:Optional PolicyName *string `json:"policyName,omitempty" tf:"policy_name,omitempty"` // The Type of the Policy. Possible values are Predefined, Custom and CustomV2. + // +kubebuilder:validation:Optional PolicyType *string `json:"policyType,omitempty" tf:"policy_type,omitempty"` } @@ -1882,15 +2030,19 @@ type SSLProfileObservation struct { type SSLProfileParameters struct { // The name of the SSL Profile that is unique within this Application Gateway. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // a ssl_policy block as defined below. + // +kubebuilder:validation:Optional SSLPolicy []SSLProfileSSLPolicyParameters `json:"sslPolicy,omitempty" tf:"ssl_policy,omitempty"` // The name of the Trusted Client Certificate that will be used to authenticate requests from clients. + // +kubebuilder:validation:Optional TrustedClientCertificateNames []*string `json:"trustedClientCertificateNames,omitempty" tf:"trusted_client_certificate_names,omitempty"` // Should client certificate issuer DN be verified? Defaults to false. + // +kubebuilder:validation:Optional VerifyClientCertIssuerDn *bool `json:"verifyClientCertIssuerDn,omitempty" tf:"verify_client_cert_issuer_dn,omitempty"` } @@ -1933,18 +2085,23 @@ type SSLProfileSSLPolicyObservation struct { type SSLProfileSSLPolicyParameters struct { // A List of accepted cipher suites. Possible values are: TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA, TLS_DHE_DSS_WITH_AES_128_CBC_SHA, TLS_DHE_DSS_WITH_AES_128_CBC_SHA256, TLS_DHE_DSS_WITH_AES_256_CBC_SHA, TLS_DHE_DSS_WITH_AES_256_CBC_SHA256, TLS_DHE_RSA_WITH_AES_128_CBC_SHA, TLS_DHE_RSA_WITH_AES_128_GCM_SHA256, TLS_DHE_RSA_WITH_AES_256_CBC_SHA, TLS_DHE_RSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384, TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256, TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA, TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384, TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384, TLS_RSA_WITH_3DES_EDE_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA256, TLS_RSA_WITH_AES_128_GCM_SHA256, TLS_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_256_CBC_SHA256 and TLS_RSA_WITH_AES_256_GCM_SHA384. + // +kubebuilder:validation:Optional CipherSuites []*string `json:"cipherSuites,omitempty" tf:"cipher_suites,omitempty"` // A list of SSL Protocols which should be disabled on this Application Gateway. Possible values are TLSv1_0, TLSv1_1, TLSv1_2 and TLSv1_3. + // +kubebuilder:validation:Optional DisabledProtocols []*string `json:"disabledProtocols,omitempty" tf:"disabled_protocols,omitempty"` // The minimal TLS version. Possible values are TLSv1_0, TLSv1_1, TLSv1_2 and TLSv1_3. + // +kubebuilder:validation:Optional MinProtocolVersion *string `json:"minProtocolVersion,omitempty" tf:"min_protocol_version,omitempty"` // The Name of the Policy e.g AppGwSslPolicy20170401S. Required if policy_type is set to Predefined. Possible values can change over time and are published here https://docs.microsoft.com/azure/application-gateway/application-gateway-ssl-policy-overview. Not compatible with disabled_protocols. + // +kubebuilder:validation:Optional PolicyName *string `json:"policyName,omitempty" tf:"policy_name,omitempty"` // The Type of the Policy. Possible values are Predefined, Custom and CustomV2. + // +kubebuilder:validation:Optional PolicyType *string `json:"policyType,omitempty" tf:"policy_type,omitempty"` } @@ -1975,12 +2132,15 @@ type SkuObservation struct { type SkuParameters struct { // The Capacity of the SKU to use for this Application Gateway. When using a V1 SKU this value must be between 1 and 32, and 1 to 125 for a V2 SKU. This property is optional if autoscale_configuration is set. + // +kubebuilder:validation:Optional Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` // The Name of the SKU to use for this Application Gateway. Possible values are Standard_Small, Standard_Medium, Standard_Large, Standard_v2, WAF_Medium, WAF_Large, and WAF_v2. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Tier of the SKU to use for this Application Gateway. Possible values are Standard, Standard_v2, WAF and WAF_v2. + // +kubebuilder:validation:Optional Tier *string `json:"tier,omitempty" tf:"tier,omitempty"` } @@ -2006,6 +2166,7 @@ type TrustedClientCertificateParameters struct { DataSecretRef v1.SecretKeySelector `json:"dataSecretRef" tf:"-"` // The name of the Trusted Client Certificate that is unique within this Application Gateway. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -2037,9 +2198,11 @@ type TrustedRootCertificateParameters struct { DataSecretRef *v1.SecretKeySelector `json:"dataSecretRef,omitempty" tf:"-"` // The Secret ID of (base-64 encoded unencrypted pfx) Secret or Certificate object stored in Azure KeyVault. You need to enable soft delete for the Key Vault to use this feature. Required if data is not set. + // +kubebuilder:validation:Optional KeyVaultSecretID *string `json:"keyVaultSecretId,omitempty" tf:"key_vault_secret_id,omitempty"` // The Name of the Trusted Root Certificate to use. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -2076,15 +2239,19 @@ type URLObservation struct { type URLParameters struct { // The components used to rewrite the URL. Possible values are path_only and query_string_only to limit the rewrite to the URL Path or URL Query String only. + // +kubebuilder:validation:Optional Components *string `json:"components,omitempty" tf:"components,omitempty"` // The URL path to rewrite. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` // The query string to rewrite. + // +kubebuilder:validation:Optional QueryString *string `json:"queryString,omitempty" tf:"query_string,omitempty"` // Whether the URL path map should be reevaluated after this rewrite has been applied. More info on rewrite configutation + // +kubebuilder:validation:Optional Reroute *bool `json:"reroute,omitempty" tf:"reroute,omitempty"` } @@ -2148,21 +2315,27 @@ type URLPathMapObservation struct { type URLPathMapParameters struct { // The Name of the Default Backend Address Pool which should be used for this URL Path Map. Cannot be set if default_redirect_configuration_name is set. + // +kubebuilder:validation:Optional DefaultBackendAddressPoolName *string `json:"defaultBackendAddressPoolName,omitempty" tf:"default_backend_address_pool_name,omitempty"` // The Name of the Default Backend HTTP Settings Collection which should be used for this URL Path Map. Cannot be set if default_redirect_configuration_name is set. + // +kubebuilder:validation:Optional DefaultBackendHTTPSettingsName *string `json:"defaultBackendHttpSettingsName,omitempty" tf:"default_backend_http_settings_name,omitempty"` // The Name of the Default Redirect Configuration which should be used for this URL Path Map. Cannot be set if either default_backend_address_pool_name or default_backend_http_settings_name is set. + // +kubebuilder:validation:Optional DefaultRedirectConfigurationName *string `json:"defaultRedirectConfigurationName,omitempty" tf:"default_redirect_configuration_name,omitempty"` // The Name of the Default Rewrite Rule Set which should be used for this URL Path Map. Only valid for v2 SKUs. + // +kubebuilder:validation:Optional DefaultRewriteRuleSetName *string `json:"defaultRewriteRuleSetName,omitempty" tf:"default_rewrite_rule_set_name,omitempty"` // The Name of the URL Path Map. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // One or more path_rule blocks as defined above. + // +kubebuilder:validation:Optional PathRule []PathRuleParameters `json:"pathRule,omitempty" tf:"path_rule,omitempty"` } @@ -2229,30 +2402,39 @@ type WafConfigurationObservation struct { type WafConfigurationParameters struct { // one or more disabled_rule_group blocks as defined below. + // +kubebuilder:validation:Optional DisabledRuleGroup []DisabledRuleGroupParameters `json:"disabledRuleGroup,omitempty" tf:"disabled_rule_group,omitempty"` // Is the Web Application Firewall enabled? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // one or more exclusion blocks as defined below. + // +kubebuilder:validation:Optional Exclusion []ExclusionParameters `json:"exclusion,omitempty" tf:"exclusion,omitempty"` // The File Upload Limit in MB. Accepted values are in the range 1MB to 750MB for the WAF_v2 SKU, and 1MB to 500MB for all other SKUs. Defaults to 100MB. + // +kubebuilder:validation:Optional FileUploadLimitMb *float64 `json:"fileUploadLimitMb,omitempty" tf:"file_upload_limit_mb,omitempty"` // The Web Application Firewall Mode. Possible values are Detection and Prevention. + // +kubebuilder:validation:Optional FirewallMode *string `json:"firewallMode,omitempty" tf:"firewall_mode,omitempty"` // The Maximum Request Body Size in KB. Accepted values are in the range 1KB to 128KB. Defaults to 128KB. + // +kubebuilder:validation:Optional MaxRequestBodySizeKb *float64 `json:"maxRequestBodySizeKb,omitempty" tf:"max_request_body_size_kb,omitempty"` // Is Request Body Inspection enabled? Defaults to true. + // +kubebuilder:validation:Optional RequestBodyCheck *bool `json:"requestBodyCheck,omitempty" tf:"request_body_check,omitempty"` // The Type of the Rule Set used for this Web Application Firewall. Possible values are OWASP and Microsoft_BotManagerRuleSet. + // +kubebuilder:validation:Optional RuleSetType *string `json:"ruleSetType,omitempty" tf:"rule_set_type,omitempty"` // The Version of the Rule Set used for this Web Application Firewall. Possible values are 0.1, 1.0, 2.2.9, 3.0, 3.1 and 3.2. + // +kubebuilder:validation:Optional RuleSetVersion *string `json:"ruleSetVersion,omitempty" tf:"rule_set_version,omitempty"` } diff --git a/apis/network/v1beta1/zz_applicationsecuritygroup_types.go b/apis/network/v1beta1/zz_applicationsecuritygroup_types.go index d98291525..390dbb415 100755 --- a/apis/network/v1beta1/zz_applicationsecuritygroup_types.go +++ b/apis/network/v1beta1/zz_applicationsecuritygroup_types.go @@ -40,6 +40,7 @@ type ApplicationSecurityGroupObservation struct { type ApplicationSecurityGroupParameters struct { // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the resource group in which to create the Application Security Group. Changing this forces a new resource to be created. @@ -56,6 +57,7 @@ type ApplicationSecurityGroupParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/network/v1beta1/zz_connectionmonitor_types.go b/apis/network/v1beta1/zz_connectionmonitor_types.go index 5a5ea7a1d..6d8ee0594 100755 --- a/apis/network/v1beta1/zz_connectionmonitor_types.go +++ b/apis/network/v1beta1/zz_connectionmonitor_types.go @@ -70,9 +70,11 @@ type ConnectionMonitorObservation struct { type ConnectionMonitorParameters struct { // A endpoint block as defined below. + // +kubebuilder:validation:Optional Endpoint []EndpointParameters `json:"endpoint,omitempty" tf:"endpoint,omitempty"` // The Azure Region where the Network Connection Monitor should exist. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The ID of the Network Watcher. Changing this forces a new resource to be created. @@ -90,18 +92,23 @@ type ConnectionMonitorParameters struct { NetworkWatcherIDSelector *v1.Selector `json:"networkWatcherIdSelector,omitempty" tf:"-"` // The description of the Network Connection Monitor. + // +kubebuilder:validation:Optional Notes *string `json:"notes,omitempty" tf:"notes,omitempty"` // A list of IDs of the Log Analytics Workspace which will accept the output from the Network Connection Monitor. + // +kubebuilder:validation:Optional OutputWorkspaceResourceIds []*string `json:"outputWorkspaceResourceIds,omitempty" tf:"output_workspace_resource_ids,omitempty"` // A mapping of tags which should be assigned to the Network Connection Monitor. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // A test_configuration block as defined below. + // +kubebuilder:validation:Optional TestConfiguration []TestConfigurationParameters `json:"testConfiguration,omitempty" tf:"test_configuration,omitempty"` // A test_group block as defined below. + // +kubebuilder:validation:Optional TestGroup []TestGroupParameters `json:"testGroup,omitempty" tf:"test_group,omitempty"` } @@ -162,27 +169,35 @@ type EndpointObservation struct { type EndpointParameters struct { // The IP address or domain name of the Network Connection Monitor endpoint. + // +kubebuilder:validation:Optional Address *string `json:"address,omitempty" tf:"address,omitempty"` // The test coverage for the Network Connection Monitor endpoint. Possible values are AboveAverage, Average, BelowAverage, Default, Full and Low. + // +kubebuilder:validation:Optional CoverageLevel *string `json:"coverageLevel,omitempty" tf:"coverage_level,omitempty"` // A list of IPv4/IPv6 subnet masks or IPv4/IPv6 IP addresses to be excluded to the Network Connection Monitor endpoint. + // +kubebuilder:validation:Optional ExcludedIPAddresses []*string `json:"excludedIpAddresses,omitempty" tf:"excluded_ip_addresses,omitempty"` // A filter block as defined below. + // +kubebuilder:validation:Optional Filter []FilterParameters `json:"filter,omitempty" tf:"filter,omitempty"` // A list of IPv4/IPv6 subnet masks or IPv4/IPv6 IP addresses to be included to the Network Connection Monitor endpoint. + // +kubebuilder:validation:Optional IncludedIPAddresses []*string `json:"includedIpAddresses,omitempty" tf:"included_ip_addresses,omitempty"` // The name of the endpoint for the Network Connection Monitor . + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The resource ID which is used as the endpoint by the Network Connection Monitor. + // +kubebuilder:validation:Optional TargetResourceID *string `json:"targetResourceId,omitempty" tf:"target_resource_id,omitempty"` // The endpoint type of the Network Connection Monitor. Possible values are AzureSubnet, AzureVM, AzureVNet, ExternalAddress, MMAWorkspaceMachine and MMAWorkspaceNetwork. + // +kubebuilder:validation:Optional TargetResourceType *string `json:"targetResourceType,omitempty" tf:"target_resource_type,omitempty"` } @@ -207,9 +222,11 @@ type FilterObservation struct { type FilterParameters struct { // A item block as defined below. + // +kubebuilder:validation:Optional Item []ItemParameters `json:"item,omitempty" tf:"item,omitempty"` // The type of items included in the filter. Possible values are AgentAddress. Defaults to AgentAddress. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -258,21 +275,27 @@ type HTTPConfigurationObservation struct { type HTTPConfigurationParameters struct { // The HTTP method for the HTTP request. Possible values are Get and Post. Defaults to Get. + // +kubebuilder:validation:Optional Method *string `json:"method,omitempty" tf:"method,omitempty"` // The path component of the URI. It only accepts the absolute path. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` // The port for the TCP connection. + // +kubebuilder:validation:Optional Port *float64 `json:"port,omitempty" tf:"port,omitempty"` // Should HTTPS be preferred over HTTP in cases where the choice is not explicit? Defaults to false. + // +kubebuilder:validation:Optional PreferHTTPS *bool `json:"preferHttps,omitempty" tf:"prefer_https,omitempty"` // A request_header block as defined below. + // +kubebuilder:validation:Optional RequestHeader []HTTPConfigurationRequestHeaderParameters `json:"requestHeader,omitempty" tf:"request_header,omitempty"` // The HTTP status codes to consider successful. For instance, 2xx, 301-304 and 418. + // +kubebuilder:validation:Optional ValidStatusCodeRanges []*string `json:"validStatusCodeRanges,omitempty" tf:"valid_status_code_ranges,omitempty"` } @@ -297,9 +320,11 @@ type HTTPConfigurationRequestHeaderObservation struct { type HTTPConfigurationRequestHeaderParameters struct { // The name of the test group for the Network Connection Monitor. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The value of the HTTP header. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -318,6 +343,7 @@ type IcmpConfigurationObservation struct { type IcmpConfigurationParameters struct { // Should path evaluation with trace route be enabled? Defaults to true. + // +kubebuilder:validation:Optional TraceRouteEnabled *bool `json:"traceRouteEnabled,omitempty" tf:"trace_route_enabled,omitempty"` } @@ -342,9 +368,11 @@ type ItemObservation struct { type ItemParameters struct { // The address of the filter item. + // +kubebuilder:validation:Optional Address *string `json:"address,omitempty" tf:"address,omitempty"` // The type of items included in the filter. Possible values are AgentAddress. Defaults to AgentAddress. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -369,9 +397,11 @@ type SuccessThresholdObservation struct { type SuccessThresholdParameters struct { // The maximum percentage of failed checks permitted for a test to be successful. + // +kubebuilder:validation:Optional ChecksFailedPercent *float64 `json:"checksFailedPercent,omitempty" tf:"checks_failed_percent,omitempty"` // The maximum round-trip time in milliseconds permitted for a test to be successful. + // +kubebuilder:validation:Optional RoundTripTimeMS *float64 `json:"roundTripTimeMs,omitempty" tf:"round_trip_time_ms,omitempty"` } @@ -402,12 +432,15 @@ type TCPConfigurationObservation struct { type TCPConfigurationParameters struct { // The destination port behavior for the TCP connection. Possible values are None and ListenIfAvailable. + // +kubebuilder:validation:Optional DestinationPortBehavior *string `json:"destinationPortBehavior,omitempty" tf:"destination_port_behavior,omitempty"` // The port for the TCP connection. + // +kubebuilder:validation:Optional Port *float64 `json:"port,omitempty" tf:"port,omitempty"` // Should path evaluation with trace route be enabled? Defaults to true. + // +kubebuilder:validation:Optional TraceRouteEnabled *bool `json:"traceRouteEnabled,omitempty" tf:"trace_route_enabled,omitempty"` } @@ -468,27 +501,35 @@ type TestConfigurationObservation struct { type TestConfigurationParameters struct { // A http_configuration block as defined below. + // +kubebuilder:validation:Optional HTTPConfiguration []HTTPConfigurationParameters `json:"httpConfiguration,omitempty" tf:"http_configuration,omitempty"` // A icmp_configuration block as defined below. + // +kubebuilder:validation:Optional IcmpConfiguration []IcmpConfigurationParameters `json:"icmpConfiguration,omitempty" tf:"icmp_configuration,omitempty"` // The name of test configuration for the Network Connection Monitor. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The preferred IP version which is used in the test evaluation. Possible values are IPv4 and IPv6. + // +kubebuilder:validation:Optional PreferredIPVersion *string `json:"preferredIpVersion,omitempty" tf:"preferred_ip_version,omitempty"` // The protocol used to evaluate tests. Possible values are Tcp, Http and Icmp. + // +kubebuilder:validation:Optional Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` // A success_threshold block as defined below. + // +kubebuilder:validation:Optional SuccessThreshold []SuccessThresholdParameters `json:"successThreshold,omitempty" tf:"success_threshold,omitempty"` // A tcp_configuration block as defined below. + // +kubebuilder:validation:Optional TCPConfiguration []TCPConfigurationParameters `json:"tcpConfiguration,omitempty" tf:"tcp_configuration,omitempty"` // The time interval in seconds at which the test evaluation will happen. Defaults to 60. + // +kubebuilder:validation:Optional TestFrequencyInSeconds *float64 `json:"testFrequencyInSeconds,omitempty" tf:"test_frequency_in_seconds,omitempty"` } @@ -531,18 +572,23 @@ type TestGroupObservation struct { type TestGroupParameters struct { // A list of destination endpoint names. + // +kubebuilder:validation:Optional DestinationEndpoints []*string `json:"destinationEndpoints,omitempty" tf:"destination_endpoints,omitempty"` // Should the test group be enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The name of the test group for the Network Connection Monitor. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A list of source endpoint names. + // +kubebuilder:validation:Optional SourceEndpoints []*string `json:"sourceEndpoints,omitempty" tf:"source_endpoints,omitempty"` // A list of test configuration names. + // +kubebuilder:validation:Optional TestConfigurationNames []*string `json:"testConfigurationNames,omitempty" tf:"test_configuration_names,omitempty"` } diff --git a/apis/network/v1beta1/zz_ddosprotectionplan_types.go b/apis/network/v1beta1/zz_ddosprotectionplan_types.go index 0744a2f40..0709da56c 100755 --- a/apis/network/v1beta1/zz_ddosprotectionplan_types.go +++ b/apis/network/v1beta1/zz_ddosprotectionplan_types.go @@ -43,6 +43,7 @@ type DDoSProtectionPlanObservation struct { type DDoSProtectionPlanParameters struct { // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the resource group in which to create the resource. Changing this forces a new resource to be created. @@ -59,6 +60,7 @@ type DDoSProtectionPlanParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/network/v1beta1/zz_dnsaaaarecord_types.go b/apis/network/v1beta1/zz_dnsaaaarecord_types.go index 1cde9ddd8..877f9d160 100755 --- a/apis/network/v1beta1/zz_dnsaaaarecord_types.go +++ b/apis/network/v1beta1/zz_dnsaaaarecord_types.go @@ -55,6 +55,7 @@ type DNSAAAARecordObservation struct { type DNSAAAARecordParameters struct { // List of IPv6 Addresses. Conflicts with target_resource_id. + // +kubebuilder:validation:Optional Records []*string `json:"records,omitempty" tf:"records,omitempty"` // Specifies the resource group where the DNS Zone (parent resource) exists. Changing this forces a new resource to be created. @@ -71,9 +72,11 @@ type DNSAAAARecordParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The Time To Live (TTL) of the DNS record in seconds. + // +kubebuilder:validation:Optional TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The Azure resource id of the target object. Conflicts with records. diff --git a/apis/network/v1beta1/zz_dnsarecord_types.go b/apis/network/v1beta1/zz_dnsarecord_types.go index c2894298d..b151279d6 100755 --- a/apis/network/v1beta1/zz_dnsarecord_types.go +++ b/apis/network/v1beta1/zz_dnsarecord_types.go @@ -55,6 +55,7 @@ type DNSARecordObservation struct { type DNSARecordParameters struct { // List of IPv4 Addresses. Conflicts with target_resource_id. + // +kubebuilder:validation:Optional Records []*string `json:"records,omitempty" tf:"records,omitempty"` // Specifies the resource group where the DNS Zone (parent resource) exists. Changing this forces a new resource to be created. @@ -71,9 +72,11 @@ type DNSARecordParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The Time To Live (TTL) of the DNS record in seconds. + // +kubebuilder:validation:Optional TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The Azure resource id of the target object. Conflicts with records. diff --git a/apis/network/v1beta1/zz_dnscaarecord_types.go b/apis/network/v1beta1/zz_dnscaarecord_types.go index c408bd4cc..94658829d 100755 --- a/apis/network/v1beta1/zz_dnscaarecord_types.go +++ b/apis/network/v1beta1/zz_dnscaarecord_types.go @@ -52,6 +52,7 @@ type DNSCAARecordObservation struct { type DNSCAARecordParameters struct { // A list of values that make up the CAA record. Each record block supports fields documented below. + // +kubebuilder:validation:Optional Record []RecordParameters `json:"record,omitempty" tf:"record,omitempty"` // Specifies the resource group where the DNS Zone (parent resource) exists. Changing this forces a new resource to be created. @@ -68,9 +69,11 @@ type DNSCAARecordParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The Time To Live (TTL) of the DNS record in seconds. + // +kubebuilder:validation:Optional TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the DNS Zone where the resource exists. Changing this forces a new resource to be created. @@ -114,12 +117,15 @@ type RecordObservation struct { type RecordParameters struct { // Extensible CAA flags, currently only 1 is implemented to set the issuer critical flag. + // +kubebuilder:validation:Optional Flags *float64 `json:"flags,omitempty" tf:"flags,omitempty"` // A property tag, options are issue, issuewild and iodef. + // +kubebuilder:validation:Optional Tag *string `json:"tag,omitempty" tf:"tag,omitempty"` // A property value such as a registrar domain. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } diff --git a/apis/network/v1beta1/zz_dnscnamerecord_types.go b/apis/network/v1beta1/zz_dnscnamerecord_types.go index f75ceefc2..08378f36f 100755 --- a/apis/network/v1beta1/zz_dnscnamerecord_types.go +++ b/apis/network/v1beta1/zz_dnscnamerecord_types.go @@ -55,6 +55,7 @@ type DNSCNAMERecordObservation struct { type DNSCNAMERecordParameters struct { // The target of the CNAME. + // +kubebuilder:validation:Optional Record *string `json:"record,omitempty" tf:"record,omitempty"` // Specifies the resource group where the DNS Zone (parent resource) exists. Changing this forces a new resource to be created. @@ -71,9 +72,11 @@ type DNSCNAMERecordParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The Time To Live (TTL) of the DNS record in seconds. + // +kubebuilder:validation:Optional TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The Azure resource id of the target object. Conflicts with record. diff --git a/apis/network/v1beta1/zz_dnsmxrecord_types.go b/apis/network/v1beta1/zz_dnsmxrecord_types.go index 251a52295..c4da3f48e 100755 --- a/apis/network/v1beta1/zz_dnsmxrecord_types.go +++ b/apis/network/v1beta1/zz_dnsmxrecord_types.go @@ -52,6 +52,7 @@ type DNSMXRecordObservation struct { type DNSMXRecordParameters struct { // A list of values that make up the MX record. Each record block supports fields documented below. + // +kubebuilder:validation:Optional Record []DNSMXRecordRecordParameters `json:"record,omitempty" tf:"record,omitempty"` // Specifies the resource group where the DNS Zone (parent resource) exists. Changing this forces a new resource to be created. @@ -68,9 +69,11 @@ type DNSMXRecordParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The Time To Live (TTL) of the DNS record in seconds. + // +kubebuilder:validation:Optional TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the DNS Zone where the resource exists. Changing this forces a new resource to be created. @@ -108,9 +111,11 @@ type DNSMXRecordRecordObservation struct { type DNSMXRecordRecordParameters struct { // The mail server responsible for the domain covered by the MX record. + // +kubebuilder:validation:Optional Exchange *string `json:"exchange,omitempty" tf:"exchange,omitempty"` // String representing the "preference” value of the MX records. Records with lower preference value take priority. + // +kubebuilder:validation:Optional Preference *string `json:"preference,omitempty" tf:"preference,omitempty"` } diff --git a/apis/network/v1beta1/zz_dnsnsrecord_types.go b/apis/network/v1beta1/zz_dnsnsrecord_types.go index 13cb92140..626a241ba 100755 --- a/apis/network/v1beta1/zz_dnsnsrecord_types.go +++ b/apis/network/v1beta1/zz_dnsnsrecord_types.go @@ -52,6 +52,7 @@ type DNSNSRecordObservation struct { type DNSNSRecordParameters struct { // A list of values that make up the NS record. + // +kubebuilder:validation:Optional Records []*string `json:"records,omitempty" tf:"records,omitempty"` // Specifies the resource group where the DNS Zone (parent resource) exists. Changing this forces a new resource to be created. @@ -68,9 +69,11 @@ type DNSNSRecordParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The Time To Live (TTL) of the DNS record in seconds. + // +kubebuilder:validation:Optional TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the DNS Zone where the resource exists. Changing this forces a new resource to be created. diff --git a/apis/network/v1beta1/zz_dnsptrrecord_types.go b/apis/network/v1beta1/zz_dnsptrrecord_types.go index 902315c36..2c746d831 100755 --- a/apis/network/v1beta1/zz_dnsptrrecord_types.go +++ b/apis/network/v1beta1/zz_dnsptrrecord_types.go @@ -52,6 +52,7 @@ type DNSPTRRecordObservation struct { type DNSPTRRecordParameters struct { // List of Fully Qualified Domain Names. + // +kubebuilder:validation:Optional Records []*string `json:"records,omitempty" tf:"records,omitempty"` // Specifies the resource group where the DNS Zone (parent resource) exists. Changing this forces a new resource to be created. @@ -68,9 +69,11 @@ type DNSPTRRecordParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The Time To Live (TTL) of the DNS record in seconds. + // +kubebuilder:validation:Optional TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the DNS Zone where the resource exists. Changing this forces a new resource to be created. diff --git a/apis/network/v1beta1/zz_dnssrvrecord_types.go b/apis/network/v1beta1/zz_dnssrvrecord_types.go index ed7ca9589..eef0bd3af 100755 --- a/apis/network/v1beta1/zz_dnssrvrecord_types.go +++ b/apis/network/v1beta1/zz_dnssrvrecord_types.go @@ -52,6 +52,7 @@ type DNSSRVRecordObservation struct { type DNSSRVRecordParameters struct { // A list of values that make up the SRV record. Each record block supports fields documented below. + // +kubebuilder:validation:Optional Record []DNSSRVRecordRecordParameters `json:"record,omitempty" tf:"record,omitempty"` // Specifies the resource group where the DNS Zone (parent resource) exists. Changing this forces a new resource to be created. @@ -68,9 +69,11 @@ type DNSSRVRecordParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The Time To Live (TTL) of the DNS record in seconds. + // +kubebuilder:validation:Optional TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the DNS Zone where the resource exists. Changing this forces a new resource to be created. @@ -120,15 +123,19 @@ type DNSSRVRecordRecordObservation struct { type DNSSRVRecordRecordParameters struct { // Port the service is listening on. + // +kubebuilder:validation:Optional Port *float64 `json:"port,omitempty" tf:"port,omitempty"` // Priority of the SRV record. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // FQDN of the service. + // +kubebuilder:validation:Optional Target *string `json:"target,omitempty" tf:"target,omitempty"` // Weight of the SRV record. + // +kubebuilder:validation:Optional Weight *float64 `json:"weight,omitempty" tf:"weight,omitempty"` } diff --git a/apis/network/v1beta1/zz_dnstxtrecord_types.go b/apis/network/v1beta1/zz_dnstxtrecord_types.go index ea9f7a13d..8339ffeb6 100755 --- a/apis/network/v1beta1/zz_dnstxtrecord_types.go +++ b/apis/network/v1beta1/zz_dnstxtrecord_types.go @@ -52,6 +52,7 @@ type DNSTXTRecordObservation struct { type DNSTXTRecordParameters struct { // A list of values that make up the txt record. Each record block supports fields documented below. + // +kubebuilder:validation:Optional Record []DNSTXTRecordRecordParameters `json:"record,omitempty" tf:"record,omitempty"` // Specifies the resource group where the DNS Zone (parent resource) exists. Changing this forces a new resource to be created. @@ -68,9 +69,11 @@ type DNSTXTRecordParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The Time To Live (TTL) of the DNS record in seconds. + // +kubebuilder:validation:Optional TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the DNS Zone where the resource exists. Changing this forces a new resource to be created. @@ -102,6 +105,7 @@ type DNSTXTRecordRecordObservation struct { type DNSTXTRecordRecordParameters struct { // The value of the record. Max length: 1024 characters + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } diff --git a/apis/network/v1beta1/zz_dnszone_types.go b/apis/network/v1beta1/zz_dnszone_types.go index 9dd709cd3..db0f3d2ee 100755 --- a/apis/network/v1beta1/zz_dnszone_types.go +++ b/apis/network/v1beta1/zz_dnszone_types.go @@ -62,9 +62,11 @@ type DNSZoneParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // An soa_record block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SoaRecord []SoaRecordParameters `json:"soaRecord,omitempty" tf:"soa_record,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -133,30 +135,39 @@ type SoaRecordObservation struct { type SoaRecordParameters struct { // The email contact for the SOA record. + // +kubebuilder:validation:Optional Email *string `json:"email,omitempty" tf:"email,omitempty"` // The expire time for the SOA record. Defaults to 2419200. + // +kubebuilder:validation:Optional ExpireTime *float64 `json:"expireTime,omitempty" tf:"expire_time,omitempty"` // The domain name of the authoritative name server for the SOA record. + // +kubebuilder:validation:Optional HostName *string `json:"hostName,omitempty" tf:"host_name,omitempty"` // The minimum Time To Live for the SOA record. By convention, it is used to determine the negative caching duration. Defaults to 300. + // +kubebuilder:validation:Optional MinimumTTL *float64 `json:"minimumTtl,omitempty" tf:"minimum_ttl,omitempty"` // The refresh time for the SOA record. Defaults to 3600. + // +kubebuilder:validation:Optional RefreshTime *float64 `json:"refreshTime,omitempty" tf:"refresh_time,omitempty"` // The retry time for the SOA record. Defaults to 300. + // +kubebuilder:validation:Optional RetryTime *float64 `json:"retryTime,omitempty" tf:"retry_time,omitempty"` // The serial number for the SOA record. Defaults to 1. + // +kubebuilder:validation:Optional SerialNumber *float64 `json:"serialNumber,omitempty" tf:"serial_number,omitempty"` // The Time To Live of the SOA Record in seconds. Defaults to 3600. + // +kubebuilder:validation:Optional TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` // A mapping of tags to assign to the Record Set. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/network/v1beta1/zz_expressroutecircuit_types.go b/apis/network/v1beta1/zz_expressroutecircuit_types.go index 9084bfc06..830288704 100755 --- a/apis/network/v1beta1/zz_expressroutecircuit_types.go +++ b/apis/network/v1beta1/zz_expressroutecircuit_types.go @@ -85,6 +85,7 @@ type ExpressRouteCircuitObservation struct { type ExpressRouteCircuitParameters struct { // Allow the circuit to interact with classic (RDFE) resources. Defaults to false. + // +kubebuilder:validation:Optional AllowClassicOperations *bool `json:"allowClassicOperations,omitempty" tf:"allow_classic_operations,omitempty"` // The authorization key. This can be used to set up an ExpressRoute Circuit with an ExpressRoute Port from another subscription. @@ -92,18 +93,23 @@ type ExpressRouteCircuitParameters struct { AuthorizationKeySecretRef *v1.SecretKeySelector `json:"authorizationKeySecretRef,omitempty" tf:"-"` // The bandwidth in Gbps of the circuit being created on the Express Route Port. + // +kubebuilder:validation:Optional BandwidthInGbps *float64 `json:"bandwidthInGbps,omitempty" tf:"bandwidth_in_gbps,omitempty"` // The bandwidth in Mbps of the circuit being created on the Service Provider. + // +kubebuilder:validation:Optional BandwidthInMbps *float64 `json:"bandwidthInMbps,omitempty" tf:"bandwidth_in_mbps,omitempty"` // The ID of the Express Route Port this Express Route Circuit is based on. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ExpressRoutePortID *string `json:"expressRoutePortId,omitempty" tf:"express_route_port_id,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the peering location and not the Azure resource location. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PeeringLocation *string `json:"peeringLocation,omitempty" tf:"peering_location,omitempty"` // The name of the resource group in which to create the ExpressRoute circuit. Changing this forces a new resource to be created. @@ -120,12 +126,15 @@ type ExpressRouteCircuitParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The name of the ExpressRoute Service Provider. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ServiceProviderName *string `json:"serviceProviderName,omitempty" tf:"service_provider_name,omitempty"` // A sku block for the ExpressRoute circuit as documented below. + // +kubebuilder:validation:Optional Sku []ExpressRouteCircuitSkuParameters `json:"sku,omitempty" tf:"sku,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -150,9 +159,11 @@ type ExpressRouteCircuitSkuObservation struct { type ExpressRouteCircuitSkuParameters struct { // The billing mode for bandwidth. Possible values are MeteredData or UnlimitedData. + // +kubebuilder:validation:Optional Family *string `json:"family,omitempty" tf:"family,omitempty"` // The service tier. Possible values are Basic, Local, Standard or Premium. + // +kubebuilder:validation:Optional Tier *string `json:"tier,omitempty" tf:"tier,omitempty"` } diff --git a/apis/network/v1beta1/zz_expressroutecircuitconnection_types.go b/apis/network/v1beta1/zz_expressroutecircuitconnection_types.go index 74393e6dd..0d725211e 100755 --- a/apis/network/v1beta1/zz_expressroutecircuitconnection_types.go +++ b/apis/network/v1beta1/zz_expressroutecircuitconnection_types.go @@ -43,9 +43,11 @@ type ExpressRouteCircuitConnectionObservation struct { type ExpressRouteCircuitConnectionParameters struct { // The IPv4 address space from which to allocate customer address for global reach. Changing this forces a new Express Route Circuit Connection to be created. + // +kubebuilder:validation:Optional AddressPrefixIPv4 *string `json:"addressPrefixIpv4,omitempty" tf:"address_prefix_ipv4,omitempty"` // The IPv6 address space from which to allocate customer addresses for global reach. + // +kubebuilder:validation:Optional AddressPrefixIPv6 *string `json:"addressPrefixIpv6,omitempty" tf:"address_prefix_ipv6,omitempty"` // The authorization key which is associated with the Express Route Circuit Connection. diff --git a/apis/network/v1beta1/zz_expressroutecircuitpeering_types.go b/apis/network/v1beta1/zz_expressroutecircuitpeering_types.go index 69cf0cee1..3898984c3 100755 --- a/apis/network/v1beta1/zz_expressroutecircuitpeering_types.go +++ b/apis/network/v1beta1/zz_expressroutecircuitpeering_types.go @@ -103,18 +103,23 @@ type ExpressRouteCircuitPeeringParameters struct { ExpressRouteCircuitNameSelector *v1.Selector `json:"expressRouteCircuitNameSelector,omitempty" tf:"-"` // A boolean value indicating whether the IPv4 peering is enabled. Defaults to true. + // +kubebuilder:validation:Optional IPv4Enabled *bool `json:"ipv4Enabled,omitempty" tf:"ipv4_enabled,omitempty"` // A ipv6 block as defined below. + // +kubebuilder:validation:Optional IPv6 []IPv6Parameters `json:"ipv6,omitempty" tf:"ipv6,omitempty"` // A microsoft_peering_config block as defined below. Required when peering_type is set to MicrosoftPeering and config for IPv4. + // +kubebuilder:validation:Optional MicrosoftPeeringConfig []MicrosoftPeeringConfigParameters `json:"microsoftPeeringConfig,omitempty" tf:"microsoft_peering_config,omitempty"` // The Either a 16-bit or a 32-bit ASN. Can either be public or private. + // +kubebuilder:validation:Optional PeerAsn *float64 `json:"peerAsn,omitempty" tf:"peer_asn,omitempty"` // A /30 subnet for the primary link. Required when config for IPv4. + // +kubebuilder:validation:Optional PrimaryPeerAddressPrefix *string `json:"primaryPeerAddressPrefix,omitempty" tf:"primary_peer_address_prefix,omitempty"` // The name of the resource group in which to create the Express Route Circuit Peering. Changing this forces a new resource to be created. @@ -131,9 +136,11 @@ type ExpressRouteCircuitPeeringParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The ID of the Route Filter. Only available when peering_type is set to MicrosoftPeering. + // +kubebuilder:validation:Optional RouteFilterID *string `json:"routeFilterId,omitempty" tf:"route_filter_id,omitempty"` // A /30 subnet for the secondary link. Required when config for IPv4. + // +kubebuilder:validation:Optional SecondaryPeerAddressPrefix *string `json:"secondaryPeerAddressPrefix,omitempty" tf:"secondary_peer_address_prefix,omitempty"` // The shared key. Can be a maximum of 25 characters. @@ -141,6 +148,7 @@ type ExpressRouteCircuitPeeringParameters struct { SharedKeySecretRef *v1.SecretKeySelector `json:"sharedKeySecretRef,omitempty" tf:"-"` // A valid VLAN ID to establish this peering on. + // +kubebuilder:validation:Optional VlanID *float64 `json:"vlanId,omitempty" tf:"vlan_id,omitempty"` } @@ -183,18 +191,23 @@ type IPv6Observation struct { type IPv6Parameters struct { // A boolean value indicating whether the IPv6 peering is enabled. Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // A microsoft_peering block as defined below. + // +kubebuilder:validation:Optional MicrosoftPeering []MicrosoftPeeringParameters `json:"microsoftPeering,omitempty" tf:"microsoft_peering,omitempty"` // A subnet for the primary link. + // +kubebuilder:validation:Optional PrimaryPeerAddressPrefix *string `json:"primaryPeerAddressPrefix,omitempty" tf:"primary_peer_address_prefix,omitempty"` // The ID of the Route Filter. Only available when peering_type is set to MicrosoftPeering. + // +kubebuilder:validation:Optional RouteFilterID *string `json:"routeFilterId,omitempty" tf:"route_filter_id,omitempty"` // A subnet for the secondary link. + // +kubebuilder:validation:Optional SecondaryPeerAddressPrefix *string `json:"secondaryPeerAddressPrefix,omitempty" tf:"secondary_peer_address_prefix,omitempty"` } @@ -231,15 +244,19 @@ type MicrosoftPeeringConfigObservation struct { type MicrosoftPeeringConfigParameters struct { // The communities of Bgp Peering specified for microsoft peering. + // +kubebuilder:validation:Optional AdvertisedCommunities []*string `json:"advertisedCommunities,omitempty" tf:"advertised_communities,omitempty"` // A list of Advertised Public Prefixes. + // +kubebuilder:validation:Optional AdvertisedPublicPrefixes []*string `json:"advertisedPublicPrefixes,omitempty" tf:"advertised_public_prefixes,omitempty"` // The CustomerASN of the peering. Defaults to 0. + // +kubebuilder:validation:Optional CustomerAsn *float64 `json:"customerAsn,omitempty" tf:"customer_asn,omitempty"` // The Routing Registry against which the AS number and prefixes are registered. For example: ARIN, RIPE, AFRINIC etc. Defaults to NONE. + // +kubebuilder:validation:Optional RoutingRegistryName *string `json:"routingRegistryName,omitempty" tf:"routing_registry_name,omitempty"` } @@ -276,15 +293,19 @@ type MicrosoftPeeringObservation struct { type MicrosoftPeeringParameters struct { // The communities of Bgp Peering specified for microsoft peering. + // +kubebuilder:validation:Optional AdvertisedCommunities []*string `json:"advertisedCommunities,omitempty" tf:"advertised_communities,omitempty"` // A list of Advertised Public Prefixes. + // +kubebuilder:validation:Optional AdvertisedPublicPrefixes []*string `json:"advertisedPublicPrefixes,omitempty" tf:"advertised_public_prefixes,omitempty"` // The CustomerASN of the peering. Defaults to 0. + // +kubebuilder:validation:Optional CustomerAsn *float64 `json:"customerAsn,omitempty" tf:"customer_asn,omitempty"` // The Routing Registry against which the AS number and prefixes are registered. For example: ARIN, RIPE, AFRINIC etc. Defaults to NONE. + // +kubebuilder:validation:Optional RoutingRegistryName *string `json:"routingRegistryName,omitempty" tf:"routing_registry_name,omitempty"` } diff --git a/apis/network/v1beta1/zz_expressrouteconnection_types.go b/apis/network/v1beta1/zz_expressrouteconnection_types.go index bbadedaa6..4d847448b 100755 --- a/apis/network/v1beta1/zz_expressrouteconnection_types.go +++ b/apis/network/v1beta1/zz_expressrouteconnection_types.go @@ -61,9 +61,11 @@ type ExpressRouteConnectionObservation struct { type ExpressRouteConnectionParameters struct { // The authorization key to establish the Express Route Connection. + // +kubebuilder:validation:Optional AuthorizationKey *string `json:"authorizationKey,omitempty" tf:"authorization_key,omitempty"` // Is Internet security enabled for this Express Route Connection? + // +kubebuilder:validation:Optional EnableInternetSecurity *bool `json:"enableInternetSecurity,omitempty" tf:"enable_internet_security,omitempty"` // The ID of the Express Route Circuit Peering that this Express Route Connection connects with. Changing this forces a new resource to be created. @@ -81,6 +83,7 @@ type ExpressRouteConnectionParameters struct { ExpressRouteCircuitPeeringIDSelector *v1.Selector `json:"expressRouteCircuitPeeringIdSelector,omitempty" tf:"-"` // Specified whether Fast Path is enabled for Virtual Wan Firewall Hub. Defaults to false. + // +kubebuilder:validation:Optional ExpressRouteGatewayBypassEnabled *bool `json:"expressRouteGatewayBypassEnabled,omitempty" tf:"express_route_gateway_bypass_enabled,omitempty"` // The ID of the Express Route Gateway that this Express Route Connection connects with. Changing this forces a new resource to be created. @@ -98,9 +101,11 @@ type ExpressRouteConnectionParameters struct { ExpressRouteGatewayIDSelector *v1.Selector `json:"expressRouteGatewayIdSelector,omitempty" tf:"-"` // A routing block as defined below. + // +kubebuilder:validation:Optional Routing []RoutingParameters `json:"routing,omitempty" tf:"routing,omitempty"` // The routing weight associated to the Express Route Connection. Possible value is between 0 and 32000. Defaults to 0. + // +kubebuilder:validation:Optional RoutingWeight *float64 `json:"routingWeight,omitempty" tf:"routing_weight,omitempty"` } @@ -125,9 +130,11 @@ type PropagatedRouteTableObservation struct { type PropagatedRouteTableParameters struct { // The list of labels to logically group route tables. + // +kubebuilder:validation:Optional Labels []*string `json:"labels,omitempty" tf:"labels,omitempty"` // A list of IDs of the Virtual Hub Route Table to propagate routes from Express Route Connection to the route table. + // +kubebuilder:validation:Optional RouteTableIds []*string `json:"routeTableIds,omitempty" tf:"route_table_ids,omitempty"` } @@ -164,15 +171,19 @@ type RoutingObservation struct { type RoutingParameters struct { // The ID of the Virtual Hub Route Table associated with this Express Route Connection. + // +kubebuilder:validation:Optional AssociatedRouteTableID *string `json:"associatedRouteTableId,omitempty" tf:"associated_route_table_id,omitempty"` // The ID of the Route Map associated with this Express Route Connection for inbound routes. + // +kubebuilder:validation:Optional InboundRouteMapID *string `json:"inboundRouteMapId,omitempty" tf:"inbound_route_map_id,omitempty"` // The ID of the Route Map associated with this Express Route Connection for outbound routes. + // +kubebuilder:validation:Optional OutboundRouteMapID *string `json:"outboundRouteMapId,omitempty" tf:"outbound_route_map_id,omitempty"` // A propagated_route_table block as defined below. + // +kubebuilder:validation:Optional PropagatedRouteTable []PropagatedRouteTableParameters `json:"propagatedRouteTable,omitempty" tf:"propagated_route_table,omitempty"` } diff --git a/apis/network/v1beta1/zz_expressroutegateway_types.go b/apis/network/v1beta1/zz_expressroutegateway_types.go index 5d1cd9af4..d65d03066 100755 --- a/apis/network/v1beta1/zz_expressroutegateway_types.go +++ b/apis/network/v1beta1/zz_expressroutegateway_types.go @@ -55,9 +55,11 @@ type ExpressRouteGatewayObservation struct { type ExpressRouteGatewayParameters struct { // Specified whether this gateway accept traffic from non-Virtual WAN networks. Defaults to false. + // +kubebuilder:validation:Optional AllowNonVirtualWanTraffic *bool `json:"allowNonVirtualWanTraffic,omitempty" tf:"allow_non_virtual_wan_traffic,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the resource group in which to create the ExpressRoute gateway. Changing this forces a new resource to be created. @@ -74,9 +76,11 @@ type ExpressRouteGatewayParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The number of scale units with which to provision the ExpressRoute gateway. Each scale unit is equal to 2Gbps, with support for up to 10 scale units (20Gbps). + // +kubebuilder:validation:Optional ScaleUnits *float64 `json:"scaleUnits,omitempty" tf:"scale_units,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The ID of a Virtual HUB within which the ExpressRoute gateway should be created. Changing this forces a new resource to be created. diff --git a/apis/network/v1beta1/zz_expressrouteport_types.go b/apis/network/v1beta1/zz_expressrouteport_types.go index 3a9e8bda4..8d5eb1cd2 100755 --- a/apis/network/v1beta1/zz_expressrouteport_types.go +++ b/apis/network/v1beta1/zz_expressrouteport_types.go @@ -34,9 +34,11 @@ type ExpressRoutePortIdentityObservation struct { type ExpressRoutePortIdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Express Route Port. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Express Route Port. Only possible value is UserAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -118,27 +120,35 @@ type ExpressRoutePortObservation struct { type ExpressRoutePortParameters struct { // Bandwidth of the Express Route Port in Gbps. Changing this forces a new Express Route Port to be created. + // +kubebuilder:validation:Optional BandwidthInGbps *float64 `json:"bandwidthInGbps,omitempty" tf:"bandwidth_in_gbps,omitempty"` // The billing type of the Express Route Port. Possible values are MeteredData and UnlimitedData. + // +kubebuilder:validation:Optional BillingType *string `json:"billingType,omitempty" tf:"billing_type,omitempty"` // The encapsulation method used for the Express Route Port. Changing this forces a new Express Route Port to be created. Possible values are: Dot1Q, QinQ. + // +kubebuilder:validation:Optional Encapsulation *string `json:"encapsulation,omitempty" tf:"encapsulation,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []ExpressRoutePortIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // A list of link blocks as defined below. + // +kubebuilder:validation:Optional Link1 []Link1Parameters `json:"link1,omitempty" tf:"link1,omitempty"` // A list of link blocks as defined below. + // +kubebuilder:validation:Optional Link2 []Link2Parameters `json:"link2,omitempty" tf:"link2,omitempty"` // The Azure Region where the Express Route Port should exist. Changing this forces a new Express Route Port to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the peering location that this Express Route Port is physically mapped to. Changing this forces a new Express Route Port to be created. + // +kubebuilder:validation:Optional PeeringLocation *string `json:"peeringLocation,omitempty" tf:"peering_location,omitempty"` // The name of the Resource Group where the Express Route Port should exist. Changing this forces a new Express Route Port to be created. @@ -155,6 +165,7 @@ type ExpressRoutePortParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the Express Route Port. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -209,15 +220,19 @@ type Link1Observation struct { type Link1Parameters struct { // Whether enable administration state on the Express Route Port Link? Defaults to false. + // +kubebuilder:validation:Optional AdminEnabled *bool `json:"adminEnabled,omitempty" tf:"admin_enabled,omitempty"` // The ID of the Key Vault Secret that contains the Mac security CAK key for this Express Route Port Link. + // +kubebuilder:validation:Optional MacsecCakKeyvaultSecretID *string `json:"macsecCakKeyvaultSecretId,omitempty" tf:"macsec_cak_keyvault_secret_id,omitempty"` // The MACSec cipher used for this Express Route Port Link. Possible values are GcmAes128 and GcmAes256. Defaults to GcmAes128. + // +kubebuilder:validation:Optional MacsecCipher *string `json:"macsecCipher,omitempty" tf:"macsec_cipher,omitempty"` // The ID of the Key Vault Secret that contains the MACSec CKN key for this Express Route Port Link. + // +kubebuilder:validation:Optional MacsecCknKeyvaultSecretID *string `json:"macsecCknKeyvaultSecretId,omitempty" tf:"macsec_ckn_keyvault_secret_id,omitempty"` } @@ -272,15 +287,19 @@ type Link2Observation struct { type Link2Parameters struct { // Whether enable administration state on the Express Route Port Link? Defaults to false. + // +kubebuilder:validation:Optional AdminEnabled *bool `json:"adminEnabled,omitempty" tf:"admin_enabled,omitempty"` // The ID of the Key Vault Secret that contains the Mac security CAK key for this Express Route Port Link. + // +kubebuilder:validation:Optional MacsecCakKeyvaultSecretID *string `json:"macsecCakKeyvaultSecretId,omitempty" tf:"macsec_cak_keyvault_secret_id,omitempty"` // The MACSec cipher used for this Express Route Port Link. Possible values are GcmAes128 and GcmAes256. Defaults to GcmAes128. + // +kubebuilder:validation:Optional MacsecCipher *string `json:"macsecCipher,omitempty" tf:"macsec_cipher,omitempty"` // The ID of the Key Vault Secret that contains the MACSec CKN key for this Express Route Port Link. + // +kubebuilder:validation:Optional MacsecCknKeyvaultSecretID *string `json:"macsecCknKeyvaultSecretId,omitempty" tf:"macsec_ckn_keyvault_secret_id,omitempty"` } diff --git a/apis/network/v1beta1/zz_firewall_types.go b/apis/network/v1beta1/zz_firewall_types.go index 953bd6820..c6ad9d743 100755 --- a/apis/network/v1beta1/zz_firewall_types.go +++ b/apis/network/v1beta1/zz_firewall_types.go @@ -37,6 +37,7 @@ type FirewallIPConfigurationObservation struct { type FirewallIPConfigurationParameters struct { // Specifies the name of the IP Configuration. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID of the Public IP Address associated with the firewall. @@ -155,21 +156,27 @@ type FirewallObservation struct { type FirewallParameters struct { // A list of DNS servers that the Azure Firewall will direct DNS traffic to the for name resolution. + // +kubebuilder:validation:Optional DNSServers []*string `json:"dnsServers,omitempty" tf:"dns_servers,omitempty"` // The ID of the Firewall Policy applied to this Firewall. + // +kubebuilder:validation:Optional FirewallPolicyID *string `json:"firewallPolicyId,omitempty" tf:"firewall_policy_id,omitempty"` // An ip_configuration block as documented below. + // +kubebuilder:validation:Optional IPConfiguration []FirewallIPConfigurationParameters `json:"ipConfiguration,omitempty" tf:"ip_configuration,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // A management_ip_configuration block as documented below, which allows force-tunnelling of traffic to be performed by the firewall. Adding or removing this block or changing the subnet_id in an existing block forces a new resource to be created. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ManagementIPConfiguration []ManagementIPConfigurationParameters `json:"managementIpConfiguration,omitempty" tf:"management_ip_configuration,omitempty"` // A list of SNAT private CIDR IP ranges, or the special string IANAPrivateRanges, which indicates Azure Firewall does not SNAT when the destination IP address is a private range per IANA RFC 1918. + // +kubebuilder:validation:Optional PrivateIPRanges []*string `json:"privateIpRanges,omitempty" tf:"private_ip_ranges,omitempty"` // The name of the resource group in which to create the resource. Changing this forces a new resource to be created. @@ -186,21 +193,27 @@ type FirewallParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // SKU name of the Firewall. Possible values are AZFW_Hub and AZFW_VNet. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // SKU tier of the Firewall. Possible values are Premium, Standard and Basic. + // +kubebuilder:validation:Optional SkuTier *string `json:"skuTier,omitempty" tf:"sku_tier,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The operation mode for threat intelligence-based filtering. Possible values are: Off, Alert and Deny. Defaults to Alert. + // +kubebuilder:validation:Optional ThreatIntelMode *string `json:"threatIntelMode,omitempty" tf:"threat_intel_mode,omitempty"` // A virtual_hub block as documented below. + // +kubebuilder:validation:Optional VirtualHub []VirtualHubParameters `json:"virtualHub,omitempty" tf:"virtual_hub,omitempty"` // Specifies a list of Availability Zones in which this Azure Firewall should be located. Changing this forces a new Azure Firewall to be created. + // +kubebuilder:validation:Optional Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } @@ -231,9 +244,11 @@ type ManagementIPConfigurationObservation struct { type ManagementIPConfigurationParameters struct { // Specifies the name of the IP Configuration. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID of the Public IP Address associated with the firewall. + // +kubebuilder:validation:Optional PublicIPAddressID *string `json:"publicIpAddressId,omitempty" tf:"public_ip_address_id,omitempty"` // Reference to the subnet associated with the IP Configuration. Changing this forces a new resource to be created. @@ -278,9 +293,11 @@ type VirtualHubObservation struct { type VirtualHubParameters struct { // Specifies the number of public IPs to assign to the Firewall. Defaults to 1. + // +kubebuilder:validation:Optional PublicIPCount *float64 `json:"publicIpCount,omitempty" tf:"public_ip_count,omitempty"` // Specifies the ID of the Virtual Hub where the Firewall resides in. + // +kubebuilder:validation:Optional VirtualHubID *string `json:"virtualHubId,omitempty" tf:"virtual_hub_id,omitempty"` } diff --git a/apis/network/v1beta1/zz_firewallapplicationrulecollection_types.go b/apis/network/v1beta1/zz_firewallapplicationrulecollection_types.go index ff2974f17..f0c18f89a 100755 --- a/apis/network/v1beta1/zz_firewallapplicationrulecollection_types.go +++ b/apis/network/v1beta1/zz_firewallapplicationrulecollection_types.go @@ -48,6 +48,7 @@ type FirewallApplicationRuleCollectionObservation struct { type FirewallApplicationRuleCollectionParameters struct { // Specifies the action the rule will apply to matching traffic. Possible values are Allow and Deny. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // Specifies the name of the Firewall in which the Application Rule Collection should be created. Changing this forces a new resource to be created. @@ -64,6 +65,7 @@ type FirewallApplicationRuleCollectionParameters struct { AzureFirewallNameSelector *v1.Selector `json:"azureFirewallNameSelector,omitempty" tf:"-"` // Specifies the priority of the rule collection. Possible values are between 100 - 65000. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // Specifies the name of the Resource Group in which the Firewall exists. Changing this forces a new resource to be created. @@ -80,6 +82,7 @@ type FirewallApplicationRuleCollectionParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // One or more rule blocks as defined below. + // +kubebuilder:validation:Optional Rule []RuleParameters `json:"rule,omitempty" tf:"rule,omitempty"` } @@ -104,9 +107,11 @@ type ProtocolObservation struct { type ProtocolParameters struct { // Specify a port for the connection. + // +kubebuilder:validation:Optional Port *float64 `json:"port,omitempty" tf:"port,omitempty"` // Specifies the type of connection. Possible values are Http, Https and Mssql. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -161,24 +166,31 @@ type RuleObservation struct { type RuleParameters struct { // Specifies a description for the rule. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // A list of FQDN tags. Possible values are AppServiceEnvironment, AzureBackup, AzureKubernetesService, HDInsight, MicrosoftActiveProtectionService, WindowsDiagnostics, WindowsUpdate and WindowsVirtualDesktop. + // +kubebuilder:validation:Optional FqdnTags []*string `json:"fqdnTags,omitempty" tf:"fqdn_tags,omitempty"` // Specifies the name of the rule. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // One or more protocol blocks as defined below. + // +kubebuilder:validation:Optional Protocol []ProtocolParameters `json:"protocol,omitempty" tf:"protocol,omitempty"` // A list of source IP addresses and/or IP ranges. + // +kubebuilder:validation:Optional SourceAddresses []*string `json:"sourceAddresses,omitempty" tf:"source_addresses,omitempty"` // A list of source IP Group IDs for the rule. + // +kubebuilder:validation:Optional SourceIPGroups []*string `json:"sourceIpGroups,omitempty" tf:"source_ip_groups,omitempty"` // A list of FQDNs. + // +kubebuilder:validation:Optional TargetFqdns []*string `json:"targetFqdns,omitempty" tf:"target_fqdns,omitempty"` } diff --git a/apis/network/v1beta1/zz_firewallnatrulecollection_types.go b/apis/network/v1beta1/zz_firewallnatrulecollection_types.go index f8bc924e8..2c6658bea 100755 --- a/apis/network/v1beta1/zz_firewallnatrulecollection_types.go +++ b/apis/network/v1beta1/zz_firewallnatrulecollection_types.go @@ -48,6 +48,7 @@ type FirewallNATRuleCollectionObservation struct { type FirewallNATRuleCollectionParameters struct { // Specifies the action the rule will apply to matching traffic. Possible values are Dnat and Snat. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // Specifies the name of the Firewall in which the NAT Rule Collection should be created. Changing this forces a new resource to be created. @@ -64,6 +65,7 @@ type FirewallNATRuleCollectionParameters struct { AzureFirewallNameSelector *v1.Selector `json:"azureFirewallNameSelector,omitempty" tf:"-"` // Specifies the priority of the rule collection. Possible values are between 100 - 65000. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // Specifies the name of the Resource Group in which the Firewall exists. Changing this forces a new resource to be created. @@ -80,6 +82,7 @@ type FirewallNATRuleCollectionParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // One or more rule blocks as defined below. + // +kubebuilder:validation:Optional Rule []FirewallNATRuleCollectionRuleParameters `json:"rule,omitempty" tf:"rule,omitempty"` } @@ -146,30 +149,39 @@ type FirewallNATRuleCollectionRuleObservation struct { type FirewallNATRuleCollectionRuleParameters struct { // Specifies a description for the rule. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // A list of destination IP addresses and/or IP ranges. + // +kubebuilder:validation:Optional DestinationAddresses []*string `json:"destinationAddresses,omitempty" tf:"destination_addresses,omitempty"` // A list of destination ports. + // +kubebuilder:validation:Optional DestinationPorts []*string `json:"destinationPorts,omitempty" tf:"destination_ports,omitempty"` // Specifies the name of the rule. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A list of protocols. Possible values are Any, ICMP, TCP and UDP. If action is Dnat, protocols can only be TCP and UDP. + // +kubebuilder:validation:Optional Protocols []*string `json:"protocols,omitempty" tf:"protocols,omitempty"` // A list of source IP addresses and/or IP ranges. + // +kubebuilder:validation:Optional SourceAddresses []*string `json:"sourceAddresses,omitempty" tf:"source_addresses,omitempty"` // A list of source IP Group IDs for the rule. + // +kubebuilder:validation:Optional SourceIPGroups []*string `json:"sourceIpGroups,omitempty" tf:"source_ip_groups,omitempty"` // The address of the service behind the Firewall. + // +kubebuilder:validation:Optional TranslatedAddress *string `json:"translatedAddress,omitempty" tf:"translated_address,omitempty"` // The port of the service behind the Firewall. + // +kubebuilder:validation:Optional TranslatedPort *string `json:"translatedPort,omitempty" tf:"translated_port,omitempty"` } diff --git a/apis/network/v1beta1/zz_firewallnetworkrulecollection_types.go b/apis/network/v1beta1/zz_firewallnetworkrulecollection_types.go index b8bdc07e7..2bb3acc12 100755 --- a/apis/network/v1beta1/zz_firewallnetworkrulecollection_types.go +++ b/apis/network/v1beta1/zz_firewallnetworkrulecollection_types.go @@ -48,6 +48,7 @@ type FirewallNetworkRuleCollectionObservation struct { type FirewallNetworkRuleCollectionParameters struct { // Specifies the action the rule will apply to matching traffic. Possible values are Allow and Deny. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // Specifies the name of the Firewall in which the Network Rule Collection should be created. Changing this forces a new resource to be created. @@ -64,6 +65,7 @@ type FirewallNetworkRuleCollectionParameters struct { AzureFirewallNameSelector *v1.Selector `json:"azureFirewallNameSelector,omitempty" tf:"-"` // Specifies the priority of the rule collection. Possible values are between 100 - 65000. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // Specifies the name of the Resource Group in which the Firewall exists. Changing this forces a new resource to be created. @@ -80,6 +82,7 @@ type FirewallNetworkRuleCollectionParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // One or more rule blocks as defined below. + // +kubebuilder:validation:Optional Rule []FirewallNetworkRuleCollectionRuleParameters `json:"rule,omitempty" tf:"rule,omitempty"` } @@ -146,30 +149,39 @@ type FirewallNetworkRuleCollectionRuleObservation struct { type FirewallNetworkRuleCollectionRuleParameters struct { // Specifies a description for the rule. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // Either a list of destination IP addresses and/or IP ranges, or a list of destination Service Tags. + // +kubebuilder:validation:Optional DestinationAddresses []*string `json:"destinationAddresses,omitempty" tf:"destination_addresses,omitempty"` // A list of destination FQDNS for the rule. + // +kubebuilder:validation:Optional DestinationFqdns []*string `json:"destinationFqdns,omitempty" tf:"destination_fqdns,omitempty"` // A list of destination IP Group IDs for the rule. + // +kubebuilder:validation:Optional DestinationIPGroups []*string `json:"destinationIpGroups,omitempty" tf:"destination_ip_groups,omitempty"` // A list of destination ports. + // +kubebuilder:validation:Optional DestinationPorts []*string `json:"destinationPorts,omitempty" tf:"destination_ports,omitempty"` // Specifies the name of the rule. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A list of protocols. Possible values are Any, ICMP, TCP and UDP. + // +kubebuilder:validation:Optional Protocols []*string `json:"protocols,omitempty" tf:"protocols,omitempty"` // A list of source IP addresses and/or IP ranges. + // +kubebuilder:validation:Optional SourceAddresses []*string `json:"sourceAddresses,omitempty" tf:"source_addresses,omitempty"` // A list of IP Group IDs for the rule. + // +kubebuilder:validation:Optional SourceIPGroups []*string `json:"sourceIpGroups,omitempty" tf:"source_ip_groups,omitempty"` } diff --git a/apis/network/v1beta1/zz_firewallpolicy_types.go b/apis/network/v1beta1/zz_firewallpolicy_types.go index f82b8b720..b715d7a3d 100755 --- a/apis/network/v1beta1/zz_firewallpolicy_types.go +++ b/apis/network/v1beta1/zz_firewallpolicy_types.go @@ -34,9 +34,11 @@ type DNSObservation struct { type DNSParameters struct { // Whether to enable DNS proxy on Firewalls attached to this Firewall Policy? Defaults to false. + // +kubebuilder:validation:Optional ProxyEnabled *bool `json:"proxyEnabled,omitempty" tf:"proxy_enabled,omitempty"` // A list of custom DNS servers' IP addresses. + // +kubebuilder:validation:Optional Servers []*string `json:"servers,omitempty" tf:"servers,omitempty"` } @@ -85,21 +87,27 @@ type ExplicitProxyObservation struct { type ExplicitProxyParameters struct { // Whether the pac file port and url need to be provided. + // +kubebuilder:validation:Optional EnablePacFile *bool `json:"enablePacFile,omitempty" tf:"enable_pac_file,omitempty"` // Whether the explicit proxy is enabled for this Firewall Policy. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The port number for explicit http protocol. + // +kubebuilder:validation:Optional HTTPPort *float64 `json:"httpPort,omitempty" tf:"http_port,omitempty"` // The port number for explicit proxy https protocol. + // +kubebuilder:validation:Optional HTTPSPort *float64 `json:"httpsPort,omitempty" tf:"https_port,omitempty"` // Specifies a SAS URL for PAC file. + // +kubebuilder:validation:Optional PacFile *string `json:"pacFile,omitempty" tf:"pac_file,omitempty"` // Specifies a port number for firewall to serve PAC file. + // +kubebuilder:validation:Optional PacFilePort *float64 `json:"pacFilePort,omitempty" tf:"pac_file_port,omitempty"` } @@ -124,9 +132,11 @@ type FirewallPolicyIdentityObservation struct { type FirewallPolicyIdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Firewall Policy. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Firewall Policy. Only possible value is UserAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -244,30 +254,39 @@ type FirewallPolicyObservation struct { type FirewallPolicyParameters struct { // Whether enable auto learn private ip range. + // +kubebuilder:validation:Optional AutoLearnPrivateRangesEnabled *bool `json:"autoLearnPrivateRangesEnabled,omitempty" tf:"auto_learn_private_ranges_enabled,omitempty"` // The ID of the base Firewall Policy. + // +kubebuilder:validation:Optional BasePolicyID *string `json:"basePolicyId,omitempty" tf:"base_policy_id,omitempty"` // A dns block as defined below. + // +kubebuilder:validation:Optional DNS []DNSParameters `json:"dns,omitempty" tf:"dns,omitempty"` // A explicit_proxy block as defined below. + // +kubebuilder:validation:Optional ExplicitProxy []ExplicitProxyParameters `json:"explicitProxy,omitempty" tf:"explicit_proxy,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []FirewallPolicyIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // An insights block as defined below. + // +kubebuilder:validation:Optional Insights []InsightsParameters `json:"insights,omitempty" tf:"insights,omitempty"` // A intrusion_detection block as defined below. + // +kubebuilder:validation:Optional IntrusionDetection []IntrusionDetectionParameters `json:"intrusionDetection,omitempty" tf:"intrusion_detection,omitempty"` // The Azure Region where the Firewall Policy should exist. Changing this forces a new Firewall Policy to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // A list of private IP ranges to which traffic will not be SNAT. + // +kubebuilder:validation:Optional PrivateIPRanges []*string `json:"privateIpRanges,omitempty" tf:"private_ip_ranges,omitempty"` // The name of the Resource Group where the Firewall Policy should exist. Changing this forces a new Firewall Policy to be created. @@ -284,21 +303,27 @@ type FirewallPolicyParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Whether SQL Redirect traffic filtering is allowed. Enabling this flag requires no rule using ports between 11000-11999. + // +kubebuilder:validation:Optional SQLRedirectAllowed *bool `json:"sqlRedirectAllowed,omitempty" tf:"sql_redirect_allowed,omitempty"` // The SKU Tier of the Firewall Policy. Possible values are Standard, Premium and Basic. Changing this forces a new Firewall Policy to be created. + // +kubebuilder:validation:Optional Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // A tls_certificate block as defined below. + // +kubebuilder:validation:Optional TLSCertificate []TLSCertificateParameters `json:"tlsCertificate,omitempty" tf:"tls_certificate,omitempty"` // A mapping of tags which should be assigned to the Firewall Policy. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // A threat_intelligence_allowlist block as defined below. + // +kubebuilder:validation:Optional ThreatIntelligenceAllowlist []ThreatIntelligenceAllowlistParameters `json:"threatIntelligenceAllowlist,omitempty" tf:"threat_intelligence_allowlist,omitempty"` // The operation mode for Threat Intelligence. Possible values are Alert, Deny and Off. Defaults to Alert. + // +kubebuilder:validation:Optional ThreatIntelligenceMode *string `json:"threatIntelligenceMode,omitempty" tf:"threat_intelligence_mode,omitempty"` } @@ -335,15 +360,19 @@ type InsightsObservation struct { type InsightsParameters struct { // The ID of the default Log Analytics Workspace that the Firewalls associated with this Firewall Policy will send their logs to, when there is no location matches in the log_analytics_workspace. + // +kubebuilder:validation:Optional DefaultLogAnalyticsWorkspaceID *string `json:"defaultLogAnalyticsWorkspaceId,omitempty" tf:"default_log_analytics_workspace_id,omitempty"` // Whether the insights functionality is enabled for this Firewall Policy. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // A list of log_analytics_workspace block as defined below. + // +kubebuilder:validation:Optional LogAnalyticsWorkspace []LogAnalyticsWorkspaceParameters `json:"logAnalyticsWorkspace,omitempty" tf:"log_analytics_workspace,omitempty"` // The log retention period in days. + // +kubebuilder:validation:Optional RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` } @@ -380,15 +409,19 @@ type IntrusionDetectionObservation struct { type IntrusionDetectionParameters struct { // In which mode you want to run intrusion detection: Off, Alert or Deny. + // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // A list of Private IP address ranges to identify traffic direction. By default, only ranges defined by IANA RFC 1918 are considered private IP addresses. + // +kubebuilder:validation:Optional PrivateRanges []*string `json:"privateRanges,omitempty" tf:"private_ranges,omitempty"` // One or more signature_overrides blocks as defined below. + // +kubebuilder:validation:Optional SignatureOverrides []SignatureOverridesParameters `json:"signatureOverrides,omitempty" tf:"signature_overrides,omitempty"` // One or more traffic_bypass blocks as defined below. + // +kubebuilder:validation:Optional TrafficBypass []TrafficBypassParameters `json:"trafficBypass,omitempty" tf:"traffic_bypass,omitempty"` } @@ -413,9 +446,11 @@ type LogAnalyticsWorkspaceObservation struct { type LogAnalyticsWorkspaceParameters struct { // The location of the Firewalls, that when matches this Log Analytics Workspace will be used to consume their logs. + // +kubebuilder:validation:Optional FirewallLocation *string `json:"firewallLocation,omitempty" tf:"firewall_location,omitempty"` // 12-digit number (id) which identifies your signature. + // +kubebuilder:validation:Optional ID *string `json:"id,omitempty" tf:"id,omitempty"` } @@ -440,9 +475,11 @@ type SignatureOverridesObservation struct { type SignatureOverridesParameters struct { // 12-digit number (id) which identifies your signature. + // +kubebuilder:validation:Optional ID *string `json:"id,omitempty" tf:"id,omitempty"` // state can be any of Off, Alert or Deny. + // +kubebuilder:validation:Optional State *string `json:"state,omitempty" tf:"state,omitempty"` } @@ -467,9 +504,11 @@ type TLSCertificateObservation struct { type TLSCertificateParameters struct { // The ID of the Key Vault, where the secret or certificate is stored. + // +kubebuilder:validation:Optional KeyVaultSecretID *string `json:"keyVaultSecretId,omitempty" tf:"key_vault_secret_id,omitempty"` // The name of the certificate. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -494,9 +533,11 @@ type ThreatIntelligenceAllowlistObservation struct { type ThreatIntelligenceAllowlistParameters struct { // A list of FQDNs that will be skipped for threat detection. + // +kubebuilder:validation:Optional Fqdns []*string `json:"fqdns,omitempty" tf:"fqdns,omitempty"` // A list of IP addresses or CIDR ranges that will be skipped for threat detection. + // +kubebuilder:validation:Optional IPAddresses []*string `json:"ipAddresses,omitempty" tf:"ip_addresses,omitempty"` } @@ -557,27 +598,35 @@ type TrafficBypassObservation struct { type TrafficBypassParameters struct { // The description for this bypass traffic setting. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // Specifies a list of destination IP addresses that shall be bypassed by intrusion detection. + // +kubebuilder:validation:Optional DestinationAddresses []*string `json:"destinationAddresses,omitempty" tf:"destination_addresses,omitempty"` // Specifies a list of destination IP groups that shall be bypassed by intrusion detection. + // +kubebuilder:validation:Optional DestinationIPGroups []*string `json:"destinationIpGroups,omitempty" tf:"destination_ip_groups,omitempty"` // Specifies a list of destination IP ports that shall be bypassed by intrusion detection. + // +kubebuilder:validation:Optional DestinationPorts []*string `json:"destinationPorts,omitempty" tf:"destination_ports,omitempty"` // The name which should be used for this bypass traffic setting. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The protocols any of ANY, TCP, ICMP, UDP that shall be bypassed by intrusion detection. + // +kubebuilder:validation:Optional Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` // Specifies a list of source addresses that shall be bypassed by intrusion detection. + // +kubebuilder:validation:Optional SourceAddresses []*string `json:"sourceAddresses,omitempty" tf:"source_addresses,omitempty"` // Specifies a list of source IP groups that shall be bypassed by intrusion detection. + // +kubebuilder:validation:Optional SourceIPGroups []*string `json:"sourceIpGroups,omitempty" tf:"source_ip_groups,omitempty"` } diff --git a/apis/network/v1beta1/zz_firewallpolicyrulecollectiongroup_types.go b/apis/network/v1beta1/zz_firewallpolicyrulecollectiongroup_types.go index a7e5f4e78..b6a3b8914 100755 --- a/apis/network/v1beta1/zz_firewallpolicyrulecollectiongroup_types.go +++ b/apis/network/v1beta1/zz_firewallpolicyrulecollectiongroup_types.go @@ -46,15 +46,19 @@ type ApplicationRuleCollectionObservation struct { type ApplicationRuleCollectionParameters struct { // The action to take for the application rules in this collection. Possible values are Allow and Deny. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // The name which should be used for this application rule collection. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The priority of the application rule collection. The range is 100 - 65000. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // One or more application_rule (application rule) blocks as defined below. + // +kubebuilder:validation:Optional Rule []ApplicationRuleCollectionRuleParameters `json:"rule,omitempty" tf:"rule,omitempty"` } @@ -133,36 +137,47 @@ type ApplicationRuleCollectionRuleObservation struct { type ApplicationRuleCollectionRuleParameters struct { // The description which should be used for this rule. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // Specifies a list of destination IP addresses (including CIDR, IP range and *) or Service Tags. + // +kubebuilder:validation:Optional DestinationAddresses []*string `json:"destinationAddresses,omitempty" tf:"destination_addresses,omitempty"` // Specifies a list of destination FQDN tags. + // +kubebuilder:validation:Optional DestinationFqdnTags []*string `json:"destinationFqdnTags,omitempty" tf:"destination_fqdn_tags,omitempty"` // Specifies a list of destination FQDNs. + // +kubebuilder:validation:Optional DestinationFqdns []*string `json:"destinationFqdns,omitempty" tf:"destination_fqdns,omitempty"` // Specifies a list of destination URLs for which policy should hold. Needs Premium SKU for Firewall Policy. Conflicts with destination_fqdns. + // +kubebuilder:validation:Optional DestinationUrls []*string `json:"destinationUrls,omitempty" tf:"destination_urls,omitempty"` // The name which should be used for this network rule collection. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies a list of network protocols this rule applies to. Possible values are Any, TCP, UDP, ICMP. + // +kubebuilder:validation:Optional Protocols []ProtocolsParameters `json:"protocols,omitempty" tf:"protocols,omitempty"` // Specifies a list of source IP addresses (including CIDR, IP range and *). + // +kubebuilder:validation:Optional SourceAddresses []*string `json:"sourceAddresses,omitempty" tf:"source_addresses,omitempty"` // Specifies a list of source IP groups. + // +kubebuilder:validation:Optional SourceIPGroups []*string `json:"sourceIpGroups,omitempty" tf:"source_ip_groups,omitempty"` // Boolean specifying if TLS shall be terminated (true) or not (false). Must be true when using destination_urls. Needs Premium SKU for Firewall Policy. + // +kubebuilder:validation:Optional TerminateTLS *bool `json:"terminateTls,omitempty" tf:"terminate_tls,omitempty"` // Specifies a list of web categories to which access is denied or allowed depending on the value of action above. Needs Premium SKU for Firewall Policy. + // +kubebuilder:validation:Optional WebCategories []*string `json:"webCategories,omitempty" tf:"web_categories,omitempty"` } @@ -205,6 +220,7 @@ type FirewallPolicyRuleCollectionGroupObservation struct { type FirewallPolicyRuleCollectionGroupParameters struct { // One or more application_rule_collection blocks as defined below. + // +kubebuilder:validation:Optional ApplicationRuleCollection []ApplicationRuleCollectionParameters `json:"applicationRuleCollection,omitempty" tf:"application_rule_collection,omitempty"` // The ID of the Firewall Policy where the Firewall Policy Rule Collection Group should exist. Changing this forces a new Firewall Policy Rule Collection Group to be created. @@ -222,12 +238,15 @@ type FirewallPolicyRuleCollectionGroupParameters struct { FirewallPolicyIDSelector *v1.Selector `json:"firewallPolicyIdSelector,omitempty" tf:"-"` // One or more nat_rule_collection blocks as defined below. + // +kubebuilder:validation:Optional NATRuleCollection []NATRuleCollectionParameters `json:"natRuleCollection,omitempty" tf:"nat_rule_collection,omitempty"` // One or more network_rule_collection blocks as defined below. + // +kubebuilder:validation:Optional NetworkRuleCollection []NetworkRuleCollectionParameters `json:"networkRuleCollection,omitempty" tf:"network_rule_collection,omitempty"` // The priority of the Firewall Policy Rule Collection Group. The range is 100-65000. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` } @@ -264,15 +283,19 @@ type NATRuleCollectionObservation struct { type NATRuleCollectionParameters struct { // The action to take for the NAT rules in this collection. Currently, the only possible value is Dnat. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // The name which should be used for this NAT rule collection. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The priority of the NAT rule collection. The range is 100 - 65000. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // A nat_rule (NAT rule) block as defined below. + // +kubebuilder:validation:Optional Rule []NATRuleCollectionRuleParameters `json:"rule,omitempty" tf:"rule,omitempty"` } @@ -339,30 +362,39 @@ type NATRuleCollectionRuleObservation struct { type NATRuleCollectionRuleParameters struct { // The destination IP address (including CIDR). + // +kubebuilder:validation:Optional DestinationAddress *string `json:"destinationAddress,omitempty" tf:"destination_address,omitempty"` // Specifies a list of destination ports. + // +kubebuilder:validation:Optional DestinationPorts []*string `json:"destinationPorts,omitempty" tf:"destination_ports,omitempty"` // The name which should be used for this network rule collection. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies a list of network protocols this rule applies to. Possible values are Any, TCP, UDP, ICMP. + // +kubebuilder:validation:Optional Protocols []*string `json:"protocols,omitempty" tf:"protocols,omitempty"` // Specifies a list of source IP addresses (including CIDR, IP range and *). + // +kubebuilder:validation:Optional SourceAddresses []*string `json:"sourceAddresses,omitempty" tf:"source_addresses,omitempty"` // Specifies a list of source IP groups. + // +kubebuilder:validation:Optional SourceIPGroups []*string `json:"sourceIpGroups,omitempty" tf:"source_ip_groups,omitempty"` // Specifies the translated address. + // +kubebuilder:validation:Optional TranslatedAddress *string `json:"translatedAddress,omitempty" tf:"translated_address,omitempty"` // Specifies the translated FQDN. + // +kubebuilder:validation:Optional TranslatedFqdn *string `json:"translatedFqdn,omitempty" tf:"translated_fqdn,omitempty"` // Specifies the translated port. + // +kubebuilder:validation:Optional TranslatedPort *float64 `json:"translatedPort,omitempty" tf:"translated_port,omitempty"` } @@ -399,15 +431,19 @@ type NetworkRuleCollectionObservation struct { type NetworkRuleCollectionParameters struct { // The action to take for the network rules in this collection. Possible values are Allow and Deny. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // The name which should be used for this network rule collection. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The priority of the network rule collection. The range is 100 - 65000. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // One or more network_rule (network rule) blocks as defined below. + // +kubebuilder:validation:Optional Rule []NetworkRuleCollectionRuleParameters `json:"rule,omitempty" tf:"rule,omitempty"` } @@ -468,27 +504,35 @@ type NetworkRuleCollectionRuleObservation struct { type NetworkRuleCollectionRuleParameters struct { // Specifies a list of destination IP addresses (including CIDR, IP range and *) or Service Tags. + // +kubebuilder:validation:Optional DestinationAddresses []*string `json:"destinationAddresses,omitempty" tf:"destination_addresses,omitempty"` // Specifies a list of destination FQDNs. + // +kubebuilder:validation:Optional DestinationFqdns []*string `json:"destinationFqdns,omitempty" tf:"destination_fqdns,omitempty"` // Specifies a list of destination IP groups. + // +kubebuilder:validation:Optional DestinationIPGroups []*string `json:"destinationIpGroups,omitempty" tf:"destination_ip_groups,omitempty"` // Specifies a list of destination ports. + // +kubebuilder:validation:Optional DestinationPorts []*string `json:"destinationPorts,omitempty" tf:"destination_ports,omitempty"` // The name which should be used for this network rule collection. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies a list of network protocols this rule applies to. Possible values are Any, TCP, UDP, ICMP. + // +kubebuilder:validation:Optional Protocols []*string `json:"protocols,omitempty" tf:"protocols,omitempty"` // Specifies a list of source IP addresses (including CIDR, IP range and *). + // +kubebuilder:validation:Optional SourceAddresses []*string `json:"sourceAddresses,omitempty" tf:"source_addresses,omitempty"` // Specifies a list of source IP groups. + // +kubebuilder:validation:Optional SourceIPGroups []*string `json:"sourceIpGroups,omitempty" tf:"source_ip_groups,omitempty"` } @@ -513,9 +557,11 @@ type ProtocolsObservation struct { type ProtocolsParameters struct { // Port number of the protocol. Range is 0-64000. + // +kubebuilder:validation:Optional Port *float64 `json:"port,omitempty" tf:"port,omitempty"` // Protocol type. Possible values are Http and Https. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/network/v1beta1/zz_frontdoor_types.go b/apis/network/v1beta1/zz_frontdoor_types.go index bf6e0510c..7d5483663 100755 --- a/apis/network/v1beta1/zz_frontdoor_types.go +++ b/apis/network/v1beta1/zz_frontdoor_types.go @@ -64,24 +64,31 @@ type BackendObservation struct { type BackendParameters struct { // Location of the backend (IP address or FQDN) + // +kubebuilder:validation:Optional Address *string `json:"address,omitempty" tf:"address,omitempty"` // Enable or Disable use of this Backend Routing Rule. Permitted values are true or false. Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The HTTP TCP port number. Possible values are between 1 - 65535. + // +kubebuilder:validation:Optional HTTPPort *float64 `json:"httpPort,omitempty" tf:"http_port,omitempty"` // The HTTPS TCP port number. Possible values are between 1 - 65535. + // +kubebuilder:validation:Optional HTTPSPort *float64 `json:"httpsPort,omitempty" tf:"https_port,omitempty"` // The value to use as the host header sent to the backend. + // +kubebuilder:validation:Optional HostHeader *string `json:"hostHeader,omitempty" tf:"host_header,omitempty"` // Priority to use for load balancing. Higher priorities will not be used for load balancing if any lower priority backend is healthy. Defaults to 1. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // Weight of this endpoint for load balancing purposes. Defaults to 50. + // +kubebuilder:validation:Optional Weight *float64 `json:"weight,omitempty" tf:"weight,omitempty"` } @@ -133,21 +140,27 @@ type BackendPoolHealthProbeObservation struct { type BackendPoolHealthProbeParameters struct { // Is this health probe enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The number of seconds between each Health Probe. Defaults to 120. + // +kubebuilder:validation:Optional IntervalInSeconds *float64 `json:"intervalInSeconds,omitempty" tf:"interval_in_seconds,omitempty"` // Specifies the name of the Health Probe. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The path to use for the Health Probe. Default is /. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` // Specifies HTTP method the health probe uses when querying the backend pool instances. Possible values include: Get and Head. Defaults to GET. + // +kubebuilder:validation:Optional ProbeMethod *string `json:"probeMethod,omitempty" tf:"probe_method,omitempty"` // Protocol scheme to use for the Health Probe. Possible values are Http and Https. Defaults to Http. + // +kubebuilder:validation:Optional Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` } @@ -202,15 +215,19 @@ type BackendPoolLoadBalancingObservation struct { type BackendPoolLoadBalancingParameters struct { // The additional latency in milliseconds for probes to fall into the lowest latency bucket. Defaults to 0. + // +kubebuilder:validation:Optional AdditionalLatencyMilliseconds *float64 `json:"additionalLatencyMilliseconds,omitempty" tf:"additional_latency_milliseconds,omitempty"` // Specifies the name of the Load Balancer. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The number of samples to consider for load balancing decisions. Defaults to 4. + // +kubebuilder:validation:Optional SampleSize *float64 `json:"sampleSize,omitempty" tf:"sample_size,omitempty"` // The number of samples within the sample period that must succeed. Defaults to 2. + // +kubebuilder:validation:Optional SuccessfulSamplesRequired *float64 `json:"successfulSamplesRequired,omitempty" tf:"successful_samples_required,omitempty"` } @@ -235,15 +252,19 @@ type BackendPoolObservation struct { type BackendPoolParameters struct { // A backend block as defined below. + // +kubebuilder:validation:Optional Backend []BackendParameters `json:"backend,omitempty" tf:"backend,omitempty"` // Specifies the name of the backend_pool_health_probe block within this resource to use for this Backend Pool. + // +kubebuilder:validation:Optional HealthProbeName *string `json:"healthProbeName,omitempty" tf:"health_probe_name,omitempty"` // Specifies the name of the backend_pool_load_balancing block within this resource to use for this Backend Pool. + // +kubebuilder:validation:Optional LoadBalancingName *string `json:"loadBalancingName,omitempty" tf:"load_balancing_name,omitempty"` // Specifies the name of the Backend Pool. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -268,9 +289,11 @@ type BackendPoolSettingsObservation struct { type BackendPoolSettingsParameters struct { // Specifies the send and receive timeout on forwarding request to the backend. When the timeout is reached, the request fails and returns. Possible values are between 0 - 240. Defaults to 60. + // +kubebuilder:validation:Optional BackendPoolsSendReceiveTimeoutSeconds *float64 `json:"backendPoolsSendReceiveTimeoutSeconds,omitempty" tf:"backend_pools_send_receive_timeout_seconds,omitempty"` // Enforce certificate name check on HTTPS requests to all backend pools, this setting will have no effect on HTTP requests. Permitted values are true or false. + // +kubebuilder:validation:Optional EnforceBackendPoolsCertificateNameCheck *bool `json:"enforceBackendPoolsCertificateNameCheck,omitempty" tf:"enforce_backend_pools_certificate_name_check,omitempty"` } @@ -349,27 +372,35 @@ type ForwardingConfigurationObservation struct { type ForwardingConfigurationParameters struct { // Specifies the name of the Backend Pool to forward the incoming traffic to. + // +kubebuilder:validation:Optional BackendPoolName *string `json:"backendPoolName,omitempty" tf:"backend_pool_name,omitempty"` // Specify the minimum caching duration (in ISO8601 notation e.g. P1DT2H for 1 day and 2 hours). Needs to be greater than 0 and smaller than 365 days. cache_duration works only in combination with cache_enabled set to true. + // +kubebuilder:validation:Optional CacheDuration *string `json:"cacheDuration,omitempty" tf:"cache_duration,omitempty"` // Specifies whether to Enable caching or not. Valid options are true or false. Defaults to false. + // +kubebuilder:validation:Optional CacheEnabled *bool `json:"cacheEnabled,omitempty" tf:"cache_enabled,omitempty"` // Defines cache behaviour in relation to query string parameters. Valid options are StripAll, StripAllExcept, StripOnly or StripNone. Defaults to StripAll. + // +kubebuilder:validation:Optional CacheQueryParameterStripDirective *string `json:"cacheQueryParameterStripDirective,omitempty" tf:"cache_query_parameter_strip_directive,omitempty"` // Specify query parameters (array). Works only in combination with cache_query_parameter_strip_directive set to StripAllExcept or StripOnly. + // +kubebuilder:validation:Optional CacheQueryParameters []*string `json:"cacheQueryParameters,omitempty" tf:"cache_query_parameters,omitempty"` // Whether to use dynamic compression when caching. Valid options are true or false. Defaults to false. + // +kubebuilder:validation:Optional CacheUseDynamicCompression *bool `json:"cacheUseDynamicCompression,omitempty" tf:"cache_use_dynamic_compression,omitempty"` // Path to use when constructing the request to forward to the backend. This functions as a URL Rewrite. Default behaviour preserves the URL path. + // +kubebuilder:validation:Optional CustomForwardingPath *string `json:"customForwardingPath,omitempty" tf:"custom_forwarding_path,omitempty"` // Protocol to use when redirecting. Valid options are HttpOnly, HttpsOnly, or MatchRequest. Defaults to HttpsOnly. + // +kubebuilder:validation:Optional ForwardingProtocol *string `json:"forwardingProtocol,omitempty" tf:"forwarding_protocol,omitempty"` } @@ -465,24 +496,31 @@ type FrontDoorObservation struct { type FrontDoorParameters struct { // A backend_pool block as defined below. + // +kubebuilder:validation:Optional BackendPool []BackendPoolParameters `json:"backendPool,omitempty" tf:"backend_pool,omitempty"` // A backend_pool_health_probe block as defined below. + // +kubebuilder:validation:Optional BackendPoolHealthProbe []BackendPoolHealthProbeParameters `json:"backendPoolHealthProbe,omitempty" tf:"backend_pool_health_probe,omitempty"` // A backend_pool_load_balancing block as defined below. + // +kubebuilder:validation:Optional BackendPoolLoadBalancing []BackendPoolLoadBalancingParameters `json:"backendPoolLoadBalancing,omitempty" tf:"backend_pool_load_balancing,omitempty"` // A backend_pool_settings block as defined below. + // +kubebuilder:validation:Optional BackendPoolSettings []BackendPoolSettingsParameters `json:"backendPoolSettings,omitempty" tf:"backend_pool_settings,omitempty"` // A friendly name for the Front Door service. + // +kubebuilder:validation:Optional FriendlyName *string `json:"friendlyName,omitempty" tf:"friendly_name,omitempty"` // A frontend_endpoint block as defined below. + // +kubebuilder:validation:Optional FrontendEndpoint []FrontendEndpointParameters `json:"frontendEndpoint,omitempty" tf:"frontend_endpoint,omitempty"` // Should the Front Door Load Balancer be Enabled? Defaults to true. + // +kubebuilder:validation:Optional LoadBalancerEnabled *bool `json:"loadBalancerEnabled,omitempty" tf:"load_balancer_enabled,omitempty"` // Specifies the name of the Resource Group in which the Front Door service should exist. Changing this forces a new resource to be created. @@ -499,9 +537,11 @@ type FrontDoorParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A routing_rule block as defined below. + // +kubebuilder:validation:Optional RoutingRule []RoutingRuleParameters `json:"routingRule,omitempty" tf:"routing_rule,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -547,18 +587,23 @@ type FrontendEndpointObservation struct { type FrontendEndpointParameters struct { // Specifies the host name of the frontend_endpoint. Must be a domain name. In order to use a name.azurefd.net domain, the name value must match the Front Door name. + // +kubebuilder:validation:Optional HostName *string `json:"hostName,omitempty" tf:"host_name,omitempty"` // Specifies the name of the frontend_endpoint. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Whether to allow session affinity on this host. Valid options are true or false Defaults to false. + // +kubebuilder:validation:Optional SessionAffinityEnabled *bool `json:"sessionAffinityEnabled,omitempty" tf:"session_affinity_enabled,omitempty"` // The TTL to use in seconds for session affinity, if applicable. Defaults to 0. + // +kubebuilder:validation:Optional SessionAffinityTTLSeconds *float64 `json:"sessionAffinityTtlSeconds,omitempty" tf:"session_affinity_ttl_seconds,omitempty"` // Defines the Web Application Firewall policy ID for each host. + // +kubebuilder:validation:Optional WebApplicationFirewallPolicyLinkID *string `json:"webApplicationFirewallPolicyLinkId,omitempty" tf:"web_application_firewall_policy_link_id,omitempty"` } @@ -616,24 +661,31 @@ type RoutingRuleObservation struct { type RoutingRuleParameters struct { // Protocol schemes to match for the Backend Routing Rule. Possible values are Http and Https. + // +kubebuilder:validation:Optional AcceptedProtocols []*string `json:"acceptedProtocols,omitempty" tf:"accepted_protocols,omitempty"` // Enable or Disable use of this Backend Routing Rule. Permitted values are true or false. Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // A forwarding_configuration block as defined below. + // +kubebuilder:validation:Optional ForwardingConfiguration []ForwardingConfigurationParameters `json:"forwardingConfiguration,omitempty" tf:"forwarding_configuration,omitempty"` // The names of the frontend_endpoint blocks within this resource to associate with this routing_rule. + // +kubebuilder:validation:Optional FrontendEndpoints []*string `json:"frontendEndpoints,omitempty" tf:"frontend_endpoints,omitempty"` // Specifies the name of the Routing Rule. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The route patterns for the Backend Routing Rule. + // +kubebuilder:validation:Optional PatternsToMatch []*string `json:"patternsToMatch,omitempty" tf:"patterns_to_match,omitempty"` // A redirect_configuration block as defined below. + // +kubebuilder:validation:Optional RedirectConfiguration []RoutingRuleRedirectConfigurationParameters `json:"redirectConfiguration,omitempty" tf:"redirect_configuration,omitempty"` } @@ -682,21 +734,27 @@ type RoutingRuleRedirectConfigurationObservation struct { type RoutingRuleRedirectConfigurationParameters struct { // The destination fragment in the portion of URL after '#'. Set this to add a fragment to the redirect URL. + // +kubebuilder:validation:Optional CustomFragment *string `json:"customFragment,omitempty" tf:"custom_fragment,omitempty"` // Set this to change the URL for the redirection. + // +kubebuilder:validation:Optional CustomHost *string `json:"customHost,omitempty" tf:"custom_host,omitempty"` // The path to retain as per the incoming request, or update in the URL for the redirection. + // +kubebuilder:validation:Optional CustomPath *string `json:"customPath,omitempty" tf:"custom_path,omitempty"` // Replace any existing query string from the incoming request URL. + // +kubebuilder:validation:Optional CustomQueryString *string `json:"customQueryString,omitempty" tf:"custom_query_string,omitempty"` // Protocol to use when redirecting. Valid options are HttpOnly, HttpsOnly, or MatchRequest. + // +kubebuilder:validation:Optional RedirectProtocol *string `json:"redirectProtocol,omitempty" tf:"redirect_protocol,omitempty"` // Status code for the redirect. Valida options are Moved, Found, TemporaryRedirect, PermanentRedirect. + // +kubebuilder:validation:Optional RedirectType *string `json:"redirectType,omitempty" tf:"redirect_type,omitempty"` } diff --git a/apis/network/v1beta1/zz_frontdoorcustomhttpsconfiguration_types.go b/apis/network/v1beta1/zz_frontdoorcustomhttpsconfiguration_types.go index a05ea82cf..1d3d23ce4 100755 --- a/apis/network/v1beta1/zz_frontdoorcustomhttpsconfiguration_types.go +++ b/apis/network/v1beta1/zz_frontdoorcustomhttpsconfiguration_types.go @@ -50,9 +50,11 @@ type CustomHTTPSConfigurationObservation struct { type CustomHTTPSConfigurationParameters struct { // The name of the Key Vault secret representing the full certificate PFX. + // +kubebuilder:validation:Optional AzureKeyVaultCertificateSecretName *string `json:"azureKeyVaultCertificateSecretName,omitempty" tf:"azure_key_vault_certificate_secret_name,omitempty"` // The version of the Key Vault secret representing the full certificate PFX. + // +kubebuilder:validation:Optional AzureKeyVaultCertificateSecretVersion *string `json:"azureKeyVaultCertificateSecretVersion,omitempty" tf:"azure_key_vault_certificate_secret_version,omitempty"` // The ID of the Key Vault containing the SSL certificate. @@ -70,6 +72,7 @@ type CustomHTTPSConfigurationParameters struct { AzureKeyVaultCertificateVaultIDSelector *v1.Selector `json:"azureKeyVaultCertificateVaultIdSelector,omitempty" tf:"-"` // Certificate source to encrypted HTTPS traffic with. Allowed values are FrontDoor or AzureKeyVault. Defaults to FrontDoor. + // +kubebuilder:validation:Optional CertificateSource *string `json:"certificateSource,omitempty" tf:"certificate_source,omitempty"` } @@ -103,12 +106,15 @@ type FrontdoorCustomHTTPSConfigurationObservation struct { type FrontdoorCustomHTTPSConfigurationParameters struct { // A custom_https_configuration block as defined above. + // +kubebuilder:validation:Optional CustomHTTPSConfiguration []CustomHTTPSConfigurationParameters `json:"customHttpsConfiguration,omitempty" tf:"custom_https_configuration,omitempty"` // Should the HTTPS protocol be enabled for this custom domain associated with the Front Door? + // +kubebuilder:validation:Optional CustomHTTPSProvisioningEnabled *bool `json:"customHttpsProvisioningEnabled,omitempty" tf:"custom_https_provisioning_enabled,omitempty"` // The ID of the Front Door Frontend Endpoint which this configuration refers to. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional FrontendEndpointID *string `json:"frontendEndpointId,omitempty" tf:"frontend_endpoint_id,omitempty"` } diff --git a/apis/network/v1beta1/zz_frontdoorfirewallpolicy_types.go b/apis/network/v1beta1/zz_frontdoorfirewallpolicy_types.go index 6becb4f23..2e01b67f2 100755 --- a/apis/network/v1beta1/zz_frontdoorfirewallpolicy_types.go +++ b/apis/network/v1beta1/zz_frontdoorfirewallpolicy_types.go @@ -70,27 +70,35 @@ type CustomRuleObservation struct { type CustomRuleParameters struct { // The action to perform when the rule is matched. Possible values are Allow, Block, Log, or Redirect. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // Is the rule is enabled or disabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // One or more match_condition block defined below. Can support up to 10 match_condition blocks. + // +kubebuilder:validation:Optional MatchCondition []MatchConditionParameters `json:"matchCondition,omitempty" tf:"match_condition,omitempty"` // Gets name of the resource that is unique within a policy. This name can be used to access the resource. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The priority of the rule. Rules with a lower value will be evaluated before rules with a higher value. Defaults to 1. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // The rate limit duration in minutes. Defaults to 1. + // +kubebuilder:validation:Optional RateLimitDurationInMinutes *float64 `json:"rateLimitDurationInMinutes,omitempty" tf:"rate_limit_duration_in_minutes,omitempty"` // The rate limit threshold. Defaults to 10. + // +kubebuilder:validation:Optional RateLimitThreshold *float64 `json:"rateLimitThreshold,omitempty" tf:"rate_limit_threshold,omitempty"` // The type of rule. Possible values are MatchRule or RateLimitRule. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -163,24 +171,31 @@ type FrontdoorFirewallPolicyObservation struct { type FrontdoorFirewallPolicyParameters struct { // If a custom_rule block's action type is block, this is the response body. The body must be specified in base64 encoding. + // +kubebuilder:validation:Optional CustomBlockResponseBody *string `json:"customBlockResponseBody,omitempty" tf:"custom_block_response_body,omitempty"` // If a custom_rule block's action type is block, this is the response status code. Possible values are 200, 403, 405, 406, or 429. + // +kubebuilder:validation:Optional CustomBlockResponseStatusCode *float64 `json:"customBlockResponseStatusCode,omitempty" tf:"custom_block_response_status_code,omitempty"` // One or more custom_rule blocks as defined below. + // +kubebuilder:validation:Optional CustomRule []CustomRuleParameters `json:"customRule,omitempty" tf:"custom_rule,omitempty"` // Is the policy a enabled state or disabled state. Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // One or more managed_rule blocks as defined below. + // +kubebuilder:validation:Optional ManagedRule []ManagedRuleParameters `json:"managedRule,omitempty" tf:"managed_rule,omitempty"` // The firewall policy mode. Possible values are Detection, Prevention and defaults to Prevention. + // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // If action type is redirect, this field represents redirect URL for the client. + // +kubebuilder:validation:Optional RedirectURL *string `json:"redirectUrl,omitempty" tf:"redirect_url,omitempty"` // The name of the resource group. Changing this forces a new resource to be created. @@ -197,6 +212,7 @@ type FrontdoorFirewallPolicyParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the Web Application Firewall Policy. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -227,12 +243,15 @@ type ManagedRuleExclusionObservation struct { type ManagedRuleExclusionParameters struct { // The request variable to compare with. Possible values are Cookies, PostArgs, QueryString, RemoteAddr, RequestBody, RequestHeader, RequestMethod, RequestUri, or SocketAddr. + // +kubebuilder:validation:Optional MatchVariable *string `json:"matchVariable,omitempty" tf:"match_variable,omitempty"` // Comparison type to use for matching with the variable value. Possible values are Any, BeginsWith, Contains, EndsWith, Equal, GeoMatch, GreaterThan, GreaterThanOrEqual, IPMatch, LessThan, LessThanOrEqual or RegEx. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Match against a specific key if the match_variable is QueryString, PostArgs, RequestHeader or Cookies. + // +kubebuilder:validation:Optional Selector *string `json:"selector,omitempty" tf:"selector,omitempty"` } @@ -269,15 +288,19 @@ type ManagedRuleObservation struct { type ManagedRuleParameters struct { // One or more exclusion blocks as defined below. + // +kubebuilder:validation:Optional Exclusion []ManagedRuleExclusionParameters `json:"exclusion,omitempty" tf:"exclusion,omitempty"` // One or more override blocks as defined below. + // +kubebuilder:validation:Optional Override []OverrideParameters `json:"override,omitempty" tf:"override,omitempty"` // The name of the managed rule to use with this resource. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // The version on the managed rule to use with this resource. + // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` } @@ -326,21 +349,27 @@ type MatchConditionObservation struct { type MatchConditionParameters struct { // Up to 600 possible values to match. Limit is in total across all match_condition blocks and match_values arguments. String value itself can be up to 256 characters long. + // +kubebuilder:validation:Optional MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // The request variable to compare with. Possible values are Cookies, PostArgs, QueryString, RemoteAddr, RequestBody, RequestHeader, RequestMethod, RequestUri, or SocketAddr. + // +kubebuilder:validation:Optional MatchVariable *string `json:"matchVariable,omitempty" tf:"match_variable,omitempty"` // Should the result of the condition be negated. + // +kubebuilder:validation:Optional NegationCondition *bool `json:"negationCondition,omitempty" tf:"negation_condition,omitempty"` // Comparison type to use for matching with the variable value. Possible values are Any, BeginsWith, Contains, EndsWith, Equal, GeoMatch, GreaterThan, GreaterThanOrEqual, IPMatch, LessThan, LessThanOrEqual or RegEx. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Match against a specific key if the match_variable is QueryString, PostArgs, RequestHeader or Cookies. + // +kubebuilder:validation:Optional Selector *string `json:"selector,omitempty" tf:"selector,omitempty"` // Up to 5 transforms to apply. Possible values are Lowercase, RemoveNulls, Trim, Uppercase, URLDecode orURLEncode. + // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } @@ -371,12 +400,15 @@ type OverrideExclusionObservation struct { type OverrideExclusionParameters struct { // The request variable to compare with. Possible values are Cookies, PostArgs, QueryString, RemoteAddr, RequestBody, RequestHeader, RequestMethod, RequestUri, or SocketAddr. + // +kubebuilder:validation:Optional MatchVariable *string `json:"matchVariable,omitempty" tf:"match_variable,omitempty"` // Comparison type to use for matching with the variable value. Possible values are Any, BeginsWith, Contains, EndsWith, Equal, GeoMatch, GreaterThan, GreaterThanOrEqual, IPMatch, LessThan, LessThanOrEqual or RegEx. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Match against a specific key if the match_variable is QueryString, PostArgs, RequestHeader or Cookies. + // +kubebuilder:validation:Optional Selector *string `json:"selector,omitempty" tf:"selector,omitempty"` } @@ -407,12 +439,15 @@ type OverrideObservation struct { type OverrideParameters struct { // One or more exclusion blocks as defined below. + // +kubebuilder:validation:Optional Exclusion []OverrideExclusionParameters `json:"exclusion,omitempty" tf:"exclusion,omitempty"` // One or more rule blocks as defined below. If none are specified, all of the rules in the group will be disabled. + // +kubebuilder:validation:Optional Rule []OverrideRuleParameters `json:"rule,omitempty" tf:"rule,omitempty"` // The managed rule group to override. + // +kubebuilder:validation:Optional RuleGroupName *string `json:"ruleGroupName,omitempty" tf:"rule_group_name,omitempty"` } @@ -449,15 +484,19 @@ type OverrideRuleObservation struct { type OverrideRuleParameters struct { // The action to be applied when the rule matches. Possible values are Allow, Block, Log, or Redirect. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // Is the managed rule override enabled or disabled. Defaults to false + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // One or more exclusion blocks as defined below. + // +kubebuilder:validation:Optional Exclusion []RuleExclusionParameters `json:"exclusion,omitempty" tf:"exclusion,omitempty"` // Identifier for the managed rule. + // +kubebuilder:validation:Optional RuleID *string `json:"ruleId,omitempty" tf:"rule_id,omitempty"` } @@ -488,12 +527,15 @@ type RuleExclusionObservation struct { type RuleExclusionParameters struct { // The request variable to compare with. Possible values are Cookies, PostArgs, QueryString, RemoteAddr, RequestBody, RequestHeader, RequestMethod, RequestUri, or SocketAddr. + // +kubebuilder:validation:Optional MatchVariable *string `json:"matchVariable,omitempty" tf:"match_variable,omitempty"` // Comparison type to use for matching with the variable value. Possible values are Any, BeginsWith, Contains, EndsWith, Equal, GeoMatch, GreaterThan, GreaterThanOrEqual, IPMatch, LessThan, LessThanOrEqual or RegEx. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // Match against a specific key if the match_variable is QueryString, PostArgs, RequestHeader or Cookies. + // +kubebuilder:validation:Optional Selector *string `json:"selector,omitempty" tf:"selector,omitempty"` } diff --git a/apis/network/v1beta1/zz_frontdoorrulesengine_types.go b/apis/network/v1beta1/zz_frontdoorrulesengine_types.go index 588cdf793..d8496ea2b 100755 --- a/apis/network/v1beta1/zz_frontdoorrulesengine_types.go +++ b/apis/network/v1beta1/zz_frontdoorrulesengine_types.go @@ -34,9 +34,11 @@ type ActionObservation struct { type ActionParameters struct { // A request_header block as defined below. + // +kubebuilder:validation:Optional RequestHeader []RequestHeaderParameters `json:"requestHeader,omitempty" tf:"request_header,omitempty"` // A response_header block as defined below. + // +kubebuilder:validation:Optional ResponseHeader []ResponseHeaderParameters `json:"responseHeader,omitempty" tf:"response_header,omitempty"` } @@ -71,6 +73,7 @@ type FrontdoorRulesEngineObservation struct { type FrontdoorRulesEngineParameters struct { // Whether this Rules engine configuration is enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The name of the Front Door instance. Changing this forces a new resource to be created. @@ -100,6 +103,7 @@ type FrontdoorRulesEngineParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A rule block as defined below. + // +kubebuilder:validation:Optional Rule []FrontdoorRulesEngineRuleParameters `json:"rule,omitempty" tf:"rule,omitempty"` } @@ -136,15 +140,19 @@ type FrontdoorRulesEngineRuleObservation struct { type FrontdoorRulesEngineRuleParameters struct { // An action block as defined below. + // +kubebuilder:validation:Optional Action []ActionParameters `json:"action,omitempty" tf:"action,omitempty"` // One or more match_condition block as defined below. + // +kubebuilder:validation:Optional MatchCondition []RuleMatchConditionParameters `json:"matchCondition,omitempty" tf:"match_condition,omitempty"` // The name of the rule. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Priority of the rule, must be unique per rules engine definition. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` } @@ -175,12 +183,15 @@ type RequestHeaderObservation struct { type RequestHeaderParameters struct { // can be set to Overwrite, Append or Delete. + // +kubebuilder:validation:Optional HeaderActionType *string `json:"headerActionType,omitempty" tf:"header_action_type,omitempty"` // header name (string). + // +kubebuilder:validation:Optional HeaderName *string `json:"headerName,omitempty" tf:"header_name,omitempty"` // value name (string). + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -211,12 +222,15 @@ type ResponseHeaderObservation struct { type ResponseHeaderParameters struct { // can be set to Overwrite, Append or Delete. + // +kubebuilder:validation:Optional HeaderActionType *string `json:"headerActionType,omitempty" tf:"header_action_type,omitempty"` // header name (string). + // +kubebuilder:validation:Optional HeaderName *string `json:"headerName,omitempty" tf:"header_name,omitempty"` // value name (string). + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -265,21 +279,27 @@ type RuleMatchConditionObservation struct { type RuleMatchConditionParameters struct { // can be set to true or false to negate the given condition. Defaults to true. + // +kubebuilder:validation:Optional NegateCondition *bool `json:"negateCondition,omitempty" tf:"negate_condition,omitempty"` // can be set to Any, IPMatch, GeoMatch, Equal, Contains, LessThan, GreaterThan, LessThanOrEqual, GreaterThanOrEqual, BeginsWith or EndsWith + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // match against a specific key when variable is set to PostArgs or RequestHeader. It cannot be used with QueryString and RequestMethod. + // +kubebuilder:validation:Optional Selector *string `json:"selector,omitempty" tf:"selector,omitempty"` // can be set to one or more values out of Lowercase, RemoveNulls, Trim, Uppercase, UrlDecode and UrlEncode + // +kubebuilder:validation:Optional Transform []*string `json:"transform,omitempty" tf:"transform,omitempty"` // value name (string). + // +kubebuilder:validation:Optional Value []*string `json:"value,omitempty" tf:"value,omitempty"` // can be set to IsMobile, RemoteAddr, RequestMethod, QueryString, PostArgs, RequestURI, RequestPath, RequestFilename, RequestFilenameExtension,RequestHeader,RequestBody or RequestScheme. + // +kubebuilder:validation:Optional Variable *string `json:"variable,omitempty" tf:"variable,omitempty"` } diff --git a/apis/network/v1beta1/zz_ipgroup_types.go b/apis/network/v1beta1/zz_ipgroup_types.go index 2142cbfc8..0bfb39d00 100755 --- a/apis/network/v1beta1/zz_ipgroup_types.go +++ b/apis/network/v1beta1/zz_ipgroup_types.go @@ -52,9 +52,11 @@ type IPGroupObservation struct { type IPGroupParameters struct { // A list of CIDRs or IP addresses. + // +kubebuilder:validation:Optional Cidrs []*string `json:"cidrs,omitempty" tf:"cidrs,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the resource group in which to create the IP group. Changing this forces a new resource to be created. @@ -71,6 +73,7 @@ type IPGroupParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/network/v1beta1/zz_loadbalancer_types.go b/apis/network/v1beta1/zz_loadbalancer_types.go index 5301b9aaf..1cdc06d97 100755 --- a/apis/network/v1beta1/zz_loadbalancer_types.go +++ b/apis/network/v1beta1/zz_loadbalancer_types.go @@ -82,18 +82,23 @@ type LoadBalancerFrontendIPConfigurationObservation struct { type LoadBalancerFrontendIPConfigurationParameters struct { // The Frontend IP Configuration ID of a Gateway SKU Load Balancer. + // +kubebuilder:validation:Optional GatewayLoadBalancerFrontendIPConfigurationID *string `json:"gatewayLoadBalancerFrontendIpConfigurationId,omitempty" tf:"gateway_load_balancer_frontend_ip_configuration_id,omitempty"` // Specifies the name of the frontend IP configuration. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Private IP Address to assign to the Load Balancer. The last one and first four IPs in any range are reserved and cannot be manually assigned. + // +kubebuilder:validation:Optional PrivateIPAddress *string `json:"privateIpAddress,omitempty" tf:"private_ip_address,omitempty"` // The allocation method for the Private IP Address used by this Load Balancer. Possible values as Dynamic and Static. + // +kubebuilder:validation:Optional PrivateIPAddressAllocation *string `json:"privateIpAddressAllocation,omitempty" tf:"private_ip_address_allocation,omitempty"` // The version of IP that the Private IP Address is. Possible values are IPv4 or IPv6. + // +kubebuilder:validation:Optional PrivateIPAddressVersion *string `json:"privateIpAddressVersion,omitempty" tf:"private_ip_address_version,omitempty"` // The ID of a Public IP Address which should be associated with the Load Balancer. @@ -111,6 +116,7 @@ type LoadBalancerFrontendIPConfigurationParameters struct { PublicIPAddressIDSelector *v1.Selector `json:"publicIpAddressIdSelector,omitempty" tf:"-"` // The ID of a Public IP Prefix which should be associated with the Load Balancer. Public IP Prefix can only be used with outbound rules. + // +kubebuilder:validation:Optional PublicIPPrefixID *string `json:"publicIpPrefixId,omitempty" tf:"public_ip_prefix_id,omitempty"` // The ID of the Subnet which should be associated with the IP Configuration. @@ -128,6 +134,7 @@ type LoadBalancerFrontendIPConfigurationParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // Specifies a list of Availability Zones in which the IP Address for this Load Balancer should be located. + // +kubebuilder:validation:Optional Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } @@ -188,12 +195,15 @@ type LoadBalancerObservation struct { type LoadBalancerParameters struct { // Specifies the Edge Zone within the Azure Region where this Load Balancer should exist. Changing this forces a new Load Balancer to be created. + // +kubebuilder:validation:Optional EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"` // One or multiple frontend_ip_configuration blocks as documented below. + // +kubebuilder:validation:Optional FrontendIPConfiguration []LoadBalancerFrontendIPConfigurationParameters `json:"frontendIpConfiguration,omitempty" tf:"frontend_ip_configuration,omitempty"` // Specifies the supported Azure Region where the Load Balancer should be created. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the Resource Group in which to create the Load Balancer. Changing this forces a new resource to be created. @@ -210,12 +220,15 @@ type LoadBalancerParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The SKU of the Azure Load Balancer. Accepted values are Basic, Standard and Gateway. Defaults to Basic. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // sku_tier - The SKU tier of this Load Balancer. Possible values are Global and Regional. Defaults to Regional. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SkuTier *string `json:"skuTier,omitempty" tf:"sku_tier,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/network/v1beta1/zz_loadbalancerbackendaddresspool_types.go b/apis/network/v1beta1/zz_loadbalancerbackendaddresspool_types.go index a92607d6e..35f7246f6 100755 --- a/apis/network/v1beta1/zz_loadbalancerbackendaddresspool_types.go +++ b/apis/network/v1beta1/zz_loadbalancerbackendaddresspool_types.go @@ -66,9 +66,11 @@ type LoadBalancerBackendAddressPoolParameters struct { LoadbalancerIDSelector *v1.Selector `json:"loadbalancerIdSelector,omitempty" tf:"-"` // One or more tunnel_interface blocks as defined below. + // +kubebuilder:validation:Optional TunnelInterface []TunnelInterfaceParameters `json:"tunnelInterface,omitempty" tf:"tunnel_interface,omitempty"` // The ID of the Virtual Network within which the Backend Address Pool should exist. + // +kubebuilder:validation:Optional VirtualNetworkID *string `json:"virtualNetworkId,omitempty" tf:"virtual_network_id,omitempty"` } @@ -105,15 +107,19 @@ type TunnelInterfaceObservation struct { type TunnelInterfaceParameters struct { // The unique identifier of this Gateway Lodbalancer Tunnel Interface. + // +kubebuilder:validation:Optional Identifier *float64 `json:"identifier,omitempty" tf:"identifier,omitempty"` // The port number that this Gateway Lodbalancer Tunnel Interface listens to. + // +kubebuilder:validation:Optional Port *float64 `json:"port,omitempty" tf:"port,omitempty"` // The protocol used for this Gateway Lodbalancer Tunnel Interface. Possible values are None, Native and VXLAN. + // +kubebuilder:validation:Optional Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` // The traffic type of this Gateway Lodbalancer Tunnel Interface. Possible values are None, Internal and External. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/network/v1beta1/zz_loadbalancerbackendaddresspooladdress_types.go b/apis/network/v1beta1/zz_loadbalancerbackendaddresspooladdress_types.go index ccdc43d4b..5c39499fa 100755 --- a/apis/network/v1beta1/zz_loadbalancerbackendaddresspooladdress_types.go +++ b/apis/network/v1beta1/zz_loadbalancerbackendaddresspooladdress_types.go @@ -68,6 +68,7 @@ type LoadBalancerBackendAddressPoolAddressParameters struct { // The ip config ID of the regional load balancer that's added to the global load balancer's backend address pool. // For global load balancer, user needs to specify the `backend_address_ip_configuration_id` of the added regional load balancers + // +kubebuilder:validation:Optional BackendAddressIPConfigurationID *string `json:"backendAddressIpConfigurationId,omitempty" tf:"backend_address_ip_configuration_id,omitempty"` // The ID of the Backend Address Pool. Changing this forces a new Backend Address Pool Address to be created. @@ -85,6 +86,7 @@ type LoadBalancerBackendAddressPoolAddressParameters struct { BackendAddressPoolIDSelector *v1.Selector `json:"backendAddressPoolIdSelector,omitempty" tf:"-"` // The Static IP Address which should be allocated to this Backend Address Pool. + // +kubebuilder:validation:Optional IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` // The ID of the Virtual Network within which the Backend Address Pool should exist. diff --git a/apis/network/v1beta1/zz_loadbalancernatpool_types.go b/apis/network/v1beta1/zz_loadbalancernatpool_types.go index 8e82fa6b7..dfd178c67 100755 --- a/apis/network/v1beta1/zz_loadbalancernatpool_types.go +++ b/apis/network/v1beta1/zz_loadbalancernatpool_types.go @@ -82,21 +82,27 @@ type LoadBalancerNatPoolObservation struct { type LoadBalancerNatPoolParameters struct { // The port used for the internal endpoint. Possible values range between 1 and 65535, inclusive. + // +kubebuilder:validation:Optional BackendPort *float64 `json:"backendPort,omitempty" tf:"backend_port,omitempty"` // Are the floating IPs enabled for this Load Balancer Rule? A floating IP is reassigned to a secondary server in case the primary server fails. Required to configure a SQL AlwaysOn Availability Group. + // +kubebuilder:validation:Optional FloatingIPEnabled *bool `json:"floatingIpEnabled,omitempty" tf:"floating_ip_enabled,omitempty"` // The name of the frontend IP configuration exposing this rule. + // +kubebuilder:validation:Optional FrontendIPConfigurationName *string `json:"frontendIpConfigurationName,omitempty" tf:"frontend_ip_configuration_name,omitempty"` // The last port number in the range of external ports that will be used to provide Inbound NAT to NICs associated with this Load Balancer. Possible values range between 1 and 65534, inclusive. + // +kubebuilder:validation:Optional FrontendPortEnd *float64 `json:"frontendPortEnd,omitempty" tf:"frontend_port_end,omitempty"` // The first port number in the range of external ports that will be used to provide Inbound NAT to NICs associated with this Load Balancer. Possible values range between 1 and 65534, inclusive. + // +kubebuilder:validation:Optional FrontendPortStart *float64 `json:"frontendPortStart,omitempty" tf:"frontend_port_start,omitempty"` // Specifies the idle timeout in minutes for TCP connections. Valid values are between 4 and 30. Defaults to 4. + // +kubebuilder:validation:Optional IdleTimeoutInMinutes *float64 `json:"idleTimeoutInMinutes,omitempty" tf:"idle_timeout_in_minutes,omitempty"` // The ID of the Load Balancer in which to create the NAT pool. Changing this forces a new resource to be created. @@ -114,6 +120,7 @@ type LoadBalancerNatPoolParameters struct { LoadbalancerIDSelector *v1.Selector `json:"loadbalancerIdSelector,omitempty" tf:"-"` // The transport protocol for the external endpoint. Possible values are All, Tcp and Udp. + // +kubebuilder:validation:Optional Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` // The name of the resource group in which to create the resource. Changing this forces a new resource to be created. @@ -130,6 +137,7 @@ type LoadBalancerNatPoolParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Is TCP Reset enabled for this Load Balancer Rule? + // +kubebuilder:validation:Optional TCPResetEnabled *bool `json:"tcpResetEnabled,omitempty" tf:"tcp_reset_enabled,omitempty"` } diff --git a/apis/network/v1beta1/zz_loadbalancernatrule_types.go b/apis/network/v1beta1/zz_loadbalancernatrule_types.go index 6de6b2e38..b34f6135d 100755 --- a/apis/network/v1beta1/zz_loadbalancernatrule_types.go +++ b/apis/network/v1beta1/zz_loadbalancernatrule_types.go @@ -108,27 +108,35 @@ type LoadBalancerNatRuleParameters struct { BackendAddressPoolIDSelector *v1.Selector `json:"backendAddressPoolIdSelector,omitempty" tf:"-"` // The port used for internal connections on the endpoint. Possible values range between 1 and 65535, inclusive. + // +kubebuilder:validation:Optional BackendPort *float64 `json:"backendPort,omitempty" tf:"backend_port,omitempty"` // Are the Floating IPs enabled for this Load Balancer Rule? A "floating” IP is reassigned to a secondary server in case the primary server fails. Required to configure a SQL AlwaysOn Availability Group. Defaults to false. + // +kubebuilder:validation:Optional EnableFloatingIP *bool `json:"enableFloatingIp,omitempty" tf:"enable_floating_ip,omitempty"` // Is TCP Reset enabled for this Load Balancer Rule? + // +kubebuilder:validation:Optional EnableTCPReset *bool `json:"enableTcpReset,omitempty" tf:"enable_tcp_reset,omitempty"` // The name of the frontend IP configuration exposing this rule. + // +kubebuilder:validation:Optional FrontendIPConfigurationName *string `json:"frontendIpConfigurationName,omitempty" tf:"frontend_ip_configuration_name,omitempty"` // The port for the external endpoint. Port numbers for each Rule must be unique within the Load Balancer. Possible values range between 1 and 65534, inclusive. + // +kubebuilder:validation:Optional FrontendPort *float64 `json:"frontendPort,omitempty" tf:"frontend_port,omitempty"` // The port range end for the external endpoint. This property is used together with BackendAddressPool and FrontendPortRangeStart. Individual inbound NAT rule port mappings will be created for each backend address from BackendAddressPool. Acceptable values range from 1 to 65534, inclusive. + // +kubebuilder:validation:Optional FrontendPortEnd *float64 `json:"frontendPortEnd,omitempty" tf:"frontend_port_end,omitempty"` // The port range start for the external endpoint. This property is used together with BackendAddressPool and FrontendPortRangeEnd. Individual inbound NAT rule port mappings will be created for each backend address from BackendAddressPool. Acceptable values range from 1 to 65534, inclusive. + // +kubebuilder:validation:Optional FrontendPortStart *float64 `json:"frontendPortStart,omitempty" tf:"frontend_port_start,omitempty"` // Specifies the idle timeout in minutes for TCP connections. Valid values are between 4 and 30 minutes. Defaults to 4 minutes. + // +kubebuilder:validation:Optional IdleTimeoutInMinutes *float64 `json:"idleTimeoutInMinutes,omitempty" tf:"idle_timeout_in_minutes,omitempty"` // The ID of the Load Balancer in which to create the NAT Rule. Changing this forces a new resource to be created. @@ -146,6 +154,7 @@ type LoadBalancerNatRuleParameters struct { LoadbalancerIDSelector *v1.Selector `json:"loadbalancerIdSelector,omitempty" tf:"-"` // The transport protocol for the external endpoint. Possible values are Udp, Tcp or All. + // +kubebuilder:validation:Optional Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` // The name of the resource group in which to create the resource. Changing this forces a new resource to be created. diff --git a/apis/network/v1beta1/zz_loadbalanceroutboundrule_types.go b/apis/network/v1beta1/zz_loadbalanceroutboundrule_types.go index 5eef2e87a..02c264c37 100755 --- a/apis/network/v1beta1/zz_loadbalanceroutboundrule_types.go +++ b/apis/network/v1beta1/zz_loadbalanceroutboundrule_types.go @@ -31,6 +31,7 @@ type LoadBalancerOutboundRuleFrontendIPConfigurationObservation struct { type LoadBalancerOutboundRuleFrontendIPConfigurationParameters struct { // The name of the Frontend IP Configuration. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -82,6 +83,7 @@ type LoadBalancerOutboundRuleObservation struct { type LoadBalancerOutboundRuleParameters struct { // The number of outbound ports to be used for NAT. Defaults to 1024. + // +kubebuilder:validation:Optional AllocatedOutboundPorts *float64 `json:"allocatedOutboundPorts,omitempty" tf:"allocated_outbound_ports,omitempty"` // The ID of the Backend Address Pool. Outbound traffic is randomly load balanced across IPs in the backend IPs. @@ -99,12 +101,15 @@ type LoadBalancerOutboundRuleParameters struct { BackendAddressPoolIDSelector *v1.Selector `json:"backendAddressPoolIdSelector,omitempty" tf:"-"` // Receive bidirectional TCP Reset on TCP flow idle timeout or unexpected connection termination. This element is only used when the protocol is set to TCP. + // +kubebuilder:validation:Optional EnableTCPReset *bool `json:"enableTcpReset,omitempty" tf:"enable_tcp_reset,omitempty"` // One or more frontend_ip_configuration blocks as defined below. + // +kubebuilder:validation:Optional FrontendIPConfiguration []LoadBalancerOutboundRuleFrontendIPConfigurationParameters `json:"frontendIpConfiguration,omitempty" tf:"frontend_ip_configuration,omitempty"` // The timeout for the TCP idle connection Defaults to 4. + // +kubebuilder:validation:Optional IdleTimeoutInMinutes *float64 `json:"idleTimeoutInMinutes,omitempty" tf:"idle_timeout_in_minutes,omitempty"` // The ID of the Load Balancer in which to create the Outbound Rule. Changing this forces a new resource to be created. @@ -122,6 +127,7 @@ type LoadBalancerOutboundRuleParameters struct { LoadbalancerIDSelector *v1.Selector `json:"loadbalancerIdSelector,omitempty" tf:"-"` // The transport protocol for the external endpoint. Possible values are Udp, Tcp or All. + // +kubebuilder:validation:Optional Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` } diff --git a/apis/network/v1beta1/zz_loadbalancerprobe_types.go b/apis/network/v1beta1/zz_loadbalancerprobe_types.go index 3c7767d62..668cb8e84 100755 --- a/apis/network/v1beta1/zz_loadbalancerprobe_types.go +++ b/apis/network/v1beta1/zz_loadbalancerprobe_types.go @@ -66,6 +66,7 @@ type LoadBalancerProbeObservation struct { type LoadBalancerProbeParameters struct { // The interval, in seconds between probes to the backend endpoint for health status. The default value is 15, the minimum value is 5. + // +kubebuilder:validation:Optional IntervalInSeconds *float64 `json:"intervalInSeconds,omitempty" tf:"interval_in_seconds,omitempty"` // The ID of the LoadBalancer in which to create the NAT Rule. Changing this forces a new resource to be created. @@ -83,18 +84,23 @@ type LoadBalancerProbeParameters struct { LoadbalancerIDSelector *v1.Selector `json:"loadbalancerIdSelector,omitempty" tf:"-"` // The number of failed probe attempts after which the backend endpoint is removed from rotation. The default value is 2. NumberOfProbes multiplied by intervalInSeconds value must be greater or equal to 10.Endpoints are returned to rotation when at least one probe is successful. + // +kubebuilder:validation:Optional NumberOfProbes *float64 `json:"numberOfProbes,omitempty" tf:"number_of_probes,omitempty"` // Port on which the Probe queries the backend endpoint. Possible values range from 1 to 65535, inclusive. + // +kubebuilder:validation:Optional Port *float64 `json:"port,omitempty" tf:"port,omitempty"` // The number of consecutive successful or failed probes that allow or deny traffic to this endpoint. Possible values range from 1 to 100. The default value is 1. + // +kubebuilder:validation:Optional ProbeThreshold *float64 `json:"probeThreshold,omitempty" tf:"probe_threshold,omitempty"` // Specifies the protocol of the end point. Possible values are Http, Https or Tcp. If TCP is specified, a received ACK is required for the probe to be successful. If HTTP is specified, a 200 OK response from the specified URI is required for the probe to be successful. + // +kubebuilder:validation:Optional Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` // The URI used for requesting health status from the backend endpoint. Required if protocol is set to Http or Https. Otherwise, it is not allowed. + // +kubebuilder:validation:Optional RequestPath *string `json:"requestPath,omitempty" tf:"request_path,omitempty"` } diff --git a/apis/network/v1beta1/zz_loadbalancerrule_types.go b/apis/network/v1beta1/zz_loadbalancerrule_types.go index 820ea8064..8cab3b4db 100755 --- a/apis/network/v1beta1/zz_loadbalancerrule_types.go +++ b/apis/network/v1beta1/zz_loadbalancerrule_types.go @@ -97,30 +97,39 @@ type LoadBalancerRuleObservation struct { type LoadBalancerRuleParameters struct { // A list of reference to a Backend Address Pool over which this Load Balancing Rule operates. + // +kubebuilder:validation:Optional BackendAddressPoolIds []*string `json:"backendAddressPoolIds,omitempty" tf:"backend_address_pool_ids,omitempty"` // The port used for internal connections on the endpoint. Possible values range between 0 and 65535, inclusive. + // +kubebuilder:validation:Optional BackendPort *float64 `json:"backendPort,omitempty" tf:"backend_port,omitempty"` // Is snat enabled for this Load Balancer Rule? Default false. + // +kubebuilder:validation:Optional DisableOutboundSnat *bool `json:"disableOutboundSnat,omitempty" tf:"disable_outbound_snat,omitempty"` // Are the Floating IPs enabled for this Load Balncer Rule? A "floating” IP is reassigned to a secondary server in case the primary server fails. Required to configure a SQL AlwaysOn Availability Group. Defaults to false. + // +kubebuilder:validation:Optional EnableFloatingIP *bool `json:"enableFloatingIp,omitempty" tf:"enable_floating_ip,omitempty"` // Is TCP Reset enabled for this Load Balancer Rule? + // +kubebuilder:validation:Optional EnableTCPReset *bool `json:"enableTcpReset,omitempty" tf:"enable_tcp_reset,omitempty"` // The name of the frontend IP configuration to which the rule is associated. + // +kubebuilder:validation:Optional FrontendIPConfigurationName *string `json:"frontendIpConfigurationName,omitempty" tf:"frontend_ip_configuration_name,omitempty"` // The port for the external endpoint. Port numbers for each Rule must be unique within the Load Balancer. Possible values range between 0 and 65534, inclusive. + // +kubebuilder:validation:Optional FrontendPort *float64 `json:"frontendPort,omitempty" tf:"frontend_port,omitempty"` // Specifies the idle timeout in minutes for TCP connections. Valid values are between 4 and 30 minutes. Defaults to 4 minutes. + // +kubebuilder:validation:Optional IdleTimeoutInMinutes *float64 `json:"idleTimeoutInMinutes,omitempty" tf:"idle_timeout_in_minutes,omitempty"` // Specifies the load balancing distribution type to be used by the Load Balancer. Possible values are: Default – The load balancer is configured to use a 5 tuple hash to map traffic to available servers. SourceIP – The load balancer is configured to use a 2 tuple hash to map traffic to available servers. SourceIPProtocol – The load balancer is configured to use a 3 tuple hash to map traffic to available servers. Also known as Session Persistence, where the options are called None, Client IP and Client IP and Protocol respectively. + // +kubebuilder:validation:Optional LoadDistribution *string `json:"loadDistribution,omitempty" tf:"load_distribution,omitempty"` // The ID of the Load Balancer in which to create the Rule. Changing this forces a new resource to be created. @@ -138,9 +147,11 @@ type LoadBalancerRuleParameters struct { LoadbalancerIDSelector *v1.Selector `json:"loadbalancerIdSelector,omitempty" tf:"-"` // A reference to a Probe used by this Load Balancing Rule. + // +kubebuilder:validation:Optional ProbeID *string `json:"probeId,omitempty" tf:"probe_id,omitempty"` // The transport protocol for the external endpoint. Possible values are Tcp, Udp or All. + // +kubebuilder:validation:Optional Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` } diff --git a/apis/network/v1beta1/zz_localnetworkgateway_types.go b/apis/network/v1beta1/zz_localnetworkgateway_types.go index b97fd7494..b6d169622 100755 --- a/apis/network/v1beta1/zz_localnetworkgateway_types.go +++ b/apis/network/v1beta1/zz_localnetworkgateway_types.go @@ -40,12 +40,15 @@ type BGPSettingsObservation struct { type BGPSettingsParameters struct { // The BGP speaker's ASN. + // +kubebuilder:validation:Optional Asn *float64 `json:"asn,omitempty" tf:"asn,omitempty"` // The BGP peering address and BGP identifier of this BGP speaker. + // +kubebuilder:validation:Optional BGPPeeringAddress *string `json:"bgpPeeringAddress,omitempty" tf:"bgp_peering_address,omitempty"` // The weight added to routes learned from this BGP speaker. + // +kubebuilder:validation:Optional PeerWeight *float64 `json:"peerWeight,omitempty" tf:"peer_weight,omitempty"` } @@ -100,18 +103,23 @@ type LocalNetworkGatewayObservation struct { type LocalNetworkGatewayParameters struct { // The list of string CIDRs representing the address spaces the gateway exposes. + // +kubebuilder:validation:Optional AddressSpace []*string `json:"addressSpace,omitempty" tf:"address_space,omitempty"` // A bgp_settings block as defined below containing the Local Network Gateway's BGP speaker settings. + // +kubebuilder:validation:Optional BGPSettings []BGPSettingsParameters `json:"bgpSettings,omitempty" tf:"bgp_settings,omitempty"` // The gateway IP address to connect with. + // +kubebuilder:validation:Optional GatewayAddress *string `json:"gatewayAddress,omitempty" tf:"gateway_address,omitempty"` // The gateway FQDN to connect with. + // +kubebuilder:validation:Optional GatewayFqdn *string `json:"gatewayFqdn,omitempty" tf:"gateway_fqdn,omitempty"` // The location/region where the local network gateway is created. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the resource group in which to create the local network gateway. Changing this forces a new resource to be created. @@ -128,6 +136,7 @@ type LocalNetworkGatewayParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/network/v1beta1/zz_manager_types.go b/apis/network/v1beta1/zz_manager_types.go index 282bf8fe6..c51cbee53 100755 --- a/apis/network/v1beta1/zz_manager_types.go +++ b/apis/network/v1beta1/zz_manager_types.go @@ -79,9 +79,11 @@ type ManagerObservation struct { type ManagerParameters struct { // A description of the network manager. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // Specifies the Azure Region where the Network Managers should exist. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the name of the Resource Group where the Network Managers should exist. Changing this forces a new Network Managers to be created. @@ -98,12 +100,15 @@ type ManagerParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A scope block as defined below. + // +kubebuilder:validation:Optional Scope []ScopeParameters `json:"scope,omitempty" tf:"scope,omitempty"` // A list of configuration deployment type. Possible values are Connectivity and SecurityAdmin, corresponds to if Connectivity Configuration and Security Admin Configuration is allowed for the Network Manager. + // +kubebuilder:validation:Optional ScopeAccesses []*string `json:"scopeAccesses,omitempty" tf:"scope_accesses,omitempty"` // A mapping of tags which should be assigned to the Network Managers. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -128,9 +133,11 @@ type ScopeObservation struct { type ScopeParameters struct { // A list of management group IDs. + // +kubebuilder:validation:Optional ManagementGroupIds []*string `json:"managementGroupIds,omitempty" tf:"management_group_ids,omitempty"` // A list of subscription IDs. + // +kubebuilder:validation:Optional SubscriptionIds []*string `json:"subscriptionIds,omitempty" tf:"subscription_ids,omitempty"` } diff --git a/apis/network/v1beta1/zz_managermanagementgroupconnection_types.go b/apis/network/v1beta1/zz_managermanagementgroupconnection_types.go index 8e6b24a33..93d19bb28 100755 --- a/apis/network/v1beta1/zz_managermanagementgroupconnection_types.go +++ b/apis/network/v1beta1/zz_managermanagementgroupconnection_types.go @@ -40,6 +40,7 @@ type ManagerManagementGroupConnectionObservation struct { type ManagerManagementGroupConnectionParameters struct { // A description of the Network Manager Management Group Connection. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // Specifies the ID of the target Management Group. Changing this forces a new resource to be created. diff --git a/apis/network/v1beta1/zz_managernetworkgroup_types.go b/apis/network/v1beta1/zz_managernetworkgroup_types.go index 02b6109ed..18aab1b14 100755 --- a/apis/network/v1beta1/zz_managernetworkgroup_types.go +++ b/apis/network/v1beta1/zz_managernetworkgroup_types.go @@ -34,6 +34,7 @@ type ManagerNetworkGroupObservation struct { type ManagerNetworkGroupParameters struct { // A description of the Network Manager Network Group. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // Specifies the ID of the Network Manager. Changing this forces a new Network Manager Network Group to be created. diff --git a/apis/network/v1beta1/zz_managersubscriptionconnection_types.go b/apis/network/v1beta1/zz_managersubscriptionconnection_types.go index 3f19eec92..a48f4a8f5 100755 --- a/apis/network/v1beta1/zz_managersubscriptionconnection_types.go +++ b/apis/network/v1beta1/zz_managersubscriptionconnection_types.go @@ -43,6 +43,7 @@ type ManagerSubscriptionConnectionObservation struct { type ManagerSubscriptionConnectionParameters struct { // A description of the Network Manager Subscription Connection. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // Specifies the ID of the Network Manager which the Subscription is connected to. @@ -60,6 +61,7 @@ type ManagerSubscriptionConnectionParameters struct { NetworkManagerIDSelector *v1.Selector `json:"networkManagerIdSelector,omitempty" tf:"-"` // Specifies the ID of the target Subscription. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SubscriptionID *string `json:"subscriptionId,omitempty" tf:"subscription_id,omitempty"` } diff --git a/apis/network/v1beta1/zz_natgateway_types.go b/apis/network/v1beta1/zz_natgateway_types.go index f831d649a..7d8de765c 100755 --- a/apis/network/v1beta1/zz_natgateway_types.go +++ b/apis/network/v1beta1/zz_natgateway_types.go @@ -61,9 +61,11 @@ type NATGatewayObservation struct { type NATGatewayParameters struct { // The idle timeout which should be used in minutes. Defaults to 4. + // +kubebuilder:validation:Optional IdleTimeoutInMinutes *float64 `json:"idleTimeoutInMinutes,omitempty" tf:"idle_timeout_in_minutes,omitempty"` // Specifies the supported Azure location where the NAT Gateway should exist. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the name of the Resource Group in which the NAT Gateway should exist. Changing this forces a new resource to be created. @@ -80,12 +82,15 @@ type NATGatewayParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The SKU which should be used. At this time the only supported value is Standard. Defaults to Standard. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // A list of Availability Zones in which this NAT Gateway should be located. Changing this forces a new NAT Gateway to be created. + // +kubebuilder:validation:Optional Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } diff --git a/apis/network/v1beta1/zz_networkinterface_types.go b/apis/network/v1beta1/zz_networkinterface_types.go index 6997f6c45..918a65797 100755 --- a/apis/network/v1beta1/zz_networkinterface_types.go +++ b/apis/network/v1beta1/zz_networkinterface_types.go @@ -67,24 +67,31 @@ type NetworkInterfaceIPConfigurationObservation struct { type NetworkInterfaceIPConfigurationParameters struct { // The Frontend IP Configuration ID of a Gateway SKU Load Balancer. + // +kubebuilder:validation:Optional GatewayLoadBalancerFrontendIPConfigurationID *string `json:"gatewayLoadBalancerFrontendIpConfigurationId,omitempty" tf:"gateway_load_balancer_frontend_ip_configuration_id,omitempty"` // A name used for this IP Configuration. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Is this the Primary IP Configuration? Must be true for the first ip_configuration when multiple are specified. Defaults to false. + // +kubebuilder:validation:Optional Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"` // The Static IP Address which should be used. + // +kubebuilder:validation:Optional PrivateIPAddress *string `json:"privateIpAddress,omitempty" tf:"private_ip_address,omitempty"` // The allocation method used for the Private IP Address. Possible values are Dynamic and Static. + // +kubebuilder:validation:Optional PrivateIPAddressAllocation *string `json:"privateIpAddressAllocation,omitempty" tf:"private_ip_address_allocation,omitempty"` // The IP Version to use. Possible values are IPv4 or IPv6. Defaults to IPv4. + // +kubebuilder:validation:Optional PrivateIPAddressVersion *string `json:"privateIpAddressVersion,omitempty" tf:"private_ip_address_version,omitempty"` // Reference to a Public IP Address to associate with this NIC + // +kubebuilder:validation:Optional PublicIPAddressID *string `json:"publicIpAddressId,omitempty" tf:"public_ip_address_id,omitempty"` // The ID of the Subnet where this Network Interface should be located in. @@ -183,24 +190,31 @@ type NetworkInterfaceObservation struct { type NetworkInterfaceParameters struct { // A list of IP Addresses defining the DNS Servers which should be used for this Network Interface. + // +kubebuilder:validation:Optional DNSServers []*string `json:"dnsServers,omitempty" tf:"dns_servers,omitempty"` // Specifies the Edge Zone within the Azure Region where this Network Interface should exist. Changing this forces a new Network Interface to be created. + // +kubebuilder:validation:Optional EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"` // Should Accelerated Networking be enabled? Defaults to false. + // +kubebuilder:validation:Optional EnableAcceleratedNetworking *bool `json:"enableAcceleratedNetworking,omitempty" tf:"enable_accelerated_networking,omitempty"` // Should IP Forwarding be enabled? Defaults to false. + // +kubebuilder:validation:Optional EnableIPForwarding *bool `json:"enableIpForwarding,omitempty" tf:"enable_ip_forwarding,omitempty"` // One or more ip_configuration blocks as defined below. + // +kubebuilder:validation:Optional IPConfiguration []NetworkInterfaceIPConfigurationParameters `json:"ipConfiguration,omitempty" tf:"ip_configuration,omitempty"` // The (relative) DNS Name used for internal communications between Virtual Machines in the same Virtual Network. + // +kubebuilder:validation:Optional InternalDNSNameLabel *string `json:"internalDnsNameLabel,omitempty" tf:"internal_dns_name_label,omitempty"` // The location where the Network Interface 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 in which to create the Network Interface. Changing this forces a new resource to be created. @@ -217,6 +231,7 @@ type NetworkInterfaceParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/network/v1beta1/zz_networkinterfacebackendaddresspoolassociation_types.go b/apis/network/v1beta1/zz_networkinterfacebackendaddresspoolassociation_types.go index dcfcb2249..054eb4a9a 100755 --- a/apis/network/v1beta1/zz_networkinterfacebackendaddresspoolassociation_types.go +++ b/apis/network/v1beta1/zz_networkinterfacebackendaddresspoolassociation_types.go @@ -50,6 +50,7 @@ type NetworkInterfaceBackendAddressPoolAssociationParameters struct { BackendAddressPoolIDSelector *v1.Selector `json:"backendAddressPoolIdSelector,omitempty" tf:"-"` // The Name of the IP Configuration within the Network Interface which should be connected to the Backend Address Pool. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional IPConfigurationName *string `json:"ipConfigurationName,omitempty" tf:"ip_configuration_name,omitempty"` // The ID of the Network Interface. Changing this forces a new resource to be created. diff --git a/apis/network/v1beta1/zz_networkinterfacenatruleassociation_types.go b/apis/network/v1beta1/zz_networkinterfacenatruleassociation_types.go index a9b1b2d8c..2c2b0d0d8 100755 --- a/apis/network/v1beta1/zz_networkinterfacenatruleassociation_types.go +++ b/apis/network/v1beta1/zz_networkinterfacenatruleassociation_types.go @@ -35,6 +35,7 @@ type NetworkInterfaceNatRuleAssociationObservation struct { type NetworkInterfaceNatRuleAssociationParameters struct { // The Name of the IP Configuration within the Network Interface which should be connected to the NAT Rule. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional IPConfigurationName *string `json:"ipConfigurationName,omitempty" tf:"ip_configuration_name,omitempty"` // The ID of the Load Balancer NAT Rule which this Network Interface which should be connected to. Changing this forces a new resource to be created. diff --git a/apis/network/v1beta1/zz_packetcapture_types.go b/apis/network/v1beta1/zz_packetcapture_types.go index 80c03edaf..54a317b49 100755 --- a/apis/network/v1beta1/zz_packetcapture_types.go +++ b/apis/network/v1beta1/zz_packetcapture_types.go @@ -52,18 +52,23 @@ type PacketCaptureFilterObservation struct { type PacketCaptureFilterParameters struct { // The local IP Address to be filtered on. Notation: "127.0.0.1" for single address entry. "127.0.0.1-127.0.0.255" for range. "127.0.0.1;127.0.0.5" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional LocalIPAddress *string `json:"localIpAddress,omitempty" tf:"local_ip_address,omitempty"` // The local port to be filtered on. Notation: "80" for single port entry."80-85" for range. "80;443;" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional LocalPort *string `json:"localPort,omitempty" tf:"local_port,omitempty"` // The Protocol to be filtered on. Possible values include Any, TCP and UDP. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` // The remote IP Address to be filtered on. Notation: "127.0.0.1" for single address entry. "127.0.0.1-127.0.0.255" for range. "127.0.0.1;127.0.0.5;" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported.. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional RemoteIPAddress *string `json:"remoteIpAddress,omitempty" tf:"remote_ip_address,omitempty"` // The remote port to be filtered on. Notation: "80" for single port entry."80-85" for range. "80;443;" for multiple entries. Multiple ranges not currently supported. Mixing ranges with multiple entries not currently supported. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional RemotePort *string `json:"remotePort,omitempty" tf:"remote_port,omitempty"` } @@ -121,15 +126,19 @@ type PacketCaptureObservation struct { type PacketCaptureParameters struct { // One or more filter blocks as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Filter []PacketCaptureFilterParameters `json:"filter,omitempty" tf:"filter,omitempty"` // The number of bytes captured per packet. The remaining bytes are truncated. Defaults to 0 (Entire Packet Captured). Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional MaximumBytesPerPacket *float64 `json:"maximumBytesPerPacket,omitempty" tf:"maximum_bytes_per_packet,omitempty"` // Maximum size of the capture in Bytes. Defaults to 1073741824 (1GB). Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional MaximumBytesPerSession *float64 `json:"maximumBytesPerSession,omitempty" tf:"maximum_bytes_per_session,omitempty"` // The maximum duration of the capture session in seconds. Defaults to 18000 (5 hours). Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional MaximumCaptureDuration *float64 `json:"maximumCaptureDuration,omitempty" tf:"maximum_capture_duration,omitempty"` // The name of the Network Watcher. Changing this forces a new resource to be created. @@ -159,9 +168,11 @@ type PacketCaptureParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A storage_location block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional StorageLocation []StorageLocationParameters `json:"storageLocation,omitempty" tf:"storage_location,omitempty"` // The ID of the Resource to capture packets from. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional TargetResourceID *string `json:"targetResourceId,omitempty" tf:"target_resource_id,omitempty"` } @@ -186,6 +197,7 @@ type StorageLocationObservation struct { type StorageLocationParameters struct { // A valid local path on the targeting VM. Must include the name of the capture file (*.cap). For Linux virtual machine it must start with /var/captures. + // +kubebuilder:validation:Optional FilePath *string `json:"filePath,omitempty" tf:"file_path,omitempty"` // The ID of the storage account to save the packet capture session diff --git a/apis/network/v1beta1/zz_pointtositevpngateway_types.go b/apis/network/v1beta1/zz_pointtositevpngateway_types.go index de5450a57..816e5c88a 100755 --- a/apis/network/v1beta1/zz_pointtositevpngateway_types.go +++ b/apis/network/v1beta1/zz_pointtositevpngateway_types.go @@ -46,15 +46,19 @@ type ConnectionConfigurationObservation struct { type ConnectionConfigurationParameters struct { // Should Internet Security be enabled to secure internet traffic? Changing this forces a new resource to be created. Defaults to false. + // +kubebuilder:validation:Optional InternetSecurityEnabled *bool `json:"internetSecurityEnabled,omitempty" tf:"internet_security_enabled,omitempty"` // The Name which should be used for this Connection Configuration. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A route block as defined below. + // +kubebuilder:validation:Optional Route []RouteParameters `json:"route,omitempty" tf:"route,omitempty"` // A vpn_client_address_pool block as defined below. + // +kubebuilder:validation:Optional VPNClientAddressPool []VPNClientAddressPoolParameters `json:"vpnClientAddressPool,omitempty" tf:"vpn_client_address_pool,omitempty"` } @@ -115,12 +119,15 @@ type PointToSiteVPNGatewayObservation struct { type PointToSiteVPNGatewayParameters struct { // A connection_configuration block as defined below. + // +kubebuilder:validation:Optional ConnectionConfiguration []ConnectionConfigurationParameters `json:"connectionConfiguration,omitempty" tf:"connection_configuration,omitempty"` // A list of IP Addresses of DNS Servers for the Point-to-Site VPN Gateway. + // +kubebuilder:validation:Optional DNSServers []*string `json:"dnsServers,omitempty" tf:"dns_servers,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the resource group in which to create the Point-to-Site VPN Gateway. Changing this forces a new resource to be created. @@ -137,12 +144,15 @@ type PointToSiteVPNGatewayParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Is the Routing Preference for the Public IP Interface of the VPN Gateway enabled? Defaults to false. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional RoutingPreferenceInternetEnabled *bool `json:"routingPreferenceInternetEnabled,omitempty" tf:"routing_preference_internet_enabled,omitempty"` // The Scale Unit for this Point-to-Site VPN Gateway. + // +kubebuilder:validation:Optional ScaleUnit *float64 `json:"scaleUnit,omitempty" tf:"scale_unit,omitempty"` // A mapping of tags to assign to the Point-to-Site VPN Gateway. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The ID of the VPN Server Configuration which this Point-to-Site VPN Gateway should use. Changing this forces a new resource to be created. @@ -207,15 +217,19 @@ type RouteObservation struct { type RouteParameters struct { // The Virtual Hub Route Table resource id associated with this Routing Configuration. + // +kubebuilder:validation:Optional AssociatedRouteTableID *string `json:"associatedRouteTableId,omitempty" tf:"associated_route_table_id,omitempty"` // The resource ID of the Route Map associated with this Routing Configuration for inbound learned routes. + // +kubebuilder:validation:Optional InboundRouteMapID *string `json:"inboundRouteMapId,omitempty" tf:"inbound_route_map_id,omitempty"` // The resource ID of the Route Map associated with this Routing Configuration for outbound advertised routes. + // +kubebuilder:validation:Optional OutboundRouteMapID *string `json:"outboundRouteMapId,omitempty" tf:"outbound_route_map_id,omitempty"` // A propagated_route_table block as defined below. + // +kubebuilder:validation:Optional PropagatedRouteTable []RoutePropagatedRouteTableParameters `json:"propagatedRouteTable,omitempty" tf:"propagated_route_table,omitempty"` } @@ -240,9 +254,11 @@ type RoutePropagatedRouteTableObservation struct { type RoutePropagatedRouteTableParameters struct { // The list of Virtual Hub Route Table resource id which the routes will be propagated to. + // +kubebuilder:validation:Optional Ids []*string `json:"ids,omitempty" tf:"ids,omitempty"` // The list of labels to logically group Virtual Hub Route Tables which the routes will be propagated to. + // +kubebuilder:validation:Optional Labels []*string `json:"labels,omitempty" tf:"labels,omitempty"` } @@ -261,6 +277,7 @@ type VPNClientAddressPoolObservation struct { type VPNClientAddressPoolParameters struct { // A list of CIDR Ranges which should be used as Address Prefixes. + // +kubebuilder:validation:Optional AddressPrefixes []*string `json:"addressPrefixes,omitempty" tf:"address_prefixes,omitempty"` } diff --git a/apis/network/v1beta1/zz_privatednsaaaarecord_types.go b/apis/network/v1beta1/zz_privatednsaaaarecord_types.go index 0d889f111..cf5ed1969 100755 --- a/apis/network/v1beta1/zz_privatednsaaaarecord_types.go +++ b/apis/network/v1beta1/zz_privatednsaaaarecord_types.go @@ -52,6 +52,7 @@ type PrivateDNSAAAARecordObservation struct { type PrivateDNSAAAARecordParameters struct { // A list of IPv6 Addresses. + // +kubebuilder:validation:Optional Records []*string `json:"records,omitempty" tf:"records,omitempty"` // Specifies the resource group where the resource exists. Changing this forces a new resource to be created. @@ -68,9 +69,11 @@ type PrivateDNSAAAARecordParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The Time To Live (TTL) of the DNS record in seconds. + // +kubebuilder:validation:Optional TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the Private DNS Zone where the resource exists. Changing this forces a new resource to be created. diff --git a/apis/network/v1beta1/zz_privatednsarecord_types.go b/apis/network/v1beta1/zz_privatednsarecord_types.go index 571a39023..f520e50c6 100755 --- a/apis/network/v1beta1/zz_privatednsarecord_types.go +++ b/apis/network/v1beta1/zz_privatednsarecord_types.go @@ -52,6 +52,7 @@ type PrivateDNSARecordObservation struct { type PrivateDNSARecordParameters struct { // List of IPv4 Addresses. + // +kubebuilder:validation:Optional Records []*string `json:"records,omitempty" tf:"records,omitempty"` // Specifies the resource group where the Private DNS Zone exists. Changing this forces a new resource to be created. @@ -68,9 +69,11 @@ type PrivateDNSARecordParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The Time To Live (TTL) of the DNS record in seconds. + // +kubebuilder:validation:Optional TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the Private DNS Zone where the resource exists. Changing this forces a new resource to be created. diff --git a/apis/network/v1beta1/zz_privatednscnamerecord_types.go b/apis/network/v1beta1/zz_privatednscnamerecord_types.go index d5ded4596..d76740b8d 100755 --- a/apis/network/v1beta1/zz_privatednscnamerecord_types.go +++ b/apis/network/v1beta1/zz_privatednscnamerecord_types.go @@ -52,6 +52,7 @@ type PrivateDNSCNAMERecordObservation struct { type PrivateDNSCNAMERecordParameters struct { // The target of the CNAME. + // +kubebuilder:validation:Optional Record *string `json:"record,omitempty" tf:"record,omitempty"` // Specifies the resource group where the resource exists. Changing this forces a new resource to be created. @@ -68,9 +69,11 @@ type PrivateDNSCNAMERecordParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The Time To Live (TTL) of the DNS record in seconds. + // +kubebuilder:validation:Optional TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the Private DNS Zone where the resource exists. Changing this forces a new resource to be created. diff --git a/apis/network/v1beta1/zz_privatednsmxrecord_types.go b/apis/network/v1beta1/zz_privatednsmxrecord_types.go index 24c400720..f230946ba 100755 --- a/apis/network/v1beta1/zz_privatednsmxrecord_types.go +++ b/apis/network/v1beta1/zz_privatednsmxrecord_types.go @@ -52,6 +52,7 @@ type PrivateDNSMXRecordObservation struct { type PrivateDNSMXRecordParameters struct { // One or more record blocks as defined below. + // +kubebuilder:validation:Optional Record []PrivateDNSMXRecordRecordParameters `json:"record,omitempty" tf:"record,omitempty"` // Specifies the resource group where the resource exists. Changing this forces a new resource to be created. @@ -68,9 +69,11 @@ type PrivateDNSMXRecordParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The Time To Live (TTL) of the DNS record in seconds. + // +kubebuilder:validation:Optional TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the Private DNS Zone where the resource exists. Changing this forces a new resource to be created. @@ -108,9 +111,11 @@ type PrivateDNSMXRecordRecordObservation struct { type PrivateDNSMXRecordRecordParameters struct { // The FQDN of the exchange to MX record points to. + // +kubebuilder:validation:Optional Exchange *string `json:"exchange,omitempty" tf:"exchange,omitempty"` // The preference of the MX record. + // +kubebuilder:validation:Optional Preference *float64 `json:"preference,omitempty" tf:"preference,omitempty"` } diff --git a/apis/network/v1beta1/zz_privatednsptrrecord_types.go b/apis/network/v1beta1/zz_privatednsptrrecord_types.go index 83029486b..938478290 100755 --- a/apis/network/v1beta1/zz_privatednsptrrecord_types.go +++ b/apis/network/v1beta1/zz_privatednsptrrecord_types.go @@ -52,6 +52,7 @@ type PrivateDNSPTRRecordObservation struct { type PrivateDNSPTRRecordParameters struct { // List of Fully Qualified Domain Names. + // +kubebuilder:validation:Optional Records []*string `json:"records,omitempty" tf:"records,omitempty"` // Specifies the resource group where the resource exists. Changing this forces a new resource to be created. @@ -68,9 +69,11 @@ type PrivateDNSPTRRecordParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The Time To Live (TTL) of the DNS record in seconds. + // +kubebuilder:validation:Optional TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the Private DNS Zone where the resource exists. Changing this forces a new resource to be created. diff --git a/apis/network/v1beta1/zz_privatednsresolver_types.go b/apis/network/v1beta1/zz_privatednsresolver_types.go index 7b41c9c9c..0a5ba3ee7 100755 --- a/apis/network/v1beta1/zz_privatednsresolver_types.go +++ b/apis/network/v1beta1/zz_privatednsresolver_types.go @@ -43,6 +43,7 @@ type PrivateDNSResolverObservation struct { type PrivateDNSResolverParameters struct { // Specifies the Azure Region where the Private DNS Resolver should exist. Changing this forces a new Private DNS Resolver to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the name of the Resource Group where the Private DNS Resolver should exist. Changing this forces a new Private DNS Resolver to be created. @@ -59,6 +60,7 @@ type PrivateDNSResolverParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the Private DNS Resolver. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The ID of the Virtual Network that is linked to the Private DNS Resolver. Changing this forces a new Private DNS Resolver to be created. diff --git a/apis/network/v1beta1/zz_privatednssrvrecord_types.go b/apis/network/v1beta1/zz_privatednssrvrecord_types.go index effc7e1df..e9b22e2ad 100755 --- a/apis/network/v1beta1/zz_privatednssrvrecord_types.go +++ b/apis/network/v1beta1/zz_privatednssrvrecord_types.go @@ -52,6 +52,7 @@ type PrivateDNSSRVRecordObservation struct { type PrivateDNSSRVRecordParameters struct { // One or more record blocks as defined below. + // +kubebuilder:validation:Optional Record []PrivateDNSSRVRecordRecordParameters `json:"record,omitempty" tf:"record,omitempty"` // Specifies the resource group where the resource exists. Changing this forces a new resource to be created. @@ -68,9 +69,11 @@ type PrivateDNSSRVRecordParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The Time To Live (TTL) of the DNS record in seconds. + // +kubebuilder:validation:Optional TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the Private DNS Zone where the resource exists. Changing this forces a new resource to be created. @@ -120,15 +123,19 @@ type PrivateDNSSRVRecordRecordObservation struct { type PrivateDNSSRVRecordRecordParameters struct { // The Port the service is listening on. + // +kubebuilder:validation:Optional Port *float64 `json:"port,omitempty" tf:"port,omitempty"` // The priority of the SRV record. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // The FQDN of the service. + // +kubebuilder:validation:Optional Target *string `json:"target,omitempty" tf:"target,omitempty"` // The Weight of the SRV record. + // +kubebuilder:validation:Optional Weight *float64 `json:"weight,omitempty" tf:"weight,omitempty"` } diff --git a/apis/network/v1beta1/zz_privatednstxtrecord_types.go b/apis/network/v1beta1/zz_privatednstxtrecord_types.go index 84fa74dc8..1ff8cb42e 100755 --- a/apis/network/v1beta1/zz_privatednstxtrecord_types.go +++ b/apis/network/v1beta1/zz_privatednstxtrecord_types.go @@ -52,6 +52,7 @@ type PrivateDNSTXTRecordObservation struct { type PrivateDNSTXTRecordParameters struct { // One or more record blocks as defined below. + // +kubebuilder:validation:Optional Record []PrivateDNSTXTRecordRecordParameters `json:"record,omitempty" tf:"record,omitempty"` // Specifies the resource group where the resource exists. Changing this forces a new resource to be created. @@ -68,9 +69,11 @@ type PrivateDNSTXTRecordParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The Time To Live (TTL) of the DNS record in seconds. + // +kubebuilder:validation:Optional TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the Private DNS Zone where the resource exists. Changing this forces a new resource to be created. @@ -102,6 +105,7 @@ type PrivateDNSTXTRecordRecordObservation struct { type PrivateDNSTXTRecordRecordParameters struct { // The value of the TXT record. Max length: 1024 characters + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } diff --git a/apis/network/v1beta1/zz_privatednszone_types.go b/apis/network/v1beta1/zz_privatednszone_types.go index 990f070e0..ebbf2fcf9 100755 --- a/apis/network/v1beta1/zz_privatednszone_types.go +++ b/apis/network/v1beta1/zz_privatednszone_types.go @@ -65,9 +65,11 @@ type PrivateDNSZoneParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // An soa_record block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SoaRecord []PrivateDNSZoneSoaRecordParameters `json:"soaRecord,omitempty" tf:"soa_record,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -131,24 +133,31 @@ type PrivateDNSZoneSoaRecordObservation struct { type PrivateDNSZoneSoaRecordParameters struct { // The email contact for the SOA record. + // +kubebuilder:validation:Optional Email *string `json:"email,omitempty" tf:"email,omitempty"` // The expire time for the SOA record. Defaults to 2419200. + // +kubebuilder:validation:Optional ExpireTime *float64 `json:"expireTime,omitempty" tf:"expire_time,omitempty"` // The minimum Time To Live for the SOA record. By convention, it is used to determine the negative caching duration. Defaults to 10. + // +kubebuilder:validation:Optional MinimumTTL *float64 `json:"minimumTtl,omitempty" tf:"minimum_ttl,omitempty"` // The refresh time for the SOA record. Defaults to 3600. + // +kubebuilder:validation:Optional RefreshTime *float64 `json:"refreshTime,omitempty" tf:"refresh_time,omitempty"` // The retry time for the SOA record. Defaults to 300. + // +kubebuilder:validation:Optional RetryTime *float64 `json:"retryTime,omitempty" tf:"retry_time,omitempty"` // The Time To Live of the SOA Record in seconds. Defaults to 3600. + // +kubebuilder:validation:Optional TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` // A mapping of tags to assign to the Record Set. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/network/v1beta1/zz_privatednszonevirtualnetworklink_types.go b/apis/network/v1beta1/zz_privatednszonevirtualnetworklink_types.go index 0f1f0fdbc..5bbd84ad8 100755 --- a/apis/network/v1beta1/zz_privatednszonevirtualnetworklink_types.go +++ b/apis/network/v1beta1/zz_privatednszonevirtualnetworklink_types.go @@ -59,6 +59,7 @@ type PrivateDNSZoneVirtualNetworkLinkParameters struct { PrivateDNSZoneNameSelector *v1.Selector `json:"privateDnsZoneNameSelector,omitempty" tf:"-"` // Is auto-registration of virtual machine records in the virtual network in the Private DNS zone enabled? Defaults to false. + // +kubebuilder:validation:Optional RegistrationEnabled *bool `json:"registrationEnabled,omitempty" tf:"registration_enabled,omitempty"` // Specifies the resource group where the Private DNS Zone exists. Changing this forces a new resource to be created. @@ -75,6 +76,7 @@ type PrivateDNSZoneVirtualNetworkLinkParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The ID of the Virtual Network that should be linked to the DNS Zone. Changing this forces a new resource to be created. diff --git a/apis/network/v1beta1/zz_privateendpoint_types.go b/apis/network/v1beta1/zz_privateendpoint_types.go index 87f11ef1a..d95631a79 100755 --- a/apis/network/v1beta1/zz_privateendpoint_types.go +++ b/apis/network/v1beta1/zz_privateendpoint_types.go @@ -70,6 +70,7 @@ type PrivateDNSZoneGroupObservation struct { type PrivateDNSZoneGroupParameters struct { // Specifies the Name of the Private DNS Zone Group. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the list of Private DNS Zones to include within the private_dns_zone_group. @@ -120,15 +121,19 @@ type PrivateEndpointIPConfigurationObservation struct { type PrivateEndpointIPConfigurationParameters struct { // Specifies the member name this IP address applies to. If it is not specified, it will use the value of subresource_name. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional MemberName *string `json:"memberName,omitempty" tf:"member_name,omitempty"` // Specifies the Name of the IP Configuration. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the static IP address within the private endpoint's subnet to be used. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PrivateIPAddress *string `json:"privateIpAddress,omitempty" tf:"private_ip_address,omitempty"` // Specifies the subresource this IP address applies to. subresource_names corresponds to group_id. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SubresourceName *string `json:"subresourceName,omitempty" tf:"subresource_name,omitempty"` } @@ -210,18 +215,23 @@ type PrivateEndpointObservation struct { type PrivateEndpointParameters struct { // The custom name of the network interface attached to the private endpoint. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional CustomNetworkInterfaceName *string `json:"customNetworkInterfaceName,omitempty" tf:"custom_network_interface_name,omitempty"` // One or more ip_configuration blocks as defined below. This allows a static IP address to be set for this Private Endpoint, otherwise an address is dynamically allocated from the Subnet. + // +kubebuilder:validation:Optional IPConfiguration []PrivateEndpointIPConfigurationParameters `json:"ipConfiguration,omitempty" tf:"ip_configuration,omitempty"` // The supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // A private_dns_zone_group block as defined below. + // +kubebuilder:validation:Optional PrivateDNSZoneGroup []PrivateDNSZoneGroupParameters `json:"privateDnsZoneGroup,omitempty" tf:"private_dns_zone_group,omitempty"` // A private_service_connection block as defined below. + // +kubebuilder:validation:Optional PrivateServiceConnection []PrivateServiceConnectionParameters `json:"privateServiceConnection,omitempty" tf:"private_service_connection,omitempty"` // Specifies the Name of the Resource Group within which the Private Endpoint should exist. Changing this forces a new resource to be created. @@ -252,6 +262,7 @@ type PrivateEndpointParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -303,21 +314,27 @@ type PrivateServiceConnectionObservation struct { type PrivateServiceConnectionParameters struct { // Does the Private Endpoint require Manual Approval from the remote resource owner? Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional IsManualConnection *bool `json:"isManualConnection,omitempty" tf:"is_manual_connection,omitempty"` // Specifies the Name of the Private Service Connection. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Service Alias of the Private Link Enabled Remote Resource which this Private Endpoint should be connected to. One of private_connection_resource_id or private_connection_resource_alias must be specified. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PrivateConnectionResourceAlias *string `json:"privateConnectionResourceAlias,omitempty" tf:"private_connection_resource_alias,omitempty"` // The ID of the Private Link Enabled Remote Resource which this Private Endpoint should be connected to. One of private_connection_resource_id or private_connection_resource_alias must be specified. Changing this forces a new resource to be created. For a web app or function app slot, the parent web app should be used in this field instead of a reference to the slot itself. + // +kubebuilder:validation:Optional PrivateConnectionResourceID *string `json:"privateConnectionResourceId,omitempty" tf:"private_connection_resource_id,omitempty"` // A message passed to the owner of the remote resource when the private endpoint attempts to establish the connection to the remote resource. The request message can be a maximum of 140 characters in length. Only valid if is_manual_connection is set to true. + // +kubebuilder:validation:Optional RequestMessage *string `json:"requestMessage,omitempty" tf:"request_message,omitempty"` // A list of subresource names which the Private Endpoint is able to connect to. subresource_names corresponds to group_id. Possible values are detailed in the product documentation in the Subresources column. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SubresourceNames []*string `json:"subresourceNames,omitempty" tf:"subresource_names,omitempty"` } diff --git a/apis/network/v1beta1/zz_privatelinkservice_types.go b/apis/network/v1beta1/zz_privatelinkservice_types.go index fa1bbef17..214ae9e3d 100755 --- a/apis/network/v1beta1/zz_privatelinkservice_types.go +++ b/apis/network/v1beta1/zz_privatelinkservice_types.go @@ -49,15 +49,19 @@ type NATIPConfigurationObservation struct { type NATIPConfigurationParameters struct { // Specifies the name which should be used for the NAT IP Configuration. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Is this is the Primary IP Configuration? Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"` // Specifies a Private Static IP Address for this IP Configuration. + // +kubebuilder:validation:Optional PrivateIPAddress *string `json:"privateIpAddress,omitempty" tf:"private_ip_address,omitempty"` // The version of the IP Protocol which should be used. At this time the only supported value is IPv4. Defaults to IPv4. + // +kubebuilder:validation:Optional PrivateIPAddressVersion *string `json:"privateIpAddressVersion,omitempty" tf:"private_ip_address_version,omitempty"` // Specifies the ID of the Subnet which should be used for the Private Link Service. @@ -140,21 +144,27 @@ type PrivateLinkServiceObservation struct { type PrivateLinkServiceParameters struct { // A list of Subscription UUID/GUID's that will be automatically be able to use this Private Link Service. + // +kubebuilder:validation:Optional AutoApprovalSubscriptionIds []*string `json:"autoApprovalSubscriptionIds,omitempty" tf:"auto_approval_subscription_ids,omitempty"` // Should the Private Link Service support the Proxy Protocol? + // +kubebuilder:validation:Optional EnableProxyProtocol *bool `json:"enableProxyProtocol,omitempty" tf:"enable_proxy_protocol,omitempty"` // List of FQDNs allowed for the Private Link Service. + // +kubebuilder:validation:Optional Fqdns []*string `json:"fqdns,omitempty" tf:"fqdns,omitempty"` // A list of Frontend IP Configuration IDs from a Standard Load Balancer, where traffic from the Private Link Service should be routed. You can use Load Balancer Rules to direct this traffic to appropriate backend pools where your applications are running. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional LoadBalancerFrontendIPConfigurationIds []*string `json:"loadBalancerFrontendIpConfigurationIds,omitempty" tf:"load_balancer_frontend_ip_configuration_ids,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // One or more (up to 8) nat_ip_configuration block as defined below. + // +kubebuilder:validation:Optional NATIPConfiguration []NATIPConfigurationParameters `json:"natIpConfiguration,omitempty" tf:"nat_ip_configuration,omitempty"` // The name of the Resource Group where the Private Link Service should exist. Changing this forces a new resource to be created. @@ -171,9 +181,11 @@ type PrivateLinkServiceParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // A list of Subscription UUID/GUID's that will be able to see this Private Link Service. + // +kubebuilder:validation:Optional VisibilitySubscriptionIds []*string `json:"visibilitySubscriptionIds,omitempty" tf:"visibility_subscription_ids,omitempty"` } diff --git a/apis/network/v1beta1/zz_profile_types.go b/apis/network/v1beta1/zz_profile_types.go index 4bc870cd6..f1c5c6b48 100755 --- a/apis/network/v1beta1/zz_profile_types.go +++ b/apis/network/v1beta1/zz_profile_types.go @@ -31,6 +31,7 @@ type ContainerNetworkInterfaceIPConfigurationObservation struct { type ContainerNetworkInterfaceIPConfigurationParameters struct { // Specifies the name of the Network Profile. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Reference to the subnet associated with the IP Configuration. @@ -69,9 +70,11 @@ type ContainerNetworkInterfaceObservation struct { type ContainerNetworkInterfaceParameters struct { // One or more ip_configuration blocks as documented below. + // +kubebuilder:validation:Optional IPConfiguration []ContainerNetworkInterfaceIPConfigurationParameters `json:"ipConfiguration,omitempty" tf:"ip_configuration,omitempty"` // Specifies the name of the IP Configuration. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -111,9 +114,11 @@ type ProfileObservation struct { type ProfileParameters struct { // A container_network_interface block as documented below. + // +kubebuilder:validation:Optional ContainerNetworkInterface []ContainerNetworkInterfaceParameters `json:"containerNetworkInterface,omitempty" tf:"container_network_interface,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the resource group in which to create the resource. Changing this forces a new resource to be created. @@ -130,6 +135,7 @@ type ProfileParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/network/v1beta1/zz_publicip_types.go b/apis/network/v1beta1/zz_publicip_types.go index e7a7eb8f7..78e280edb 100755 --- a/apis/network/v1beta1/zz_publicip_types.go +++ b/apis/network/v1beta1/zz_publicip_types.go @@ -124,33 +124,43 @@ type PublicIPObservation struct { type PublicIPParameters struct { // Defines the allocation method for this IP address. Possible values are Static or Dynamic. + // +kubebuilder:validation:Optional AllocationMethod *string `json:"allocationMethod,omitempty" tf:"allocation_method,omitempty"` // The DDoS protection mode of the public IP. Possible values are Disabled, Enabled, and VirtualNetworkInherited. Defaults to VirtualNetworkInherited. + // +kubebuilder:validation:Optional DDOSProtectionMode *string `json:"ddosProtectionMode,omitempty" tf:"ddos_protection_mode,omitempty"` // The ID of DDoS protection plan associated with the public IP. + // +kubebuilder:validation:Optional DDOSProtectionPlanID *string `json:"ddosProtectionPlanId,omitempty" tf:"ddos_protection_plan_id,omitempty"` // Label for the Domain Name. Will be used to make up the FQDN. If a domain name label is specified, an A DNS record is created for the public IP in the Microsoft Azure DNS system. + // +kubebuilder:validation:Optional DomainNameLabel *string `json:"domainNameLabel,omitempty" tf:"domain_name_label,omitempty"` // Specifies the Edge Zone within the Azure Region where this Public IP should exist. Changing this forces a new Public IP to be created. + // +kubebuilder:validation:Optional EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"` // A mapping of IP tags to assign to the public IP. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional IPTags map[string]*string `json:"ipTags,omitempty" tf:"ip_tags,omitempty"` // The IP Version to use, IPv6 or IPv4. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional IPVersion *string `json:"ipVersion,omitempty" tf:"ip_version,omitempty"` // Specifies the timeout for the TCP idle connection. The value can be set between 4 and 30 minutes. + // +kubebuilder:validation:Optional IdleTimeoutInMinutes *float64 `json:"idleTimeoutInMinutes,omitempty" tf:"idle_timeout_in_minutes,omitempty"` // Specifies the supported Azure location where the Public IP should exist. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // If specified then public IP address allocated will be provided from the public IP prefix resource. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PublicIPPrefixID *string `json:"publicIpPrefixId,omitempty" tf:"public_ip_prefix_id,omitempty"` // The name of the Resource Group where this Public IP should exist. Changing this forces a new Public IP to be created. @@ -167,18 +177,23 @@ type PublicIPParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A fully qualified domain name that resolves to this public IP address. If the reverseFqdn is specified, then a PTR DNS record is created pointing from the IP address in the in-addr.arpa domain to the reverse FQDN. + // +kubebuilder:validation:Optional ReverseFqdn *string `json:"reverseFqdn,omitempty" tf:"reverse_fqdn,omitempty"` // The SKU of the Public IP. Accepted values are Basic and Standard. Defaults to Basic. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // The SKU Tier that should be used for the Public IP. Possible values are Regional and Global. Defaults to Regional. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SkuTier *string `json:"skuTier,omitempty" tf:"sku_tier,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // A collection containing the availability zone to allocate the Public IP in. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } diff --git a/apis/network/v1beta1/zz_publicipprefix_types.go b/apis/network/v1beta1/zz_publicipprefix_types.go index 310a8de44..ae4e360e8 100755 --- a/apis/network/v1beta1/zz_publicipprefix_types.go +++ b/apis/network/v1beta1/zz_publicipprefix_types.go @@ -67,12 +67,15 @@ type PublicIPPrefixObservation struct { type PublicIPPrefixParameters struct { // The IP Version to use, IPv6 or IPv4. Changing this forces a new resource to be created. Default is IPv4. + // +kubebuilder:validation:Optional IPVersion *string `json:"ipVersion,omitempty" tf:"ip_version,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the number of bits of the prefix. The value can be set between 0 (4,294,967,296 addresses) and 31 (2 addresses). Defaults to 28(16 addresses). Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PrefixLength *float64 `json:"prefixLength,omitempty" tf:"prefix_length,omitempty"` // The name of the resource group in which to create the Public IP Prefix. Changing this forces a new resource to be created. @@ -89,12 +92,15 @@ type PublicIPPrefixParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The SKU of the Public IP Prefix. Accepted values are Standard. Defaults to Standard. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies a list of Availability Zones in which this Public IP Prefix should be located. Changing this forces a new Public IP Prefix to be created. + // +kubebuilder:validation:Optional Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } diff --git a/apis/network/v1beta1/zz_route_types.go b/apis/network/v1beta1/zz_route_types.go index 715a85df3..abdec84b6 100755 --- a/apis/network/v1beta1/zz_route_types.go +++ b/apis/network/v1beta1/zz_route_types.go @@ -49,12 +49,15 @@ type RouteObservation_2 struct { type RouteParameters_2 struct { // The destination to which the route applies. Can be CIDR (such as 10.1.0.0/16) or Azure Service Tag (such as ApiManagement, AzureBackup or AzureMonitor) format. + // +kubebuilder:validation:Optional AddressPrefix *string `json:"addressPrefix,omitempty" tf:"address_prefix,omitempty"` // Contains the IP address packets should be forwarded to. Next hop values are only allowed in routes where the next hop type is VirtualAppliance. + // +kubebuilder:validation:Optional NextHopInIPAddress *string `json:"nextHopInIpAddress,omitempty" tf:"next_hop_in_ip_address,omitempty"` // The type of Azure hop the packet should be sent to. Possible values are VirtualNetworkGateway, VnetLocal, Internet, VirtualAppliance and None. + // +kubebuilder:validation:Optional NextHopType *string `json:"nextHopType,omitempty" tf:"next_hop_type,omitempty"` // The name of the resource group in which to create the route. Changing this forces a new resource to be created. diff --git a/apis/network/v1beta1/zz_routefilter_types.go b/apis/network/v1beta1/zz_routefilter_types.go index c1a3a8a3d..4a24354d3 100755 --- a/apis/network/v1beta1/zz_routefilter_types.go +++ b/apis/network/v1beta1/zz_routefilter_types.go @@ -46,6 +46,7 @@ type RouteFilterObservation struct { type RouteFilterParameters struct { // The Azure Region where the Route Filter should exist. Changing this forces a new Route Filter to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the Resource Group where the Route Filter should exist. Changing this forces a new Route Filter to be created. @@ -62,9 +63,11 @@ type RouteFilterParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A rule block as defined below. + // +kubebuilder:validation:Optional Rule []RouteFilterRuleParameters `json:"rule,omitempty" tf:"rule,omitempty"` // A mapping of tags which should be assigned to the Route Filter. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -101,15 +104,19 @@ type RouteFilterRuleObservation struct { type RouteFilterRuleParameters struct { // The access type of the rule. The only possible value is Allow. + // +kubebuilder:validation:Optional Access *string `json:"access,omitempty" tf:"access"` // The collection for bgp community values to filter on. e.g. ['12076:5010','12076:5020']. + // +kubebuilder:validation:Optional Communities []*string `json:"communities,omitempty" tf:"communities"` // The name of the route filter rule. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name"` // The rule type of the rule. The only possible value is Community. + // +kubebuilder:validation:Optional RuleType *string `json:"ruleType,omitempty" tf:"rule_type"` } diff --git a/apis/network/v1beta1/zz_routemap_types.go b/apis/network/v1beta1/zz_routemap_types.go index 80d17dc64..b5d49aecc 100755 --- a/apis/network/v1beta1/zz_routemap_types.go +++ b/apis/network/v1beta1/zz_routemap_types.go @@ -46,15 +46,19 @@ type MatchCriterionObservation struct { type MatchCriterionParameters struct { // A list of AS paths. + // +kubebuilder:validation:Optional AsPath []*string `json:"asPath,omitempty" tf:"as_path,omitempty"` // A list of BGP communities. + // +kubebuilder:validation:Optional Community []*string `json:"community,omitempty" tf:"community,omitempty"` // The match condition to apply the rule of the Route Map. Possible values are Contains, Equals, NotContains, NotEquals and Unknown. + // +kubebuilder:validation:Optional MatchCondition *string `json:"matchCondition,omitempty" tf:"match_condition,omitempty"` // A list of route prefixes. + // +kubebuilder:validation:Optional RoutePrefix []*string `json:"routePrefix,omitempty" tf:"route_prefix,omitempty"` } @@ -85,12 +89,15 @@ type ParameterObservation struct { type ParameterParameters struct { // A list of AS paths. + // +kubebuilder:validation:Optional AsPath []*string `json:"asPath,omitempty" tf:"as_path,omitempty"` // A list of BGP communities. + // +kubebuilder:validation:Optional Community []*string `json:"community,omitempty" tf:"community,omitempty"` // A list of route prefixes. + // +kubebuilder:validation:Optional RoutePrefix []*string `json:"routePrefix,omitempty" tf:"route_prefix,omitempty"` } @@ -115,6 +122,7 @@ type RouteMapObservation struct { type RouteMapParameters struct { // A rule block as defined below. + // +kubebuilder:validation:Optional Rule []RouteMapRuleParameters `json:"rule,omitempty" tf:"rule,omitempty"` // The resource ID of the Virtual Hub. Changing this forces a new resource to be created. @@ -165,15 +173,19 @@ type RouteMapRuleObservation struct { type RouteMapRuleParameters struct { // An action block as defined below. + // +kubebuilder:validation:Optional Action []RuleActionParameters `json:"action,omitempty" tf:"action,omitempty"` // A match_criterion block as defined below. + // +kubebuilder:validation:Optional MatchCriterion []MatchCriterionParameters `json:"matchCriterion,omitempty" tf:"match_criterion,omitempty"` // The unique name for the rule. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The next step after the rule is evaluated. Possible values are Continue, Terminate and Unknown. Defaults to Unknown. + // +kubebuilder:validation:Optional NextStepIfMatched *string `json:"nextStepIfMatched,omitempty" tf:"next_step_if_matched,omitempty"` } @@ -198,9 +210,11 @@ type RuleActionObservation struct { type RuleActionParameters struct { // A parameter block as defined below. + // +kubebuilder:validation:Optional Parameter []ParameterParameters `json:"parameter,omitempty" tf:"parameter,omitempty"` // The type of the action to be taken. Possible values are Add, Drop, Remove, Replace and Unknown. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/network/v1beta1/zz_routeserver_types.go b/apis/network/v1beta1/zz_routeserver_types.go index 9ca1ef22d..3484b8dde 100755 --- a/apis/network/v1beta1/zz_routeserver_types.go +++ b/apis/network/v1beta1/zz_routeserver_types.go @@ -64,9 +64,11 @@ type RouteServerObservation struct { type RouteServerParameters struct { // Whether to enable route exchange between Azure Route Server and the gateway(s) + // +kubebuilder:validation:Optional BranchToBranchTrafficEnabled *bool `json:"branchToBranchTrafficEnabled,omitempty" tf:"branch_to_branch_traffic_enabled,omitempty"` // Specifies the supported Azure location where the Route Server should exist. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The ID of the Public IP Address. This option is required since September 1st 2021. Changing this forces a new resource to be created. @@ -97,6 +99,7 @@ type RouteServerParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The SKU of the Route Server. The only possible value is Standard. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // The ID of the Subnet that the Route Server will reside. Changing this forces a new resource to be created. @@ -114,6 +117,7 @@ type RouteServerParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/network/v1beta1/zz_routeserverbgpconnection_types.go b/apis/network/v1beta1/zz_routeserverbgpconnection_types.go index 358f0e8d1..42be9ae32 100755 --- a/apis/network/v1beta1/zz_routeserverbgpconnection_types.go +++ b/apis/network/v1beta1/zz_routeserverbgpconnection_types.go @@ -40,9 +40,11 @@ type RouteServerBGPConnectionObservation struct { type RouteServerBGPConnectionParameters struct { // The peer autonomous system number for the Route Server Bgp Connection. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PeerAsn *float64 `json:"peerAsn,omitempty" tf:"peer_asn,omitempty"` // The peer ip address for the Route Server Bgp Connection. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PeerIP *string `json:"peerIp,omitempty" tf:"peer_ip,omitempty"` // The ID of the Route Server within which this Bgp connection should be created. Changing this forces a new resource to be created. diff --git a/apis/network/v1beta1/zz_routetable_types.go b/apis/network/v1beta1/zz_routetable_types.go index c480fee2e..fad06e479 100755 --- a/apis/network/v1beta1/zz_routetable_types.go +++ b/apis/network/v1beta1/zz_routetable_types.go @@ -55,9 +55,11 @@ type RouteTableObservation struct { type RouteTableParameters struct { // Boolean flag which controls propagation of routes learned by BGP on that route table. True means disable. + // +kubebuilder:validation:Optional DisableBGPRoutePropagation *bool `json:"disableBgpRoutePropagation,omitempty" tf:"disable_bgp_route_propagation,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the resource group in which to create the route table. Changing this forces a new resource to be created. @@ -74,9 +76,11 @@ type RouteTableParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // List of objects representing routes. Each object accepts the arguments documented below. + // +kubebuilder:validation:Optional Route []RouteTableRouteParameters `json:"route,omitempty" tf:"route,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -113,15 +117,19 @@ type RouteTableRouteObservation struct { type RouteTableRouteParameters struct { // The destination to which the route applies. Can be CIDR (such as 10.1.0.0/16) or Azure Service Tag (such as ApiManagement, AzureBackup or AzureMonitor) format. + // +kubebuilder:validation:Optional AddressPrefix *string `json:"addressPrefix,omitempty" tf:"address_prefix"` // The name of the route. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name"` // Contains the IP address packets should be forwarded to. Next hop values are only allowed in routes where the next hop type is VirtualAppliance. + // +kubebuilder:validation:Optional NextHopInIPAddress *string `json:"nextHopInIpAddress,omitempty" tf:"next_hop_in_ip_address"` // The type of Azure hop the packet should be sent to. Possible values are VirtualNetworkGateway, VnetLocal, Internet, VirtualAppliance and None. + // +kubebuilder:validation:Optional NextHopType *string `json:"nextHopType,omitempty" tf:"next_hop_type"` } diff --git a/apis/network/v1beta1/zz_securitygroup_types.go b/apis/network/v1beta1/zz_securitygroup_types.go index 6e756b70f..eb1481d8a 100755 --- a/apis/network/v1beta1/zz_securitygroup_types.go +++ b/apis/network/v1beta1/zz_securitygroup_types.go @@ -46,6 +46,7 @@ type SecurityGroupObservation struct { type SecurityGroupParameters struct { // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the resource group in which to create the network security group. Changing this forces a new resource to be created. @@ -62,9 +63,11 @@ type SecurityGroupParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // List of objects representing security rules, as defined below. + // +kubebuilder:validation:Optional SecurityRule []SecurityRuleParameters `json:"securityRule,omitempty" tf:"security_rule,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -173,51 +176,67 @@ type SecurityRuleObservation struct { type SecurityRuleParameters struct { // Specifies whether network traffic is allowed or denied. Possible values are Allow and Deny. + // +kubebuilder:validation:Optional Access *string `json:"access,omitempty" tf:"access"` // A description for this rule. Restricted to 140 characters. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description"` // CIDR or destination IP range or * to match any IP. Tags such as VirtualNetwork, AzureLoadBalancer and Internet can also be used. This is required if destination_address_prefixes is not specified. + // +kubebuilder:validation:Optional DestinationAddressPrefix *string `json:"destinationAddressPrefix,omitempty" tf:"destination_address_prefix"` // List of destination address prefixes. Tags may not be used. This is required if destination_address_prefix is not specified. + // +kubebuilder:validation:Optional DestinationAddressPrefixes []*string `json:"destinationAddressPrefixes,omitempty" tf:"destination_address_prefixes"` // A List of destination Application Security Group IDs + // +kubebuilder:validation:Optional DestinationApplicationSecurityGroupIds []*string `json:"destinationApplicationSecurityGroupIds,omitempty" tf:"destination_application_security_group_ids"` // Destination Port or Range. Integer or range between 0 and 65535 or * to match any. This is required if destination_port_ranges is not specified. + // +kubebuilder:validation:Optional DestinationPortRange *string `json:"destinationPortRange,omitempty" tf:"destination_port_range"` // List of destination ports or port ranges. This is required if destination_port_range is not specified. + // +kubebuilder:validation:Optional DestinationPortRanges []*string `json:"destinationPortRanges,omitempty" tf:"destination_port_ranges"` // The direction specifies if rule will be evaluated on incoming or outgoing traffic. Possible values are Inbound and Outbound. + // +kubebuilder:validation:Optional Direction *string `json:"direction,omitempty" tf:"direction"` // The name of the security rule. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name"` // Specifies the priority of the rule. The value can be between 100 and 4096. The priority number must be unique for each rule in the collection. The lower the priority number, the higher the priority of the rule. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority"` // Network protocol this rule applies to. Possible values include Tcp, Udp, Icmp, Esp, Ah or * (which matches all). + // +kubebuilder:validation:Optional Protocol *string `json:"protocol,omitempty" tf:"protocol"` // CIDR or source IP range or * to match any IP. Tags such as VirtualNetwork, AzureLoadBalancer and Internet can also be used. This is required if source_address_prefixes is not specified. + // +kubebuilder:validation:Optional SourceAddressPrefix *string `json:"sourceAddressPrefix,omitempty" tf:"source_address_prefix"` // List of source address prefixes. Tags may not be used. This is required if source_address_prefix is not specified. + // +kubebuilder:validation:Optional SourceAddressPrefixes []*string `json:"sourceAddressPrefixes,omitempty" tf:"source_address_prefixes"` // A List of source Application Security Group IDs + // +kubebuilder:validation:Optional SourceApplicationSecurityGroupIds []*string `json:"sourceApplicationSecurityGroupIds,omitempty" tf:"source_application_security_group_ids"` // Source Port or Range. Integer or range between 0 and 65535 or * to match any. This is required if source_port_ranges is not specified. + // +kubebuilder:validation:Optional SourcePortRange *string `json:"sourcePortRange,omitempty" tf:"source_port_range"` // List of source ports or port ranges. This is required if source_port_range is not specified. + // +kubebuilder:validation:Optional SourcePortRanges []*string `json:"sourcePortRanges,omitempty" tf:"source_port_ranges"` } diff --git a/apis/network/v1beta1/zz_securityrule_types.go b/apis/network/v1beta1/zz_securityrule_types.go index 39a812613..b3e6e55f5 100755 --- a/apis/network/v1beta1/zz_securityrule_types.go +++ b/apis/network/v1beta1/zz_securityrule_types.go @@ -121,27 +121,35 @@ type SecurityRuleObservation_2 struct { type SecurityRuleParameters_2 struct { // Specifies whether network traffic is allowed or denied. Possible values are Allow and Deny. + // +kubebuilder:validation:Optional Access *string `json:"access,omitempty" tf:"access,omitempty"` // A description for this rule. Restricted to 140 characters. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // CIDR or destination IP range or * to match any IP. Tags such as VirtualNetwork, AzureLoadBalancer and Internet can also be used. Besides, it also supports all available Service Tags like ‘Sql.WestEurope‘, ‘Storage.EastUS‘, etc. You can list the available service tags with the CLI: shell az network list-service-tags --location westcentralus. For further information please see Azure CLI - az network list-service-tags. This is required if destination_address_prefixes is not specified. + // +kubebuilder:validation:Optional DestinationAddressPrefix *string `json:"destinationAddressPrefix,omitempty" tf:"destination_address_prefix,omitempty"` // List of destination address prefixes. Tags may not be used. This is required if destination_address_prefix is not specified. + // +kubebuilder:validation:Optional DestinationAddressPrefixes []*string `json:"destinationAddressPrefixes,omitempty" tf:"destination_address_prefixes,omitempty"` // A List of destination Application Security Group IDs + // +kubebuilder:validation:Optional DestinationApplicationSecurityGroupIds []*string `json:"destinationApplicationSecurityGroupIds,omitempty" tf:"destination_application_security_group_ids,omitempty"` // Destination Port or Range. Integer or range between 0 and 65535 or * to match any. This is required if destination_port_ranges is not specified. + // +kubebuilder:validation:Optional DestinationPortRange *string `json:"destinationPortRange,omitempty" tf:"destination_port_range,omitempty"` // List of destination ports or port ranges. This is required if destination_port_range is not specified. + // +kubebuilder:validation:Optional DestinationPortRanges []*string `json:"destinationPortRanges,omitempty" tf:"destination_port_ranges,omitempty"` // The direction specifies if rule will be evaluated on incoming or outgoing traffic. Possible values are Inbound and Outbound. + // +kubebuilder:validation:Optional Direction *string `json:"direction,omitempty" tf:"direction,omitempty"` // The name of the Network Security Group that we want to attach the rule to. Changing this forces a new resource to be created. @@ -158,9 +166,11 @@ type SecurityRuleParameters_2 struct { NetworkSecurityGroupNameSelector *v1.Selector `json:"networkSecurityGroupNameSelector,omitempty" tf:"-"` // Specifies the priority of the rule. The value can be between 100 and 4096. The priority number must be unique for each rule in the collection. The lower the priority number, the higher the priority of the rule. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // Network protocol this rule applies to. Possible values include Tcp, Udp, Icmp, Esp, Ah or * (which matches all). + // +kubebuilder:validation:Optional Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` // The name of the resource group in which to create the Network Security Rule. Changing this forces a new resource to be created. @@ -177,18 +187,23 @@ type SecurityRuleParameters_2 struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // CIDR or source IP range or * to match any IP. Tags such as VirtualNetwork, AzureLoadBalancer and Internet can also be used. This is required if source_address_prefixes is not specified. + // +kubebuilder:validation:Optional SourceAddressPrefix *string `json:"sourceAddressPrefix,omitempty" tf:"source_address_prefix,omitempty"` // List of source address prefixes. Tags may not be used. This is required if source_address_prefix is not specified. + // +kubebuilder:validation:Optional SourceAddressPrefixes []*string `json:"sourceAddressPrefixes,omitempty" tf:"source_address_prefixes,omitempty"` // A List of source Application Security Group IDs + // +kubebuilder:validation:Optional SourceApplicationSecurityGroupIds []*string `json:"sourceApplicationSecurityGroupIds,omitempty" tf:"source_application_security_group_ids,omitempty"` // Source Port or Range. Integer or range between 0 and 65535 or * to match any. This is required if source_port_ranges is not specified. + // +kubebuilder:validation:Optional SourcePortRange *string `json:"sourcePortRange,omitempty" tf:"source_port_range,omitempty"` // List of source ports or port ranges. This is required if source_port_range is not specified. + // +kubebuilder:validation:Optional SourcePortRanges []*string `json:"sourcePortRanges,omitempty" tf:"source_port_ranges,omitempty"` } diff --git a/apis/network/v1beta1/zz_subnet_types.go b/apis/network/v1beta1/zz_subnet_types.go index f0da6beba..ea59ecfd4 100755 --- a/apis/network/v1beta1/zz_subnet_types.go +++ b/apis/network/v1beta1/zz_subnet_types.go @@ -34,9 +34,11 @@ type DelegationObservation struct { type DelegationParameters struct { // A name for this delegation. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A service_delegation block as defined below. + // +kubebuilder:validation:Optional ServiceDelegation []ServiceDelegationParameters `json:"serviceDelegation,omitempty" tf:"service_delegation,omitempty"` } @@ -61,9 +63,11 @@ type ServiceDelegationObservation struct { type ServiceDelegationParameters struct { // A list of Actions which should be delegated. This list is specific to the service to delegate to. Possible values are Microsoft.Network/networkinterfaces/*, Microsoft.Network/publicIPAddresses/join/action, Microsoft.Network/publicIPAddresses/read, Microsoft.Network/virtualNetworks/read, Microsoft.Network/virtualNetworks/subnets/action, Microsoft.Network/virtualNetworks/subnets/join/action, Microsoft.Network/virtualNetworks/subnets/prepareNetworkPolicies/action, and Microsoft.Network/virtualNetworks/subnets/unprepareNetworkPolicies/action. + // +kubebuilder:validation:Optional Actions []*string `json:"actions,omitempty" tf:"actions,omitempty"` // The name of service to delegate to. Possible values are Microsoft.ApiManagement/service, Microsoft.AzureCosmosDB/clusters, Microsoft.BareMetal/AzureVMware, Microsoft.BareMetal/CrayServers, Microsoft.Batch/batchAccounts, Microsoft.ContainerInstance/containerGroups, Microsoft.ContainerService/managedClusters, Microsoft.Databricks/workspaces, Microsoft.DBforMySQL/flexibleServers, Microsoft.DBforMySQL/serversv2, Microsoft.DBforPostgreSQL/flexibleServers, Microsoft.DBforPostgreSQL/serversv2, Microsoft.DBforPostgreSQL/singleServers, Microsoft.HardwareSecurityModules/dedicatedHSMs, Microsoft.Kusto/clusters, Microsoft.Logic/integrationServiceEnvironments, Microsoft.LabServices/labplans, Microsoft.MachineLearningServices/workspaces, Microsoft.Netapp/volumes, Microsoft.Network/dnsResolvers, Microsoft.Network/managedResolvers, Microsoft.PowerPlatform/vnetaccesslinks, Microsoft.ServiceFabricMesh/networks, Microsoft.Sql/managedInstances, Microsoft.Sql/servers, Microsoft.StoragePool/diskPools, Microsoft.StreamAnalytics/streamingJobs, Microsoft.Synapse/workspaces, Microsoft.Web/hostingEnvironments, Microsoft.Web/serverFarms, Microsoft.Orbital/orbitalGateways, NGINX.NGINXPLUS/nginxDeployments, PaloAltoNetworks.Cloudngfw/firewalls, and Qumulo.Storage/fileSystems. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -129,19 +133,25 @@ type SubnetObservation struct { type SubnetParameters struct { // The address prefixes to use for the subnet. + // +kubebuilder:validation:Optional AddressPrefixes []*string `json:"addressPrefixes,omitempty" tf:"address_prefixes,omitempty"` // One or more delegation blocks as defined below. + // +kubebuilder:validation:Optional Delegation []DelegationParameters `json:"delegation,omitempty" tf:"delegation,omitempty"` + // +kubebuilder:validation:Optional EnforcePrivateLinkEndpointNetworkPolicies *bool `json:"enforcePrivateLinkEndpointNetworkPolicies,omitempty" tf:"enforce_private_link_endpoint_network_policies,omitempty"` + // +kubebuilder:validation:Optional EnforcePrivateLinkServiceNetworkPolicies *bool `json:"enforcePrivateLinkServiceNetworkPolicies,omitempty" tf:"enforce_private_link_service_network_policies,omitempty"` // Enable or Disable network policies for the private endpoint on the subnet. Setting this to true will Enable the policy and setting this to false will Disable the policy. Defaults to true. + // +kubebuilder:validation:Optional PrivateEndpointNetworkPoliciesEnabled *bool `json:"privateEndpointNetworkPoliciesEnabled,omitempty" tf:"private_endpoint_network_policies_enabled,omitempty"` // Enable or Disable network policies for the private link service on the subnet. Setting this to true will Enable the policy and setting this to false will Disable the policy. Defaults to true. + // +kubebuilder:validation:Optional PrivateLinkServiceNetworkPoliciesEnabled *bool `json:"privateLinkServiceNetworkPoliciesEnabled,omitempty" tf:"private_link_service_network_policies_enabled,omitempty"` // The name of the resource group in which to create the subnet. Changing this forces a new resource to be created. @@ -158,9 +168,11 @@ type SubnetParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The list of IDs of Service Endpoint Policies to associate with the subnet. + // +kubebuilder:validation:Optional ServiceEndpointPolicyIds []*string `json:"serviceEndpointPolicyIds,omitempty" tf:"service_endpoint_policy_ids,omitempty"` // The list of Service endpoints to associate with the subnet. Possible values include: Microsoft.AzureActiveDirectory, Microsoft.AzureCosmosDB, Microsoft.ContainerRegistry, Microsoft.EventHub, Microsoft.KeyVault, Microsoft.ServiceBus, Microsoft.Sql, Microsoft.Storage, Microsoft.Storage.Global and Microsoft.Web. + // +kubebuilder:validation:Optional ServiceEndpoints []*string `json:"serviceEndpoints,omitempty" tf:"service_endpoints,omitempty"` // The name of the virtual network to which to attach the subnet. Changing this forces a new resource to be created. diff --git a/apis/network/v1beta1/zz_subnetserviceendpointstoragepolicy_types.go b/apis/network/v1beta1/zz_subnetserviceendpointstoragepolicy_types.go index 76ca89725..98d6fb331 100755 --- a/apis/network/v1beta1/zz_subnetserviceendpointstoragepolicy_types.go +++ b/apis/network/v1beta1/zz_subnetserviceendpointstoragepolicy_types.go @@ -40,12 +40,15 @@ type DefinitionObservation struct { type DefinitionParameters struct { // The description of this Subnet Service Endpoint Storage Policy Definition. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The name which should be used for this Subnet Service Endpoint Storage Policy Definition. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies a list of resources that this Subnet Service Endpoint Storage Policy Definition applies to. + // +kubebuilder:validation:Optional ServiceResources []*string `json:"serviceResources,omitempty" tf:"service_resources,omitempty"` } @@ -82,9 +85,11 @@ type SubnetServiceEndpointStoragePolicyObservation struct { type SubnetServiceEndpointStoragePolicyParameters struct { // A definition block as defined below + // +kubebuilder:validation:Optional Definition []DefinitionParameters `json:"definition,omitempty" tf:"definition,omitempty"` // The Azure Region where the Subnet Service Endpoint Storage Policy should exist. Changing this forces a new Subnet Service Endpoint Storage Policy to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the Resource Group where the Subnet Service Endpoint Storage Policy should exist. Changing this forces a new Subnet Service Endpoint Storage Policy to be created. @@ -101,6 +106,7 @@ type SubnetServiceEndpointStoragePolicyParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the Subnet Service Endpoint Storage Policy. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/network/v1beta1/zz_trafficmanagerazureendpoint_types.go b/apis/network/v1beta1/zz_trafficmanagerazureendpoint_types.go index 7d61c72a1..baff68e33 100755 --- a/apis/network/v1beta1/zz_trafficmanagerazureendpoint_types.go +++ b/apis/network/v1beta1/zz_trafficmanagerazureendpoint_types.go @@ -34,9 +34,11 @@ type CustomHeaderObservation struct { type CustomHeaderParameters struct { // The name of the custom header. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The value of custom header. Applicable for HTTP and HTTPS protocol. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -94,15 +96,19 @@ type TrafficManagerAzureEndpointObservation struct { type TrafficManagerAzureEndpointParameters struct { // One or more custom_header blocks as defined below. + // +kubebuilder:validation:Optional CustomHeader []CustomHeaderParameters `json:"customHeader,omitempty" tf:"custom_header,omitempty"` // Is the endpoint enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // A list of Geographic Regions used to distribute traffic, such as WORLD, UK or DE. The same location can't be specified in two endpoints. See the Geographic Hierarchies documentation for more information. + // +kubebuilder:validation:Optional GeoMappings []*string `json:"geoMappings,omitempty" tf:"geo_mappings,omitempty"` // Specifies the priority of this Endpoint, this must be specified for Profiles using the Priority traffic routing method. Supports values between 1 and 1000, with no Endpoints sharing the same value. If omitted the value will be computed in order of creation. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // The ID of the Traffic Manager Profile that this Azure Endpoint should be created within. Changing this forces a new resource to be created. @@ -120,6 +126,7 @@ type TrafficManagerAzureEndpointParameters struct { ProfileIDSelector *v1.Selector `json:"profileIdSelector,omitempty" tf:"-"` // One or more subnet blocks as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Subnet []TrafficManagerAzureEndpointSubnetParameters `json:"subnet,omitempty" tf:"subnet,omitempty"` // The ID of the Azure Resource which should be used as a target. @@ -137,6 +144,7 @@ type TrafficManagerAzureEndpointParameters struct { TargetResourceIDSelector *v1.Selector `json:"targetResourceIdSelector,omitempty" tf:"-"` // Specifies how much traffic should be distributed to this endpoint, this must be specified for Profiles using the Weighted traffic routing method. Valid values are between 1 and 1000. + // +kubebuilder:validation:Optional Weight *float64 `json:"weight,omitempty" tf:"weight,omitempty"` } @@ -167,12 +175,15 @@ type TrafficManagerAzureEndpointSubnetObservation struct { type TrafficManagerAzureEndpointSubnetParameters struct { // The first IP Address in this subnet. + // +kubebuilder:validation:Optional First *string `json:"first,omitempty" tf:"first,omitempty"` // The last IP Address in this subnet. + // +kubebuilder:validation:Optional Last *string `json:"last,omitempty" tf:"last,omitempty"` // The block size (number of leading bits in the subnet mask). + // +kubebuilder:validation:Optional Scope *float64 `json:"scope,omitempty" tf:"scope,omitempty"` } diff --git a/apis/network/v1beta1/zz_trafficmanagerexternalendpoint_types.go b/apis/network/v1beta1/zz_trafficmanagerexternalendpoint_types.go index 46a60afa4..ae5da2cb2 100755 --- a/apis/network/v1beta1/zz_trafficmanagerexternalendpoint_types.go +++ b/apis/network/v1beta1/zz_trafficmanagerexternalendpoint_types.go @@ -34,9 +34,11 @@ type TrafficManagerExternalEndpointCustomHeaderObservation struct { type TrafficManagerExternalEndpointCustomHeaderParameters struct { // The name of the custom header. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The value of custom header. Applicable for HTTP and HTTPS protocol. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -103,18 +105,23 @@ type TrafficManagerExternalEndpointObservation struct { type TrafficManagerExternalEndpointParameters struct { // One or more custom_header blocks as defined below. + // +kubebuilder:validation:Optional CustomHeader []TrafficManagerExternalEndpointCustomHeaderParameters `json:"customHeader,omitempty" tf:"custom_header,omitempty"` // Is the endpoint enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Specifies the Azure location of the Endpoint, this must be specified for Profiles using the Performance routing method. + // +kubebuilder:validation:Optional EndpointLocation *string `json:"endpointLocation,omitempty" tf:"endpoint_location,omitempty"` // A list of Geographic Regions used to distribute traffic, such as WORLD, UK or DE. The same location can't be specified in two endpoints. See the Geographic Hierarchies documentation for more information. + // +kubebuilder:validation:Optional GeoMappings []*string `json:"geoMappings,omitempty" tf:"geo_mappings,omitempty"` // Specifies the priority of this Endpoint, this must be specified for Profiles using the Priority traffic routing method. Supports values between 1 and 1000, with no Endpoints sharing the same value. If omitted the value will be computed in order of creation. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // The ID of the Traffic Manager Profile that this External Endpoint should be created within. Changing this forces a new resource to be created. @@ -132,12 +139,15 @@ type TrafficManagerExternalEndpointParameters struct { ProfileIDSelector *v1.Selector `json:"profileIdSelector,omitempty" tf:"-"` // One or more subnet blocks as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Subnet []TrafficManagerExternalEndpointSubnetParameters `json:"subnet,omitempty" tf:"subnet,omitempty"` // The FQDN DNS name of the target. + // +kubebuilder:validation:Optional Target *string `json:"target,omitempty" tf:"target,omitempty"` // Specifies how much traffic should be distributed to this endpoint, this must be specified for Profiles using the Weighted traffic routing method. Valid values are between 1 and 1000. + // +kubebuilder:validation:Optional Weight *float64 `json:"weight,omitempty" tf:"weight,omitempty"` } @@ -168,12 +178,15 @@ type TrafficManagerExternalEndpointSubnetObservation struct { type TrafficManagerExternalEndpointSubnetParameters struct { // The first IP Address in this subnet. + // +kubebuilder:validation:Optional First *string `json:"first,omitempty" tf:"first,omitempty"` // The last IP Address in this subnet. + // +kubebuilder:validation:Optional Last *string `json:"last,omitempty" tf:"last,omitempty"` // The block size (number of leading bits in the subnet mask). + // +kubebuilder:validation:Optional Scope *float64 `json:"scope,omitempty" tf:"scope,omitempty"` } diff --git a/apis/network/v1beta1/zz_trafficmanagernestedendpoint_types.go b/apis/network/v1beta1/zz_trafficmanagernestedendpoint_types.go index 939d4e9e3..8bb7bd654 100755 --- a/apis/network/v1beta1/zz_trafficmanagernestedendpoint_types.go +++ b/apis/network/v1beta1/zz_trafficmanagernestedendpoint_types.go @@ -34,9 +34,11 @@ type TrafficManagerNestedEndpointCustomHeaderObservation struct { type TrafficManagerNestedEndpointCustomHeaderParameters struct { // The name of the custom header. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The value of custom header. Applicable for HTTP and HTTPS protocol. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -118,27 +120,35 @@ type TrafficManagerNestedEndpointObservation struct { type TrafficManagerNestedEndpointParameters struct { // One or more custom_header blocks as defined below. + // +kubebuilder:validation:Optional CustomHeader []TrafficManagerNestedEndpointCustomHeaderParameters `json:"customHeader,omitempty" tf:"custom_header,omitempty"` // Is the endpoint enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Specifies the Azure location of the Endpoint, this must be specified for Profiles using the Performance routing method. + // +kubebuilder:validation:Optional EndpointLocation *string `json:"endpointLocation,omitempty" tf:"endpoint_location,omitempty"` // A list of Geographic Regions used to distribute traffic, such as WORLD, UK or DE. The same location can't be specified in two endpoints. See the Geographic Hierarchies documentation for more information. + // +kubebuilder:validation:Optional GeoMappings []*string `json:"geoMappings,omitempty" tf:"geo_mappings,omitempty"` // This argument specifies the minimum number of endpoints that must be ‘online’ in the child profile in order for the parent profile to direct traffic to any of the endpoints in that child profile. This value must be larger than 0. + // +kubebuilder:validation:Optional MinimumChildEndpoints *float64 `json:"minimumChildEndpoints,omitempty" tf:"minimum_child_endpoints,omitempty"` // This argument specifies the minimum number of IPv4 (DNS record type A) endpoints that must be ‘online’ in the child profile in order for the parent profile to direct traffic to any of the endpoints in that child profile. This argument only applies to Endpoints of type nestedEndpoints and + // +kubebuilder:validation:Optional MinimumRequiredChildEndpointsIPv4 *float64 `json:"minimumRequiredChildEndpointsIpv4,omitempty" tf:"minimum_required_child_endpoints_ipv4,omitempty"` // This argument specifies the minimum number of IPv6 (DNS record type AAAA) endpoints that must be ‘online’ in the child profile in order for the parent profile to direct traffic to any of the endpoints in that child profile. This argument only applies to Endpoints of type nestedEndpoints and + // +kubebuilder:validation:Optional MinimumRequiredChildEndpointsIPv6 *float64 `json:"minimumRequiredChildEndpointsIpv6,omitempty" tf:"minimum_required_child_endpoints_ipv6,omitempty"` // Specifies the priority of this Endpoint, this must be specified for Profiles using the Priority traffic routing method. Supports values between 1 and 1000, with no Endpoints sharing the same value. If omitted the value will be computed in order of creation. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // The ID of the Traffic Manager Profile that this External Endpoint should be created within. Changing this forces a new resource to be created. @@ -156,6 +166,7 @@ type TrafficManagerNestedEndpointParameters struct { ProfileIDSelector *v1.Selector `json:"profileIdSelector,omitempty" tf:"-"` // One or more subnet blocks as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Subnet []TrafficManagerNestedEndpointSubnetParameters `json:"subnet,omitempty" tf:"subnet,omitempty"` // The resource id of an Azure resource to target. @@ -173,6 +184,7 @@ type TrafficManagerNestedEndpointParameters struct { TargetResourceIDSelector *v1.Selector `json:"targetResourceIdSelector,omitempty" tf:"-"` // Specifies how much traffic should be distributed to this endpoint, this must be specified for Profiles using the Weighted traffic routing method. Valid values are between 1 and 1000. + // +kubebuilder:validation:Optional Weight *float64 `json:"weight,omitempty" tf:"weight,omitempty"` } @@ -203,12 +215,15 @@ type TrafficManagerNestedEndpointSubnetObservation struct { type TrafficManagerNestedEndpointSubnetParameters struct { // The first IP Address in this subnet. + // +kubebuilder:validation:Optional First *string `json:"first,omitempty" tf:"first,omitempty"` // The last IP Address in this subnet. + // +kubebuilder:validation:Optional Last *string `json:"last,omitempty" tf:"last,omitempty"` // The block size (number of leading bits in the subnet mask). + // +kubebuilder:validation:Optional Scope *float64 `json:"scope,omitempty" tf:"scope,omitempty"` } diff --git a/apis/network/v1beta1/zz_trafficmanagerprofile_types.go b/apis/network/v1beta1/zz_trafficmanagerprofile_types.go index 18d6ea3b1..04985f9a0 100755 --- a/apis/network/v1beta1/zz_trafficmanagerprofile_types.go +++ b/apis/network/v1beta1/zz_trafficmanagerprofile_types.go @@ -34,9 +34,11 @@ type DNSConfigObservation struct { type DNSConfigParameters struct { // The relative domain name, this is combined with the domain name used by Traffic Manager to form the FQDN which is exported as documented below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional RelativeName *string `json:"relativeName,omitempty" tf:"relative_name,omitempty"` // The TTL value of the Profile used by Local DNS resolvers and clients. + // +kubebuilder:validation:Optional TTL *float64 `json:"ttl,omitempty" tf:"ttl,omitempty"` } @@ -61,9 +63,11 @@ type MonitorConfigCustomHeaderObservation struct { type MonitorConfigCustomHeaderParameters struct { // The name of the Traffic Manager profile. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The value of custom header. Applicable for HTTP and HTTPS protocol. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -124,27 +128,35 @@ type MonitorConfigObservation struct { type MonitorConfigParameters struct { // One or more custom_header blocks as defined below. + // +kubebuilder:validation:Optional CustomHeader []MonitorConfigCustomHeaderParameters `json:"customHeader,omitempty" tf:"custom_header,omitempty"` // A list of status code ranges in the format of 100-101. + // +kubebuilder:validation:Optional ExpectedStatusCodeRanges []*string `json:"expectedStatusCodeRanges,omitempty" tf:"expected_status_code_ranges,omitempty"` // The interval used to check the endpoint health from a Traffic Manager probing agent. You can specify two values here: 30 (normal probing) and 10 (fast probing). The default value is 30. + // +kubebuilder:validation:Optional IntervalInSeconds *float64 `json:"intervalInSeconds,omitempty" tf:"interval_in_seconds,omitempty"` // The path used by the monitoring checks. Required when protocol is set to HTTP or HTTPS - cannot be set when protocol is set to TCP. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` // The port number used by the monitoring checks. + // +kubebuilder:validation:Optional Port *float64 `json:"port,omitempty" tf:"port,omitempty"` // The protocol used by the monitoring checks, supported values are HTTP, HTTPS and TCP. + // +kubebuilder:validation:Optional Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` // The amount of time the Traffic Manager probing agent should wait before considering that check a failure when a health check probe is sent to the endpoint. If interval_in_seconds is set to 30, then timeout_in_seconds can be between 5 and 10. The default value is 10. If interval_in_seconds is set to 10, then valid values are between 5 and 9 and timeout_in_seconds is required. + // +kubebuilder:validation:Optional TimeoutInSeconds *float64 `json:"timeoutInSeconds,omitempty" tf:"timeout_in_seconds,omitempty"` // The number of failures a Traffic Manager probing agent tolerates before marking that endpoint as unhealthy. Valid values are between 0 and 9. The default value is 3 + // +kubebuilder:validation:Optional ToleratedNumberOfFailures *float64 `json:"toleratedNumberOfFailures,omitempty" tf:"tolerated_number_of_failures,omitempty"` } @@ -208,15 +220,19 @@ type TrafficManagerProfileObservation struct { type TrafficManagerProfileParameters struct { // This block specifies the DNS configuration of the Profile, it supports the fields documented below. + // +kubebuilder:validation:Optional DNSConfig []DNSConfigParameters `json:"dnsConfig,omitempty" tf:"dns_config,omitempty"` // The amount of endpoints to return for DNS queries to this Profile. Possible values range from 1 to 8. + // +kubebuilder:validation:Optional MaxReturn *float64 `json:"maxReturn,omitempty" tf:"max_return,omitempty"` // This block specifies the Endpoint monitoring configuration for the Profile, it supports the fields documented below. + // +kubebuilder:validation:Optional MonitorConfig []MonitorConfigParameters `json:"monitorConfig,omitempty" tf:"monitor_config,omitempty"` // The status of the profile, can be set to either Enabled or Disabled. Defaults to Enabled. + // +kubebuilder:validation:Optional ProfileStatus *string `json:"profileStatus,omitempty" tf:"profile_status,omitempty"` // The name of the resource group in which to create the Traffic Manager profile. Changing this forces a new resource to be created. @@ -233,12 +249,15 @@ type TrafficManagerProfileParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the algorithm used to route traffic. Possible values are Geographic, Weighted, Performance, Priority, Subnet and MultiValue. + // +kubebuilder:validation:Optional TrafficRoutingMethod *string `json:"trafficRoutingMethod,omitempty" tf:"traffic_routing_method,omitempty"` // Indicates whether Traffic View is enabled for the Traffic Manager profile. + // +kubebuilder:validation:Optional TrafficViewEnabled *bool `json:"trafficViewEnabled,omitempty" tf:"traffic_view_enabled,omitempty"` } diff --git a/apis/network/v1beta1/zz_virtualhub_types.go b/apis/network/v1beta1/zz_virtualhub_types.go index 094be0ce9..6d9291024 100755 --- a/apis/network/v1beta1/zz_virtualhub_types.go +++ b/apis/network/v1beta1/zz_virtualhub_types.go @@ -76,12 +76,15 @@ type VirtualHubObservation_2 struct { type VirtualHubParameters_2 struct { // The Address Prefix which should be used for this Virtual Hub. Changing this forces a new resource to be created. The address prefix subnet cannot be smaller than a . + // +kubebuilder:validation:Optional AddressPrefix *string `json:"addressPrefix,omitempty" tf:"address_prefix,omitempty"` // The hub routing preference. Possible values are ExpressRoute, ASPath and VpnGateway. Defaults to ExpressRoute. + // +kubebuilder:validation:Optional HubRoutingPreference *string `json:"hubRoutingPreference,omitempty" tf:"hub_routing_preference,omitempty"` // Specifies the supported Azure location where the Virtual Hub should exist. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the name of the Resource Group where the Virtual Hub should exist. Changing this forces a new resource to be created. @@ -98,12 +101,15 @@ type VirtualHubParameters_2 struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // One or more route blocks as defined below. + // +kubebuilder:validation:Optional Route []VirtualHubRouteParameters `json:"route,omitempty" tf:"route,omitempty"` // The SKU of the Virtual Hub. Possible values are Basic and Standard. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // A mapping of tags to assign to the Virtual Hub. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The ID of a Virtual WAN within which the Virtual Hub should be created. Changing this forces a new resource to be created. @@ -142,9 +148,11 @@ type VirtualHubRouteObservation struct { type VirtualHubRouteParameters struct { // A list of Address Prefixes. + // +kubebuilder:validation:Optional AddressPrefixes []*string `json:"addressPrefixes,omitempty" tf:"address_prefixes,omitempty"` // The IP Address that Packets should be forwarded to as the Next Hop. + // +kubebuilder:validation:Optional NextHopIPAddress *string `json:"nextHopIpAddress,omitempty" tf:"next_hop_ip_address,omitempty"` } diff --git a/apis/network/v1beta1/zz_virtualhubconnection_types.go b/apis/network/v1beta1/zz_virtualhubconnection_types.go index e43c68038..a44ad8fae 100755 --- a/apis/network/v1beta1/zz_virtualhubconnection_types.go +++ b/apis/network/v1beta1/zz_virtualhubconnection_types.go @@ -34,9 +34,11 @@ type RoutingPropagatedRouteTableObservation struct { type RoutingPropagatedRouteTableParameters struct { // The list of labels to assign to this route table. + // +kubebuilder:validation:Optional Labels []*string `json:"labels,omitempty" tf:"labels,omitempty"` // A list of Route Table IDs to associated with this Virtual Hub Connection. + // +kubebuilder:validation:Optional RouteTableIds []*string `json:"routeTableIds,omitempty" tf:"route_table_ids,omitempty"` } @@ -67,12 +69,15 @@ type StaticVnetRouteObservation struct { type StaticVnetRouteParameters struct { // A list of CIDR Ranges which should be used as Address Prefixes. + // +kubebuilder:validation:Optional AddressPrefixes []*string `json:"addressPrefixes,omitempty" tf:"address_prefixes,omitempty"` // The name which should be used for this Static Route. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The IP Address which should be used for the Next Hop. + // +kubebuilder:validation:Optional NextHopIPAddress *string `json:"nextHopIpAddress,omitempty" tf:"next_hop_ip_address,omitempty"` } @@ -106,6 +111,7 @@ type VirtualHubConnectionObservation struct { type VirtualHubConnectionParameters struct { // Should Internet Security be enabled to secure internet traffic? Defaults to false. + // +kubebuilder:validation:Optional InternetSecurityEnabled *bool `json:"internetSecurityEnabled,omitempty" tf:"internet_security_enabled,omitempty"` // The ID of the Virtual Network which the Virtual Hub should be connected to. Changing this forces a new resource to be created. @@ -123,6 +129,7 @@ type VirtualHubConnectionParameters struct { RemoteVirtualNetworkIDSelector *v1.Selector `json:"remoteVirtualNetworkIdSelector,omitempty" tf:"-"` // A routing block as defined below. + // +kubebuilder:validation:Optional Routing []VirtualHubConnectionRoutingParameters `json:"routing,omitempty" tf:"routing,omitempty"` // The ID of the Virtual Hub within which this connection should be created. Changing this forces a new resource to be created. @@ -178,9 +185,11 @@ type VirtualHubConnectionRoutingParameters struct { AssociatedRouteTableIDSelector *v1.Selector `json:"associatedRouteTableIdSelector,omitempty" tf:"-"` // A propagated_route_table block as defined below. + // +kubebuilder:validation:Optional PropagatedRouteTable []RoutingPropagatedRouteTableParameters `json:"propagatedRouteTable,omitempty" tf:"propagated_route_table,omitempty"` // A static_vnet_route block as defined below. + // +kubebuilder:validation:Optional StaticVnetRoute []StaticVnetRouteParameters `json:"staticVnetRoute,omitempty" tf:"static_vnet_route,omitempty"` } diff --git a/apis/network/v1beta1/zz_virtualhubip_types.go b/apis/network/v1beta1/zz_virtualhubip_types.go index 22f5627fa..872848351 100755 --- a/apis/network/v1beta1/zz_virtualhubip_types.go +++ b/apis/network/v1beta1/zz_virtualhubip_types.go @@ -46,9 +46,11 @@ type VirtualHubIPObservation struct { type VirtualHubIPParameters struct { // The private IP address of the IP configuration. + // +kubebuilder:validation:Optional PrivateIPAddress *string `json:"privateIpAddress,omitempty" tf:"private_ip_address,omitempty"` // The private IP address allocation method. Possible values are Static and Dynamic is allowed. Defaults to Dynamic. + // +kubebuilder:validation:Optional PrivateIPAllocationMethod *string `json:"privateIpAllocationMethod,omitempty" tf:"private_ip_allocation_method,omitempty"` // The ID of the Public IP Address. This option is required since September 1st 2021. Changing this forces a new resource to be created. diff --git a/apis/network/v1beta1/zz_virtualhubroutetable_types.go b/apis/network/v1beta1/zz_virtualhubroutetable_types.go index 3e1f472ab..131e3f391 100755 --- a/apis/network/v1beta1/zz_virtualhubroutetable_types.go +++ b/apis/network/v1beta1/zz_virtualhubroutetable_types.go @@ -40,9 +40,11 @@ type VirtualHubRouteTableObservation struct { type VirtualHubRouteTableParameters struct { // List of labels associated with this route table. + // +kubebuilder:validation:Optional Labels []*string `json:"labels,omitempty" tf:"labels,omitempty"` // A route block as defined below. + // +kubebuilder:validation:Optional Route []VirtualHubRouteTableRouteParameters `json:"route,omitempty" tf:"route,omitempty"` // The ID of the Virtual Hub within which this route table should be created. Changing this forces a new resource to be created. @@ -96,12 +98,15 @@ type VirtualHubRouteTableRouteObservation struct { type VirtualHubRouteTableRouteParameters struct { // A list of destination addresses for this route. + // +kubebuilder:validation:Optional Destinations []*string `json:"destinations,omitempty" tf:"destinations,omitempty"` // The type of destinations. Possible values are CIDR, ResourceId and Service. + // +kubebuilder:validation:Optional DestinationsType *string `json:"destinationsType,omitempty" tf:"destinations_type,omitempty"` // The name which should be used for this route. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The next hop's resource ID. @@ -119,6 +124,7 @@ type VirtualHubRouteTableRouteParameters struct { NextHopSelector *v1.Selector `json:"nextHopSelector,omitempty" tf:"-"` // The type of next hop. Currently the only possible value is ResourceId. Defaults to ResourceId. + // +kubebuilder:validation:Optional NextHopType *string `json:"nextHopType,omitempty" tf:"next_hop_type,omitempty"` } diff --git a/apis/network/v1beta1/zz_virtualhubroutetableroute_types.go b/apis/network/v1beta1/zz_virtualhubroutetableroute_types.go index 262364b49..894ac1395 100755 --- a/apis/network/v1beta1/zz_virtualhubroutetableroute_types.go +++ b/apis/network/v1beta1/zz_virtualhubroutetableroute_types.go @@ -49,9 +49,11 @@ type VirtualHubRouteTableRouteObservation_2 struct { type VirtualHubRouteTableRouteParameters_2 struct { // A list of destination addresses for this route. + // +kubebuilder:validation:Optional Destinations []*string `json:"destinations,omitempty" tf:"destinations,omitempty"` // The type of destinations. Possible values are CIDR, ResourceId and Service. + // +kubebuilder:validation:Optional DestinationsType *string `json:"destinationsType,omitempty" tf:"destinations_type,omitempty"` // The next hop's resource ID. @@ -69,6 +71,7 @@ type VirtualHubRouteTableRouteParameters_2 struct { NextHopSelector *v1.Selector `json:"nextHopSelector,omitempty" tf:"-"` // The type of next hop. Currently the only possible value is ResourceId. Defaults to ResourceId. + // +kubebuilder:validation:Optional NextHopType *string `json:"nextHopType,omitempty" tf:"next_hop_type,omitempty"` // The ID of the Virtual Hub Route Table to link this route to. Changing this forces a new resource to be created. diff --git a/apis/network/v1beta1/zz_virtualhubsecuritypartnerprovider_types.go b/apis/network/v1beta1/zz_virtualhubsecuritypartnerprovider_types.go index e3ddbfc5f..c4799a188 100755 --- a/apis/network/v1beta1/zz_virtualhubsecuritypartnerprovider_types.go +++ b/apis/network/v1beta1/zz_virtualhubsecuritypartnerprovider_types.go @@ -49,6 +49,7 @@ type VirtualHubSecurityPartnerProviderObservation struct { type VirtualHubSecurityPartnerProviderParameters struct { // The Azure Region where the Security Partner Provider 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 where the Security Partner Provider should exist. Changing this forces a new resource to be created. @@ -65,9 +66,11 @@ type VirtualHubSecurityPartnerProviderParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The security provider name. Possible values are ZScaler, IBoss and Checkpoint is allowed. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SecurityProviderName *string `json:"securityProviderName,omitempty" tf:"security_provider_name,omitempty"` // A mapping of tags which should be assigned to the Security Partner Provider. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The ID of the Virtual Hub within which this Security Partner Provider should be created. Changing this forces a new resource to be created. diff --git a/apis/network/v1beta1/zz_virtualnetwork_types.go b/apis/network/v1beta1/zz_virtualnetwork_types.go index 5e486e116..2cb4ca868 100755 --- a/apis/network/v1beta1/zz_virtualnetwork_types.go +++ b/apis/network/v1beta1/zz_virtualnetwork_types.go @@ -34,9 +34,11 @@ type DDOSProtectionPlanObservation struct { type DDOSProtectionPlanParameters struct { // Enable/disable DDoS Protection Plan on Virtual Network. + // +kubebuilder:validation:Optional Enable *bool `json:"enable,omitempty" tf:"enable,omitempty"` // The ID of DDoS Protection Plan. + // +kubebuilder:validation:Optional ID *string `json:"id,omitempty" tf:"id,omitempty"` } @@ -109,24 +111,31 @@ type VirtualNetworkObservation struct { type VirtualNetworkParameters struct { // The address space that is used the virtual network. You can supply more than one address space. + // +kubebuilder:validation:Optional AddressSpace []*string `json:"addressSpace,omitempty" tf:"address_space,omitempty"` // The BGP community attribute in format :. + // +kubebuilder:validation:Optional BGPCommunity *string `json:"bgpCommunity,omitempty" tf:"bgp_community,omitempty"` // A ddos_protection_plan block as documented below. + // +kubebuilder:validation:Optional DDOSProtectionPlan []DDOSProtectionPlanParameters `json:"ddosProtectionPlan,omitempty" tf:"ddos_protection_plan,omitempty"` // List of IP addresses of DNS servers + // +kubebuilder:validation:Optional DNSServers []*string `json:"dnsServers,omitempty" tf:"dns_servers,omitempty"` // Specifies the Edge Zone within the Azure Region where this Virtual Network should exist. Changing this forces a new Virtual Network to be created. + // +kubebuilder:validation:Optional EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"` // The flow timeout in minutes for the Virtual Network, which is used to enable connection tracking for intra-VM flows. Possible values are between 4 and 30 minutes. + // +kubebuilder:validation:Optional FlowTimeoutInMinutes *float64 `json:"flowTimeoutInMinutes,omitempty" tf:"flow_timeout_in_minutes,omitempty"` // The location/region where the virtual network is created. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the resource group in which to create the virtual network. Changing this forces a new resource to be created. @@ -143,6 +152,7 @@ type VirtualNetworkParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/network/v1beta1/zz_virtualnetworkgateway_types.go b/apis/network/v1beta1/zz_virtualnetworkgateway_types.go index 96c258ee8..463a642d0 100755 --- a/apis/network/v1beta1/zz_virtualnetworkgateway_types.go +++ b/apis/network/v1beta1/zz_virtualnetworkgateway_types.go @@ -28,6 +28,7 @@ type CustomRouteObservation struct { type CustomRouteParameters struct { // A list of address blocks reserved for this virtual network in CIDR notation as defined below. + // +kubebuilder:validation:Optional AddressPrefixes []*string `json:"addressPrefixes,omitempty" tf:"address_prefixes,omitempty"` } @@ -58,9 +59,11 @@ type PeeringAddressesObservation struct { type PeeringAddressesParameters struct { // A list of Azure custom APIPA addresses assigned to the BGP peer of the Virtual Network Gateway. + // +kubebuilder:validation:Optional ApipaAddresses []*string `json:"apipaAddresses,omitempty" tf:"apipa_addresses,omitempty"` // The name of the IP configuration of this Virtual Network Gateway. In case there are multiple ip_configuration blocks defined, this property is required to specify. + // +kubebuilder:validation:Optional IPConfigurationName *string `json:"ipConfigurationName,omitempty" tf:"ip_configuration_name,omitempty"` } @@ -85,9 +88,11 @@ type RevokedCertificateObservation struct { type RevokedCertificateParameters struct { // A user-defined name of the root certificate. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the public data of the certificate. + // +kubebuilder:validation:Optional Thumbprint *string `json:"thumbprint,omitempty" tf:"thumbprint,omitempty"` } @@ -112,9 +117,11 @@ type RootCertificateObservation struct { type RootCertificateParameters struct { // A user-defined name of the root certificate. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The public certificate of the root certificate authority. The certificate must be provided in Base-64 encoded X.509 format (PEM). In particular, this argument must not include the -----BEGIN CERTIFICATE----- or -----END CERTIFICATE----- markers. + // +kubebuilder:validation:Optional PublicCertData *string `json:"publicCertData,omitempty" tf:"public_cert_data,omitempty"` } @@ -198,37 +205,47 @@ type VPNClientConfigurationParameters struct { // The client id of the Azure VPN application. // See Create an Active Directory (AD) tenant for P2S OpenVPN protocol connections for values + // +kubebuilder:validation:Optional AADAudience *string `json:"aadAudience,omitempty" tf:"aad_audience,omitempty"` // The STS url for your tenant + // +kubebuilder:validation:Optional AADIssuer *string `json:"aadIssuer,omitempty" tf:"aad_issuer,omitempty"` // AzureAD Tenant URL + // +kubebuilder:validation:Optional AADTenant *string `json:"aadTenant,omitempty" tf:"aad_tenant,omitempty"` // The address space out of which IP addresses for vpn clients will be taken. You can provide more than one address space, e.g. in CIDR notation. + // +kubebuilder:validation:Optional AddressSpace []*string `json:"addressSpace,omitempty" tf:"address_space,omitempty"` // The address of the Radius server. + // +kubebuilder:validation:Optional RadiusServerAddress *string `json:"radiusServerAddress,omitempty" tf:"radius_server_address,omitempty"` // The secret used by the Radius server. + // +kubebuilder:validation:Optional RadiusServerSecret *string `json:"radiusServerSecret,omitempty" tf:"radius_server_secret,omitempty"` // One or more revoked_certificate blocks which are defined below. + // +kubebuilder:validation:Optional RevokedCertificate []RevokedCertificateParameters `json:"revokedCertificate,omitempty" tf:"revoked_certificate,omitempty"` // One or more root_certificate blocks which are defined below. These root certificates are used to sign the client certificate used by the VPN clients to connect to the gateway. + // +kubebuilder:validation:Optional RootCertificate []RootCertificateParameters `json:"rootCertificate,omitempty" tf:"root_certificate,omitempty"` // List of the vpn authentication types for the virtual network gateway. // The supported values are AAD, Radius and Certificate. + // +kubebuilder:validation:Optional VPNAuthTypes []*string `json:"vpnAuthTypes,omitempty" tf:"vpn_auth_types,omitempty"` // List of the protocols supported by the vpn client. // The supported values are SSTP, IkeV2 and OpenVPN. // Values SSTP and IkeV2 are incompatible with the use of // aad_tenant, aad_audience and aad_issuer. + // +kubebuilder:validation:Optional VPNClientProtocols []*string `json:"vpnClientProtocols,omitempty" tf:"vpn_client_protocols,omitempty"` } @@ -259,12 +276,15 @@ type VirtualNetworkGatewayBGPSettingsObservation struct { type VirtualNetworkGatewayBGPSettingsParameters struct { // The Autonomous System Number (ASN) to use as part of the BGP. + // +kubebuilder:validation:Optional Asn *float64 `json:"asn,omitempty" tf:"asn,omitempty"` // The weight added to routes which have been learned through BGP peering. Valid values can be between 0 and 100. + // +kubebuilder:validation:Optional PeerWeight *float64 `json:"peerWeight,omitempty" tf:"peer_weight,omitempty"` // A list of peering_addresses as defined below. Only one peering_addresses block can be specified except when active_active of this Virtual Network Gateway is true. + // +kubebuilder:validation:Optional PeeringAddresses []PeeringAddressesParameters `json:"peeringAddresses,omitempty" tf:"peering_addresses,omitempty"` } @@ -295,9 +315,11 @@ type VirtualNetworkGatewayIPConfigurationObservation struct { type VirtualNetworkGatewayIPConfigurationParameters struct { // A user-defined name of the IP configuration. Defaults to vnetGatewayConfig. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Defines how the private IP address of the gateways virtual interface is assigned. Valid options are Static or Dynamic. Defaults to Dynamic. + // +kubebuilder:validation:Optional PrivateIPAddressAllocation *string `json:"privateIpAddressAllocation,omitempty" tf:"private_ip_address_allocation,omitempty"` // The ID of the public IP address to associate with the Virtual Network Gateway. @@ -440,36 +462,46 @@ type VirtualNetworkGatewayObservation struct { type VirtualNetworkGatewayParameters struct { // If true, an active-active Virtual Network Gateway will be created. An active-active gateway requires a HighPerformance or an UltraPerformance SKU. If false, an active-standby gateway will be created. Defaults to false. + // +kubebuilder:validation:Optional ActiveActive *bool `json:"activeActive,omitempty" tf:"active_active,omitempty"` // A bgp_settings block which is documented below. In this block the BGP specific settings can be defined. + // +kubebuilder:validation:Optional BGPSettings []VirtualNetworkGatewayBGPSettingsParameters `json:"bgpSettings,omitempty" tf:"bgp_settings,omitempty"` // A custom_route block as defined below. Specifies a custom routes address space for a virtual network gateway and a VpnClient. + // +kubebuilder:validation:Optional CustomRoute []CustomRouteParameters `json:"customRoute,omitempty" tf:"custom_route,omitempty"` // The ID of the local network gateway through which outbound Internet traffic from the virtual network in which the gateway is created will be routed (forced tunnelling). Refer to the Azure documentation on forced tunnelling. If not specified, forced tunnelling is disabled. + // +kubebuilder:validation:Optional DefaultLocalNetworkGatewayID *string `json:"defaultLocalNetworkGatewayId,omitempty" tf:"default_local_network_gateway_id,omitempty"` // Specifies the Edge Zone within the Azure Region where this Virtual Network Gateway should exist. Changing this forces a new Virtual Network Gateway to be created. + // +kubebuilder:validation:Optional EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"` // If true, BGP (Border Gateway Protocol) will be enabled for this Virtual Network Gateway. Defaults to false. + // +kubebuilder:validation:Optional EnableBGP *bool `json:"enableBgp,omitempty" tf:"enable_bgp,omitempty"` // The Generation of the Virtual Network gateway. Possible values include Generation1, Generation2 or None. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Generation *string `json:"generation,omitempty" tf:"generation,omitempty"` // One, two or three ip_configuration blocks documented below. // An active-standby gateway requires exactly one ip_configuration block, // an active-active gateway requires exactly two ip_configuration blocks whereas // an active-active zone redundant gateway with P2S configuration requires exactly three ip_configuration blocks. + // +kubebuilder:validation:Optional IPConfiguration []VirtualNetworkGatewayIPConfigurationParameters `json:"ipConfiguration,omitempty" tf:"ip_configuration,omitempty"` // The location/region where the Virtual Network Gateway is located. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Should private IP be enabled on this gateway for connections? Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PrivateIPAddressEnabled *bool `json:"privateIpAddressEnabled,omitempty" tf:"private_ip_address_enabled,omitempty"` // The name of the resource group in which to create the Virtual Network Gateway. Changing this forces a new resource to be created. @@ -486,18 +518,23 @@ type VirtualNetworkGatewayParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Configuration of the size and capacity of the virtual network gateway. Valid options are Basic, Standard, HighPerformance, UltraPerformance, ErGw1AZ, ErGw2AZ, ErGw3AZ, VpnGw1, VpnGw2, VpnGw3, VpnGw4,VpnGw5, VpnGw1AZ, VpnGw2AZ, VpnGw3AZ,VpnGw4AZ and VpnGw5AZ and depend on the type, vpn_type and generation arguments. A PolicyBased gateway only supports the Basic SKU. Further, the UltraPerformance SKU is only supported by an ExpressRoute gateway. + // +kubebuilder:validation:Optional Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The type of the Virtual Network Gateway. Valid options are Vpn or ExpressRoute. Changing the type forces a new resource to be created. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // A vpn_client_configuration block which is documented below. In this block the Virtual Network Gateway can be configured to accept IPSec point-to-site connections. + // +kubebuilder:validation:Optional VPNClientConfiguration []VPNClientConfigurationParameters `json:"vpnClientConfiguration,omitempty" tf:"vpn_client_configuration,omitempty"` // The routing type of the Virtual Network Gateway. Valid options are RouteBased or PolicyBased. Defaults to RouteBased. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VPNType *string `json:"vpnType,omitempty" tf:"vpn_type,omitempty"` } diff --git a/apis/network/v1beta1/zz_virtualnetworkgatewayconnection_types.go b/apis/network/v1beta1/zz_virtualnetworkgatewayconnection_types.go index 654a8bf21..9cb1e636b 100755 --- a/apis/network/v1beta1/zz_virtualnetworkgatewayconnection_types.go +++ b/apis/network/v1beta1/zz_virtualnetworkgatewayconnection_types.go @@ -34,9 +34,11 @@ type CustomBGPAddressesObservation struct { type CustomBGPAddressesParameters struct { // single IP address that is part of the azurerm_virtual_network_gateway ip_configuration (first one) + // +kubebuilder:validation:Optional Primary *string `json:"primary,omitempty" tf:"primary,omitempty"` // single IP address that is part of the azurerm_virtual_network_gateway ip_configuration (second one) + // +kubebuilder:validation:Optional Secondary *string `json:"secondary,omitempty" tf:"secondary,omitempty"` } @@ -101,29 +103,37 @@ type IpsecPolicyObservation struct { type IpsecPolicyParameters struct { // The DH group used in IKE phase 1 for initial SA. Valid options are DHGroup1, DHGroup14, DHGroup2, DHGroup2048, DHGroup24, ECP256, ECP384, or None. + // +kubebuilder:validation:Optional DhGroup *string `json:"dhGroup,omitempty" tf:"dh_group,omitempty"` // The IKE encryption algorithm. Valid options are AES128, AES192, AES256, DES, DES3, GCMAES128, or GCMAES256. + // +kubebuilder:validation:Optional IkeEncryption *string `json:"ikeEncryption,omitempty" tf:"ike_encryption,omitempty"` // The IKE integrity algorithm. Valid options are GCMAES128, GCMAES256, MD5, SHA1, SHA256, or SHA384. + // +kubebuilder:validation:Optional IkeIntegrity *string `json:"ikeIntegrity,omitempty" tf:"ike_integrity,omitempty"` // The IPSec encryption algorithm. Valid options are AES128, AES192, AES256, DES, DES3, GCMAES128, GCMAES192, GCMAES256, or None. + // +kubebuilder:validation:Optional IpsecEncryption *string `json:"ipsecEncryption,omitempty" tf:"ipsec_encryption,omitempty"` // The IPSec integrity algorithm. Valid options are GCMAES128, GCMAES192, GCMAES256, MD5, SHA1, or SHA256. + // +kubebuilder:validation:Optional IpsecIntegrity *string `json:"ipsecIntegrity,omitempty" tf:"ipsec_integrity,omitempty"` // The DH group used in IKE phase 2 for new child SA. // Valid options are ECP256, ECP384, PFS1, PFS14, PFS2, PFS2048, PFS24, PFSMM, // or None. + // +kubebuilder:validation:Optional PfsGroup *string `json:"pfsGroup,omitempty" tf:"pfs_group,omitempty"` // The IPSec SA payload size in KB. Must be at least 1024 KB. Defaults to 102400000 KB. + // +kubebuilder:validation:Optional SaDatasize *float64 `json:"saDatasize,omitempty" tf:"sa_datasize,omitempty"` // The IPSec SA lifetime in seconds. Must be at least 300 seconds. Defaults to 27000 seconds. + // +kubebuilder:validation:Optional SaLifetime *float64 `json:"saLifetime,omitempty" tf:"sa_lifetime,omitempty"` } @@ -148,9 +158,11 @@ type TrafficSelectorPolicyObservation struct { type TrafficSelectorPolicyParameters struct { // List of local CIDRs. + // +kubebuilder:validation:Optional LocalAddressCidrs []*string `json:"localAddressCidrs,omitempty" tf:"local_address_cidrs,omitempty"` // List of remote CIDRs. + // +kubebuilder:validation:Optional RemoteAddressCidrs []*string `json:"remoteAddressCidrs,omitempty" tf:"remote_address_cidrs,omitempty"` } @@ -298,41 +310,52 @@ type VirtualNetworkGatewayConnectionParameters struct { AuthorizationKeySecretRef *v1.SecretKeySelector `json:"authorizationKeySecretRef,omitempty" tf:"-"` // Connection mode to use. Possible values are Default, InitiatorOnly and ResponderOnly. Defaults to Default. Changing this value will force a resource to be created. + // +kubebuilder:validation:Optional ConnectionMode *string `json:"connectionMode,omitempty" tf:"connection_mode,omitempty"` // The IKE protocol version to use. Possible values are IKEv1 and IKEv2, values are IKEv1 and IKEv2. Defaults to IKEv2. Changing this forces a new resource to be created. // -> Note: Only valid for IPSec connections on virtual network gateways with SKU VpnGw1, VpnGw2, VpnGw3, VpnGw1AZ, VpnGw2AZ or VpnGw3AZ. + // +kubebuilder:validation:Optional ConnectionProtocol *string `json:"connectionProtocol,omitempty" tf:"connection_protocol,omitempty"` // A custom_bgp_addresses (Border Gateway Protocol custom IP Addresses) block which is documented below. // The block can only be used on IPSec / activeactive connections, // For details about see the relevant section in the Azure documentation. + // +kubebuilder:validation:Optional CustomBGPAddresses []CustomBGPAddressesParameters `json:"customBgpAddresses,omitempty" tf:"custom_bgp_addresses,omitempty"` // The dead peer detection timeout of this connection in seconds. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DpdTimeoutSeconds *float64 `json:"dpdTimeoutSeconds,omitempty" tf:"dpd_timeout_seconds,omitempty"` // A list of the egress NAT Rule Ids. + // +kubebuilder:validation:Optional EgressNATRuleIds []*string `json:"egressNatRuleIds,omitempty" tf:"egress_nat_rule_ids,omitempty"` // If true, BGP (Border Gateway Protocol) is enabled for this connection. Defaults to false. + // +kubebuilder:validation:Optional EnableBGP *bool `json:"enableBgp,omitempty" tf:"enable_bgp,omitempty"` // The ID of the Express Route Circuit when creating an ExpressRoute connection (i.e. when type is ExpressRoute). The Express Route Circuit can be in the same or in a different subscription. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ExpressRouteCircuitID *string `json:"expressRouteCircuitId,omitempty" tf:"express_route_circuit_id,omitempty"` // If true, data packets will bypass ExpressRoute Gateway for data forwarding This is only valid for ExpressRoute connections. + // +kubebuilder:validation:Optional ExpressRouteGatewayBypass *bool `json:"expressRouteGatewayBypass,omitempty" tf:"express_route_gateway_bypass,omitempty"` // A list of the ingress NAT Rule Ids. + // +kubebuilder:validation:Optional IngressNATRuleIds []*string `json:"ingressNatRuleIds,omitempty" tf:"ingress_nat_rule_ids,omitempty"` // A ipsec_policy block which is documented below. // Only a single policy can be defined for a connection. For details on // custom policies refer to the relevant section in the Azure documentation. + // +kubebuilder:validation:Optional IpsecPolicy []IpsecPolicyParameters `json:"ipsecPolicy,omitempty" tf:"ipsec_policy,omitempty"` // Use private local Azure IP for the connection. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional LocalAzureIPAddressEnabled *bool `json:"localAzureIpAddressEnabled,omitempty" tf:"local_azure_ip_address_enabled,omitempty"` // The ID of the local network gateway when creating Site-to-Site connection (i.e. when type is IPsec). @@ -350,6 +373,7 @@ type VirtualNetworkGatewayConnectionParameters struct { LocalNetworkGatewayIDSelector *v1.Selector `json:"localNetworkGatewayIdSelector,omitempty" tf:"-"` // The location/region where the connection is located. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The ID of the peer virtual network gateway when creating a VNet-to-VNet connection (i.e. when type is Vnet2Vnet). The peer Virtual Network Gateway can be in the same or in a different subscription. Changing this forces a new resource to be created. @@ -380,6 +404,7 @@ type VirtualNetworkGatewayConnectionParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The routing weight. Defaults to 10. + // +kubebuilder:validation:Optional RoutingWeight *float64 `json:"routingWeight,omitempty" tf:"routing_weight,omitempty"` // The shared IPSec key. A key could be provided if a Site-to-Site, VNet-to-VNet or ExpressRoute connection is created. @@ -387,17 +412,21 @@ type VirtualNetworkGatewayConnectionParameters struct { SharedKeySecretRef *v1.SecretKeySelector `json:"sharedKeySecretRef,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // One or more traffic_selector_policy blocks which are documented below. // A traffic_selector_policy allows to specify a traffic selector policy proposal to be used in a virtual network gateway connection. // For details about traffic selectors refer to the relevant section in the Azure documentation. + // +kubebuilder:validation:Optional TrafficSelectorPolicy []TrafficSelectorPolicyParameters `json:"trafficSelectorPolicy,omitempty" tf:"traffic_selector_policy,omitempty"` // The type of connection. Valid options are IPsec (Site-to-Site), ExpressRoute (ExpressRoute), and Vnet2Vnet (VNet-to-VNet). Each connection type requires different mandatory arguments (refer to the examples above). Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // If true, policy-based traffic selectors are enabled for this connection. Enabling policy-based traffic selectors requires an ipsec_policy block. Defaults to false. + // +kubebuilder:validation:Optional UsePolicyBasedTrafficSelectors *bool `json:"usePolicyBasedTrafficSelectors,omitempty" tf:"use_policy_based_traffic_selectors,omitempty"` // The ID of the Virtual Network Gateway in which the connection will be created. Changing this forces a new resource to be created. diff --git a/apis/network/v1beta1/zz_virtualnetworkpeering_types.go b/apis/network/v1beta1/zz_virtualnetworkpeering_types.go index 0abfaf3e0..290b6ca3b 100755 --- a/apis/network/v1beta1/zz_virtualnetworkpeering_types.go +++ b/apis/network/v1beta1/zz_virtualnetworkpeering_types.go @@ -64,12 +64,15 @@ type VirtualNetworkPeeringObservation struct { type VirtualNetworkPeeringParameters struct { // Controls if forwarded traffic from VMs in the remote virtual network is allowed. Defaults to false. + // +kubebuilder:validation:Optional AllowForwardedTraffic *bool `json:"allowForwardedTraffic,omitempty" tf:"allow_forwarded_traffic,omitempty"` // Controls gatewayLinks can be used in the remote virtual network’s link to the local virtual network. Defaults to false. + // +kubebuilder:validation:Optional AllowGatewayTransit *bool `json:"allowGatewayTransit,omitempty" tf:"allow_gateway_transit,omitempty"` // Controls if the VMs in the remote virtual network can access VMs in the local virtual network. Defaults to true. + // +kubebuilder:validation:Optional AllowVirtualNetworkAccess *bool `json:"allowVirtualNetworkAccess,omitempty" tf:"allow_virtual_network_access,omitempty"` // The full Azure resource ID of the remote virtual network. Changing this forces a new resource to be created. @@ -100,9 +103,11 @@ type VirtualNetworkPeeringParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of key values pairs that can be used to sync network routes from the remote virtual network to the local virtual network. See the trigger example for an example on how to set it up. + // +kubebuilder:validation:Optional Triggers map[string]*string `json:"triggers,omitempty" tf:"triggers,omitempty"` // Controls if remote gateways can be used on the local virtual network. If the flag is set to true, and allow_gateway_transit on the remote peering is also true, virtual network will use gateways of remote virtual network for transit. Only one peering can have this flag set to true. This flag cannot be set if virtual network already has a gateway. Defaults to false. + // +kubebuilder:validation:Optional UseRemoteGateways *bool `json:"useRemoteGateways,omitempty" tf:"use_remote_gateways,omitempty"` // The name of the virtual network. Changing this forces a new resource to be created. diff --git a/apis/network/v1beta1/zz_virtualwan_types.go b/apis/network/v1beta1/zz_virtualwan_types.go index e80a60292..1152cba76 100755 --- a/apis/network/v1beta1/zz_virtualwan_types.go +++ b/apis/network/v1beta1/zz_virtualwan_types.go @@ -64,15 +64,19 @@ type VirtualWANObservation struct { type VirtualWANParameters struct { // Boolean flag to specify whether branch to branch traffic is allowed. Defaults to true. + // +kubebuilder:validation:Optional AllowBranchToBranchTraffic *bool `json:"allowBranchToBranchTraffic,omitempty" tf:"allow_branch_to_branch_traffic,omitempty"` // Boolean flag to specify whether VPN encryption is disabled. Defaults to false. + // +kubebuilder:validation:Optional DisableVPNEncryption *bool `json:"disableVpnEncryption,omitempty" tf:"disable_vpn_encryption,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the Office365 local breakout category. Possible values include: Optimize, OptimizeAndAllow, All, None. Defaults to None. + // +kubebuilder:validation:Optional Office365LocalBreakoutCategory *string `json:"office365LocalBreakoutCategory,omitempty" tf:"office365_local_breakout_category,omitempty"` // The name of the resource group in which to create the Virtual WAN. Changing this forces a new resource to be created. @@ -89,9 +93,11 @@ type VirtualWANParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the Virtual WAN. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the Virtual WAN type. Possible Values include: Basic and Standard. Defaults to Standard. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/network/v1beta1/zz_vpngateway_types.go b/apis/network/v1beta1/zz_vpngateway_types.go index 2075a1397..019a6f3cd 100755 --- a/apis/network/v1beta1/zz_vpngateway_types.go +++ b/apis/network/v1beta1/zz_vpngateway_types.go @@ -37,6 +37,7 @@ type Instance0BGPPeeringAddressObservation struct { type Instance0BGPPeeringAddressParameters struct { // A list of custom BGP peering addresses to assign to this instance. + // +kubebuilder:validation:Optional CustomIps []*string `json:"customIps,omitempty" tf:"custom_ips,omitempty"` } @@ -64,6 +65,7 @@ type Instance1BGPPeeringAddressObservation struct { type Instance1BGPPeeringAddressParameters struct { // A list of custom BGP peering addresses to assign to this instance. + // +kubebuilder:validation:Optional CustomIps []*string `json:"customIps,omitempty" tf:"custom_ips,omitempty"` } @@ -103,15 +105,19 @@ type VPNGatewayBGPSettingsObservation struct { type VPNGatewayBGPSettingsParameters struct { // The ASN of the BGP Speaker. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Asn *float64 `json:"asn,omitempty" tf:"asn,omitempty"` // An instance_bgp_peering_address block as defined below. + // +kubebuilder:validation:Optional Instance0BGPPeeringAddress []Instance0BGPPeeringAddressParameters `json:"instance0BgpPeeringAddress,omitempty" tf:"instance_0_bgp_peering_address,omitempty"` // An instance_bgp_peering_address block as defined below. + // +kubebuilder:validation:Optional Instance1BGPPeeringAddress []Instance1BGPPeeringAddressParameters `json:"instance1BgpPeeringAddress,omitempty" tf:"instance_1_bgp_peering_address,omitempty"` // The weight added to Routes learned from this BGP Speaker. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PeerWeight *float64 `json:"peerWeight,omitempty" tf:"peer_weight,omitempty"` } @@ -169,12 +175,15 @@ type VPNGatewayObservation struct { type VPNGatewayParameters struct { // Is BGP route translation for NAT on this VPN Gateway enabled? Defaults to false. + // +kubebuilder:validation:Optional BGPRouteTranslationForNATEnabled *bool `json:"bgpRouteTranslationForNatEnabled,omitempty" tf:"bgp_route_translation_for_nat_enabled,omitempty"` // A bgp_settings block as defined below. + // +kubebuilder:validation:Optional BGPSettings []VPNGatewayBGPSettingsParameters `json:"bgpSettings,omitempty" tf:"bgp_settings,omitempty"` // The Azure location where this VPN Gateway should be created. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The Name of the Resource Group in which this VPN Gateway should be created. Changing this forces a new resource to be created. @@ -191,12 +200,15 @@ type VPNGatewayParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Azure routing preference lets you to choose how your traffic routes between Azure and the internet. You can choose to route traffic either via the Microsoft network (default value, Microsoft Network), or via the ISP network (public internet, set to Internet). More context of the configuration can be found in the Microsoft Docs to create a VPN Gateway. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional RoutingPreference *string `json:"routingPreference,omitempty" tf:"routing_preference,omitempty"` // The Scale Unit for this VPN Gateway. Defaults to 1. + // +kubebuilder:validation:Optional ScaleUnit *float64 `json:"scaleUnit,omitempty" tf:"scale_unit,omitempty"` // A mapping of tags to assign to the VPN Gateway. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The ID of the Virtual Hub within which this VPN Gateway should be created. Changing this forces a new resource to be created. diff --git a/apis/network/v1beta1/zz_vpngatewayconnection_types.go b/apis/network/v1beta1/zz_vpngatewayconnection_types.go index b7f3fdbe9..d58180fe7 100755 --- a/apis/network/v1beta1/zz_vpngatewayconnection_types.go +++ b/apis/network/v1beta1/zz_vpngatewayconnection_types.go @@ -34,9 +34,11 @@ type CustomBGPAddressObservation struct { type CustomBGPAddressParameters struct { // The custom bgp ip address which belongs to the IP Configuration. + // +kubebuilder:validation:Optional IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` // The ID of the IP Configuration which belongs to the VPN Gateway. + // +kubebuilder:validation:Optional IPConfigurationID *string `json:"ipConfigurationId,omitempty" tf:"ip_configuration_id,omitempty"` } @@ -82,6 +84,7 @@ type VPNGatewayConnectionObservation struct { type VPNGatewayConnectionParameters struct { // Whether Internet Security is enabled for this VPN Connection. Defaults to false. + // +kubebuilder:validation:Optional InternetSecurityEnabled *bool `json:"internetSecurityEnabled,omitempty" tf:"internet_security_enabled,omitempty"` // The ID of the remote VPN Site, which will connect to the VPN Gateway. Changing this forces a new VPN Gateway Connection to be created. @@ -99,9 +102,11 @@ type VPNGatewayConnectionParameters struct { RemoteVPNSiteIDSelector *v1.Selector `json:"remoteVpnSiteIdSelector,omitempty" tf:"-"` // A routing block as defined below. If this is not specified, there will be a default route table created implicitly. + // +kubebuilder:validation:Optional Routing []VPNGatewayConnectionRoutingParameters `json:"routing,omitempty" tf:"routing,omitempty"` // One or more traffic_selector_policy blocks as defined below. + // +kubebuilder:validation:Optional TrafficSelectorPolicy []VPNGatewayConnectionTrafficSelectorPolicyParameters `json:"trafficSelectorPolicy,omitempty" tf:"traffic_selector_policy,omitempty"` // The ID of the VPN Gateway that this VPN Gateway Connection belongs to. Changing this forces a new VPN Gateway Connection to be created. @@ -119,6 +124,7 @@ type VPNGatewayConnectionParameters struct { VPNGatewayIDSelector *v1.Selector `json:"vpnGatewayIdSelector,omitempty" tf:"-"` // One or more vpn_link blocks as defined below. + // +kubebuilder:validation:Optional VPNLink []VPNLinkParameters `json:"vpnLink,omitempty" tf:"vpn_link,omitempty"` } @@ -155,15 +161,19 @@ type VPNGatewayConnectionRoutingObservation struct { type VPNGatewayConnectionRoutingParameters struct { // The ID of the Route Table associated with this VPN Connection. + // +kubebuilder:validation:Optional AssociatedRouteTable *string `json:"associatedRouteTable,omitempty" tf:"associated_route_table,omitempty"` // The resource ID of the Route Map associated with this Routing Configuration for inbound learned routes. + // +kubebuilder:validation:Optional InboundRouteMapID *string `json:"inboundRouteMapId,omitempty" tf:"inbound_route_map_id,omitempty"` // The resource ID of the Route Map associated with this Routing Configuration for outbound advertised routes. + // +kubebuilder:validation:Optional OutboundRouteMapID *string `json:"outboundRouteMapId,omitempty" tf:"outbound_route_map_id,omitempty"` // A propagated_route_table block as defined below. + // +kubebuilder:validation:Optional PropagatedRouteTable []VPNGatewayConnectionRoutingPropagatedRouteTableParameters `json:"propagatedRouteTable,omitempty" tf:"propagated_route_table,omitempty"` } @@ -188,9 +198,11 @@ type VPNGatewayConnectionRoutingPropagatedRouteTableObservation struct { type VPNGatewayConnectionRoutingPropagatedRouteTableParameters struct { // A list of labels to assign to this route table. + // +kubebuilder:validation:Optional Labels []*string `json:"labels,omitempty" tf:"labels,omitempty"` // A list of Route Table IDs to associated with this VPN Gateway Connection. + // +kubebuilder:validation:Optional RouteTableIds []*string `json:"routeTableIds,omitempty" tf:"route_table_ids,omitempty"` } @@ -215,9 +227,11 @@ type VPNGatewayConnectionTrafficSelectorPolicyObservation struct { type VPNGatewayConnectionTrafficSelectorPolicyParameters struct { // A list of local address spaces in CIDR format for this VPN Gateway Connection. + // +kubebuilder:validation:Optional LocalAddressRanges []*string `json:"localAddressRanges,omitempty" tf:"local_address_ranges,omitempty"` // A list of remote address spaces in CIDR format for this VPN Gateway Connection. + // +kubebuilder:validation:Optional RemoteAddressRanges []*string `json:"remoteAddressRanges,omitempty" tf:"remote_address_ranges,omitempty"` } @@ -326,27 +340,35 @@ type VPNLinkIpsecPolicyObservation struct { type VPNLinkIpsecPolicyParameters struct { // The DH Group used in IKE Phase 1 for initial SA. Possible values are None, DHGroup1, DHGroup2, DHGroup14, DHGroup24, DHGroup2048, ECP256, ECP384. + // +kubebuilder:validation:Optional DhGroup *string `json:"dhGroup,omitempty" tf:"dh_group,omitempty"` // The IPSec encryption algorithm (IKE phase 1). Possible values are AES128, AES192, AES256, DES, DES3, GCMAES128, GCMAES192, GCMAES256, None. + // +kubebuilder:validation:Optional EncryptionAlgorithm *string `json:"encryptionAlgorithm,omitempty" tf:"encryption_algorithm,omitempty"` // The IKE encryption algorithm (IKE phase 2). Possible values are DES, DES3, AES128, AES192, AES256, GCMAES128, GCMAES256. + // +kubebuilder:validation:Optional IkeEncryptionAlgorithm *string `json:"ikeEncryptionAlgorithm,omitempty" tf:"ike_encryption_algorithm,omitempty"` // The IKE integrity algorithm (IKE phase 2). Possible values are MD5, SHA1, SHA256, SHA384, GCMAES128, GCMAES256. + // +kubebuilder:validation:Optional IkeIntegrityAlgorithm *string `json:"ikeIntegrityAlgorithm,omitempty" tf:"ike_integrity_algorithm,omitempty"` // The IPSec integrity algorithm (IKE phase 1). Possible values are MD5, SHA1, SHA256, GCMAES128, GCMAES192, GCMAES256. + // +kubebuilder:validation:Optional IntegrityAlgorithm *string `json:"integrityAlgorithm,omitempty" tf:"integrity_algorithm,omitempty"` // The Pfs Group used in IKE Phase 2 for the new child SA. Possible values are None, PFS1, PFS2, PFS14, PFS24, PFS2048, PFSMM, ECP256, ECP384. + // +kubebuilder:validation:Optional PfsGroup *string `json:"pfsGroup,omitempty" tf:"pfs_group,omitempty"` // The IPSec Security Association (also called Quick Mode or Phase 2 SA) payload size in KB for the site to site VPN tunnel. + // +kubebuilder:validation:Optional SaDataSizeKb *float64 `json:"saDataSizeKb,omitempty" tf:"sa_data_size_kb,omitempty"` // The IPSec Security Association (also called Quick Mode or Phase 2 SA) lifetime in seconds for the site to site VPN tunnel. + // +kubebuilder:validation:Optional SaLifetimeSec *float64 `json:"saLifetimeSec,omitempty" tf:"sa_lifetime_sec,omitempty"` } @@ -401,48 +423,63 @@ type VPNLinkObservation struct { type VPNLinkParameters struct { // Should the BGP be enabled? Defaults to false. Changing this forces a new VPN Gateway Connection to be created. + // +kubebuilder:validation:Optional BGPEnabled *bool `json:"bgpEnabled,omitempty" tf:"bgp_enabled,omitempty"` // The expected connection bandwidth in MBPS. Defaults to 10. + // +kubebuilder:validation:Optional BandwidthMbps *float64 `json:"bandwidthMbps,omitempty" tf:"bandwidth_mbps,omitempty"` // The connection mode of this VPN Link. Possible values are Default, InitiatorOnly and ResponderOnly. Defaults to Default. + // +kubebuilder:validation:Optional ConnectionMode *string `json:"connectionMode,omitempty" tf:"connection_mode,omitempty"` // One or more custom_bgp_address blocks as defined below. + // +kubebuilder:validation:Optional CustomBGPAddress []CustomBGPAddressParameters `json:"customBgpAddress,omitempty" tf:"custom_bgp_address,omitempty"` // A list of the egress NAT Rule Ids. + // +kubebuilder:validation:Optional EgressNATRuleIds []*string `json:"egressNatRuleIds,omitempty" tf:"egress_nat_rule_ids,omitempty"` // A list of the ingress NAT Rule Ids. + // +kubebuilder:validation:Optional IngressNATRuleIds []*string `json:"ingressNatRuleIds,omitempty" tf:"ingress_nat_rule_ids,omitempty"` // One or more ipsec_policy blocks as defined above. + // +kubebuilder:validation:Optional IpsecPolicy []VPNLinkIpsecPolicyParameters `json:"ipsecPolicy,omitempty" tf:"ipsec_policy,omitempty"` // Whether to use local Azure IP to initiate connection? Defaults to false. + // +kubebuilder:validation:Optional LocalAzureIPAddressEnabled *bool `json:"localAzureIpAddressEnabled,omitempty" tf:"local_azure_ip_address_enabled,omitempty"` // The name which should be used for this VPN Link Connection. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Whether to enable policy-based traffic selectors? Defaults to false. + // +kubebuilder:validation:Optional PolicyBasedTrafficSelectorEnabled *bool `json:"policyBasedTrafficSelectorEnabled,omitempty" tf:"policy_based_traffic_selector_enabled,omitempty"` // The protocol used for this VPN Link Connection. Possible values are IKEv1 and IKEv2. Defaults to IKEv2. + // +kubebuilder:validation:Optional Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` // Should the rate limit be enabled? Defaults to false. + // +kubebuilder:validation:Optional RatelimitEnabled *bool `json:"ratelimitEnabled,omitempty" tf:"ratelimit_enabled,omitempty"` // Routing weight for this VPN Link Connection. Defaults to 0. + // +kubebuilder:validation:Optional RouteWeight *float64 `json:"routeWeight,omitempty" tf:"route_weight,omitempty"` // SharedKey for this VPN Link Connection. + // +kubebuilder:validation:Optional SharedKey *string `json:"sharedKey,omitempty" tf:"shared_key,omitempty"` // The ID of the connected VPN Site Link. Changing this forces a new VPN Gateway Connection to be created. + // +kubebuilder:validation:Optional VPNSiteLinkID *string `json:"vpnSiteLinkId,omitempty" tf:"vpn_site_link_id,omitempty"` } diff --git a/apis/network/v1beta1/zz_vpnserverconfiguration_types.go b/apis/network/v1beta1/zz_vpnserverconfiguration_types.go index 99ef3fbcc..758b57c20 100755 --- a/apis/network/v1beta1/zz_vpnserverconfiguration_types.go +++ b/apis/network/v1beta1/zz_vpnserverconfiguration_types.go @@ -40,12 +40,15 @@ type AzureActiveDirectoryAuthenticationObservation struct { type AzureActiveDirectoryAuthenticationParameters struct { // The Audience which should be used for authentication. + // +kubebuilder:validation:Optional Audience *string `json:"audience,omitempty" tf:"audience,omitempty"` // The Issuer which should be used for authentication. + // +kubebuilder:validation:Optional Issuer *string `json:"issuer,omitempty" tf:"issuer,omitempty"` // The Tenant which should be used for authentication. + // +kubebuilder:validation:Optional Tenant *string `json:"tenant,omitempty" tf:"tenant,omitempty"` } @@ -70,9 +73,11 @@ type ClientRevokedCertificateObservation struct { type ClientRevokedCertificateParameters struct { // A name used to uniquely identify this certificate. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Thumbprint of the Certificate. + // +kubebuilder:validation:Optional Thumbprint *string `json:"thumbprint,omitempty" tf:"thumbprint,omitempty"` } @@ -97,9 +102,11 @@ type ClientRootCertificateObservation struct { type ClientRootCertificateParameters struct { // A name used to uniquely identify this certificate. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Public Key Data associated with the Certificate. + // +kubebuilder:validation:Optional PublicCertData *string `json:"publicCertData,omitempty" tf:"public_cert_data,omitempty"` } @@ -124,9 +131,11 @@ type RadiusClientRootCertificateObservation struct { type RadiusClientRootCertificateParameters struct { // A name used to uniquely identify this certificate. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Thumbprint of the Certificate. + // +kubebuilder:validation:Optional Thumbprint *string `json:"thumbprint,omitempty" tf:"thumbprint,omitempty"` } @@ -157,12 +166,15 @@ type RadiusObservation struct { type RadiusParameters struct { // One or more client_root_certificate blocks as defined above. + // +kubebuilder:validation:Optional ClientRootCertificate []RadiusClientRootCertificateParameters `json:"clientRootCertificate,omitempty" tf:"client_root_certificate,omitempty"` // One or more server blocks as defined below. + // +kubebuilder:validation:Optional Server []ServerParameters `json:"server,omitempty" tf:"server,omitempty"` // One or more server_root_certificate blocks as defined below. + // +kubebuilder:validation:Optional ServerRootCertificate []ServerRootCertificateParameters `json:"serverRootCertificate,omitempty" tf:"server_root_certificate,omitempty"` } @@ -187,9 +199,11 @@ type ServerObservation struct { type ServerParameters struct { // The Address of the Radius Server. + // +kubebuilder:validation:Optional Address *string `json:"address,omitempty" tf:"address,omitempty"` // The Score of the Radius Server determines the priority of the server. Ranges from 1 to 30. + // +kubebuilder:validation:Optional Score *float64 `json:"score,omitempty" tf:"score,omitempty"` // The Secret used to communicate with the Radius Server. @@ -218,9 +232,11 @@ type ServerRootCertificateObservation struct { type ServerRootCertificateParameters struct { // A name used to uniquely identify this certificate. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Public Key Data associated with the Certificate. + // +kubebuilder:validation:Optional PublicCertData *string `json:"publicCertData,omitempty" tf:"public_cert_data,omitempty"` } @@ -311,27 +327,35 @@ type VPNServerConfigurationIpsecPolicyObservation struct { type VPNServerConfigurationIpsecPolicyParameters struct { // The DH Group, used in IKE Phase 1. Possible values include DHGroup1, DHGroup2, DHGroup14, DHGroup24, DHGroup2048, ECP256, ECP384 and None. + // +kubebuilder:validation:Optional DhGroup *string `json:"dhGroup,omitempty" tf:"dh_group,omitempty"` // The IKE encryption algorithm, used for IKE Phase 2. Possible values include AES128, AES192, AES256, DES, DES3, GCMAES128 and GCMAES256. + // +kubebuilder:validation:Optional IkeEncryption *string `json:"ikeEncryption,omitempty" tf:"ike_encryption,omitempty"` // The IKE encryption integrity algorithm, used for IKE Phase 2. Possible values include GCMAES128, GCMAES256, MD5, SHA1, SHA256 and SHA384. + // +kubebuilder:validation:Optional IkeIntegrity *string `json:"ikeIntegrity,omitempty" tf:"ike_integrity,omitempty"` // The IPSec encryption algorithm, used for IKE phase 1. Possible values include AES128, AES192, AES256, DES, DES3, GCMAES128, GCMAES192, GCMAES256 and None. + // +kubebuilder:validation:Optional IpsecEncryption *string `json:"ipsecEncryption,omitempty" tf:"ipsec_encryption,omitempty"` // The IPSec integrity algorithm, used for IKE phase 1. Possible values include GCMAES128, GCMAES192, GCMAES256, MD5, SHA1 and SHA256. + // +kubebuilder:validation:Optional IpsecIntegrity *string `json:"ipsecIntegrity,omitempty" tf:"ipsec_integrity,omitempty"` // The Pfs Group, used in IKE Phase 2. Possible values include ECP256, ECP384, PFS1, PFS2, PFS14, PFS24, PFS2048, PFSMM and None. + // +kubebuilder:validation:Optional PfsGroup *string `json:"pfsGroup,omitempty" tf:"pfs_group,omitempty"` // The IPSec Security Association payload size in KB for a Site-to-Site VPN tunnel. + // +kubebuilder:validation:Optional SaDataSizeKilobytes *float64 `json:"saDataSizeKilobytes,omitempty" tf:"sa_data_size_kilobytes,omitempty"` // The IPSec Security Association lifetime in seconds for a Site-to-Site VPN tunnel. + // +kubebuilder:validation:Optional SaLifetimeSeconds *float64 `json:"saLifetimeSeconds,omitempty" tf:"sa_lifetime_seconds,omitempty"` } @@ -374,21 +398,27 @@ type VPNServerConfigurationObservation struct { type VPNServerConfigurationParameters struct { // A azure_active_directory_authentication block as defined below. + // +kubebuilder:validation:Optional AzureActiveDirectoryAuthentication []AzureActiveDirectoryAuthenticationParameters `json:"azureActiveDirectoryAuthentication,omitempty" tf:"azure_active_directory_authentication,omitempty"` // One or more client_revoked_certificate blocks as defined below. + // +kubebuilder:validation:Optional ClientRevokedCertificate []ClientRevokedCertificateParameters `json:"clientRevokedCertificate,omitempty" tf:"client_revoked_certificate,omitempty"` // One or more client_root_certificate blocks as defined below. + // +kubebuilder:validation:Optional ClientRootCertificate []ClientRootCertificateParameters `json:"clientRootCertificate,omitempty" tf:"client_root_certificate,omitempty"` // A ipsec_policy block as defined below. + // +kubebuilder:validation:Optional IpsecPolicy []VPNServerConfigurationIpsecPolicyParameters `json:"ipsecPolicy,omitempty" tf:"ipsec_policy,omitempty"` // The Azure location where this VPN Server Configuration should be created. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // A radius block as defined below. + // +kubebuilder:validation:Optional Radius []RadiusParameters `json:"radius,omitempty" tf:"radius,omitempty"` // The Name of the Resource Group in which this VPN Server Configuration should be created. Changing this forces a new resource to be created. @@ -405,12 +435,15 @@ type VPNServerConfigurationParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // A list of Authentication Types applicable for this VPN Server Configuration. Possible values are AAD (Azure Active Directory), Certificate and Radius. + // +kubebuilder:validation:Optional VPNAuthenticationTypes []*string `json:"vpnAuthenticationTypes,omitempty" tf:"vpn_authentication_types,omitempty"` // A list of VPN Protocols to use for this Server Configuration. Possible values are IkeV2 and OpenVPN. + // +kubebuilder:validation:Optional VPNProtocols []*string `json:"vpnProtocols,omitempty" tf:"vpn_protocols,omitempty"` } diff --git a/apis/network/v1beta1/zz_vpnserverconfigurationpolicygroup_types.go b/apis/network/v1beta1/zz_vpnserverconfigurationpolicygroup_types.go index 9fcfaaff9..37a9740c0 100755 --- a/apis/network/v1beta1/zz_vpnserverconfigurationpolicygroup_types.go +++ b/apis/network/v1beta1/zz_vpnserverconfigurationpolicygroup_types.go @@ -40,12 +40,15 @@ type PolicyObservation struct { type PolicyParameters struct { // The name of the VPN Server Configuration Policy member. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The attribute type of the VPN Server Configuration Policy member. Possible values are AADGroupId, CertificateGroupId and RadiusAzureGroupId. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // The value of the attribute that is used for the VPN Server Configuration Policy member. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -82,12 +85,15 @@ type VPNServerConfigurationPolicyGroupObservation struct { type VPNServerConfigurationPolicyGroupParameters struct { // Is this a default VPN Server Configuration Policy Group? Defaults to false. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional IsDefault *bool `json:"isDefault,omitempty" tf:"is_default,omitempty"` // One or more policy blocks as documented below. + // +kubebuilder:validation:Optional Policy []PolicyParameters `json:"policy,omitempty" tf:"policy,omitempty"` // The priority of this VPN Server Configuration Policy Group. Defaults to 0. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // The ID of the VPN Server Configuration that the VPN Server Configuration Policy Group belongs to. Changing this forces a new resource to be created. diff --git a/apis/network/v1beta1/zz_vpnsite_types.go b/apis/network/v1beta1/zz_vpnsite_types.go index 1ce9c69dc..0053f8f73 100755 --- a/apis/network/v1beta1/zz_vpnsite_types.go +++ b/apis/network/v1beta1/zz_vpnsite_types.go @@ -34,9 +34,11 @@ type BGPObservation struct { type BGPParameters struct { // The BGP speaker's ASN. + // +kubebuilder:validation:Optional Asn *float64 `json:"asn,omitempty" tf:"asn,omitempty"` // The BGP peering IP address. + // +kubebuilder:validation:Optional PeeringAddress *string `json:"peeringAddress,omitempty" tf:"peering_address,omitempty"` } @@ -88,21 +90,27 @@ type LinkObservation struct { type LinkParameters struct { // A bgp block as defined above. + // +kubebuilder:validation:Optional BGP []BGPParameters `json:"bgp,omitempty" tf:"bgp,omitempty"` // The FQDN of this VPN Site Link. + // +kubebuilder:validation:Optional Fqdn *string `json:"fqdn,omitempty" tf:"fqdn,omitempty"` // The IP address of this VPN Site Link. + // +kubebuilder:validation:Optional IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` // The name which should be used for this VPN Site Link. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The name of the physical link at the VPN Site. Example: ATT, Verizon. + // +kubebuilder:validation:Optional ProviderName *string `json:"providerName,omitempty" tf:"provider_name,omitempty"` // The speed of the VPN device at the branch location in unit of mbps. Defaults to 0. + // +kubebuilder:validation:Optional SpeedInMbps *float64 `json:"speedInMbps,omitempty" tf:"speed_in_mbps,omitempty"` } @@ -121,6 +129,7 @@ type O365PolicyObservation struct { type O365PolicyParameters struct { // A traffic_category block as defined above. + // +kubebuilder:validation:Optional TrafficCategory []TrafficCategoryParameters `json:"trafficCategory,omitempty" tf:"traffic_category,omitempty"` } @@ -151,12 +160,15 @@ type TrafficCategoryObservation struct { type TrafficCategoryParameters struct { // Is allow endpoint enabled? The Allow endpoint is required for connectivity to specific O365 services and features, but are not as sensitive to network performance and latency as other endpoint types. Defaults to false. + // +kubebuilder:validation:Optional AllowEndpointEnabled *bool `json:"allowEndpointEnabled,omitempty" tf:"allow_endpoint_enabled,omitempty"` // Is default endpoint enabled? The Default endpoint represents O365 services and dependencies that do not require any optimization, and can be treated by customer networks as normal Internet bound traffic. Defaults to false. + // +kubebuilder:validation:Optional DefaultEndpointEnabled *bool `json:"defaultEndpointEnabled,omitempty" tf:"default_endpoint_enabled,omitempty"` // Is optimize endpoint enabled? The Optimize endpoint is required for connectivity to every O365 service and represents the O365 scenario that is the most sensitive to network performance, latency, and availability. Defaults to false. + // +kubebuilder:validation:Optional OptimizeEndpointEnabled *bool `json:"optimizeEndpointEnabled,omitempty" tf:"optimize_endpoint_enabled,omitempty"` } @@ -220,21 +232,27 @@ type VPNSiteObservation struct { type VPNSiteParameters struct { // Specifies a list of IP address CIDRs that are located on your on-premises site. Traffic destined for these address spaces is routed to your local site. + // +kubebuilder:validation:Optional AddressCidrs []*string `json:"addressCidrs,omitempty" tf:"address_cidrs,omitempty"` // The model of the VPN device. + // +kubebuilder:validation:Optional DeviceModel *string `json:"deviceModel,omitempty" tf:"device_model,omitempty"` // The name of the VPN device vendor. + // +kubebuilder:validation:Optional DeviceVendor *string `json:"deviceVendor,omitempty" tf:"device_vendor,omitempty"` // One or more link blocks as defined below. + // +kubebuilder:validation:Optional Link []LinkParameters `json:"link,omitempty" tf:"link,omitempty"` // The Azure Region where the VPN Site should exist. Changing this forces a new VPN Site to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // An o365_policy block as defined below. + // +kubebuilder:validation:Optional O365Policy []O365PolicyParameters `json:"o365Policy,omitempty" tf:"o365_policy,omitempty"` // The name of the Resource Group where the VPN Site should exist. Changing this forces a new VPN Site to be created. @@ -251,6 +269,7 @@ type VPNSiteParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the VPN Site. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The ID of the Virtual Wan where this VPN site resides in. Changing this forces a new VPN Site to be created. diff --git a/apis/network/v1beta1/zz_watcher_types.go b/apis/network/v1beta1/zz_watcher_types.go index 0156db325..884148aed 100755 --- a/apis/network/v1beta1/zz_watcher_types.go +++ b/apis/network/v1beta1/zz_watcher_types.go @@ -40,6 +40,7 @@ type WatcherObservation struct { type WatcherParameters struct { // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the resource group in which to create the Network Watcher. Changing this forces a new resource to be created. @@ -56,6 +57,7 @@ type WatcherParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/network/v1beta1/zz_watcherflowlog_types.go b/apis/network/v1beta1/zz_watcherflowlog_types.go index 13d6d55c4..72f157eef 100755 --- a/apis/network/v1beta1/zz_watcherflowlog_types.go +++ b/apis/network/v1beta1/zz_watcherflowlog_types.go @@ -34,9 +34,11 @@ type RetentionPolicyObservation struct { type RetentionPolicyParameters struct { // The number of days to retain flow log records. + // +kubebuilder:validation:Optional Days *float64 `json:"days,omitempty" tf:"days,omitempty"` // Boolean flag to enable/disable retention. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` } @@ -73,9 +75,11 @@ type TrafficAnalyticsObservation struct { type TrafficAnalyticsParameters struct { // Boolean flag to enable/disable traffic analytics. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // How frequently service should do flow analytics in minutes. Defaults to 60. + // +kubebuilder:validation:Optional IntervalInMinutes *float64 `json:"intervalInMinutes,omitempty" tf:"interval_in_minutes,omitempty"` // The resource GUID of the attached workspace. @@ -93,6 +97,7 @@ type TrafficAnalyticsParameters struct { WorkspaceIDSelector *v1.Selector `json:"workspaceIdSelector,omitempty" tf:"-"` // The location of the attached workspace. + // +kubebuilder:validation:Optional WorkspaceRegion *string `json:"workspaceRegion,omitempty" tf:"workspace_region,omitempty"` // The resource ID of the attached workspace. @@ -170,9 +175,11 @@ type WatcherFlowLogObservation struct { type WatcherFlowLogParameters struct { // Should Network Flow Logging be Enabled? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The location where the Network Watcher Flow Log resides. Changing this forces a new resource to be created. Defaults to the location of the Network Watcher. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The ID of the Network Security Group for which to enable flow logs for. Changing this forces a new resource to be created. @@ -216,6 +223,7 @@ type WatcherFlowLogParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A retention_policy block as documented below. + // +kubebuilder:validation:Optional RetentionPolicy []RetentionPolicyParameters `json:"retentionPolicy,omitempty" tf:"retention_policy,omitempty"` // The ID of the Storage Account where flow logs are stored. @@ -233,12 +241,15 @@ type WatcherFlowLogParameters struct { StorageAccountIDSelector *v1.Selector `json:"storageAccountIdSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the Network Watcher Flow Log. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // A traffic_analytics block as documented below. + // +kubebuilder:validation:Optional TrafficAnalytics []TrafficAnalyticsParameters `json:"trafficAnalytics,omitempty" tf:"traffic_analytics,omitempty"` // The version (revision) of the flow log. Possible values are 1 and 2. + // +kubebuilder:validation:Optional Version *float64 `json:"version,omitempty" tf:"version,omitempty"` } diff --git a/apis/network/v1beta1/zz_webapplicationfirewallpolicy_types.go b/apis/network/v1beta1/zz_webapplicationfirewallpolicy_types.go index 2dabefd77..83d985224 100755 --- a/apis/network/v1beta1/zz_webapplicationfirewallpolicy_types.go +++ b/apis/network/v1beta1/zz_webapplicationfirewallpolicy_types.go @@ -52,18 +52,23 @@ type CustomRulesObservation struct { type CustomRulesParameters struct { // Type of action. Possible values are Allow, Block and Log. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // One or more match_conditions blocks as defined below. + // +kubebuilder:validation:Optional MatchConditions []MatchConditionsParameters `json:"matchConditions,omitempty" tf:"match_conditions,omitempty"` // Gets name of the resource that is unique within a policy. This name can be used to access the resource. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Describes priority of the rule. Rules with a lower value will be evaluated before rules with a higher value. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // Describes the type of rule. Possible values are MatchRule and Invalid. + // +kubebuilder:validation:Optional RuleType *string `json:"ruleType,omitempty" tf:"rule_type,omitempty"` } @@ -94,12 +99,15 @@ type ExcludedRuleSetObservation struct { type ExcludedRuleSetParameters struct { // One or more rule_group block defined below. + // +kubebuilder:validation:Optional RuleGroup []RuleGroupParameters `json:"ruleGroup,omitempty" tf:"rule_group,omitempty"` // The rule set type. Possible values: Microsoft_BotManagerRuleSet and OWASP. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // The rule set version. Possible values: 0.1, 1.0, 2.2.9, 3.0, 3.1 and 3.2. + // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` } @@ -130,12 +138,15 @@ type ManagedRuleSetObservation struct { type ManagedRuleSetParameters struct { // One or more rule_group_override block defined below. + // +kubebuilder:validation:Optional RuleGroupOverride []RuleGroupOverrideParameters `json:"ruleGroupOverride,omitempty" tf:"rule_group_override,omitempty"` // The rule set type. Possible values: Microsoft_BotManagerRuleSet and OWASP. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // The rule set version. Possible values: 0.1, 1.0, 2.2.9, 3.0, 3.1 and 3.2. + // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` } @@ -172,15 +183,19 @@ type ManagedRulesExclusionObservation struct { type ManagedRulesExclusionParameters struct { // One or more excluded_rule_set block defined below. + // +kubebuilder:validation:Optional ExcludedRuleSet []ExcludedRuleSetParameters `json:"excludedRuleSet,omitempty" tf:"excluded_rule_set,omitempty"` // The name of the Match Variable. Possible values: RequestArgKeys, RequestArgNames, RequestArgValues, RequestCookieKeys, RequestCookieNames, RequestCookieValues, RequestHeaderKeys, RequestHeaderNames, RequestHeaderValues. + // +kubebuilder:validation:Optional MatchVariable *string `json:"matchVariable,omitempty" tf:"match_variable,omitempty"` // Describes field of the matchVariable collection + // +kubebuilder:validation:Optional Selector *string `json:"selector,omitempty" tf:"selector,omitempty"` // Describes operator to be matched. Possible values: Contains, EndsWith, Equals, EqualsAny, StartsWith. + // +kubebuilder:validation:Optional SelectorMatchOperator *string `json:"selectorMatchOperator,omitempty" tf:"selector_match_operator,omitempty"` } @@ -205,9 +220,11 @@ type ManagedRulesObservation struct { type ManagedRulesParameters struct { // One or more exclusion block defined below. + // +kubebuilder:validation:Optional Exclusion []ManagedRulesExclusionParameters `json:"exclusion,omitempty" tf:"exclusion,omitempty"` // One or more managed_rule_set block defined below. + // +kubebuilder:validation:Optional ManagedRuleSet []ManagedRuleSetParameters `json:"managedRuleSet,omitempty" tf:"managed_rule_set,omitempty"` } @@ -250,18 +267,23 @@ type MatchConditionsObservation struct { type MatchConditionsParameters struct { // A list of match values. This is Required when the operator is not Any. + // +kubebuilder:validation:Optional MatchValues []*string `json:"matchValues,omitempty" tf:"match_values,omitempty"` // One or more match_variables blocks as defined below. + // +kubebuilder:validation:Optional MatchVariables []MatchVariablesParameters `json:"matchVariables,omitempty" tf:"match_variables,omitempty"` // Describes if this is negate condition or not + // +kubebuilder:validation:Optional NegationCondition *bool `json:"negationCondition,omitempty" tf:"negation_condition,omitempty"` // Describes operator to be matched. Possible values are Any, IPMatch, GeoMatch, Equal, Contains, LessThan, GreaterThan, LessThanOrEqual, GreaterThanOrEqual, BeginsWith, EndsWith and Regex. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // A list of transformations to do before the match is attempted. Possible values are HtmlEntityDecode, Lowercase, RemoveNulls, Trim, UrlDecode and UrlEncode. + // +kubebuilder:validation:Optional Transforms []*string `json:"transforms,omitempty" tf:"transforms,omitempty"` } @@ -286,9 +308,11 @@ type MatchVariablesObservation struct { type MatchVariablesParameters struct { // Describes field of the matchVariable collection + // +kubebuilder:validation:Optional Selector *string `json:"selector,omitempty" tf:"selector,omitempty"` // The name of the Match Variable. Possible values are RemoteAddr, RequestMethod, QueryString, PostArgs, RequestUri, RequestHeaders, RequestBody and RequestCookies. + // +kubebuilder:validation:Optional VariableName *string `json:"variableName,omitempty" tf:"variable_name,omitempty"` } @@ -331,18 +355,23 @@ type PolicySettingsObservation struct { type PolicySettingsParameters struct { // Describes if the policy is in enabled state or disabled state. Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The File Upload Limit in MB. Accepted values are in the range 1 to 4000. Defaults to 100. + // +kubebuilder:validation:Optional FileUploadLimitInMb *float64 `json:"fileUploadLimitInMb,omitempty" tf:"file_upload_limit_in_mb,omitempty"` // The Maximum Request Body Size in KB. Accepted values are in the range 8 to 2000. Defaults to 128. + // +kubebuilder:validation:Optional MaxRequestBodySizeInKb *float64 `json:"maxRequestBodySizeInKb,omitempty" tf:"max_request_body_size_in_kb,omitempty"` // Describes if it is in detection mode or prevention mode at the policy level. Valid values are Detection and Prevention. Defaults to Prevention. + // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // Is Request Body Inspection enabled? Defaults to true. + // +kubebuilder:validation:Optional RequestBodyCheck *bool `json:"requestBodyCheck,omitempty" tf:"request_body_check,omitempty"` } @@ -385,12 +414,16 @@ type RuleGroupOverrideObservation struct { } type RuleGroupOverrideParameters struct { + + // +kubebuilder:validation:Optional DisabledRules []*string `json:"disabledRules,omitempty" tf:"disabled_rules,omitempty"` // One or more rule block defined below. + // +kubebuilder:validation:Optional Rule []RuleGroupOverrideRuleParameters `json:"rule,omitempty" tf:"rule,omitempty"` // The name of the Rule Group. Possible values are BadBots, crs_20_protocol_violations, crs_21_protocol_anomalies, crs_23_request_limits, crs_30_http_policy, crs_35_bad_robots, crs_40_generic_attacks, crs_41_sql_injection_attacks, crs_41_xss_attacks, crs_42_tight_security, crs_45_trojans, General, GoodBots, Known-CVEs, REQUEST-911-METHOD-ENFORCEMENT, REQUEST-913-SCANNER-DETECTION, REQUEST-920-PROTOCOL-ENFORCEMENT, REQUEST-921-PROTOCOL-ATTACK, REQUEST-930-APPLICATION-ATTACK-LFI, REQUEST-931-APPLICATION-ATTACK-RFI, REQUEST-932-APPLICATION-ATTACK-RCE, REQUEST-933-APPLICATION-ATTACK-PHP, REQUEST-941-APPLICATION-ATTACK-XSS, REQUEST-942-APPLICATION-ATTACK-SQLI, REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION, REQUEST-944-APPLICATION-ATTACK-JAVA and UnknownBots. + // +kubebuilder:validation:Optional RuleGroupName *string `json:"ruleGroupName,omitempty" tf:"rule_group_name,omitempty"` } @@ -421,21 +454,26 @@ type RuleGroupOverrideRuleObservation struct { type RuleGroupOverrideRuleParameters struct { // Describes the override action to be applied when rule matches. Possible values are Allow, AnomalyScoring, Block and Log. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // Describes if the managed rule is in enabled state or disabled state. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Identifier for the managed rule. + // +kubebuilder:validation:Optional ID *string `json:"id,omitempty" tf:"id,omitempty"` } type RuleGroupParameters struct { // One or more Rule IDs for exclusion. + // +kubebuilder:validation:Optional ExcludedRules []*string `json:"excludedRules,omitempty" tf:"excluded_rules,omitempty"` // The name of the Rule Group. Possible values are BadBots, crs_20_protocol_violations, crs_21_protocol_anomalies, crs_23_request_limits, crs_30_http_policy, crs_35_bad_robots, crs_40_generic_attacks, crs_41_sql_injection_attacks, crs_41_xss_attacks, crs_42_tight_security, crs_45_trojans, General, GoodBots, Known-CVEs, REQUEST-911-METHOD-ENFORCEMENT, REQUEST-913-SCANNER-DETECTION, REQUEST-920-PROTOCOL-ENFORCEMENT, REQUEST-921-PROTOCOL-ATTACK, REQUEST-930-APPLICATION-ATTACK-LFI, REQUEST-931-APPLICATION-ATTACK-RFI, REQUEST-932-APPLICATION-ATTACK-RCE, REQUEST-933-APPLICATION-ATTACK-PHP, REQUEST-941-APPLICATION-ATTACK-XSS, REQUEST-942-APPLICATION-ATTACK-SQLI, REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION, REQUEST-944-APPLICATION-ATTACK-JAVA and UnknownBots. + // +kubebuilder:validation:Optional RuleGroupName *string `json:"ruleGroupName,omitempty" tf:"rule_group_name,omitempty"` } @@ -490,15 +528,19 @@ type WebApplicationFirewallPolicyObservation struct { type WebApplicationFirewallPolicyParameters struct { // One or more custom_rules blocks as defined below. + // +kubebuilder:validation:Optional CustomRules []CustomRulesParameters `json:"customRules,omitempty" tf:"custom_rules,omitempty"` // Resource location. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // A managed_rules blocks as defined below. + // +kubebuilder:validation:Optional ManagedRules []ManagedRulesParameters `json:"managedRules,omitempty" tf:"managed_rules,omitempty"` // A policy_settings block as defined below. + // +kubebuilder:validation:Optional PolicySettings []PolicySettingsParameters `json:"policySettings,omitempty" tf:"policy_settings,omitempty"` // The name of the resource group. Changing this forces a new resource to be created. @@ -515,6 +557,7 @@ type WebApplicationFirewallPolicyParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the Web Application Firewall Policy. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/notificationhubs/v1beta1/zz_authorizationrule_types.go b/apis/notificationhubs/v1beta1/zz_authorizationrule_types.go index 1a2451567..3c973fc3f 100755 --- a/apis/notificationhubs/v1beta1/zz_authorizationrule_types.go +++ b/apis/notificationhubs/v1beta1/zz_authorizationrule_types.go @@ -58,9 +58,11 @@ type AuthorizationRuleObservation struct { type AuthorizationRuleParameters struct { // Does this Authorization Rule have Listen access to the Notification Hub? Defaults to false. + // +kubebuilder:validation:Optional Listen *bool `json:"listen,omitempty" tf:"listen,omitempty"` // Does this Authorization Rule have Manage access to the Notification Hub? Defaults to false. + // +kubebuilder:validation:Optional Manage *bool `json:"manage,omitempty" tf:"manage,omitempty"` // The name of the Notification Hub Namespace in which the Notification Hub exists. Changing this forces a new resource to be created. @@ -103,6 +105,7 @@ type AuthorizationRuleParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Does this Authorization Rule have Send access to the Notification Hub? Defaults to false. + // +kubebuilder:validation:Optional Send *bool `json:"send,omitempty" tf:"send,omitempty"` } diff --git a/apis/notificationhubs/v1beta1/zz_notificationhub_types.go b/apis/notificationhubs/v1beta1/zz_notificationhub_types.go index b06acc400..bdf2f069f 100755 --- a/apis/notificationhubs/v1beta1/zz_notificationhub_types.go +++ b/apis/notificationhubs/v1beta1/zz_notificationhub_types.go @@ -46,15 +46,19 @@ type APNSCredentialObservation struct { type APNSCredentialParameters struct { // The Application Mode which defines which server the APNS Messages should be sent to. Possible values are Production and Sandbox. + // +kubebuilder:validation:Optional ApplicationMode *string `json:"applicationMode,omitempty" tf:"application_mode,omitempty"` // The Bundle ID of the iOS/macOS application to send push notifications for, such as com.hashicorp.example. + // +kubebuilder:validation:Optional BundleID *string `json:"bundleId,omitempty" tf:"bundle_id,omitempty"` // The Apple Push Notifications Service (APNS) Key. + // +kubebuilder:validation:Optional KeyID *string `json:"keyId,omitempty" tf:"key_id,omitempty"` // The ID of the team the Token. + // +kubebuilder:validation:Optional TeamID *string `json:"teamId,omitempty" tf:"team_id,omitempty"` // The Push Token associated with the Apple Developer Account. This is the contents of the key downloaded from the Apple Developer Portal between the -----BEGIN PRIVATE KEY----- and -----END PRIVATE KEY----- blocks. @@ -117,12 +121,15 @@ type NotificationHubObservation struct { type NotificationHubParameters struct { // A apns_credential block as defined below. + // +kubebuilder:validation:Optional APNSCredential []APNSCredentialParameters `json:"apnsCredential,omitempty" tf:"apns_credential,omitempty"` // A gcm_credential block as defined below. + // +kubebuilder:validation:Optional GCMCredential []GCMCredentialParameters `json:"gcmCredential,omitempty" tf:"gcm_credential,omitempty"` // The Azure Region in which this Notification Hub Namespace exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the Notification Hub Namespace in which to create this Notification Hub. Changing this forces a new resource to be created. @@ -152,6 +159,7 @@ type NotificationHubParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/notificationhubs/v1beta1/zz_notificationhubnamespace_types.go b/apis/notificationhubs/v1beta1/zz_notificationhubnamespace_types.go index 772a108ae..889fd15ad 100755 --- a/apis/notificationhubs/v1beta1/zz_notificationhubnamespace_types.go +++ b/apis/notificationhubs/v1beta1/zz_notificationhubnamespace_types.go @@ -61,12 +61,15 @@ type NotificationHubNamespaceObservation struct { type NotificationHubNamespaceParameters struct { // Is this Notification Hub Namespace enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The Azure Region in which this Notification Hub Namespace should be created. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The Type of Namespace - possible values are Messaging or NotificationHub. + // +kubebuilder:validation:Optional NamespaceType *string `json:"namespaceType,omitempty" tf:"namespace_type,omitempty"` // The name of the Resource Group in which the Notification Hub Namespace should exist. Changing this forces a new resource to be created. @@ -83,9 +86,11 @@ type NotificationHubNamespaceParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The name of the SKU to use for this Notification Hub Namespace. Possible values are Free, Basic or Standard. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/operationalinsights/v1beta1/zz_loganalyticsdataexportrule_types.go b/apis/operationalinsights/v1beta1/zz_loganalyticsdataexportrule_types.go index 6e2d03368..1bd973c64 100755 --- a/apis/operationalinsights/v1beta1/zz_loganalyticsdataexportrule_types.go +++ b/apis/operationalinsights/v1beta1/zz_loganalyticsdataexportrule_types.go @@ -63,6 +63,7 @@ type LogAnalyticsDataExportRuleParameters struct { DestinationResourceIDSelector *v1.Selector `json:"destinationResourceIdSelector,omitempty" tf:"-"` // Is this Log Analytics Data Export Rule enabled? Possible values include true or false. Defaults to false. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The name of the Resource Group where the Log Analytics Data Export should exist. Changing this forces a new Log Analytics Data Export Rule to be created. @@ -79,6 +80,7 @@ type LogAnalyticsDataExportRuleParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A list of table names to export to the destination resource, for example: ["Heartbeat", "SecurityEvent"]. + // +kubebuilder:validation:Optional TableNames []*string `json:"tableNames,omitempty" tf:"table_names,omitempty"` // The resource ID of the workspace. Changing this forces a new Log Analytics Data Export Rule to be created. diff --git a/apis/operationalinsights/v1beta1/zz_loganalyticsdatasourcewindowsevent_types.go b/apis/operationalinsights/v1beta1/zz_loganalyticsdatasourcewindowsevent_types.go index 0afa1822b..d959ddf6e 100755 --- a/apis/operationalinsights/v1beta1/zz_loganalyticsdatasourcewindowsevent_types.go +++ b/apis/operationalinsights/v1beta1/zz_loganalyticsdatasourcewindowsevent_types.go @@ -43,9 +43,11 @@ type LogAnalyticsDataSourceWindowsEventObservation struct { type LogAnalyticsDataSourceWindowsEventParameters struct { // Specifies the name of the Windows Event Log to collect events from. + // +kubebuilder:validation:Optional EventLogName *string `json:"eventLogName,omitempty" tf:"event_log_name,omitempty"` // Specifies an array of event types applied to the specified event log. Possible values include Error, Warning and Information. + // +kubebuilder:validation:Optional EventTypes []*string `json:"eventTypes,omitempty" tf:"event_types,omitempty"` // The name of the Resource Group where the Log Analytics Windows Event DataSource should exist. Changing this forces a new Log Analytics Windows Event DataSource to be created. diff --git a/apis/operationalinsights/v1beta1/zz_loganalyticsdatasourcewindowsperformancecounter_types.go b/apis/operationalinsights/v1beta1/zz_loganalyticsdatasourcewindowsperformancecounter_types.go index d04b71770..27d78607a 100755 --- a/apis/operationalinsights/v1beta1/zz_loganalyticsdatasourcewindowsperformancecounter_types.go +++ b/apis/operationalinsights/v1beta1/zz_loganalyticsdatasourcewindowsperformancecounter_types.go @@ -55,15 +55,19 @@ type LogAnalyticsDataSourceWindowsPerformanceCounterObservation struct { type LogAnalyticsDataSourceWindowsPerformanceCounterParameters struct { // The friendly name of the performance counter. + // +kubebuilder:validation:Optional CounterName *string `json:"counterName,omitempty" tf:"counter_name,omitempty"` // The name of the virtual machine instance to which the Windows Performance Counter DataSource be applied. Specify a * will apply to all instances. + // +kubebuilder:validation:Optional InstanceName *string `json:"instanceName,omitempty" tf:"instance_name,omitempty"` // The time of sample interval in seconds. Supports values between 10 and 2147483647. + // +kubebuilder:validation:Optional IntervalSeconds *float64 `json:"intervalSeconds,omitempty" tf:"interval_seconds,omitempty"` // The object name of the Log Analytics Windows Performance Counter DataSource. + // +kubebuilder:validation:Optional ObjectName *string `json:"objectName,omitempty" tf:"object_name,omitempty"` // The name of the Resource Group where the Log Analytics Windows Performance Counter DataSource should exist. Changing this forces a new Log Analytics Windows Performance Counter DataSource to be created. diff --git a/apis/operationalinsights/v1beta1/zz_loganalyticslinkedservice_types.go b/apis/operationalinsights/v1beta1/zz_loganalyticslinkedservice_types.go index 4c98b9bfd..fac30e30f 100755 --- a/apis/operationalinsights/v1beta1/zz_loganalyticslinkedservice_types.go +++ b/apis/operationalinsights/v1beta1/zz_loganalyticslinkedservice_types.go @@ -84,6 +84,7 @@ type LogAnalyticsLinkedServiceParameters struct { WorkspaceIDSelector *v1.Selector `json:"workspaceIdSelector,omitempty" tf:"-"` // The ID of the writable Resource that will be linked to the workspace. This should be used for linking to a Log Analytics Cluster resource. + // +kubebuilder:validation:Optional WriteAccessID *string `json:"writeAccessId,omitempty" tf:"write_access_id,omitempty"` } diff --git a/apis/operationalinsights/v1beta1/zz_loganalyticslinkedstorageaccount_types.go b/apis/operationalinsights/v1beta1/zz_loganalyticslinkedstorageaccount_types.go index 37cfe65a8..8480f2d5c 100755 --- a/apis/operationalinsights/v1beta1/zz_loganalyticslinkedstorageaccount_types.go +++ b/apis/operationalinsights/v1beta1/zz_loganalyticslinkedstorageaccount_types.go @@ -40,6 +40,7 @@ type LogAnalyticsLinkedStorageAccountObservation struct { type LogAnalyticsLinkedStorageAccountParameters struct { // The data source type which should be used for this Log Analytics Linked Storage Account. Possible values are CustomLogs, AzureWatson, Query, Ingestion and Alerts. Changing this forces a new Log Analytics Linked Storage Account to be created. + // +kubebuilder:validation:Optional DataSourceType *string `json:"dataSourceType,omitempty" tf:"data_source_type,omitempty"` // The name of the Resource Group where the Log Analytics Linked Storage Account should exist. Changing this forces a new Log Analytics Linked Storage Account to be created. diff --git a/apis/operationalinsights/v1beta1/zz_loganalyticsquerypack_types.go b/apis/operationalinsights/v1beta1/zz_loganalyticsquerypack_types.go index b28fe6f55..a9d2c1531 100755 --- a/apis/operationalinsights/v1beta1/zz_loganalyticsquerypack_types.go +++ b/apis/operationalinsights/v1beta1/zz_loganalyticsquerypack_types.go @@ -40,6 +40,7 @@ type LogAnalyticsQueryPackObservation struct { type LogAnalyticsQueryPackParameters struct { // The Azure Region where the Log Analytics Query Pack 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 where the Log Analytics Query Pack should exist. Changing this forces a new resource to be created. @@ -56,6 +57,7 @@ type LogAnalyticsQueryPackParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the Log Analytics Query Pack. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/operationalinsights/v1beta1/zz_loganalyticsquerypackquery_types.go b/apis/operationalinsights/v1beta1/zz_loganalyticsquerypackquery_types.go index e9756e6fe..af67522c6 100755 --- a/apis/operationalinsights/v1beta1/zz_loganalyticsquerypackquery_types.go +++ b/apis/operationalinsights/v1beta1/zz_loganalyticsquerypackquery_types.go @@ -82,21 +82,27 @@ type LogAnalyticsQueryPackQueryObservation struct { type LogAnalyticsQueryPackQueryParameters struct { // The additional properties that can be set for the Log Analytics Query Pack Query. + // +kubebuilder:validation:Optional AdditionalSettingsJSON *string `json:"additionalSettingsJson,omitempty" tf:"additional_settings_json,omitempty"` // The body of the Log Analytics Query Pack Query. + // +kubebuilder:validation:Optional Body *string `json:"body,omitempty" tf:"body,omitempty"` // A list of the related categories for the function. Possible values are applications, audit, container, databases, desktopanalytics, management, monitor, network, resources, security, virtualmachines, windowsvirtualdesktop and workloads. + // +kubebuilder:validation:Optional Categories []*string `json:"categories,omitempty" tf:"categories,omitempty"` // The description of the Log Analytics Query Pack Query. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The unique display name for the query within the Log Analytics Query Pack. + // +kubebuilder:validation:Optional DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` // An unique UUID/GUID which identifies this Log Analytics Query Pack Query - one will be generated if not specified. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID of the Log Analytics Query Pack. Changing this forces a new resource to be created. @@ -114,12 +120,15 @@ type LogAnalyticsQueryPackQueryParameters struct { QueryPackIDSelector *v1.Selector `json:"queryPackIdSelector,omitempty" tf:"-"` // A list of the related resource types for the function. Possible values are default, microsoft.aad/domainservices, microsoft.aadiam/tenants, microsoft.agfoodplatform/farmbeats, microsoft.analysisservices/servers, microsoft.apimanagement/service, microsoft.appconfiguration/configurationstores, microsoft.appplatform/spring, microsoft.attestation/attestationproviders, microsoft.authorization/tenants, microsoft.automation/automationaccounts, microsoft.autonomousdevelopmentplatform/accounts, microsoft.azurestackhci/virtualmachines, microsoft.batch/batchaccounts, microsoft.blockchain/blockchainmembers, microsoft.botservice/botservices, microsoft.cache/redis, microsoft.cdn/profiles, microsoft.cognitiveservices/accounts, microsoft.communication/communicationservices, microsoft.compute/virtualmachines, microsoft.compute/virtualmachinescalesets, microsoft.connectedcache/cachenodes, microsoft.connectedvehicle/platformaccounts, microsoft.conenctedvmwarevsphere/virtualmachines, microsoft.containerregistry/registries, microsoft.containerservice/managedclusters, microsoft.d365customerinsights/instances, microsoft.dashboard/grafana, microsoft.databricks/workspaces, microsoft.datacollaboration/workspaces, microsoft.datafactory/factories, microsoft.datalakeanalytics/accounts, microsoft.datalakestore/accounts, microsoft.datashare/accounts, microsoft.dbformariadb/servers, microsoft.dbformysql/servers, microsoft.dbforpostgresql/flexibleservers, microsoft.dbforpostgresql/servers, microsoft.dbforpostgresql/serversv2, microsoft.digitaltwins/digitaltwinsinstances, microsoft.documentdb/cassandraclusters, microsoft.documentdb/databaseaccounts, microsoft.desktopvirtualization/applicationgroups, microsoft.desktopvirtualization/hostpools, microsoft.desktopvirtualization/workspaces, microsoft.devices/iothubs, microsoft.devices/provisioningservices, microsoft.dynamics/fraudprotection/purchase, microsoft.eventgrid/domains, microsoft.eventgrid/topics, microsoft.eventgrid/partnernamespaces, microsoft.eventgrid/partnertopics, microsoft.eventgrid/systemtopics, microsoft.eventhub/namespaces, microsoft.experimentation/experimentworkspaces, microsoft.hdinsight/clusters, microsoft.healthcareapis/services, microsoft.informationprotection/datasecuritymanagement, microsoft.intune/operations, microsoft.insights/autoscalesettings, microsoft.insights/components, microsoft.insights/workloadmonitoring, microsoft.keyvault/vaults, microsoft.kubernetes/connectedclusters, microsoft.kusto/clusters, microsoft.loadtestservice/loadtests, microsoft.logic/workflows, microsoft.machinelearningservices/workspaces, microsoft.media/mediaservices, microsoft.netapp/netappaccounts/capacitypools, microsoft.network/applicationgateways, microsoft.network/azurefirewalls, microsoft.network/bastionhosts, microsoft.network/expressroutecircuits, microsoft.network/frontdoors, microsoft.network/loadbalancers, microsoft.network/networkinterfaces, microsoft.network/networksecuritygroups, microsoft.network/networksecurityperimeters, microsoft.network/networkwatchers/connectionmonitors, microsoft.network/networkwatchers/trafficanalytics, microsoft.network/publicipaddresses, microsoft.network/trafficmanagerprofiles, microsoft.network/virtualnetworks, microsoft.network/virtualnetworkgateways, microsoft.network/vpngateways, microsoft.networkfunction/azuretrafficcollectors, microsoft.openenergyplatform/energyservices, microsoft.openlogisticsplatform/workspaces, microsoft.operationalinsights/workspaces, microsoft.powerbi/tenants, microsoft.powerbi/tenants/workspaces, microsoft.powerbidedicated/capacities, microsoft.purview/accounts, microsoft.recoveryservices/vaults, microsoft.resources/azureactivity, microsoft.scvmm/virtualmachines, microsoft.search/searchservices, microsoft.security/antimalwaresettings, microsoft.securityinsights/amazon, microsoft.securityinsights/anomalies, microsoft.securityinsights/cef, microsoft.securityinsights/datacollection, microsoft.securityinsights/dnsnormalized, microsoft.securityinsights/mda, microsoft.securityinsights/mde, microsoft.securityinsights/mdi, microsoft.securityinsights/mdo, microsoft.securityinsights/networksessionnormalized, microsoft.securityinsights/office365, microsoft.securityinsights/purview, microsoft.securityinsights/securityinsights, microsoft.securityinsights/securityinsights/mcas, microsoft.securityinsights/tvm, microsoft.securityinsights/watchlists, microsoft.servicebus/namespaces, microsoft.servicefabric/clusters, microsoft.signalrservice/signalr, microsoft.signalrservice/webpubsub, microsoft.sql/managedinstances, microsoft.sql/servers, microsoft.sql/servers/databases, microsoft.storage/storageaccounts, microsoft.storagecache/caches, microsoft.streamanalytics/streamingjobs, microsoft.synapse/workspaces, microsoft.timeseriesinsights/environments, microsoft.videoindexer/accounts, microsoft.web/sites, microsoft.workloadmonitor/monitors, resourcegroup and subscription. + // +kubebuilder:validation:Optional ResourceTypes []*string `json:"resourceTypes,omitempty" tf:"resource_types,omitempty"` // A list of the related Log Analytics solutions for the function. Possible values are AADDomainServices, ADAssessment, ADAssessmentPlus, ADReplication, ADSecurityAssessment, AlertManagement, AntiMalware, ApplicationInsights, AzureAssessment, AzureSecurityOfThings, AzureSentinelDSRE, AzureSentinelPrivatePreview, BehaviorAnalyticsInsights, ChangeTracking, CompatibilityAssessment, ContainerInsights, Containers, CustomizedWindowsEventsFiltering, DeviceHealthProd, DnsAnalytics, ExchangeAssessment, ExchangeOnlineAssessment, IISAssessmentPlus, InfrastructureInsights, InternalWindowsEvent, LogManagement, Microsoft365Analytics, NetworkMonitoring, SCCMAssessmentPlus, SCOMAssessment, SCOMAssessmentPlus, Security, SecurityCenter, SecurityCenterFree, SecurityInsights, ServiceMap, SfBAssessment, SfBOnlineAssessment, SharePointOnlineAssessment, SPAssessment, SQLAdvancedThreatProtection, SQLAssessment, SQLAssessmentPlus, SQLDataClassification, SQLThreatDetection, SQLVulnerabilityAssessment, SurfaceHub, Updates, VMInsights, WEFInternalUat, WEF_10x, WEF_10xDSRE, WaaSUpdateInsights, WinLog, WindowsClientAssessmentPlus, WindowsEventForwarding, WindowsFirewall, WindowsServerAssessment, WireData and WireData2. + // +kubebuilder:validation:Optional Solutions []*string `json:"solutions,omitempty" tf:"solutions,omitempty"` // A mapping of tags which should be assigned to the Log Analytics Query Pack Query. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/operationalinsights/v1beta1/zz_loganalyticssavedsearch_types.go b/apis/operationalinsights/v1beta1/zz_loganalyticssavedsearch_types.go index d9836825b..b8c16ab94 100755 --- a/apis/operationalinsights/v1beta1/zz_loganalyticssavedsearch_types.go +++ b/apis/operationalinsights/v1beta1/zz_loganalyticssavedsearch_types.go @@ -64,15 +64,19 @@ type LogAnalyticsSavedSearchObservation struct { type LogAnalyticsSavedSearchParameters struct { // The category that the Saved Search will be listed under. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Category *string `json:"category,omitempty" tf:"category,omitempty"` // The name that Saved Search will be displayed as. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` // The function alias if the query serves as a function. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional FunctionAlias *string `json:"functionAlias,omitempty" tf:"function_alias,omitempty"` // The function parameters if the query serves as a function. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional FunctionParameters []*string `json:"functionParameters,omitempty" tf:"function_parameters,omitempty"` // Specifies the ID of the Log Analytics Workspace that the Saved Search will be associated with. Changing this forces a new resource to be created. @@ -90,9 +94,11 @@ type LogAnalyticsSavedSearchParameters struct { LogAnalyticsWorkspaceIDSelector *v1.Selector `json:"logAnalyticsWorkspaceIdSelector,omitempty" tf:"-"` // The query expression for the saved search. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Query *string `json:"query,omitempty" tf:"query,omitempty"` // A mapping of tags which should be assigned to the Logs Analytics Saved Search. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/operationalinsights/v1beta1/zz_workspace_types.go b/apis/operationalinsights/v1beta1/zz_workspace_types.go index 6ff2edf77..fc2b4259a 100755 --- a/apis/operationalinsights/v1beta1/zz_workspace_types.go +++ b/apis/operationalinsights/v1beta1/zz_workspace_types.go @@ -97,27 +97,35 @@ type WorkspaceObservation struct { type WorkspaceParameters struct { // Specifies if the log Analytics Workspace allow users accessing to data associated with resources they have permission to view, without permission to workspace. Defaults to true. + // +kubebuilder:validation:Optional AllowResourceOnlyPermissions *bool `json:"allowResourceOnlyPermissions,omitempty" tf:"allow_resource_only_permissions,omitempty"` // Is Customer Managed Storage mandatory for query management? + // +kubebuilder:validation:Optional CmkForQueryForced *bool `json:"cmkForQueryForced,omitempty" tf:"cmk_for_query_forced,omitempty"` // The workspace daily quota for ingestion in GB. Defaults to -1 (unlimited) if omitted. + // +kubebuilder:validation:Optional DailyQuotaGb *float64 `json:"dailyQuotaGb,omitempty" tf:"daily_quota_gb,omitempty"` // Should the Log Analytics Workspace support ingestion over the Public Internet? Defaults to true. + // +kubebuilder:validation:Optional InternetIngestionEnabled *bool `json:"internetIngestionEnabled,omitempty" tf:"internet_ingestion_enabled,omitempty"` // Should the Log Analytics Workspace support querying over the Public Internet? Defaults to true. + // +kubebuilder:validation:Optional InternetQueryEnabled *bool `json:"internetQueryEnabled,omitempty" tf:"internet_query_enabled,omitempty"` // Specifies if the log Analytics workspace should enforce authentication using Azure AD. Defaults to false. + // +kubebuilder:validation:Optional LocalAuthenticationDisabled *bool `json:"localAuthenticationDisabled,omitempty" tf:"local_authentication_disabled,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The capacity reservation level in GB for this workspace. Must be in increments of 100 between 100 and 5000. + // +kubebuilder:validation:Optional ReservationCapacityInGbPerDay *float64 `json:"reservationCapacityInGbPerDay,omitempty" tf:"reservation_capacity_in_gb_per_day,omitempty"` // The name of the resource group in which the Log Analytics workspace is created. Changing this forces a new resource to be created. @@ -134,12 +142,15 @@ type WorkspaceParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The workspace data retention in days. Possible values are either 7 (Free Tier only) or range between 30 and 730. + // +kubebuilder:validation:Optional RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` // Specifies the SKU of the Log Analytics Workspace. Possible values are Free, PerNode, Premium, Standard, Standalone, Unlimited, CapacityReservation, and PerGB2018 (new SKU as of 2018-04-03). Defaults to PerGB2018. + // +kubebuilder:validation:Optional Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/operationsmanagement/v1beta1/zz_loganalyticssolution_types.go b/apis/operationsmanagement/v1beta1/zz_loganalyticssolution_types.go index 44ff9ab3b..42f0ce7d4 100755 --- a/apis/operationsmanagement/v1beta1/zz_loganalyticssolution_types.go +++ b/apis/operationsmanagement/v1beta1/zz_loganalyticssolution_types.go @@ -56,9 +56,11 @@ type LogAnalyticsSolutionObservation struct { type LogAnalyticsSolutionParameters struct { // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // A plan block as documented below. + // +kubebuilder:validation:Optional Plan []PlanParameters `json:"plan,omitempty" tf:"plan,omitempty"` // The name of the resource group in which the Log Analytics solution is created. Changing this forces a new resource to be created. Note: The solution and its related workspace can only exist in the same resource group. @@ -75,9 +77,11 @@ type LogAnalyticsSolutionParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Specifies the name of the solution to be deployed. See here for options.Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SolutionName *string `json:"solutionName,omitempty" tf:"solution_name,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The full name of the Log Analytics workspace with which the solution will be linked. Changing this forces a new resource to be created. @@ -136,12 +140,15 @@ type PlanObservation struct { type PlanParameters struct { // The product name of the solution. For example OMSGallery/Containers. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Product *string `json:"product,omitempty" tf:"product,omitempty"` // A promotion code to be used with the solution. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PromotionCode *string `json:"promotionCode,omitempty" tf:"promotion_code,omitempty"` // The publisher of the solution. For example Microsoft. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Publisher *string `json:"publisher,omitempty" tf:"publisher,omitempty"` } diff --git a/apis/orbital/v1beta1/zz_contactprofile_types.go b/apis/orbital/v1beta1/zz_contactprofile_types.go index aca6eb046..7b7f8ae6d 100755 --- a/apis/orbital/v1beta1/zz_contactprofile_types.go +++ b/apis/orbital/v1beta1/zz_contactprofile_types.go @@ -58,21 +58,27 @@ type ChannelsObservation struct { type ChannelsParameters struct { // Bandwidth in MHz. + // +kubebuilder:validation:Optional BandwidthMhz *float64 `json:"bandwidthMhz,omitempty" tf:"bandwidth_mhz,omitempty"` // Center frequency in MHz. + // +kubebuilder:validation:Optional CenterFrequencyMhz *float64 `json:"centerFrequencyMhz,omitempty" tf:"center_frequency_mhz,omitempty"` // Copy of the modem configuration file such as Kratos QRadio or Kratos QuantumRx. Only valid for downlink directions. If provided, the modem connects to the customer endpoint and sends demodulated data instead of a VITA.49 stream. + // +kubebuilder:validation:Optional DemodulationConfiguration *string `json:"demodulationConfiguration,omitempty" tf:"demodulation_configuration,omitempty"` // Customer End point to store/retrieve data during a contact. An end_point block as defined below. + // +kubebuilder:validation:Optional EndPoint []EndPointParameters `json:"endPoint,omitempty" tf:"end_point,omitempty"` // Copy of the modem configuration file such as Kratos QRadio. Only valid for uplink directions. If provided, the modem connects to the customer endpoint and accepts commands from the customer instead of a VITA.49 stream. + // +kubebuilder:validation:Optional ModulationConfiguration *string `json:"modulationConfiguration,omitempty" tf:"modulation_configuration,omitempty"` // The name of the contact profile. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -136,21 +142,27 @@ type ContactProfileObservation struct { type ContactProfileParameters struct { // Auto-tracking configurations for a spacecraft. Possible values are disabled, xBand and sBand. + // +kubebuilder:validation:Optional AutoTracking *string `json:"autoTracking,omitempty" tf:"auto_tracking,omitempty"` // ARM resource identifier of the Event Hub used for telemetry. Requires granting Orbital Resource Provider the rights to send telemetry into the hub. + // +kubebuilder:validation:Optional EventHubURI *string `json:"eventHubUri,omitempty" tf:"event_hub_uri,omitempty"` // A list of spacecraft links. A links block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Links []LinksParameters `json:"links,omitempty" tf:"links,omitempty"` // The location where the contact profile exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Maximum elevation of the antenna during the contact in decimal degrees. + // +kubebuilder:validation:Optional MinimumElevationDegrees *float64 `json:"minimumElevationDegrees,omitempty" tf:"minimum_elevation_degrees,omitempty"` // Minimum viable contact duration in ISO 8601 format. Used for listing the available contacts with a spacecraft at a given ground station. + // +kubebuilder:validation:Optional MinimumVariableContactDuration *string `json:"minimumVariableContactDuration,omitempty" tf:"minimum_variable_contact_duration,omitempty"` // ARM resource identifier of the subnet delegated to the Microsoft.Orbital/orbitalGateways. Needs to be at least a class C subnet, and should not have any IP created in it. Changing this forces a new resource to be created. @@ -181,6 +193,7 @@ type ContactProfileParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -217,15 +230,19 @@ type EndPointObservation struct { type EndPointParameters struct { // Name of an end point. + // +kubebuilder:validation:Optional EndPointName *string `json:"endPointName,omitempty" tf:"end_point_name,omitempty"` // IP address of an end point. + // +kubebuilder:validation:Optional IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` // TCP port to listen on to receive data. + // +kubebuilder:validation:Optional Port *string `json:"port,omitempty" tf:"port,omitempty"` // Protocol of an end point. Possible values are TCP and UDP. + // +kubebuilder:validation:Optional Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` } @@ -262,15 +279,19 @@ type LinksObservation struct { type LinksParameters struct { // A list of contact profile link channels. A channels block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Channels []ChannelsParameters `json:"channels,omitempty" tf:"channels,omitempty"` // Direction of the link. Possible values are Uplink and Downlink. + // +kubebuilder:validation:Optional Direction *string `json:"direction,omitempty" tf:"direction,omitempty"` // Name of the link. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Polarization of the link. Possible values are LHCP, RHCP, linearVertical and linearHorizontal. + // +kubebuilder:validation:Optional Polarization *string `json:"polarization,omitempty" tf:"polarization,omitempty"` } diff --git a/apis/orbital/v1beta1/zz_spacecraft_types.go b/apis/orbital/v1beta1/zz_spacecraft_types.go index cddcf1043..e694d8ae7 100755 --- a/apis/orbital/v1beta1/zz_spacecraft_types.go +++ b/apis/orbital/v1beta1/zz_spacecraft_types.go @@ -73,18 +73,23 @@ type SpacecraftLinksObservation struct { type SpacecraftLinksParameters struct { // Bandwidth in Mhz. + // +kubebuilder:validation:Optional BandwidthMhz *float64 `json:"bandwidthMhz,omitempty" tf:"bandwidth_mhz,omitempty"` // Center frequency in Mhz. + // +kubebuilder:validation:Optional CenterFrequencyMhz *float64 `json:"centerFrequencyMhz,omitempty" tf:"center_frequency_mhz,omitempty"` // Direction if the communication. Possible values are Uplink and Downlink. + // +kubebuilder:validation:Optional Direction *string `json:"direction,omitempty" tf:"direction,omitempty"` // Name of the link. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Polarization. Possible values are RHCP, LHCP, linearVertical and linearHorizontal. + // +kubebuilder:validation:Optional Polarization *string `json:"polarization,omitempty" tf:"polarization,omitempty"` } @@ -118,12 +123,15 @@ type SpacecraftObservation struct { type SpacecraftParameters struct { // A links block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Links []SpacecraftLinksParameters `json:"links,omitempty" tf:"links,omitempty"` // The location where the Spacecraft exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // NORAD ID of the Spacecraft. + // +kubebuilder:validation:Optional NoradID *string `json:"noradId,omitempty" tf:"norad_id,omitempty"` // The name of the Resource Group where the Spacecraft exists. Changing this forces a new resource to be created. @@ -140,12 +148,15 @@ type SpacecraftParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Title of the two line elements (TLE). + // +kubebuilder:validation:Optional TitleLine *string `json:"titleLine,omitempty" tf:"title_line,omitempty"` // A list of the two line elements (TLE), the first string being the first of the TLE, the second string being the second line of the TLE. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional TwoLineElements []*string `json:"twoLineElements,omitempty" tf:"two_line_elements,omitempty"` } diff --git a/apis/policyinsights/v1beta1/zz_resourcepolicyremediation_types.go b/apis/policyinsights/v1beta1/zz_resourcepolicyremediation_types.go index 500bb0530..dfb06451a 100755 --- a/apis/policyinsights/v1beta1/zz_resourcepolicyremediation_types.go +++ b/apis/policyinsights/v1beta1/zz_resourcepolicyremediation_types.go @@ -79,15 +79,19 @@ type ResourcePolicyRemediationObservation struct { type ResourcePolicyRemediationParameters struct { // A number between 0.0 to 1.0 representing the percentage failure threshold. The remediation will fail if the percentage of failed remediation operations (i.e. failed deployments) exceeds this threshold. + // +kubebuilder:validation:Optional FailurePercentage *float64 `json:"failurePercentage,omitempty" tf:"failure_percentage,omitempty"` // A list of the resource locations that will be remediated. + // +kubebuilder:validation:Optional LocationFilters []*string `json:"locationFilters,omitempty" tf:"location_filters,omitempty"` // The name of the Policy Remediation. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Determines how many resources to remediate at any given time. Can be used to increase or reduce the pace of the remediation. If not provided, the default parallel deployments value is used. + // +kubebuilder:validation:Optional ParallelDeployments *float64 `json:"parallelDeployments,omitempty" tf:"parallel_deployments,omitempty"` // The ID of the Policy Assignment that should be remediated. @@ -105,15 +109,19 @@ type ResourcePolicyRemediationParameters struct { PolicyAssignmentIDSelector *v1.Selector `json:"policyAssignmentIdSelector,omitempty" tf:"-"` // The unique ID for the policy definition within the policy set definition that should be remediated. Required when the policy assignment being remediated assigns a policy set definition. + // +kubebuilder:validation:Optional PolicyDefinitionID *string `json:"policyDefinitionId,omitempty" tf:"policy_definition_id,omitempty"` // The unique ID for the policy definition reference within the policy set definition that should be remediated. Required when the policy assignment being remediated assigns a policy set definition. + // +kubebuilder:validation:Optional PolicyDefinitionReferenceID *string `json:"policyDefinitionReferenceId,omitempty" tf:"policy_definition_reference_id,omitempty"` // Determines the max number of resources that can be remediated by the remediation job. If not provided, the default resource count is used. + // +kubebuilder:validation:Optional ResourceCount *float64 `json:"resourceCount,omitempty" tf:"resource_count,omitempty"` // The way that resources to remediate are discovered. Possible values are ExistingNonCompliant, ReEvaluateCompliance. Defaults to ExistingNonCompliant. + // +kubebuilder:validation:Optional ResourceDiscoveryMode *string `json:"resourceDiscoveryMode,omitempty" tf:"resource_discovery_mode,omitempty"` // The Resource ID at which the Policy Remediation should be applied. Changing this forces a new resource to be created. diff --git a/apis/policyinsights/v1beta1/zz_subscriptionpolicyremediation_types.go b/apis/policyinsights/v1beta1/zz_subscriptionpolicyremediation_types.go index 7551eaa4d..31d985920 100755 --- a/apis/policyinsights/v1beta1/zz_subscriptionpolicyremediation_types.go +++ b/apis/policyinsights/v1beta1/zz_subscriptionpolicyremediation_types.go @@ -76,12 +76,15 @@ type SubscriptionPolicyRemediationObservation struct { type SubscriptionPolicyRemediationParameters struct { // A number between 0.0 to 1.0 representing the percentage failure threshold. The remediation will fail if the percentage of failed remediation operations (i.e. failed deployments) exceeds this threshold. + // +kubebuilder:validation:Optional FailurePercentage *float64 `json:"failurePercentage,omitempty" tf:"failure_percentage,omitempty"` // A list of the resource locations that will be remediated. + // +kubebuilder:validation:Optional LocationFilters []*string `json:"locationFilters,omitempty" tf:"location_filters,omitempty"` // Determines how many resources to remediate at any given time. Can be used to increase or reduce the pace of the remediation. If not provided, the default parallel deployments value is used. + // +kubebuilder:validation:Optional ParallelDeployments *float64 `json:"parallelDeployments,omitempty" tf:"parallel_deployments,omitempty"` // The ID of the Policy Assignment that should be remediated. @@ -99,18 +102,23 @@ type SubscriptionPolicyRemediationParameters struct { PolicyAssignmentIDSelector *v1.Selector `json:"policyAssignmentIdSelector,omitempty" tf:"-"` // The unique ID for the policy definition within the policy set definition that should be remediated. Required when the policy assignment being remediated assigns a policy set definition. + // +kubebuilder:validation:Optional PolicyDefinitionID *string `json:"policyDefinitionId,omitempty" tf:"policy_definition_id,omitempty"` // The unique ID for the policy definition reference within the policy set definition that should be remediated. Required when the policy assignment being remediated assigns a policy set definition. + // +kubebuilder:validation:Optional PolicyDefinitionReferenceID *string `json:"policyDefinitionReferenceId,omitempty" tf:"policy_definition_reference_id,omitempty"` // Determines the max number of resources that can be remediated by the remediation job. If not provided, the default resource count is used. + // +kubebuilder:validation:Optional ResourceCount *float64 `json:"resourceCount,omitempty" tf:"resource_count,omitempty"` // The way that resources to remediate are discovered. Possible values are ExistingNonCompliant, ReEvaluateCompliance. Defaults to ExistingNonCompliant. + // +kubebuilder:validation:Optional ResourceDiscoveryMode *string `json:"resourceDiscoveryMode,omitempty" tf:"resource_discovery_mode,omitempty"` // The Subscription ID at which the Policy Remediation should be applied. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SubscriptionID *string `json:"subscriptionId,omitempty" tf:"subscription_id,omitempty"` } diff --git a/apis/portal/v1beta1/zz_dashboard_types.go b/apis/portal/v1beta1/zz_dashboard_types.go index 4a816fe13..f63ae7e25 100755 --- a/apis/portal/v1beta1/zz_dashboard_types.go +++ b/apis/portal/v1beta1/zz_dashboard_types.go @@ -52,12 +52,15 @@ type DashboardObservation struct { type DashboardParameters struct { // JSON data representing dashboard body. See above for details on how to obtain this from the Portal. + // +kubebuilder:validation:Optional DashboardProperties *string `json:"dashboardProperties,omitempty" tf:"dashboard_properties,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the name of the Shared Dashboard. 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 to create the dashboard. Changing this forces a new resource to be created. @@ -74,6 +77,7 @@ type DashboardParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/powerbidedicated/v1beta1/zz_powerbiembedded_types.go b/apis/powerbidedicated/v1beta1/zz_powerbiembedded_types.go index b8e466d5c..4e4b5ee6b 100755 --- a/apis/powerbidedicated/v1beta1/zz_powerbiembedded_types.go +++ b/apis/powerbidedicated/v1beta1/zz_powerbiembedded_types.go @@ -58,12 +58,15 @@ type PowerBIEmbeddedObservation struct { type PowerBIEmbeddedParameters struct { // A set of administrator user identities, which manages the Power BI Embedded and must be a member user or a service principal in your AAD tenant. + // +kubebuilder:validation:Optional Administrators []*string `json:"administrators,omitempty" tf:"administrators,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Sets the PowerBI Embedded's mode. Possible values include: Gen1, Gen2. Defaults to Gen1. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` // The name of the Resource Group where the PowerBI Embedded should be created. Changing this forces a new resource to be created. @@ -80,9 +83,11 @@ type PowerBIEmbeddedParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Sets the PowerBI Embedded's pricing level's SKU. Possible values include: A1, A2, A3, A4, A5, A6. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/purview/v1beta1/zz_account_types.go b/apis/purview/v1beta1/zz_account_types.go index 25db5e132..f64ca11bc 100755 --- a/apis/purview/v1beta1/zz_account_types.go +++ b/apis/purview/v1beta1/zz_account_types.go @@ -67,9 +67,11 @@ type AccountObservation struct { type AccountParameters struct { // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // The Azure Region where the Purview Account should exist. Changing this forces a new Purview Account to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name which should be used for the new Resource Group where Purview Account creates the managed resources. Changing this forces a new Purview Account to be created. @@ -86,6 +88,7 @@ type AccountParameters struct { ManagedResourceGroupNameSelector *v1.Selector `json:"managedResourceGroupNameSelector,omitempty" tf:"-"` // Should the Purview Account be visible to the public network? Defaults to true. + // +kubebuilder:validation:Optional PublicNetworkEnabled *bool `json:"publicNetworkEnabled,omitempty" tf:"public_network_enabled,omitempty"` // The name of the Resource Group where the Purview Account should exist. Changing this forces a new Purview Account to be created. @@ -102,6 +105,7 @@ type AccountParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the Purview Account. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -132,9 +136,11 @@ type IdentityObservation struct { type IdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Purview Account. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Purview Account. Possible values are UserAssigned and SystemAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/recoveryservices/v1beta1/zz_backuppolicyfileshare_types.go b/apis/recoveryservices/v1beta1/zz_backuppolicyfileshare_types.go index 25b693b87..860ca3c77 100755 --- a/apis/recoveryservices/v1beta1/zz_backuppolicyfileshare_types.go +++ b/apis/recoveryservices/v1beta1/zz_backuppolicyfileshare_types.go @@ -34,9 +34,11 @@ type BackupObservation struct { type BackupParameters struct { // Sets the backup frequency. Currently, only Daily is supported + // +kubebuilder:validation:Optional Frequency *string `json:"frequency,omitempty" tf:"frequency,omitempty"` // The time of day to perform the backup in 24-hour format. Times must be either on the hour or half hour (e.g. 12:00, 12:30, 13:00, etc.) + // +kubebuilder:validation:Optional Time *string `json:"time,omitempty" tf:"time,omitempty"` } @@ -94,6 +96,7 @@ type BackupPolicyFileShareObservation struct { type BackupPolicyFileShareParameters struct { // Configures the Policy backup frequency and times as documented in the backup block below. + // +kubebuilder:validation:Optional Backup []BackupParameters `json:"backup,omitempty" tf:"backup,omitempty"` // Specifies the name of the Recovery Services Vault to use. Changing this forces a new resource to be created. @@ -123,18 +126,23 @@ type BackupPolicyFileShareParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Configures the policy daily retention as documented in the retention_daily block below. + // +kubebuilder:validation:Optional RetentionDaily []RetentionDailyParameters `json:"retentionDaily,omitempty" tf:"retention_daily,omitempty"` // Configures the policy monthly retention as documented in the retention_monthly block below. + // +kubebuilder:validation:Optional RetentionMonthly []RetentionMonthlyParameters `json:"retentionMonthly,omitempty" tf:"retention_monthly,omitempty"` // Configures the policy weekly retention as documented in the retention_weekly block below. + // +kubebuilder:validation:Optional RetentionWeekly []RetentionWeeklyParameters `json:"retentionWeekly,omitempty" tf:"retention_weekly,omitempty"` // Configures the policy yearly retention as documented in the retention_yearly block below. + // +kubebuilder:validation:Optional RetentionYearly []RetentionYearlyParameters `json:"retentionYearly,omitempty" tf:"retention_yearly,omitempty"` // Specifies the timezone. the possible values are defined here. Defaults to UTC + // +kubebuilder:validation:Optional Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` } @@ -153,6 +161,7 @@ type RetentionDailyObservation struct { type RetentionDailyParameters struct { // The number of daily backups to keep. Must be between 1 and 200 (inclusive) + // +kubebuilder:validation:Optional Count *float64 `json:"count,omitempty" tf:"count,omitempty"` } @@ -183,12 +192,15 @@ type RetentionMonthlyObservation struct { type RetentionMonthlyParameters struct { // The number of monthly backups to keep. Must be between 1 and 120 + // +kubebuilder:validation:Optional Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The weekday backups to retain . Must be one of Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. + // +kubebuilder:validation:Optional Weekdays []*string `json:"weekdays,omitempty" tf:"weekdays,omitempty"` // The weeks of the month to retain backups of. Must be one of First, Second, Third, Fourth, Last. + // +kubebuilder:validation:Optional Weeks []*string `json:"weeks,omitempty" tf:"weeks,omitempty"` } @@ -213,9 +225,11 @@ type RetentionWeeklyObservation struct { type RetentionWeeklyParameters struct { // The number of daily backups to keep. Must be between 1 and 200 (inclusive) + // +kubebuilder:validation:Optional Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The weekday backups to retain. Must be one of Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. + // +kubebuilder:validation:Optional Weekdays []*string `json:"weekdays,omitempty" tf:"weekdays,omitempty"` } @@ -252,15 +266,19 @@ type RetentionYearlyObservation struct { type RetentionYearlyParameters struct { // The number of yearly backups to keep. Must be between 1 and 10 + // +kubebuilder:validation:Optional Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The months of the year to retain backups of. Must be one of January, February, March, April, May, June, July, Augest, September, October, November and December. + // +kubebuilder:validation:Optional Months []*string `json:"months,omitempty" tf:"months,omitempty"` // The weekday backups to retain . Must be one of Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. + // +kubebuilder:validation:Optional Weekdays []*string `json:"weekdays,omitempty" tf:"weekdays,omitempty"` // The weeks of the month to retain backups of. Must be one of First, Second, Third, Fourth, Last. + // +kubebuilder:validation:Optional Weeks []*string `json:"weeks,omitempty" tf:"weeks,omitempty"` } diff --git a/apis/recoveryservices/v1beta1/zz_backuppolicyvm_types.go b/apis/recoveryservices/v1beta1/zz_backuppolicyvm_types.go index 95749f6e5..7528d79d9 100755 --- a/apis/recoveryservices/v1beta1/zz_backuppolicyvm_types.go +++ b/apis/recoveryservices/v1beta1/zz_backuppolicyvm_types.go @@ -52,18 +52,23 @@ type BackupPolicyVMBackupObservation struct { type BackupPolicyVMBackupParameters struct { // Sets the backup frequency. Possible values are Hourly, Daily and Weekly. + // +kubebuilder:validation:Optional Frequency *string `json:"frequency,omitempty" tf:"frequency,omitempty"` // Duration of the backup window in hours. Possible values are between 4 and 24 This is used when frequency is Hourly. + // +kubebuilder:validation:Optional HourDuration *float64 `json:"hourDuration,omitempty" tf:"hour_duration,omitempty"` // Interval in hour at which backup is triggered. Possible values are 4, 6, 8 and 12. This is used when frequency is Hourly. + // +kubebuilder:validation:Optional HourInterval *float64 `json:"hourInterval,omitempty" tf:"hour_interval,omitempty"` // The time of day to perform the backup in 24hour format. + // +kubebuilder:validation:Optional Time *string `json:"time,omitempty" tf:"time,omitempty"` // The days of the week to perform backups on. Must be one of Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. This is used when frequency is Weekly. + // +kubebuilder:validation:Optional Weekdays []*string `json:"weekdays,omitempty" tf:"weekdays,omitempty"` } @@ -139,15 +144,19 @@ type BackupPolicyVMObservation struct { type BackupPolicyVMParameters struct { // Configures the Policy backup frequency, times & days as documented in the backup block below. + // +kubebuilder:validation:Optional Backup []BackupPolicyVMBackupParameters `json:"backup,omitempty" tf:"backup,omitempty"` // Specifies the instant restore resource group name as documented in the instant_restore_resource_group block below. + // +kubebuilder:validation:Optional InstantRestoreResourceGroup []InstantRestoreResourceGroupParameters `json:"instantRestoreResourceGroup,omitempty" tf:"instant_restore_resource_group,omitempty"` // Specifies the instant restore retention range in days. Possible values are between 1 and 5 when policy_type is V1, and 1 to 30 when policy_type is V2. + // +kubebuilder:validation:Optional InstantRestoreRetentionDays *float64 `json:"instantRestoreRetentionDays,omitempty" tf:"instant_restore_retention_days,omitempty"` // Type of the Backup Policy. Possible values are V1 and V2 where V2 stands for the Enhanced Policy. Defaults to V1. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PolicyType *string `json:"policyType,omitempty" tf:"policy_type,omitempty"` // Specifies the name of the Recovery Services Vault to use. Changing this forces a new resource to be created. @@ -177,18 +186,23 @@ type BackupPolicyVMParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Configures the policy daily retention as documented in the retention_daily block below. Required when backup frequency is Daily. + // +kubebuilder:validation:Optional RetentionDaily []BackupPolicyVMRetentionDailyParameters `json:"retentionDaily,omitempty" tf:"retention_daily,omitempty"` // Configures the policy monthly retention as documented in the retention_monthly block below. + // +kubebuilder:validation:Optional RetentionMonthly []BackupPolicyVMRetentionMonthlyParameters `json:"retentionMonthly,omitempty" tf:"retention_monthly,omitempty"` // Configures the policy weekly retention as documented in the retention_weekly block below. Required when backup frequency is Weekly. + // +kubebuilder:validation:Optional RetentionWeekly []BackupPolicyVMRetentionWeeklyParameters `json:"retentionWeekly,omitempty" tf:"retention_weekly,omitempty"` // Configures the policy yearly retention as documented in the retention_yearly block below. + // +kubebuilder:validation:Optional RetentionYearly []BackupPolicyVMRetentionYearlyParameters `json:"retentionYearly,omitempty" tf:"retention_yearly,omitempty"` // Specifies the timezone. the possible values are defined here. Defaults to UTC + // +kubebuilder:validation:Optional Timezone *string `json:"timezone,omitempty" tf:"timezone,omitempty"` } @@ -207,6 +221,7 @@ type BackupPolicyVMRetentionDailyObservation struct { type BackupPolicyVMRetentionDailyParameters struct { // The number of daily backups to keep. Must be between 7 and 9999. + // +kubebuilder:validation:Optional Count *float64 `json:"count,omitempty" tf:"count,omitempty"` } @@ -237,12 +252,15 @@ type BackupPolicyVMRetentionMonthlyObservation struct { type BackupPolicyVMRetentionMonthlyParameters struct { // The number of monthly backups to keep. Must be between 1 and 9999 + // +kubebuilder:validation:Optional Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The weekday backups to retain . Must be one of Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. + // +kubebuilder:validation:Optional Weekdays []*string `json:"weekdays,omitempty" tf:"weekdays,omitempty"` // The weeks of the month to retain backups of. Must be one of First, Second, Third, Fourth, Last. + // +kubebuilder:validation:Optional Weeks []*string `json:"weeks,omitempty" tf:"weeks,omitempty"` } @@ -267,9 +285,11 @@ type BackupPolicyVMRetentionWeeklyObservation struct { type BackupPolicyVMRetentionWeeklyParameters struct { // The number of weekly backups to keep. Must be between 1 and 9999 + // +kubebuilder:validation:Optional Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The weekday backups to retain. Must be one of Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. + // +kubebuilder:validation:Optional Weekdays []*string `json:"weekdays,omitempty" tf:"weekdays,omitempty"` } @@ -306,15 +326,19 @@ type BackupPolicyVMRetentionYearlyObservation struct { type BackupPolicyVMRetentionYearlyParameters struct { // The number of yearly backups to keep. Must be between 1 and 9999 + // +kubebuilder:validation:Optional Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The months of the year to retain backups of. Must be one of January, February, March, April, May, June, July, August, September, October, November and December. + // +kubebuilder:validation:Optional Months []*string `json:"months,omitempty" tf:"months,omitempty"` // The weekday backups to retain . Must be one of Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. + // +kubebuilder:validation:Optional Weekdays []*string `json:"weekdays,omitempty" tf:"weekdays,omitempty"` // The weeks of the month to retain backups of. Must be one of First, Second, Third, Fourth, Last. + // +kubebuilder:validation:Optional Weeks []*string `json:"weeks,omitempty" tf:"weeks,omitempty"` } @@ -339,9 +363,11 @@ type InstantRestoreResourceGroupObservation struct { type InstantRestoreResourceGroupParameters struct { // The prefix for the instant_restore_resource_group name. + // +kubebuilder:validation:Optional Prefix *string `json:"prefix,omitempty" tf:"prefix,omitempty"` // The suffix for the instant_restore_resource_group name. + // +kubebuilder:validation:Optional Suffix *string `json:"suffix,omitempty" tf:"suffix,omitempty"` } diff --git a/apis/recoveryservices/v1beta1/zz_backuppolicyvmworkload_types.go b/apis/recoveryservices/v1beta1/zz_backuppolicyvmworkload_types.go index 409547205..fe89fdfea 100755 --- a/apis/recoveryservices/v1beta1/zz_backuppolicyvmworkload_types.go +++ b/apis/recoveryservices/v1beta1/zz_backuppolicyvmworkload_types.go @@ -49,6 +49,7 @@ type BackupPolicyVMWorkloadObservation struct { type BackupPolicyVMWorkloadParameters struct { // One or more protection_policy blocks as defined below. + // +kubebuilder:validation:Optional ProtectionPolicy []ProtectionPolicyParameters `json:"protectionPolicy,omitempty" tf:"protection_policy,omitempty"` // The name of the Recovery Services Vault to use. Changing this forces a new resource to be created. @@ -78,9 +79,11 @@ type BackupPolicyVMWorkloadParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A settings block as defined below. + // +kubebuilder:validation:Optional Settings []SettingsParameters `json:"settings,omitempty" tf:"settings,omitempty"` // The VM Workload type for the Backup Policy. Possible values are SQLDataBase and SAPHanaDatabase. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional WorkloadType *string `json:"workloadType,omitempty" tf:"workload_type,omitempty"` } @@ -117,15 +120,19 @@ type ProtectionPolicyBackupObservation struct { type ProtectionPolicyBackupParameters struct { // The backup frequency for the VM Workload Backup Policy. Possible values are Daily and Weekly. + // +kubebuilder:validation:Optional Frequency *string `json:"frequency,omitempty" tf:"frequency,omitempty"` // The backup frequency in minutes for the VM Workload Backup Policy. Possible values are 15, 30, 60, 120, 240, 480, 720 and 1440. + // +kubebuilder:validation:Optional FrequencyInMinutes *float64 `json:"frequencyInMinutes,omitempty" tf:"frequency_in_minutes,omitempty"` // The time of day to perform the backup in 24hour format. + // +kubebuilder:validation:Optional Time *string `json:"time,omitempty" tf:"time,omitempty"` // The weekday backups to retain. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. + // +kubebuilder:validation:Optional Weekdays []*string `json:"weekdays,omitempty" tf:"weekdays,omitempty"` } @@ -180,24 +187,31 @@ type ProtectionPolicyObservation struct { type ProtectionPolicyParameters struct { // A backup block as defined below. + // +kubebuilder:validation:Optional Backup []ProtectionPolicyBackupParameters `json:"backup,omitempty" tf:"backup,omitempty"` // The type of the VM Workload Backup Policy. Possible values are Differential, Full, Incremental and Log. + // +kubebuilder:validation:Optional PolicyType *string `json:"policyType,omitempty" tf:"policy_type,omitempty"` // A retention_daily block as defined below. + // +kubebuilder:validation:Optional RetentionDaily []ProtectionPolicyRetentionDailyParameters `json:"retentionDaily,omitempty" tf:"retention_daily,omitempty"` // A retention_monthly block as defined below. + // +kubebuilder:validation:Optional RetentionMonthly []ProtectionPolicyRetentionMonthlyParameters `json:"retentionMonthly,omitempty" tf:"retention_monthly,omitempty"` // A retention_weekly block as defined below. + // +kubebuilder:validation:Optional RetentionWeekly []ProtectionPolicyRetentionWeeklyParameters `json:"retentionWeekly,omitempty" tf:"retention_weekly,omitempty"` // A retention_yearly block as defined below. + // +kubebuilder:validation:Optional RetentionYearly []ProtectionPolicyRetentionYearlyParameters `json:"retentionYearly,omitempty" tf:"retention_yearly,omitempty"` // A simple_retention block as defined below. + // +kubebuilder:validation:Optional SimpleRetention []SimpleRetentionParameters `json:"simpleRetention,omitempty" tf:"simple_retention,omitempty"` } @@ -216,6 +230,7 @@ type ProtectionPolicyRetentionDailyObservation struct { type ProtectionPolicyRetentionDailyParameters struct { // The count that is used to count retention duration with duration type Days. Possible values are between 7 and 35. + // +kubebuilder:validation:Optional Count *float64 `json:"count,omitempty" tf:"count,omitempty"` } @@ -258,18 +273,23 @@ type ProtectionPolicyRetentionMonthlyObservation struct { type ProtectionPolicyRetentionMonthlyParameters struct { // The count that is used to count retention duration with duration type Days. Possible values are between 7 and 35. + // +kubebuilder:validation:Optional Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The retention schedule format type for yearly retention policy. Possible values are Daily and Weekly. + // +kubebuilder:validation:Optional FormatType *string `json:"formatType,omitempty" tf:"format_type,omitempty"` // The monthday backups to retain. Possible values are between 0 and 28. + // +kubebuilder:validation:Optional Monthdays []*float64 `json:"monthdays,omitempty" tf:"monthdays,omitempty"` // The weekday backups to retain. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. + // +kubebuilder:validation:Optional Weekdays []*string `json:"weekdays,omitempty" tf:"weekdays,omitempty"` // The weeks of the month to retain backups of. Possible values are First, Second, Third, Fourth, Last. + // +kubebuilder:validation:Optional Weeks []*string `json:"weeks,omitempty" tf:"weeks,omitempty"` } @@ -294,9 +314,11 @@ type ProtectionPolicyRetentionWeeklyObservation struct { type ProtectionPolicyRetentionWeeklyParameters struct { // The count that is used to count retention duration with duration type Days. Possible values are between 7 and 35. + // +kubebuilder:validation:Optional Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The weekday backups to retain. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. + // +kubebuilder:validation:Optional Weekdays []*string `json:"weekdays,omitempty" tf:"weekdays,omitempty"` } @@ -345,21 +367,27 @@ type ProtectionPolicyRetentionYearlyObservation struct { type ProtectionPolicyRetentionYearlyParameters struct { // The count that is used to count retention duration with duration type Days. Possible values are between 7 and 35. + // +kubebuilder:validation:Optional Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The retention schedule format type for yearly retention policy. Possible values are Daily and Weekly. + // +kubebuilder:validation:Optional FormatType *string `json:"formatType,omitempty" tf:"format_type,omitempty"` // The monthday backups to retain. Possible values are between 0 and 28. + // +kubebuilder:validation:Optional Monthdays []*float64 `json:"monthdays,omitempty" tf:"monthdays,omitempty"` // The months of the year to retain backups of. Possible values are January, February, March, April, May, June, July, August, September, October, November and December. + // +kubebuilder:validation:Optional Months []*string `json:"months,omitempty" tf:"months,omitempty"` // The weekday backups to retain. Possible values are Sunday, Monday, Tuesday, Wednesday, Thursday, Friday or Saturday. + // +kubebuilder:validation:Optional Weekdays []*string `json:"weekdays,omitempty" tf:"weekdays,omitempty"` // The weeks of the month to retain backups of. Possible values are First, Second, Third, Fourth, Last. + // +kubebuilder:validation:Optional Weeks []*string `json:"weeks,omitempty" tf:"weeks,omitempty"` } @@ -384,9 +412,11 @@ type SettingsObservation struct { type SettingsParameters struct { // The compression setting for the VM Workload Backup Policy. Defaults to false. + // +kubebuilder:validation:Optional CompressionEnabled *bool `json:"compressionEnabled,omitempty" tf:"compression_enabled,omitempty"` // The timezone for the VM Workload Backup Policy. The possible values are defined here. + // +kubebuilder:validation:Optional TimeZone *string `json:"timeZone,omitempty" tf:"time_zone,omitempty"` } @@ -405,6 +435,7 @@ type SimpleRetentionObservation struct { type SimpleRetentionParameters struct { // The count that is used to count retention duration with duration type Days. Possible values are between 7 and 35. + // +kubebuilder:validation:Optional Count *float64 `json:"count,omitempty" tf:"count,omitempty"` } diff --git a/apis/recoveryservices/v1beta1/zz_backupprotectedvm_types.go b/apis/recoveryservices/v1beta1/zz_backupprotectedvm_types.go index a5ab24bdc..6a6ea207c 100755 --- a/apis/recoveryservices/v1beta1/zz_backupprotectedvm_types.go +++ b/apis/recoveryservices/v1beta1/zz_backupprotectedvm_types.go @@ -66,9 +66,11 @@ type BackupProtectedVMParameters struct { BackupPolicyIDSelector *v1.Selector `json:"backupPolicyIdSelector,omitempty" tf:"-"` // A list of Disks' Logical Unit Numbers(LUN) to be excluded for VM Protection. + // +kubebuilder:validation:Optional ExcludeDiskLuns []*float64 `json:"excludeDiskLuns,omitempty" tf:"exclude_disk_luns,omitempty"` // A list of Disks' Logical Unit Numbers(LUN) to be included for VM Protection. + // +kubebuilder:validation:Optional IncludeDiskLuns []*float64 `json:"includeDiskLuns,omitempty" tf:"include_disk_luns,omitempty"` // Specifies the name of the Recovery Services Vault to use. Changing this forces a new resource to be created. @@ -98,6 +100,7 @@ type BackupProtectedVMParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Specifies the ID of the VM to backup. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SourceVMID *string `json:"sourceVmId,omitempty" tf:"source_vm_id,omitempty"` } diff --git a/apis/recoveryservices/v1beta1/zz_siterecoveryfabric_types.go b/apis/recoveryservices/v1beta1/zz_siterecoveryfabric_types.go index ed306a5eb..04a267a4b 100755 --- a/apis/recoveryservices/v1beta1/zz_siterecoveryfabric_types.go +++ b/apis/recoveryservices/v1beta1/zz_siterecoveryfabric_types.go @@ -37,6 +37,7 @@ type SiteRecoveryFabricObservation struct { type SiteRecoveryFabricParameters struct { // In what region should the fabric be located. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the vault that should be updated. Changing this forces a new resource to be created. diff --git a/apis/recoveryservices/v1beta1/zz_siterecoverynetworkmapping_types.go b/apis/recoveryservices/v1beta1/zz_siterecoverynetworkmapping_types.go index e77622cbc..bd77c92f9 100755 --- a/apis/recoveryservices/v1beta1/zz_siterecoverynetworkmapping_types.go +++ b/apis/recoveryservices/v1beta1/zz_siterecoverynetworkmapping_types.go @@ -55,6 +55,7 @@ type SiteRecoveryNetworkMappingObservation struct { type SiteRecoveryNetworkMappingParameters struct { // The name of the network mapping. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The name of the vault that should be updated. Changing this forces a new resource to be created. @@ -98,6 +99,7 @@ type SiteRecoveryNetworkMappingParameters struct { SourceNetworkIDSelector *v1.Selector `json:"sourceNetworkIdSelector,omitempty" tf:"-"` // Specifies the ASR fabric where mapping should be created. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SourceRecoveryFabricName *string `json:"sourceRecoveryFabricName,omitempty" tf:"source_recovery_fabric_name,omitempty"` // The id of the recovery network. Changing this forces a new resource to be created. @@ -115,6 +117,7 @@ type SiteRecoveryNetworkMappingParameters struct { TargetNetworkIDSelector *v1.Selector `json:"targetNetworkIdSelector,omitempty" tf:"-"` // The Azure Site Recovery fabric object corresponding to the recovery Azure region. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional TargetRecoveryFabricName *string `json:"targetRecoveryFabricName,omitempty" tf:"target_recovery_fabric_name,omitempty"` } diff --git a/apis/recoveryservices/v1beta1/zz_siterecoveryprotectioncontainermapping_types.go b/apis/recoveryservices/v1beta1/zz_siterecoveryprotectioncontainermapping_types.go index bce56be53..e1c4072a9 100755 --- a/apis/recoveryservices/v1beta1/zz_siterecoveryprotectioncontainermapping_types.go +++ b/apis/recoveryservices/v1beta1/zz_siterecoveryprotectioncontainermapping_types.go @@ -34,9 +34,11 @@ type AutomaticUpdateObservation struct { type AutomaticUpdateParameters struct { // The automation account ID which holds the automatic update runbook and authenticates to Azure resources. + // +kubebuilder:validation:Optional AutomationAccountID *string `json:"automationAccountId,omitempty" tf:"automation_account_id,omitempty"` // Should the Mobility service installed on Azure virtual machines be automatically updated. Defaults to false. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` } @@ -76,6 +78,7 @@ type SiteRecoveryProtectionContainerMappingObservation struct { type SiteRecoveryProtectionContainerMappingParameters struct { // a automatic_update block defined as below. + // +kubebuilder:validation:Optional AutomaticUpdate []AutomaticUpdateParameters `json:"automaticUpdate,omitempty" tf:"automatic_update,omitempty"` // Name of fabric that should contains the protection container to map. Changing this forces a new resource to be created. diff --git a/apis/recoveryservices/v1beta1/zz_siterecoveryreplicationpolicy_types.go b/apis/recoveryservices/v1beta1/zz_siterecoveryreplicationpolicy_types.go index 4e0e532cc..0469b8e8f 100755 --- a/apis/recoveryservices/v1beta1/zz_siterecoveryreplicationpolicy_types.go +++ b/apis/recoveryservices/v1beta1/zz_siterecoveryreplicationpolicy_types.go @@ -43,9 +43,11 @@ type SiteRecoveryReplicationPolicyObservation struct { type SiteRecoveryReplicationPolicyParameters struct { // Specifies the frequency(in minutes) at which to create application consistent recovery points. + // +kubebuilder:validation:Optional ApplicationConsistentSnapshotFrequencyInMinutes *float64 `json:"applicationConsistentSnapshotFrequencyInMinutes,omitempty" tf:"application_consistent_snapshot_frequency_in_minutes,omitempty"` // The duration in minutes for which the recovery points need to be stored. + // +kubebuilder:validation:Optional RecoveryPointRetentionInMinutes *float64 `json:"recoveryPointRetentionInMinutes,omitempty" tf:"recovery_point_retention_in_minutes,omitempty"` // The name of the vault that should be updated. Changing this forces a new resource to be created. diff --git a/apis/recoveryservices/v1beta1/zz_vault_types.go b/apis/recoveryservices/v1beta1/zz_vault_types.go index 84565956e..c693bb366 100755 --- a/apis/recoveryservices/v1beta1/zz_vault_types.go +++ b/apis/recoveryservices/v1beta1/zz_vault_types.go @@ -46,15 +46,19 @@ type EncryptionObservation struct { type EncryptionParameters struct { // Enabling/Disabling the Double Encryption state. + // +kubebuilder:validation:Optional InfrastructureEncryptionEnabled *bool `json:"infrastructureEncryptionEnabled,omitempty" tf:"infrastructure_encryption_enabled,omitempty"` // The Key Vault key id used to encrypt this vault. Key managed by Vault Managed Hardware Security Module is also supported. + // +kubebuilder:validation:Optional KeyID *string `json:"keyId,omitempty" tf:"key_id,omitempty"` // Indicate that system assigned identity should be used or not. Defaults to true. + // +kubebuilder:validation:Optional UseSystemAssignedIdentity *bool `json:"useSystemAssignedIdentity,omitempty" tf:"use_system_assigned_identity,omitempty"` // Specifies the user assigned identity ID to be used. + // +kubebuilder:validation:Optional UserAssignedIdentityID *string `json:"userAssignedIdentityId,omitempty" tf:"user_assigned_identity_id,omitempty"` } @@ -85,9 +89,11 @@ type IdentityObservation struct { type IdentityParameters struct { // A list of User Assigned Managed Identity IDs to be assigned to this App Configuration. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Recovery Services Vault. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -112,9 +118,11 @@ type MonitoringObservation struct { type MonitoringParameters struct { // Enabling/Disabling built-in Azure Monitor alerts for security scenarios and job failure scenarios. Defaults to true. + // +kubebuilder:validation:Optional AlertsForAllJobFailuresEnabled *bool `json:"alertsForAllJobFailuresEnabled,omitempty" tf:"alerts_for_all_job_failures_enabled,omitempty"` // Enabling/Disabling alerts from the older (classic alerts) solution. Defaults to true. More details could be found here. + // +kubebuilder:validation:Optional AlertsForCriticalOperationFailuresEnabled *bool `json:"alertsForCriticalOperationFailuresEnabled,omitempty" tf:"alerts_for_critical_operation_failures_enabled,omitempty"` } @@ -205,27 +213,35 @@ type VaultObservation struct { type VaultParameters struct { // Whether to enable the Classic experience for VMware replication. If set to false VMware machines will be protected using the new stateless ASR replication appliance. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ClassicVMwareReplicationEnabled *bool `json:"classicVmwareReplicationEnabled,omitempty" tf:"classic_vmware_replication_enabled,omitempty"` // Is cross region restore enabled for this Vault? Only can be true, when storage_mode_type is GeoRedundant. Defaults to false. + // +kubebuilder:validation:Optional CrossRegionRestoreEnabled *bool `json:"crossRegionRestoreEnabled,omitempty" tf:"cross_region_restore_enabled,omitempty"` // An encryption block as defined below. Required with identity. + // +kubebuilder:validation:Optional Encryption []EncryptionParameters `json:"encryption,omitempty" tf:"encryption,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // Immutability Settings of vault, possible values include: Locked, Unlocked and Disabled. + // +kubebuilder:validation:Optional Immutability *string `json:"immutability,omitempty" tf:"immutability,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // A monitoring block as defined below. + // +kubebuilder:validation:Optional Monitoring []MonitoringParameters `json:"monitoring,omitempty" tf:"monitoring,omitempty"` // Is it enabled to access the vault from public networks. Defaults to true. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // The name of the resource group in which to create the Recovery Services Vault. Changing this forces a new resource to be created. @@ -242,15 +258,19 @@ type VaultParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Sets the vault's SKU. Possible values include: Standard, RS0. + // +kubebuilder:validation:Optional Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // Is soft delete enable for this Vault? Defaults to true. + // +kubebuilder:validation:Optional SoftDeleteEnabled *bool `json:"softDeleteEnabled,omitempty" tf:"soft_delete_enabled,omitempty"` // The storage type of the Recovery Services Vault. Possible values are GeoRedundant, LocallyRedundant and ZoneRedundant. Defaults to GeoRedundant. + // +kubebuilder:validation:Optional StorageModeType *string `json:"storageModeType,omitempty" tf:"storage_mode_type,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/relay/v1beta1/zz_eventrelaynamespace_types.go b/apis/relay/v1beta1/zz_eventrelaynamespace_types.go index 34de7c022..9bdaab587 100755 --- a/apis/relay/v1beta1/zz_eventrelaynamespace_types.go +++ b/apis/relay/v1beta1/zz_eventrelaynamespace_types.go @@ -49,6 +49,7 @@ type EventRelayNamespaceObservation struct { type EventRelayNamespaceParameters struct { // Specifies the supported Azure location where the Azure Relay Namespace exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the resource group in which to create the Azure Relay Namespace. Changing this forces a new resource to be created. @@ -65,9 +66,11 @@ type EventRelayNamespaceParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The name of the SKU to use. At this time the only supported value is Standard. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/relay/v1beta1/zz_hybridconnection_types.go b/apis/relay/v1beta1/zz_hybridconnection_types.go index fcea1c298..5683298bb 100755 --- a/apis/relay/v1beta1/zz_hybridconnection_types.go +++ b/apis/relay/v1beta1/zz_hybridconnection_types.go @@ -49,6 +49,7 @@ type HybridConnectionObservation struct { type HybridConnectionParameters struct { // Specifies the name of the Azure Relay Hybrid Connection. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The name of the Azure Relay in which to create the Azure Relay Hybrid Connection. Changing this forces a new resource to be created. @@ -65,6 +66,7 @@ type HybridConnectionParameters struct { RelayNamespaceNameSelector *v1.Selector `json:"relayNamespaceNameSelector,omitempty" tf:"-"` // Specify if client authorization is needed for this hybrid connection. True by default. Changing this forces a new resource to be created. Defaults to true. + // +kubebuilder:validation:Optional RequiresClientAuthorization *bool `json:"requiresClientAuthorization,omitempty" tf:"requires_client_authorization,omitempty"` // The name of the resource group in which to create the Azure Relay Hybrid Connection. Changing this forces a new resource to be created. @@ -81,6 +83,7 @@ type HybridConnectionParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The usermetadata is a placeholder to store user-defined string data for the hybrid connection endpoint. For example, it can be used to store descriptive data, such as a list of teams and their contact information. Also, user-defined configuration settings can be stored. + // +kubebuilder:validation:Optional UserMetadata *string `json:"userMetadata,omitempty" tf:"user_metadata,omitempty"` } diff --git a/apis/relay/v1beta1/zz_hybridconnectionauthorizationrule_types.go b/apis/relay/v1beta1/zz_hybridconnectionauthorizationrule_types.go index a016a6a8f..87c0beccf 100755 --- a/apis/relay/v1beta1/zz_hybridconnectionauthorizationrule_types.go +++ b/apis/relay/v1beta1/zz_hybridconnectionauthorizationrule_types.go @@ -66,9 +66,11 @@ type HybridConnectionAuthorizationRuleParameters struct { HybridConnectionNameSelector *v1.Selector `json:"hybridConnectionNameSelector,omitempty" tf:"-"` // Grants listen access to this Authorization Rule. Defaults to false. + // +kubebuilder:validation:Optional Listen *bool `json:"listen,omitempty" tf:"listen,omitempty"` // Grants manage access to this Authorization Rule. When this property is true - both listen and send must be set to true too. Defaults to false. + // +kubebuilder:validation:Optional Manage *bool `json:"manage,omitempty" tf:"manage,omitempty"` // Name of the Azure Relay Namespace for which this Azure Relay Hybrid Connection Authorization Rule will be created. Changing this forces a new Azure Relay Hybrid Connection Authorization Rule to be created. @@ -98,6 +100,7 @@ type HybridConnectionAuthorizationRuleParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Grants send access to this Authorization Rule. Defaults to false. + // +kubebuilder:validation:Optional Send *bool `json:"send,omitempty" tf:"send,omitempty"` } diff --git a/apis/relay/v1beta1/zz_namespaceauthorizationrule_types.go b/apis/relay/v1beta1/zz_namespaceauthorizationrule_types.go index aa81116ef..a4d82613d 100755 --- a/apis/relay/v1beta1/zz_namespaceauthorizationrule_types.go +++ b/apis/relay/v1beta1/zz_namespaceauthorizationrule_types.go @@ -49,9 +49,11 @@ type NamespaceAuthorizationRuleObservation struct { type NamespaceAuthorizationRuleParameters struct { // Grants listen access to this Authorization Rule. Defaults to false. + // +kubebuilder:validation:Optional Listen *bool `json:"listen,omitempty" tf:"listen,omitempty"` // Grants manage access to this Authorization Rule. When this property is true - both listen and send must be set to true too. Defaults to false. + // +kubebuilder:validation:Optional Manage *bool `json:"manage,omitempty" tf:"manage,omitempty"` // Name of the Azure Relay Namespace for which this Azure Relay Namespace Authorization Rule will be created. Changing this forces a new Azure Relay Namespace Authorization Rule to be created. @@ -81,6 +83,7 @@ type NamespaceAuthorizationRuleParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Grants send access to this Authorization Rule. Defaults to false. + // +kubebuilder:validation:Optional Send *bool `json:"send,omitempty" tf:"send,omitempty"` } diff --git a/apis/resources/v1beta1/zz_resourcedeploymentscriptazurecli_types.go b/apis/resources/v1beta1/zz_resourcedeploymentscriptazurecli_types.go index d43934fb2..2df9ed6d2 100755 --- a/apis/resources/v1beta1/zz_resourcedeploymentscriptazurecli_types.go +++ b/apis/resources/v1beta1/zz_resourcedeploymentscriptazurecli_types.go @@ -28,6 +28,7 @@ type ContainerObservation struct { type ContainerParameters struct { // Container group name, if not specified then the name will get auto-generated. For more information, please refer to the Container Configuration documentation. + // +kubebuilder:validation:Optional ContainerGroupName *string `json:"containerGroupName,omitempty" tf:"container_group_name,omitempty"` } @@ -52,6 +53,7 @@ type EnvironmentVariableObservation struct { type EnvironmentVariableParameters struct { // Specifies the name of the environment variable. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the value of the secure environment variable. @@ -59,6 +61,7 @@ type EnvironmentVariableParameters struct { SecureValueSecretRef *v1.SecretKeySelector `json:"secureValueSecretRef,omitempty" tf:"-"` // Specifies the value of the environment variable. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -94,6 +97,7 @@ type IdentityParameters struct { IdentityIdsSelector *v1.Selector `json:"identityIdsSelector,omitempty" tf:"-"` // Type of the managed identity. The only possible value is UserAssigned. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -211,30 +215,39 @@ type ResourceDeploymentScriptAzureCliObservation struct { type ResourceDeploymentScriptAzureCliParameters struct { // Specifies the cleanup preference when the script execution gets in a terminal state. Possible values are Always, OnExpiration, OnSuccess. Defaults to Always. Changing this forces a new Resource Deployment Script to be created. + // +kubebuilder:validation:Optional CleanupPreference *string `json:"cleanupPreference,omitempty" tf:"cleanup_preference,omitempty"` // Command line arguments to pass to the script. Changing this forces a new Resource Deployment Script to be created. + // +kubebuilder:validation:Optional CommandLine *string `json:"commandLine,omitempty" tf:"command_line,omitempty"` // A container block as defined below. Changing this forces a new Resource Deployment Script to be created. + // +kubebuilder:validation:Optional Container []ContainerParameters `json:"container,omitempty" tf:"container,omitempty"` // An environment_variable block as defined below. Changing this forces a new Resource Deployment Script to be created. + // +kubebuilder:validation:Optional EnvironmentVariable []EnvironmentVariableParameters `json:"environmentVariable,omitempty" tf:"environment_variable,omitempty"` // Gets or sets how the deployment script should be forced to execute even if the script resource has not changed. Can be current time stamp or a GUID. Changing this forces a new Resource Deployment Script to be created. + // +kubebuilder:validation:Optional ForceUpdateTag *string `json:"forceUpdateTag,omitempty" tf:"force_update_tag,omitempty"` // An identity block as defined below. Changing this forces a new Resource Deployment Script to be created. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // Specifies the Azure Region where the Resource Deployment Script should exist. Changing this forces a new Resource Deployment Script to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the name which should be used for this Resource Deployment Script. The name length must be from 1 to 260 characters. The name can only contain alphanumeric, underscore, parentheses, hyphen and period, and it cannot end with a period. Changing this forces a new Resource Deployment Script to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Uri for the script. This is the entry point for the external script. Changing this forces a new Resource Deployment Script to be created. + // +kubebuilder:validation:Optional PrimaryScriptURI *string `json:"primaryScriptUri,omitempty" tf:"primary_script_uri,omitempty"` // Specifies the name of the Resource Group where the Resource Deployment Script should exist. Changing this forces a new Resource Deployment Script to be created. @@ -251,24 +264,31 @@ type ResourceDeploymentScriptAzureCliParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Interval for which the service retains the script resource after it reaches a terminal state. Resource will be deleted when this duration expires. The time duration should be between 1 hour and 26 hours (inclusive) and should be specified in ISO 8601 format. Changing this forces a new Resource Deployment Script to be created. + // +kubebuilder:validation:Optional RetentionInterval *string `json:"retentionInterval,omitempty" tf:"retention_interval,omitempty"` // Script body. Changing this forces a new Resource Deployment Script to be created. + // +kubebuilder:validation:Optional ScriptContent *string `json:"scriptContent,omitempty" tf:"script_content,omitempty"` // A storage_account block as defined below. Changing this forces a new Resource Deployment Script to be created. + // +kubebuilder:validation:Optional StorageAccount []StorageAccountParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` // Supporting files for the external script. Changing this forces a new Resource Deployment Script to be created. + // +kubebuilder:validation:Optional SupportingScriptUris []*string `json:"supportingScriptUris,omitempty" tf:"supporting_script_uris,omitempty"` // A mapping of tags which should be assigned to the Resource Deployment Script. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Maximum allowed script execution time specified in ISO 8601 format. Needs to be greater than 0 and smaller than 1 day. Defaults to P1D. Changing this forces a new Resource Deployment Script to be created. + // +kubebuilder:validation:Optional Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"` // Azure CLI module version to be used. The supported versions are 2.0.77, 2.0.78, 2.0.79, 2.0.80, 2.0.81, 2.1.0, 2.10.0, 2.10.1, 2.11.0, 2.11.1, 2.12.0, 2.12.1, 2.13.0, 2.14.0, 2.14.1, 2.14.2, 2.15.0, 2.15.1, 2.16.0, 2.17.0, 2.17.1, 2.18.0, 2.19.0, 2.19.1, 2.2.0, 2.20.0, 2.21.0, 2.22.0, 2.22.1, 2.23.0, 2.24.0, 2.24.1, 2.24.2, 2.25.0, 2.26.0, 2.26.1, 2.27.0, 2.27.1, 2.27.2, 2.28.0, 2.29.0, 2.29.1, 2.29.2, 2.3.0, 2.3.1, 2.30.0, 2.31.0, 2.32.0, 2.33.0, 2.33.1, 2.34.0, 2.34.1, 2.35.0, 2.36.0, 2.37.0, 2.38.0, 2.39.0, 2.4.0, 2.40.0, 2.41.0, 2.5.0, 2.5.1, 2.6.0, 2.7.0, 2.8.0, 2.9.0, 2.9.1. Changing this forces a new Resource Deployment Script to be created. + // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` } @@ -291,6 +311,7 @@ type StorageAccountParameters struct { KeySecretRef v1.SecretKeySelector `json:"keySecretRef" tf:"-"` // Specifies the storage account name. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } diff --git a/apis/resources/v1beta1/zz_resourcedeploymentscriptazurepowershell_types.go b/apis/resources/v1beta1/zz_resourcedeploymentscriptazurepowershell_types.go index 49cd0e55f..b39474ee1 100755 --- a/apis/resources/v1beta1/zz_resourcedeploymentscriptazurepowershell_types.go +++ b/apis/resources/v1beta1/zz_resourcedeploymentscriptazurepowershell_types.go @@ -28,6 +28,7 @@ type ResourceDeploymentScriptAzurePowerShellContainerObservation struct { type ResourceDeploymentScriptAzurePowerShellContainerParameters struct { // Container group name, if not specified then the name will get auto-generated. For more information, please refer to the Container Configuration documentation. + // +kubebuilder:validation:Optional ContainerGroupName *string `json:"containerGroupName,omitempty" tf:"container_group_name,omitempty"` } @@ -52,6 +53,7 @@ type ResourceDeploymentScriptAzurePowerShellEnvironmentVariableObservation struc type ResourceDeploymentScriptAzurePowerShellEnvironmentVariableParameters struct { // Specifies the name of the environment variable. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the value of the secure environment variable. @@ -59,6 +61,7 @@ type ResourceDeploymentScriptAzurePowerShellEnvironmentVariableParameters struct SecureValueSecretRef *v1.SecretKeySelector `json:"secureValueSecretRef,omitempty" tf:"-"` // Specifies the value of the environment variable. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -94,6 +97,7 @@ type ResourceDeploymentScriptAzurePowerShellIdentityParameters struct { IdentityIdsSelector *v1.Selector `json:"identityIdsSelector,omitempty" tf:"-"` // Type of the managed identity. The only possible value is UserAssigned. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -211,30 +215,39 @@ type ResourceDeploymentScriptAzurePowerShellObservation struct { type ResourceDeploymentScriptAzurePowerShellParameters struct { // Specifies the cleanup preference when the script execution gets in a terminal state. Possible values are Always, OnExpiration, OnSuccess. Defaults to Always. Changing this forces a new Resource Deployment Script to be created. + // +kubebuilder:validation:Optional CleanupPreference *string `json:"cleanupPreference,omitempty" tf:"cleanup_preference,omitempty"` // Command line arguments to pass to the script. Changing this forces a new Resource Deployment Script to be created. + // +kubebuilder:validation:Optional CommandLine *string `json:"commandLine,omitempty" tf:"command_line,omitempty"` // A container block as defined below. Changing this forces a new Resource Deployment Script to be created. + // +kubebuilder:validation:Optional Container []ResourceDeploymentScriptAzurePowerShellContainerParameters `json:"container,omitempty" tf:"container,omitempty"` // An environment_variable block as defined below. Changing this forces a new Resource Deployment Script to be created. + // +kubebuilder:validation:Optional EnvironmentVariable []ResourceDeploymentScriptAzurePowerShellEnvironmentVariableParameters `json:"environmentVariable,omitempty" tf:"environment_variable,omitempty"` // Gets or sets how the deployment script should be forced to execute even if the script resource has not changed. Can be current time stamp or a GUID. Changing this forces a new Resource Deployment Script to be created. + // +kubebuilder:validation:Optional ForceUpdateTag *string `json:"forceUpdateTag,omitempty" tf:"force_update_tag,omitempty"` // An identity block as defined below. Changing this forces a new Resource Deployment Script to be created. + // +kubebuilder:validation:Optional Identity []ResourceDeploymentScriptAzurePowerShellIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // Specifies the Azure Region where the Resource Deployment Script should exist. Changing this forces a new Resource Deployment Script to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the name which should be used for this Resource Deployment Script. The name length must be from 1 to 260 characters. The name can only contain alphanumeric, underscore, parentheses, hyphen and period, and it cannot end with a period. Changing this forces a new Resource Deployment Script to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Uri for the script. This is the entry point for the external script. Changing this forces a new Resource Deployment Script to be created. + // +kubebuilder:validation:Optional PrimaryScriptURI *string `json:"primaryScriptUri,omitempty" tf:"primary_script_uri,omitempty"` // Specifies the name of the Resource Group where the Resource Deployment Script should exist. Changing this forces a new Resource Deployment Script to be created. @@ -251,24 +264,31 @@ type ResourceDeploymentScriptAzurePowerShellParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Interval for which the service retains the script resource after it reaches a terminal state. Resource will be deleted when this duration expires. The time duration should be between 1 hour and 26 hours (inclusive) and should be specified in ISO 8601 format. Changing this forces a new Resource Deployment Script to be created. + // +kubebuilder:validation:Optional RetentionInterval *string `json:"retentionInterval,omitempty" tf:"retention_interval,omitempty"` // Script body. Changing this forces a new Resource Deployment Script to be created. + // +kubebuilder:validation:Optional ScriptContent *string `json:"scriptContent,omitempty" tf:"script_content,omitempty"` // A storage_account block as defined below. Changing this forces a new Resource Deployment Script to be created. + // +kubebuilder:validation:Optional StorageAccount []ResourceDeploymentScriptAzurePowerShellStorageAccountParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` // Supporting files for the external script. Changing this forces a new Resource Deployment Script to be created. + // +kubebuilder:validation:Optional SupportingScriptUris []*string `json:"supportingScriptUris,omitempty" tf:"supporting_script_uris,omitempty"` // A mapping of tags which should be assigned to the Resource Deployment Script. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Maximum allowed script execution time specified in ISO 8601 format. Needs to be greater than 0 and smaller than 1 day. Defaults to P1D. Changing this forces a new Resource Deployment Script to be created. + // +kubebuilder:validation:Optional Timeout *string `json:"timeout,omitempty" tf:"timeout,omitempty"` // Azure PowerShell module version to be used. The supported versions are 2.7, 2.8, 3.0, 3.1, 3.2, 3.3, 3.4, 3.5, 3.6, 3.7, 3.8, 4.1, 4.2, 4.3, 4.4, 4.5, 4.6, 4.7, 4.8, 5.0, 5.1, 5.2, 5.3, 5.4, 5.5, 5.6, 5.7, 5.8, 5.9, 6.0, 6.1, 6.2, 6.3, 6.4, 6.5, 6.6, 7.0, 7.1, 7.2, 7.3, 7.4, 7.5, 8.0, 8.1, 8.2, 8.3, 9.0. Changing this forces a new Resource Deployment Script to be created. + // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` } @@ -291,6 +311,7 @@ type ResourceDeploymentScriptAzurePowerShellStorageAccountParameters struct { KeySecretRef v1.SecretKeySelector `json:"keySecretRef" tf:"-"` // Specifies the storage account name. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } diff --git a/apis/resources/v1beta1/zz_resourcegrouptemplatedeployment_types.go b/apis/resources/v1beta1/zz_resourcegrouptemplatedeployment_types.go index ddefe5fcc..7a0a93b72 100755 --- a/apis/resources/v1beta1/zz_resourcegrouptemplatedeployment_types.go +++ b/apis/resources/v1beta1/zz_resourcegrouptemplatedeployment_types.go @@ -67,12 +67,15 @@ type ResourceGroupTemplateDeploymentObservation struct { type ResourceGroupTemplateDeploymentParameters struct { // The Debug Level which should be used for this Resource Group Template Deployment. Possible values are none, requestContent, responseContent and requestContent, responseContent. + // +kubebuilder:validation:Optional DebugLevel *string `json:"debugLevel,omitempty" tf:"debug_level,omitempty"` // The Deployment Mode for this Resource Group Template Deployment. Possible values are Complete (where resources in the Resource Group not specified in the ARM Template will be destroyed) and Incremental (where resources are additive only). + // +kubebuilder:validation:Optional DeploymentMode *string `json:"deploymentMode,omitempty" tf:"deployment_mode,omitempty"` // The contents of the ARM Template parameters file - containing a JSON list of parameters. + // +kubebuilder:validation:Optional ParametersContent *string `json:"parametersContent,omitempty" tf:"parameters_content,omitempty"` // The name of the Resource Group where the Resource Group Template Deployment should exist. Changing this forces a new Resource Group Template Deployment to be created. @@ -89,12 +92,15 @@ type ResourceGroupTemplateDeploymentParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the Resource Group Template Deployment. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The contents of the ARM Template which should be deployed into this Resource Group. Cannot be specified with template_spec_version_id. + // +kubebuilder:validation:Optional TemplateContent *string `json:"templateContent,omitempty" tf:"template_content,omitempty"` // The ID of the Template Spec Version to deploy. Cannot be specified with template_content. + // +kubebuilder:validation:Optional TemplateSpecVersionID *string `json:"templateSpecVersionId,omitempty" tf:"template_spec_version_id,omitempty"` } diff --git a/apis/resources/v1beta1/zz_subscriptiontemplatedeployment_types.go b/apis/resources/v1beta1/zz_subscriptiontemplatedeployment_types.go index 97841bc32..039906fd5 100755 --- a/apis/resources/v1beta1/zz_subscriptiontemplatedeployment_types.go +++ b/apis/resources/v1beta1/zz_subscriptiontemplatedeployment_types.go @@ -64,21 +64,27 @@ type SubscriptionTemplateDeploymentObservation struct { type SubscriptionTemplateDeploymentParameters struct { // The Debug Level which should be used for this Subscription Template Deployment. Possible values are none, requestContent, responseContent and requestContent, responseContent. + // +kubebuilder:validation:Optional DebugLevel *string `json:"debugLevel,omitempty" tf:"debug_level,omitempty"` // The Azure Region where the Subscription Template Deployment should exist. Changing this forces a new Subscription Template Deployment to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The contents of the ARM Template parameters file - containing a JSON list of parameters. + // +kubebuilder:validation:Optional ParametersContent *string `json:"parametersContent,omitempty" tf:"parameters_content,omitempty"` // A mapping of tags which should be assigned to the Subscription Template Deployment. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The contents of the ARM Template which should be deployed into this Subscription. + // +kubebuilder:validation:Optional TemplateContent *string `json:"templateContent,omitempty" tf:"template_content,omitempty"` // The ID of the Template Spec Version to deploy into the Subscription. Cannot be specified with template_content. + // +kubebuilder:validation:Optional TemplateSpecVersionID *string `json:"templateSpecVersionId,omitempty" tf:"template_spec_version_id,omitempty"` } diff --git a/apis/search/v1beta1/zz_service_types.go b/apis/search/v1beta1/zz_service_types.go index b1526f85e..a5948f3e6 100755 --- a/apis/search/v1beta1/zz_service_types.go +++ b/apis/search/v1beta1/zz_service_types.go @@ -34,6 +34,7 @@ type IdentityObservation struct { type IdentityParameters struct { // Specifies the type of Managed Service Identity that should be configured on this Search Service. The only possible value is SystemAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -142,33 +143,43 @@ type ServiceObservation struct { type ServiceParameters struct { // Specifies a list of inbound IPv4 or CIDRs that are allowed to access the Search Service. If the incoming IP request is from an IP address which is not included in the allowed_ips it will be blocked by the Search Services firewall. + // +kubebuilder:validation:Optional AllowedIps []*string `json:"allowedIps,omitempty" tf:"allowed_ips,omitempty"` // Specifies the response that the Search Service should return for requests that fail authentication. Possible values include http401WithBearerChallenge or http403. + // +kubebuilder:validation:Optional AuthenticationFailureMode *string `json:"authenticationFailureMode,omitempty" tf:"authentication_failure_mode,omitempty"` // Specifies whether the Search Service should enforce that non-customer resources are encrypted. Defaults to false. + // +kubebuilder:validation:Optional CustomerManagedKeyEnforcementEnabled *bool `json:"customerManagedKeyEnforcementEnabled,omitempty" tf:"customer_managed_key_enforcement_enabled,omitempty"` // Specifies the Hosting Mode, which allows for High Density partitions (that allow for up to 1000 indexes) should be supported. Possible values are highDensity or default. Defaults to default. Changing this forces a new Search Service to be created. + // +kubebuilder:validation:Optional HostingMode *string `json:"hostingMode,omitempty" tf:"hosting_mode,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // Specifies whether the Search Service allows authenticating using API Keys? Defaults to false. + // +kubebuilder:validation:Optional LocalAuthenticationEnabled *bool `json:"localAuthenticationEnabled,omitempty" tf:"local_authentication_enabled,omitempty"` // The Azure Region where the Search Service should exist. Changing this forces a new Search Service to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the number of partitions which should be created. This field cannot be set when using a free or basic sku (see the Microsoft documentation). Possible values include 1, 2, 3, 4, 6, or 12. Defaults to 1. + // +kubebuilder:validation:Optional PartitionCount *float64 `json:"partitionCount,omitempty" tf:"partition_count,omitempty"` // Specifies whether Public Network Access is allowed for this resource. Defaults to true. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // Specifies the number of Replica's which should be created for this Search Service. This field cannot be set when using a free sku (see the Microsoft documentation). + // +kubebuilder:validation:Optional ReplicaCount *float64 `json:"replicaCount,omitempty" tf:"replica_count,omitempty"` // The name of the Resource Group where the Search Service should exist. Changing this forces a new Search Service to be created. @@ -185,9 +196,11 @@ type ServiceParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The SKU which should be used for this Search Service. Possible values include basic, free, standard, standard2, standard3, storage_optimized_l1 and storage_optimized_l2. Changing this forces a new Search Service to be created. + // +kubebuilder:validation:Optional Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // Specifies a mapping of tags which should be assigned to this Search Service. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/search/v1beta1/zz_sharedprivatelinkservice_types.go b/apis/search/v1beta1/zz_sharedprivatelinkservice_types.go index 66b486285..c171f2dea 100755 --- a/apis/search/v1beta1/zz_sharedprivatelinkservice_types.go +++ b/apis/search/v1beta1/zz_sharedprivatelinkservice_types.go @@ -46,6 +46,7 @@ type SharedPrivateLinkServiceObservation struct { type SharedPrivateLinkServiceParameters struct { // Specify the request message for requesting approval of the Shared Private Link Enabled Remote Resource. + // +kubebuilder:validation:Optional RequestMessage *string `json:"requestMessage,omitempty" tf:"request_message,omitempty"` // Specify the id of the Azure Search Service. Changing this forces a new resource to be created. @@ -63,6 +64,7 @@ type SharedPrivateLinkServiceParameters struct { SearchServiceIDSelector *v1.Selector `json:"searchServiceIdSelector,omitempty" tf:"-"` // Specify the sub resource name which the Azure Search Private Endpoint is able to connect to. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SubresourceName *string `json:"subresourceName,omitempty" tf:"subresource_name,omitempty"` // Specify the ID of the Shared Private Link Enabled Remote Resource which this Azure Search Private Endpoint should be connected to. Changing this forces a new resource to be created. diff --git a/apis/security/v1beta1/zz_advancedthreatprotection_types.go b/apis/security/v1beta1/zz_advancedthreatprotection_types.go index c8e233245..a63ca80b6 100755 --- a/apis/security/v1beta1/zz_advancedthreatprotection_types.go +++ b/apis/security/v1beta1/zz_advancedthreatprotection_types.go @@ -37,9 +37,11 @@ type AdvancedThreatProtectionObservation struct { type AdvancedThreatProtectionParameters struct { // Should Advanced Threat Protection be enabled on this resource? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The ID of the Azure Resource which to enable Advanced Threat Protection on. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional TargetResourceID *string `json:"targetResourceId,omitempty" tf:"target_resource_id,omitempty"` } diff --git a/apis/security/v1beta1/zz_iotsecuritydevicegroup_types.go b/apis/security/v1beta1/zz_iotsecuritydevicegroup_types.go index a8bf900a9..14cc5f51c 100755 --- a/apis/security/v1beta1/zz_iotsecuritydevicegroup_types.go +++ b/apis/security/v1beta1/zz_iotsecuritydevicegroup_types.go @@ -46,15 +46,19 @@ type AllowRuleObservation struct { type AllowRuleParameters struct { // Specifies which IP is not allowed to be connected to in current device group for inbound connection. + // +kubebuilder:validation:Optional ConnectionFromIpsNotAllowed []*string `json:"connectionFromIpsNotAllowed,omitempty" tf:"connection_from_ips_not_allowed,omitempty"` // Specifies which IP is not allowed to be connected to in current device group for outbound connection. + // +kubebuilder:validation:Optional ConnectionToIpsNotAllowed []*string `json:"connectionToIpsNotAllowed,omitempty" tf:"connection_to_ips_not_allowed,omitempty"` // Specifies which local user is not allowed to login in current device group. + // +kubebuilder:validation:Optional LocalUsersNotAllowed []*string `json:"localUsersNotAllowed,omitempty" tf:"local_users_not_allowed,omitempty"` // Specifies which process is not allowed to be executed in current device group. + // +kubebuilder:validation:Optional ProcessesNotAllowed []*string `json:"processesNotAllowed,omitempty" tf:"processes_not_allowed,omitempty"` } @@ -91,6 +95,7 @@ type IOTSecurityDeviceGroupObservation struct { type IOTSecurityDeviceGroupParameters struct { // an allow_rule blocks as defined below. + // +kubebuilder:validation:Optional AllowRule []AllowRuleParameters `json:"allowRule,omitempty" tf:"allow_rule,omitempty"` // The ID of the IoT Hub which to link the Security Device Group to. Changing this forces a new resource to be created. @@ -108,9 +113,11 @@ type IOTSecurityDeviceGroupParameters struct { IOTHubIDSelector *v1.Selector `json:"iothubIdSelector,omitempty" tf:"-"` // Specifies the name of the Device Security Group. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // One or more range_rule blocks as defined below. + // +kubebuilder:validation:Optional RangeRule []RangeRuleParameters `json:"rangeRule,omitempty" tf:"range_rule,omitempty"` } @@ -147,15 +154,19 @@ type RangeRuleObservation struct { type RangeRuleParameters struct { // Specifies the time range. represented in ISO 8601 duration format. + // +kubebuilder:validation:Optional Duration *string `json:"duration,omitempty" tf:"duration,omitempty"` // The maximum threshold in the given time window. + // +kubebuilder:validation:Optional Max *float64 `json:"max,omitempty" tf:"max,omitempty"` // The minimum threshold in the given time window. + // +kubebuilder:validation:Optional Min *float64 `json:"min,omitempty" tf:"min,omitempty"` // The type of supported rule type. Possible Values are ActiveConnectionsNotInAllowedRange, AmqpC2DMessagesNotInAllowedRange, MqttC2DMessagesNotInAllowedRange, HttpC2DMessagesNotInAllowedRange, AmqpC2DRejectedMessagesNotInAllowedRange, MqttC2DRejectedMessagesNotInAllowedRange, HttpC2DRejectedMessagesNotInAllowedRange, AmqpD2CMessagesNotInAllowedRange, MqttD2CMessagesNotInAllowedRange, HttpD2CMessagesNotInAllowedRange, DirectMethodInvokesNotInAllowedRange, FailedLocalLoginsNotInAllowedRange, FileUploadsNotInAllowedRange, QueuePurgesNotInAllowedRange, TwinUpdatesNotInAllowedRange and UnauthorizedOperationsNotInAllowedRange. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/security/v1beta1/zz_iotsecuritysolution_types.go b/apis/security/v1beta1/zz_iotsecuritysolution_types.go index 59e70b38a..4bc72ea6a 100755 --- a/apis/security/v1beta1/zz_iotsecuritysolution_types.go +++ b/apis/security/v1beta1/zz_iotsecuritysolution_types.go @@ -34,9 +34,11 @@ type AdditionalWorkspaceObservation struct { type AdditionalWorkspaceParameters struct { // A list of data types which sent to workspace. Possible values are Alerts and RawEvents. + // +kubebuilder:validation:Optional DataTypes []*string `json:"dataTypes,omitempty" tf:"data_types,omitempty"` // The resource ID of the Log Analytics Workspace. + // +kubebuilder:validation:Optional WorkspaceID *string `json:"workspaceId,omitempty" tf:"workspace_id,omitempty"` } @@ -136,18 +138,23 @@ type IOTSecuritySolutionObservation struct { type IOTSecuritySolutionParameters struct { // A additional_workspace block as defined below. + // +kubebuilder:validation:Optional AdditionalWorkspace []AdditionalWorkspaceParameters `json:"additionalWorkspace,omitempty" tf:"additional_workspace,omitempty"` // A list of disabled data sources for the Iot Security Solution. Possible value is TwinData. + // +kubebuilder:validation:Optional DisabledDataSources []*string `json:"disabledDataSources,omitempty" tf:"disabled_data_sources,omitempty"` // Specifies the Display Name for this Iot Security Solution. + // +kubebuilder:validation:Optional DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` // Is the Iot Security Solution enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // A list of data which is to exported to analytic workspace. Valid values include RawEvents. + // +kubebuilder:validation:Optional EventsToExport []*string `json:"eventsToExport,omitempty" tf:"events_to_export,omitempty"` // Specifies the IoT Hub resource IDs to which this Iot Security Solution is applied. @@ -165,24 +172,31 @@ type IOTSecuritySolutionParameters struct { IOTHubIdsSelector *v1.Selector `json:"iothubIdsSelector,omitempty" tf:"-"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the Log Analytics Workspace ID to which the security data will be sent. + // +kubebuilder:validation:Optional LogAnalyticsWorkspaceID *string `json:"logAnalyticsWorkspaceId,omitempty" tf:"log_analytics_workspace_id,omitempty"` // Should IP addressed be unmasked in the log? Defaults to false. + // +kubebuilder:validation:Optional LogUnmaskedIpsEnabled *bool `json:"logUnmaskedIpsEnabled,omitempty" tf:"log_unmasked_ips_enabled,omitempty"` // Specifies the name of the Iot Security Solution. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // An Azure Resource Graph query used to set the resources monitored. + // +kubebuilder:validation:Optional QueryForResources *string `json:"queryForResources,omitempty" tf:"query_for_resources,omitempty"` // A list of subscription Ids on which the user defined resources query should be executed. + // +kubebuilder:validation:Optional QuerySubscriptionIds []*string `json:"querySubscriptionIds,omitempty" tf:"query_subscription_ids,omitempty"` // A recommendations_enabled block of options to enable or disable as defined below. + // +kubebuilder:validation:Optional RecommendationsEnabled []RecommendationsEnabledParameters `json:"recommendationsEnabled,omitempty" tf:"recommendations_enabled,omitempty"` // Specifies the name of the resource group in which to create the Iot Security Solution. Changing this forces a new resource to be created. @@ -199,6 +213,7 @@ type IOTSecuritySolutionParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -307,51 +322,67 @@ type RecommendationsEnabledObservation struct { type RecommendationsEnabledParameters struct { // Is Principal Authentication enabled for the ACR repository? Defaults to true. + // +kubebuilder:validation:Optional AcrAuthentication *bool `json:"acrAuthentication,omitempty" tf:"acr_authentication,omitempty"` // Is Agent send underutilized messages enabled? Defaults to true. + // +kubebuilder:validation:Optional AgentSendUnutilizedMsg *bool `json:"agentSendUnutilizedMsg,omitempty" tf:"agent_send_unutilized_msg,omitempty"` // Is Security related system configuration issues identified? Defaults to true. + // +kubebuilder:validation:Optional Baseline *bool `json:"baseline,omitempty" tf:"baseline,omitempty"` // Is IoT Edge Hub memory optimized? Defaults to true. + // +kubebuilder:validation:Optional EdgeHubMemOptimize *bool `json:"edgeHubMemOptimize,omitempty" tf:"edge_hub_mem_optimize,omitempty"` // Is logging configured for IoT Edge module? Defaults to true. + // +kubebuilder:validation:Optional EdgeLoggingOption *bool `json:"edgeLoggingOption,omitempty" tf:"edge_logging_option,omitempty"` // Is Default IP filter policy denied? Defaults to true. + // +kubebuilder:validation:Optional IPFilterDenyAll *bool `json:"ipFilterDenyAll,omitempty" tf:"ip_filter_deny_all,omitempty"` // Is IP filter rule source allowable IP range too large? Defaults to true. + // +kubebuilder:validation:Optional IPFilterPermissiveRule *bool `json:"ipFilterPermissiveRule,omitempty" tf:"ip_filter_permissive_rule,omitempty"` // Is inconsistent module settings enabled for SecurityGroup? Defaults to true. + // +kubebuilder:validation:Optional InconsistentModuleSettings *bool `json:"inconsistentModuleSettings,omitempty" tf:"inconsistent_module_settings,omitempty"` // is Azure IoT Security agent installed? Defaults to true. + // +kubebuilder:validation:Optional InstallAgent *bool `json:"installAgent,omitempty" tf:"install_agent,omitempty"` // Is any ports open on the device? Defaults to true. + // +kubebuilder:validation:Optional OpenPorts *bool `json:"openPorts,omitempty" tf:"open_ports,omitempty"` // Does firewall policy exist which allow necessary communication to/from the device? Defaults to true. + // +kubebuilder:validation:Optional PermissiveFirewallPolicy *bool `json:"permissiveFirewallPolicy,omitempty" tf:"permissive_firewall_policy,omitempty"` // Is only necessary addresses or ports are permitted in? Defaults to true. + // +kubebuilder:validation:Optional PermissiveInputFirewallRules *bool `json:"permissiveInputFirewallRules,omitempty" tf:"permissive_input_firewall_rules,omitempty"` // Is only necessary addresses or ports are permitted out? Defaults to true. + // +kubebuilder:validation:Optional PermissiveOutputFirewallRules *bool `json:"permissiveOutputFirewallRules,omitempty" tf:"permissive_output_firewall_rules,omitempty"` // Is high level permissions are needed for the module? Defaults to true. + // +kubebuilder:validation:Optional PrivilegedDockerOptions *bool `json:"privilegedDockerOptions,omitempty" tf:"privileged_docker_options,omitempty"` // Is any credentials shared among devices? Defaults to true. + // +kubebuilder:validation:Optional SharedCredentials *bool `json:"sharedCredentials,omitempty" tf:"shared_credentials,omitempty"` // Does TLS cipher suite need to be updated? Defaults to true. + // +kubebuilder:validation:Optional VulnerableTLSCipherSuite *bool `json:"vulnerableTlsCipherSuite,omitempty" tf:"vulnerable_tls_cipher_suite,omitempty"` } diff --git a/apis/security/v1beta1/zz_securitycenterassessment_types.go b/apis/security/v1beta1/zz_securitycenterassessment_types.go index 61f2e6760..474dbbada 100755 --- a/apis/security/v1beta1/zz_securitycenterassessment_types.go +++ b/apis/security/v1beta1/zz_securitycenterassessment_types.go @@ -43,6 +43,7 @@ type SecurityCenterAssessmentObservation struct { type SecurityCenterAssessmentParameters struct { // A map of additional data to associate with the assessment. + // +kubebuilder:validation:Optional AdditionalData map[string]*string `json:"additionalData,omitempty" tf:"additional_data,omitempty"` // The ID of the security Assessment policy to apply to this resource. Changing this forces a new security Assessment to be created. @@ -60,6 +61,7 @@ type SecurityCenterAssessmentParameters struct { AssessmentPolicyIDSelector *v1.Selector `json:"assessmentPolicyIdSelector,omitempty" tf:"-"` // A status block as defined below. + // +kubebuilder:validation:Optional Status []StatusParameters `json:"status,omitempty" tf:"status,omitempty"` // The ID of the target resource. Changing this forces a new security Assessment to be created. @@ -104,12 +106,15 @@ type StatusObservation struct { type StatusParameters struct { // Specifies the cause of the assessment status. + // +kubebuilder:validation:Optional Cause *string `json:"cause,omitempty" tf:"cause,omitempty"` // Specifies the programmatic code of the assessment status. Possible values are Healthy, Unhealthy and NotApplicable. + // +kubebuilder:validation:Optional Code *string `json:"code,omitempty" tf:"code,omitempty"` // Specifies the human readable description of the assessment status. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` } diff --git a/apis/security/v1beta1/zz_securitycenterassessmentpolicy_types.go b/apis/security/v1beta1/zz_securitycenterassessmentpolicy_types.go index 3e8887486..1c37724a5 100755 --- a/apis/security/v1beta1/zz_securitycenterassessmentpolicy_types.go +++ b/apis/security/v1beta1/zz_securitycenterassessmentpolicy_types.go @@ -76,27 +76,35 @@ type SecurityCenterAssessmentPolicyObservation struct { type SecurityCenterAssessmentPolicyParameters struct { // A list of the categories of resource that is at risk when the Security Center Assessment is unhealthy. Possible values are Unknown, Compute, Data, IdentityAndAccess, IoT and Networking. + // +kubebuilder:validation:Optional Categories []*string `json:"categories,omitempty" tf:"categories,omitempty"` // The description of the Security Center Assessment. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The user-friendly display name of the Security Center Assessment. + // +kubebuilder:validation:Optional DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` // The implementation effort which is used to remediate the Security Center Assessment. Possible values are Low, Moderate and High. + // +kubebuilder:validation:Optional ImplementationEffort *string `json:"implementationEffort,omitempty" tf:"implementation_effort,omitempty"` // The description which is used to mitigate the security issue. + // +kubebuilder:validation:Optional RemediationDescription *string `json:"remediationDescription,omitempty" tf:"remediation_description,omitempty"` // The severity level of the Security Center Assessment. Possible values are Low, Medium and High. Defaults to Medium. + // +kubebuilder:validation:Optional Severity *string `json:"severity,omitempty" tf:"severity,omitempty"` // A list of the threat impacts for the Security Center Assessment. Possible values are AccountBreach, DataExfiltration, DataSpillage, DenialOfService, ElevationOfPrivilege, MaliciousInsider, MissingCoverage and ThreatResistance. + // +kubebuilder:validation:Optional Threats []*string `json:"threats,omitempty" tf:"threats,omitempty"` // The user impact of the Security Center Assessment. Possible values are Low, Moderate and High. + // +kubebuilder:validation:Optional UserImpact *string `json:"userImpact,omitempty" tf:"user_impact,omitempty"` } diff --git a/apis/security/v1beta1/zz_securitycenterautoprovisioning_types.go b/apis/security/v1beta1/zz_securitycenterautoprovisioning_types.go index d124432d9..183f137bb 100755 --- a/apis/security/v1beta1/zz_securitycenterautoprovisioning_types.go +++ b/apis/security/v1beta1/zz_securitycenterautoprovisioning_types.go @@ -31,6 +31,7 @@ type SecurityCenterAutoProvisioningObservation struct { type SecurityCenterAutoProvisioningParameters struct { // Should the security agent be automatically provisioned on Virtual Machines in this subscription? Possible values are On (to install the security agent automatically, if it's missing) or Off (to not install the security agent automatically). + // +kubebuilder:validation:Optional AutoProvision *string `json:"autoProvision,omitempty" tf:"auto_provision,omitempty"` } diff --git a/apis/security/v1beta1/zz_securitycentercontact_types.go b/apis/security/v1beta1/zz_securitycentercontact_types.go index e1854be70..260dc7184 100755 --- a/apis/security/v1beta1/zz_securitycentercontact_types.go +++ b/apis/security/v1beta1/zz_securitycentercontact_types.go @@ -55,18 +55,23 @@ type SecurityCenterContactObservation struct { type SecurityCenterContactParameters struct { // Whether to send security alerts notifications to the security contact. + // +kubebuilder:validation:Optional AlertNotifications *bool `json:"alertNotifications,omitempty" tf:"alert_notifications,omitempty"` // Whether to send security alerts notifications to subscription admins. + // +kubebuilder:validation:Optional AlertsToAdmins *bool `json:"alertsToAdmins,omitempty" tf:"alerts_to_admins,omitempty"` // The email of the Security Center Contact. + // +kubebuilder:validation:Optional Email *string `json:"email,omitempty" tf:"email,omitempty"` // The name of the Security Center Contact. Defaults to default1. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The phone number of the Security Center Contact. + // +kubebuilder:validation:Optional Phone *string `json:"phone,omitempty" tf:"phone,omitempty"` } diff --git a/apis/security/v1beta1/zz_securitycenterservervulnerabilityassessment_types.go b/apis/security/v1beta1/zz_securitycenterservervulnerabilityassessment_types.go index 553f1575b..78368ee73 100755 --- a/apis/security/v1beta1/zz_securitycenterservervulnerabilityassessment_types.go +++ b/apis/security/v1beta1/zz_securitycenterservervulnerabilityassessment_types.go @@ -34,6 +34,7 @@ type SecurityCenterServerVulnerabilityAssessmentObservation struct { type SecurityCenterServerVulnerabilityAssessmentParameters struct { // The ID of the Azure ARC server to be monitored by vulnerability assessment. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional HybridMachineID *string `json:"hybridMachineId,omitempty" tf:"hybrid_machine_id,omitempty"` // The ID of the virtual machine to be monitored by vulnerability assessment. Changing this forces a new resource to be created. diff --git a/apis/security/v1beta1/zz_securitycentersetting_types.go b/apis/security/v1beta1/zz_securitycentersetting_types.go index ae8db856d..d06141c27 100755 --- a/apis/security/v1beta1/zz_securitycentersetting_types.go +++ b/apis/security/v1beta1/zz_securitycentersetting_types.go @@ -37,9 +37,11 @@ type SecurityCenterSettingObservation struct { type SecurityCenterSettingParameters struct { // Boolean flag to enable/disable data access. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The setting to manage. Possible values are MCAS , WDATP and SENTINEL. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SettingName *string `json:"settingName,omitempty" tf:"setting_name,omitempty"` } diff --git a/apis/security/v1beta1/zz_securitycentersubscriptionpricing_types.go b/apis/security/v1beta1/zz_securitycentersubscriptionpricing_types.go index 51a978baa..4a5526517 100755 --- a/apis/security/v1beta1/zz_securitycentersubscriptionpricing_types.go +++ b/apis/security/v1beta1/zz_securitycentersubscriptionpricing_types.go @@ -43,12 +43,15 @@ type SecurityCenterSubscriptionPricingObservation struct { type SecurityCenterSubscriptionPricingParameters struct { // The resource type this setting affects. Possible values are AppServices, ContainerRegistry, KeyVaults, KubernetesService, SqlServers, SqlServerVirtualMachines, StorageAccounts, VirtualMachines, Arm, Dns, OpenSourceRelationalDatabases, Containers, CosmosDbs and CloudPosture. Defaults to VirtualMachines + // +kubebuilder:validation:Optional ResourceType *string `json:"resourceType,omitempty" tf:"resource_type,omitempty"` // Resource type pricing subplan. Contact your MSFT representative for possible values. + // +kubebuilder:validation:Optional Subplan *string `json:"subplan,omitempty" tf:"subplan,omitempty"` // The pricing tier to use. Possible values are Free and Standard. + // +kubebuilder:validation:Optional Tier *string `json:"tier,omitempty" tf:"tier,omitempty"` } diff --git a/apis/security/v1beta1/zz_securitycenterworkspace_types.go b/apis/security/v1beta1/zz_securitycenterworkspace_types.go index 906973872..3c4be8046 100755 --- a/apis/security/v1beta1/zz_securitycenterworkspace_types.go +++ b/apis/security/v1beta1/zz_securitycenterworkspace_types.go @@ -34,6 +34,7 @@ type SecurityCenterWorkspaceObservation struct { type SecurityCenterWorkspaceParameters struct { // The scope of VMs to send their security data to the desired workspace, unless overridden by a setting with more specific scope. + // +kubebuilder:validation:Optional Scope *string `json:"scope,omitempty" tf:"scope,omitempty"` // The ID of the Log Analytics Workspace to save the data in. diff --git a/apis/securityinsights/v1beta1/zz_sentinelalertrulefusion_types.go b/apis/securityinsights/v1beta1/zz_sentinelalertrulefusion_types.go index f95a47894..22b0660ca 100755 --- a/apis/securityinsights/v1beta1/zz_sentinelalertrulefusion_types.go +++ b/apis/securityinsights/v1beta1/zz_sentinelalertrulefusion_types.go @@ -52,9 +52,11 @@ type SentinelAlertRuleFusionObservation struct { type SentinelAlertRuleFusionParameters struct { // The GUID of the alert rule template which is used for this Sentinel Fusion Alert Rule. Changing this forces a new Sentinel Fusion Alert Rule to be created. + // +kubebuilder:validation:Optional AlertRuleTemplateGUID *string `json:"alertRuleTemplateGuid,omitempty" tf:"alert_rule_template_guid,omitempty"` // Should this Sentinel Fusion Alert Rule be enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The ID of the Log Analytics Workspace this Sentinel Fusion Alert Rule belongs to. Changing this forces a new Sentinel Fusion Alert Rule to be created. @@ -72,9 +74,11 @@ type SentinelAlertRuleFusionParameters struct { LogAnalyticsWorkspaceIDSelector *v1.Selector `json:"logAnalyticsWorkspaceIdSelector,omitempty" tf:"-"` // The name which should be used for this Sentinel Fusion Alert Rule. Changing this forces a new Sentinel Fusion Alert Rule to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // One or more source blocks as defined below. + // +kubebuilder:validation:Optional Source []SourceParameters `json:"source,omitempty" tf:"source,omitempty"` } @@ -105,12 +109,15 @@ type SourceObservation struct { type SourceParameters struct { // Whether this source signal is enabled or disabled in Fusion detection? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The name of the Fusion source signal. Refer to Fusion alert rule template for supported values. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // One or more sub_type blocks as defined below. + // +kubebuilder:validation:Optional SubType []SubTypeParameters `json:"subType,omitempty" tf:"sub_type,omitempty"` } @@ -141,12 +148,15 @@ type SubTypeObservation struct { type SubTypeParameters struct { // Whether this source subtype under source signal is enabled or disabled in Fusion detection. Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The Name of the source subtype under a given source signal in Fusion detection. Refer to Fusion alert rule template for supported values. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A list of severities that are enabled for this source subtype consumed in Fusion detection. Possible values for each element are High, Medium, Low, Informational. + // +kubebuilder:validation:Optional SeveritiesAllowed []*string `json:"severitiesAllowed,omitempty" tf:"severities_allowed,omitempty"` } diff --git a/apis/securityinsights/v1beta1/zz_sentinelalertrulemachinelearningbehavioranalytics_types.go b/apis/securityinsights/v1beta1/zz_sentinelalertrulemachinelearningbehavioranalytics_types.go index 1c4ac15aa..225d2c27c 100755 --- a/apis/securityinsights/v1beta1/zz_sentinelalertrulemachinelearningbehavioranalytics_types.go +++ b/apis/securityinsights/v1beta1/zz_sentinelalertrulemachinelearningbehavioranalytics_types.go @@ -46,9 +46,11 @@ type SentinelAlertRuleMachineLearningBehaviorAnalyticsObservation struct { type SentinelAlertRuleMachineLearningBehaviorAnalyticsParameters struct { // The GUID of the alert rule template which is used for this Sentinel Machine Learning Behavior Analytics Alert Rule. Changing this forces a new Sentinel Machine Learning Behavior Analytics Alert Rule to be created. + // +kubebuilder:validation:Optional AlertRuleTemplateGUID *string `json:"alertRuleTemplateGuid,omitempty" tf:"alert_rule_template_guid,omitempty"` // Should this Sentinel Machine Learning Behavior Analytics Alert Rule be enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The ID of the Log Analytics Workspace this SentinelMachine Learning Behavior Analytics Alert Rule belongs to. Changing this forces a new Sentinel Machine Learning Behavior Analytics Alert Rule to be created. @@ -66,6 +68,7 @@ type SentinelAlertRuleMachineLearningBehaviorAnalyticsParameters struct { LogAnalyticsWorkspaceIDSelector *v1.Selector `json:"logAnalyticsWorkspaceIdSelector,omitempty" tf:"-"` // The name which should be used for this SentinelMachine Learning Behavior Analytics Alert Rule. Changing this forces a new Sentinel Machine Learning Behavior Analytics Alert Rule to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } diff --git a/apis/securityinsights/v1beta1/zz_sentinelalertrulemssecurityincident_types.go b/apis/securityinsights/v1beta1/zz_sentinelalertrulemssecurityincident_types.go index 551089b22..af7839199 100755 --- a/apis/securityinsights/v1beta1/zz_sentinelalertrulemssecurityincident_types.go +++ b/apis/securityinsights/v1beta1/zz_sentinelalertrulemssecurityincident_types.go @@ -76,21 +76,27 @@ type SentinelAlertRuleMSSecurityIncidentObservation struct { type SentinelAlertRuleMSSecurityIncidentParameters struct { // The GUID of the alert rule template which is used to create this Sentinel Scheduled Alert Rule. Changing this forces a new Sentinel MS Security Incident Alert Rule to be created. + // +kubebuilder:validation:Optional AlertRuleTemplateGUID *string `json:"alertRuleTemplateGuid,omitempty" tf:"alert_rule_template_guid,omitempty"` // The description of this Sentinel MS Security Incident Alert Rule. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The friendly name of this Sentinel MS Security Incident Alert Rule. + // +kubebuilder:validation:Optional DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` // Only create incidents when the alert display name doesn't contain text from this list. + // +kubebuilder:validation:Optional DisplayNameExcludeFilter []*string `json:"displayNameExcludeFilter,omitempty" tf:"display_name_exclude_filter,omitempty"` // Only create incidents when the alert display name contain text from this list, leave empty to apply no filter. + // +kubebuilder:validation:Optional DisplayNameFilter []*string `json:"displayNameFilter,omitempty" tf:"display_name_filter,omitempty"` // Should this Sentinel MS Security Incident Alert Rule be enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The ID of the Log Analytics Workspace this Sentinel MS Security Incident Alert Rule belongs to. Changing this forces a new Sentinel MS Security Incident Alert Rule to be created. @@ -108,9 +114,11 @@ type SentinelAlertRuleMSSecurityIncidentParameters struct { LogAnalyticsWorkspaceIDSelector *v1.Selector `json:"logAnalyticsWorkspaceIdSelector,omitempty" tf:"-"` // The Microsoft Security Service from where the alert will be generated. Possible values are Azure Active Directory Identity Protection, Azure Advanced Threat Protection, Azure Security Center, Azure Security Center for IoT, Microsoft Cloud App Security, Microsoft Defender Advanced Threat Protection and Office 365 Advanced Threat Protection. + // +kubebuilder:validation:Optional ProductFilter *string `json:"productFilter,omitempty" tf:"product_filter,omitempty"` // Only create incidents from alerts when alert severity level is contained in this list. Possible values are High, Medium, Low and Informational. + // +kubebuilder:validation:Optional SeverityFilter []*string `json:"severityFilter,omitempty" tf:"severity_filter,omitempty"` } diff --git a/apis/securityinsights/v1beta1/zz_sentinelautomationrule_types.go b/apis/securityinsights/v1beta1/zz_sentinelautomationrule_types.go index 1600dfac9..87e29e459 100755 --- a/apis/securityinsights/v1beta1/zz_sentinelautomationrule_types.go +++ b/apis/securityinsights/v1beta1/zz_sentinelautomationrule_types.go @@ -64,24 +64,31 @@ type ActionIncidentObservation struct { type ActionIncidentParameters struct { // The classification of the incident, when closing it. Possible values are: BenignPositive_SuspiciousButExpected, FalsePositive_InaccurateData, FalsePositive_IncorrectAlertLogic, TruePositive_SuspiciousActivity and Undetermined. + // +kubebuilder:validation:Optional Classification *string `json:"classification,omitempty" tf:"classification,omitempty"` // The comment why the incident is to be closed. + // +kubebuilder:validation:Optional ClassificationComment *string `json:"classificationComment,omitempty" tf:"classification_comment,omitempty"` // Specifies a list of labels to add to the incident. + // +kubebuilder:validation:Optional Labels []*string `json:"labels,omitempty" tf:"labels,omitempty"` // The execution order of this action. + // +kubebuilder:validation:Optional Order *float64 `json:"order,omitempty" tf:"order,omitempty"` // The object ID of the entity this incident is assigned to. + // +kubebuilder:validation:Optional OwnerID *string `json:"ownerId,omitempty" tf:"owner_id,omitempty"` // The severity to add to the incident. Possible values are High, Informational, Low and Medium. + // +kubebuilder:validation:Optional Severity *string `json:"severity,omitempty" tf:"severity,omitempty"` // The status to set to the incident. Possible values are: Active, Closed, New. + // +kubebuilder:validation:Optional Status *string `json:"status,omitempty" tf:"status,omitempty"` } @@ -112,12 +119,15 @@ type ActionPlaybookObservation struct { type ActionPlaybookParameters struct { // The ID of the Logic App that defines the playbook's logic. + // +kubebuilder:validation:Optional LogicAppID *string `json:"logicAppId,omitempty" tf:"logic_app_id,omitempty"` // The execution order of this action. + // +kubebuilder:validation:Optional Order *float64 `json:"order,omitempty" tf:"order,omitempty"` // The ID of the Tenant that owns the playbook. + // +kubebuilder:validation:Optional TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` } @@ -148,12 +158,15 @@ type ConditionObservation struct { type ConditionParameters struct { // The operator to use for evaluate the condition. Possible values include: Equals, NotEquals, Contains, NotContains, StartsWith, NotStartsWith, EndsWith, NotEndsWith. + // +kubebuilder:validation:Optional Operator *string `json:"operator,omitempty" tf:"operator,omitempty"` // The property to use for evaluate the condition. Possible values include: AccountAadTenantId, AccountAadUserId, AccountNTDomain, AccountName, AccountObjectGuid, AccountPUID, AccountSid, AccountUPNSuffix, AzureResourceResourceId, AzureResourceSubscriptionId, CloudApplicationAppId, CloudApplicationAppName, DNSDomainName, FileDirectory, FileHashValue, FileName, HostAzureID, HostNTDomain, HostName, HostNetBiosName, HostOSVersion, IPAddress, IncidentDescription, IncidentProviderName, IncidentRelatedAnalyticRuleIds, IncidentSeverity, IncidentStatus, IncidentTactics, IncidentTitle, IoTDeviceId, IoTDeviceModel, IoTDeviceName, IoTDeviceOperatingSystem, IoTDeviceType, IoTDeviceVendor, MailMessageDeliveryAction, MailMessageDeliveryLocation, MailMessageP1Sender, MailMessageP2Sender, MailMessageRecipient, MailMessageSenderIP, MailMessageSubject, MailboxDisplayName, MailboxPrimaryAddress, MailboxUPN, MalwareCategory, MalwareName, ProcessCommandLine, ProcessId, RegistryKey, RegistryValueData, Url. + // +kubebuilder:validation:Optional Property *string `json:"property,omitempty" tf:"property,omitempty"` // Specifies a list of values to use for evaluate the condition. + // +kubebuilder:validation:Optional Values []*string `json:"values,omitempty" tf:"values,omitempty"` } @@ -238,24 +251,31 @@ type SentinelAutomationRuleObservation struct { type SentinelAutomationRuleParameters struct { // One or more action_incident blocks as defined below. + // +kubebuilder:validation:Optional ActionIncident []ActionIncidentParameters `json:"actionIncident,omitempty" tf:"action_incident,omitempty"` // One or more action_playbook blocks as defined below. + // +kubebuilder:validation:Optional ActionPlaybook []ActionPlaybookParameters `json:"actionPlaybook,omitempty" tf:"action_playbook,omitempty"` // One or more condition blocks as defined below. + // +kubebuilder:validation:Optional Condition []ConditionParameters `json:"condition,omitempty" tf:"condition,omitempty"` // A JSON array of one or more condition JSON objects as is defined here. + // +kubebuilder:validation:Optional ConditionJSON *string `json:"conditionJson,omitempty" tf:"condition_json,omitempty"` // The display name which should be used for this Sentinel Automation Rule. + // +kubebuilder:validation:Optional DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` // Whether this Sentinel Automation Rule is enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The time in RFC3339 format of kind UTC that determines when this Automation Rule should expire and be disabled. + // +kubebuilder:validation:Optional Expiration *string `json:"expiration,omitempty" tf:"expiration,omitempty"` // The ID of the Log Analytics Workspace where this Sentinel applies to. Changing this forces a new Sentinel Automation Rule to be created. @@ -273,15 +293,19 @@ type SentinelAutomationRuleParameters struct { LogAnalyticsWorkspaceIDSelector *v1.Selector `json:"logAnalyticsWorkspaceIdSelector,omitempty" tf:"-"` // The UUID which should be used for this Sentinel Automation Rule. Changing this forces a new Sentinel Automation Rule to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The order of this Sentinel Automation Rule. Possible values varies between 1 and 1000. + // +kubebuilder:validation:Optional Order *float64 `json:"order,omitempty" tf:"order,omitempty"` // Specifies what triggers this automation rule. Possible values are Alerts and Incidents. Defaults to Incidents. + // +kubebuilder:validation:Optional TriggersOn *string `json:"triggersOn,omitempty" tf:"triggers_on,omitempty"` // Specifies when will this automation rule be triggered. Possible values are Created and Updated. Defaults to Created. + // +kubebuilder:validation:Optional TriggersWhen *string `json:"triggersWhen,omitempty" tf:"triggers_when,omitempty"` } diff --git a/apis/securityinsights/v1beta1/zz_sentineldataconnectoriot_types.go b/apis/securityinsights/v1beta1/zz_sentineldataconnectoriot_types.go index c3834d595..e4c05dd17 100755 --- a/apis/securityinsights/v1beta1/zz_sentineldataconnectoriot_types.go +++ b/apis/securityinsights/v1beta1/zz_sentineldataconnectoriot_types.go @@ -48,6 +48,7 @@ type SentinelDataConnectorIOTParameters struct { LogAnalyticsWorkspaceIDSelector *v1.Selector `json:"logAnalyticsWorkspaceIdSelector,omitempty" tf:"-"` // The ID of the subscription that this Iot Data Connector connects to. Changing this forces a new Iot Data Connector to be created. + // +kubebuilder:validation:Optional SubscriptionID *string `json:"subscriptionId,omitempty" tf:"subscription_id,omitempty"` } diff --git a/apis/securityinsights/v1beta1/zz_sentinelloganalyticsworkspaceonboarding_types.go b/apis/securityinsights/v1beta1/zz_sentinelloganalyticsworkspaceonboarding_types.go index 9fd1dd861..9fb301987 100755 --- a/apis/securityinsights/v1beta1/zz_sentinelloganalyticsworkspaceonboarding_types.go +++ b/apis/securityinsights/v1beta1/zz_sentinelloganalyticsworkspaceonboarding_types.go @@ -43,6 +43,7 @@ type SentinelLogAnalyticsWorkspaceOnboardingObservation struct { type SentinelLogAnalyticsWorkspaceOnboardingParameters struct { // Specifies if the Workspace is using Customer managed key. Defaults to false. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional CustomerManagedKeyEnabled *bool `json:"customerManagedKeyEnabled,omitempty" tf:"customer_managed_key_enabled,omitempty"` // Specifies the name of the Resource Group where the Security Insights Sentinel Onboarding States should exist. Changing this forces the Log Analytics Workspace off the board and onboard again. @@ -59,6 +60,7 @@ type SentinelLogAnalyticsWorkspaceOnboardingParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The ID of the Security Insights Sentinel Onboarding States. + // +kubebuilder:validation:Optional WorkspaceID *string `json:"workspaceId,omitempty" tf:"workspace_id,omitempty"` // Specifies the Workspace Name. Changing this forces the Log Analytics Workspace off the board and onboard again. Changing this forces a new resource to be created. diff --git a/apis/securityinsights/v1beta1/zz_sentinelwatchlist_types.go b/apis/securityinsights/v1beta1/zz_sentinelwatchlist_types.go index 4bbb06aef..169ba6049 100755 --- a/apis/securityinsights/v1beta1/zz_sentinelwatchlist_types.go +++ b/apis/securityinsights/v1beta1/zz_sentinelwatchlist_types.go @@ -58,18 +58,23 @@ type SentinelWatchlistObservation struct { type SentinelWatchlistParameters struct { // The default duration in ISO8601 duration form of this Sentinel Watchlist. Changing this forces a new Sentinel Watchlist to be created. + // +kubebuilder:validation:Optional DefaultDuration *string `json:"defaultDuration,omitempty" tf:"default_duration,omitempty"` // The description of this Sentinel Watchlist. Changing this forces a new Sentinel Watchlist to be created. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The display name of this Sentinel Watchlist. Changing this forces a new Sentinel Watchlist to be created. + // +kubebuilder:validation:Optional DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` // The key used to optimize query performance when using Watchlist for joins with other data. Changing this forces a new Sentinel Watchlist to be created. + // +kubebuilder:validation:Optional ItemSearchKey *string `json:"itemSearchKey,omitempty" tf:"item_search_key,omitempty"` // Specifies a list of labels related to this Sentinel Watchlist. Changing this forces a new Sentinel Watchlist to be created. + // +kubebuilder:validation:Optional Labels []*string `json:"labels,omitempty" tf:"labels,omitempty"` // The ID of the Log Analytics Workspace where this Sentinel Watchlist resides in. Changing this forces a new Sentinel Watchlist to be created. diff --git a/apis/servicebus/v1beta1/zz_namespaceauthorizationrule_types.go b/apis/servicebus/v1beta1/zz_namespaceauthorizationrule_types.go index bc2731938..2ebea4505 100755 --- a/apis/servicebus/v1beta1/zz_namespaceauthorizationrule_types.go +++ b/apis/servicebus/v1beta1/zz_namespaceauthorizationrule_types.go @@ -46,9 +46,11 @@ type NamespaceAuthorizationRuleObservation struct { type NamespaceAuthorizationRuleParameters struct { // Grants listen access to this this Authorization Rule. Defaults to false. + // +kubebuilder:validation:Optional Listen *bool `json:"listen,omitempty" tf:"listen,omitempty"` // Grants manage access to this this Authorization Rule. When this property is true - both listen and send must be too. Defaults to false. + // +kubebuilder:validation:Optional Manage *bool `json:"manage,omitempty" tf:"manage,omitempty"` // Specifies the ID of the ServiceBus Namespace. Changing this forces a new resource to be created. @@ -66,6 +68,7 @@ type NamespaceAuthorizationRuleParameters struct { NamespaceIDSelector *v1.Selector `json:"namespaceIdSelector,omitempty" tf:"-"` // Grants send access to this this Authorization Rule. Defaults to false. + // +kubebuilder:validation:Optional Send *bool `json:"send,omitempty" tf:"send,omitempty"` } diff --git a/apis/servicebus/v1beta1/zz_namespacenetworkruleset_types.go b/apis/servicebus/v1beta1/zz_namespacenetworkruleset_types.go index d3cfe8df3..7dfee398e 100755 --- a/apis/servicebus/v1beta1/zz_namespacenetworkruleset_types.go +++ b/apis/servicebus/v1beta1/zz_namespacenetworkruleset_types.go @@ -58,9 +58,11 @@ type NamespaceNetworkRuleSetObservation struct { type NamespaceNetworkRuleSetParameters struct { // Specifies the default action for the ServiceBus Namespace Network Rule Set. Possible values are Allow and Deny. Defaults to Deny. + // +kubebuilder:validation:Optional DefaultAction *string `json:"defaultAction,omitempty" tf:"default_action,omitempty"` // One or more IP Addresses, or CIDR Blocks which should be able to access the ServiceBus Namespace. + // +kubebuilder:validation:Optional IPRules []*string `json:"ipRules,omitempty" tf:"ip_rules,omitempty"` // Specifies the ServiceBus Namespace ID to which to attach the ServiceBus Namespace Network Rule Set. Changing this forces a new resource to be created. @@ -78,12 +80,15 @@ type NamespaceNetworkRuleSetParameters struct { NamespaceIDSelector *v1.Selector `json:"namespaceIdSelector,omitempty" tf:"-"` // One or more network_rules blocks as defined below. + // +kubebuilder:validation:Optional NetworkRules []NetworkRulesParameters `json:"networkRules,omitempty" tf:"network_rules,omitempty"` // Whether to allow traffic over public network. Possible values are true and false. Defaults to true. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // If True, then Azure Services that are known and trusted for this resource type are allowed to bypass firewall configuration. See Trusted Microsoft Services + // +kubebuilder:validation:Optional TrustedServicesAllowed *bool `json:"trustedServicesAllowed,omitempty" tf:"trusted_services_allowed,omitempty"` } @@ -105,6 +110,7 @@ type NetworkRulesObservation struct { type NetworkRulesParameters struct { // Should the ServiceBus Namespace Network Rule Set ignore missing Virtual Network Service Endpoint option in the Subnet? Defaults to false. + // +kubebuilder:validation:Optional IgnoreMissingVnetServiceEndpoint *bool `json:"ignoreMissingVnetServiceEndpoint,omitempty" tf:"ignore_missing_vnet_service_endpoint,omitempty"` // The Subnet ID which should be able to access this ServiceBus Namespace. diff --git a/apis/servicebus/v1beta1/zz_queue_types.go b/apis/servicebus/v1beta1/zz_queue_types.go index c478ce05a..9d81d3e16 100755 --- a/apis/servicebus/v1beta1/zz_queue_types.go +++ b/apis/servicebus/v1beta1/zz_queue_types.go @@ -124,42 +124,55 @@ type QueueObservation struct { type QueueParameters struct { // The ISO 8601 timespan duration of the idle interval after which the Queue is automatically deleted, minimum of 5 minutes. + // +kubebuilder:validation:Optional AutoDeleteOnIdle *string `json:"autoDeleteOnIdle,omitempty" tf:"auto_delete_on_idle,omitempty"` // Boolean flag which controls whether the Queue has dead letter support when a message expires. Defaults to false. + // +kubebuilder:validation:Optional DeadLetteringOnMessageExpiration *bool `json:"deadLetteringOnMessageExpiration,omitempty" tf:"dead_lettering_on_message_expiration,omitempty"` // The ISO 8601 timespan duration of the TTL of messages sent to this queue. This is the default value used when TTL is not set on message itself. + // +kubebuilder:validation:Optional DefaultMessageTTL *string `json:"defaultMessageTtl,omitempty" tf:"default_message_ttl,omitempty"` // The ISO 8601 timespan duration during which duplicates can be detected. Defaults to 10 minutes (PT10M). + // +kubebuilder:validation:Optional DuplicateDetectionHistoryTimeWindow *string `json:"duplicateDetectionHistoryTimeWindow,omitempty" tf:"duplicate_detection_history_time_window,omitempty"` // Boolean flag which controls whether server-side batched operations are enabled. Defaults to true. + // +kubebuilder:validation:Optional EnableBatchedOperations *bool `json:"enableBatchedOperations,omitempty" tf:"enable_batched_operations,omitempty"` // Boolean flag which controls whether Express Entities are enabled. An express queue holds a message in memory temporarily before writing it to persistent storage. Defaults to false for Basic and Standard. For Premium, it MUST be set to false. + // +kubebuilder:validation:Optional EnableExpress *bool `json:"enableExpress,omitempty" tf:"enable_express,omitempty"` // Boolean flag which controls whether to enable the queue to be partitioned across multiple message brokers. Changing this forces a new resource to be created. Defaults to false for Basic and Standard. + // +kubebuilder:validation:Optional EnablePartitioning *bool `json:"enablePartitioning,omitempty" tf:"enable_partitioning,omitempty"` // The name of a Queue or Topic to automatically forward dead lettered messages to. + // +kubebuilder:validation:Optional ForwardDeadLetteredMessagesTo *string `json:"forwardDeadLetteredMessagesTo,omitempty" tf:"forward_dead_lettered_messages_to,omitempty"` // The name of a Queue or Topic to automatically forward messages to. Please see the documentation for more information. + // +kubebuilder:validation:Optional ForwardTo *string `json:"forwardTo,omitempty" tf:"forward_to,omitempty"` // The ISO 8601 timespan duration of a peek-lock; that is, the amount of time that the message is locked for other receivers. Maximum value is 5 minutes. Defaults to 1 minute (PT1M). + // +kubebuilder:validation:Optional LockDuration *string `json:"lockDuration,omitempty" tf:"lock_duration,omitempty"` // Integer value which controls when a message is automatically dead lettered. Defaults to 10. + // +kubebuilder:validation:Optional MaxDeliveryCount *float64 `json:"maxDeliveryCount,omitempty" tf:"max_delivery_count,omitempty"` // Integer value which controls the maximum size of a message allowed on the queue for Premium SKU. For supported values see the "Large messages support" section of this document. + // +kubebuilder:validation:Optional MaxMessageSizeInKilobytes *float64 `json:"maxMessageSizeInKilobytes,omitempty" tf:"max_message_size_in_kilobytes,omitempty"` // Integer value which controls the size of memory allocated for the queue. For supported values see the "Queue or topic size" section of Service Bus Quotas. Defaults to 1024. + // +kubebuilder:validation:Optional MaxSizeInMegabytes *float64 `json:"maxSizeInMegabytes,omitempty" tf:"max_size_in_megabytes,omitempty"` // The ID of the ServiceBus Namespace to create this queue in. Changing this forces a new resource to be created. @@ -177,12 +190,15 @@ type QueueParameters struct { NamespaceIDSelector *v1.Selector `json:"namespaceIdSelector,omitempty" tf:"-"` // Boolean flag which controls whether the Queue requires duplicate detection. Changing this forces a new resource to be created. Defaults to false. + // +kubebuilder:validation:Optional RequiresDuplicateDetection *bool `json:"requiresDuplicateDetection,omitempty" tf:"requires_duplicate_detection,omitempty"` // Boolean flag which controls whether the Queue requires sessions. This will allow ordered handling of unbounded sequences of related messages. With sessions enabled a queue can guarantee first-in-first-out delivery of messages. Changing this forces a new resource to be created. Defaults to false. + // +kubebuilder:validation:Optional RequiresSession *bool `json:"requiresSession,omitempty" tf:"requires_session,omitempty"` // The status of the Queue. Possible values are Active, Creating, Deleting, Disabled, ReceiveDisabled, Renaming, SendDisabled, Unknown. Note that Restoring is not accepted. Defaults to Active. + // +kubebuilder:validation:Optional Status *string `json:"status,omitempty" tf:"status,omitempty"` } diff --git a/apis/servicebus/v1beta1/zz_queueauthorizationrule_types.go b/apis/servicebus/v1beta1/zz_queueauthorizationrule_types.go index bacb14297..2efb055fd 100755 --- a/apis/servicebus/v1beta1/zz_queueauthorizationrule_types.go +++ b/apis/servicebus/v1beta1/zz_queueauthorizationrule_types.go @@ -46,9 +46,11 @@ type QueueAuthorizationRuleObservation struct { type QueueAuthorizationRuleParameters struct { // Does this Authorization Rule have Listen permissions to the ServiceBus Queue? Defaults to false. + // +kubebuilder:validation:Optional Listen *bool `json:"listen,omitempty" tf:"listen,omitempty"` // Does this Authorization Rule have Manage permissions to the ServiceBus Queue? When this property is true - both listen and send must be too. Defaults to false. + // +kubebuilder:validation:Optional Manage *bool `json:"manage,omitempty" tf:"manage,omitempty"` // Specifies the ID of the ServiceBus Queue. Changing this forces a new resource to be created. @@ -66,6 +68,7 @@ type QueueAuthorizationRuleParameters struct { QueueIDSelector *v1.Selector `json:"queueIdSelector,omitempty" tf:"-"` // Does this Authorization Rule have Send permissions to the ServiceBus Queue? Defaults to false. + // +kubebuilder:validation:Optional Send *bool `json:"send,omitempty" tf:"send,omitempty"` } diff --git a/apis/servicebus/v1beta1/zz_servicebusnamespace_types.go b/apis/servicebus/v1beta1/zz_servicebusnamespace_types.go index c56c6141d..c1b7b8741 100755 --- a/apis/servicebus/v1beta1/zz_servicebusnamespace_types.go +++ b/apis/servicebus/v1beta1/zz_servicebusnamespace_types.go @@ -40,12 +40,15 @@ type CustomerManagedKeyObservation struct { type CustomerManagedKeyParameters struct { // The ID of the User Assigned Identity that has access to the key. + // +kubebuilder:validation:Optional IdentityID *string `json:"identityId,omitempty" tf:"identity_id,omitempty"` // Used to specify whether enable Infrastructure Encryption (Double Encryption). Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional InfrastructureEncryptionEnabled *bool `json:"infrastructureEncryptionEnabled,omitempty" tf:"infrastructure_encryption_enabled,omitempty"` // The ID of the Key Vault Key which should be used to Encrypt the data in this ServiceBus Namespace. + // +kubebuilder:validation:Optional KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"` } @@ -76,9 +79,11 @@ type IdentityObservation struct { type IdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this ServiceBus namespace. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this ServiceBus Namespace. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -161,24 +166,31 @@ type ServiceBusNamespaceObservation struct { type ServiceBusNamespaceParameters struct { // Specifies the capacity. When sku is Premium, capacity can be 1, 2, 4, 8 or 16. When sku is Basic or Standard, capacity can be 0 only. + // +kubebuilder:validation:Optional Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` // An customer_managed_key block as defined below. + // +kubebuilder:validation:Optional CustomerManagedKey []CustomerManagedKeyParameters `json:"customerManagedKey,omitempty" tf:"customer_managed_key,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // Whether or not SAS authentication is enabled for the Service Bus namespace. Defaults to true. + // +kubebuilder:validation:Optional LocalAuthEnabled *bool `json:"localAuthEnabled,omitempty" tf:"local_auth_enabled,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The minimum supported TLS version for this Service Bus Namespace. Valid values are: 1.0, 1.1 and 1.2. The current default minimum TLS version is 1.2. + // +kubebuilder:validation:Optional MinimumTLSVersion *string `json:"minimumTlsVersion,omitempty" tf:"minimum_tls_version,omitempty"` // Is public network access enabled for the Service Bus Namespace? Defaults to true. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // The name of the resource group in which to Changing this forces a new resource to be created. @@ -196,12 +208,15 @@ type ServiceBusNamespaceParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Defines which tier to use. Options are Basic, Standard or Premium. Please note that setting this field to Premium will force the creation of a new resource. + // +kubebuilder:validation:Optional Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Whether or not this resource is zone redundant. sku needs to be Premium. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ZoneRedundant *bool `json:"zoneRedundant,omitempty" tf:"zone_redundant,omitempty"` } diff --git a/apis/servicebus/v1beta1/zz_subscription_types.go b/apis/servicebus/v1beta1/zz_subscription_types.go index d2aa6c748..24390fc3e 100755 --- a/apis/servicebus/v1beta1/zz_subscription_types.go +++ b/apis/servicebus/v1beta1/zz_subscription_types.go @@ -37,9 +37,11 @@ type ClientScopedSubscriptionObservation struct { type ClientScopedSubscriptionParameters struct { // Specifies the Client ID of the application that created the client-scoped subscription. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // Whether the client scoped subscription is shareable. Defaults to true Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional IsClientScopedSubscriptionShareable *bool `json:"isClientScopedSubscriptionShareable,omitempty" tf:"is_client_scoped_subscription_shareable,omitempty"` } @@ -136,42 +138,55 @@ type SubscriptionObservation struct { type SubscriptionParameters struct { // The idle interval after which the topic is automatically deleted as an ISO 8601 duration. The minimum duration is 5 minutes or PT5M. + // +kubebuilder:validation:Optional AutoDeleteOnIdle *string `json:"autoDeleteOnIdle,omitempty" tf:"auto_delete_on_idle,omitempty"` // A client_scoped_subscription block as defined below. + // +kubebuilder:validation:Optional ClientScopedSubscription []ClientScopedSubscriptionParameters `json:"clientScopedSubscription,omitempty" tf:"client_scoped_subscription,omitempty"` // whether the subscription is scoped to a client id. Defaults to False. + // +kubebuilder:validation:Optional ClientScopedSubscriptionEnabled *bool `json:"clientScopedSubscriptionEnabled,omitempty" tf:"client_scoped_subscription_enabled,omitempty"` // Boolean flag which controls whether the Subscription has dead letter support on filter evaluation exceptions. Defaults to true. + // +kubebuilder:validation:Optional DeadLetteringOnFilterEvaluationError *bool `json:"deadLetteringOnFilterEvaluationError,omitempty" tf:"dead_lettering_on_filter_evaluation_error,omitempty"` // Boolean flag which controls whether the Subscription has dead letter support when a message expires. + // +kubebuilder:validation:Optional DeadLetteringOnMessageExpiration *bool `json:"deadLetteringOnMessageExpiration,omitempty" tf:"dead_lettering_on_message_expiration,omitempty"` // The Default message timespan to live as an ISO 8601 duration. This is the duration after which the message expires, starting from when the message is sent to Service Bus. This is the default value used when TimeToLive is not set on a message itself. + // +kubebuilder:validation:Optional DefaultMessageTTL *string `json:"defaultMessageTtl,omitempty" tf:"default_message_ttl,omitempty"` // Boolean flag which controls whether the Subscription supports batched operations. + // +kubebuilder:validation:Optional EnableBatchedOperations *bool `json:"enableBatchedOperations,omitempty" tf:"enable_batched_operations,omitempty"` // The name of a Queue or Topic to automatically forward Dead Letter messages to. + // +kubebuilder:validation:Optional ForwardDeadLetteredMessagesTo *string `json:"forwardDeadLetteredMessagesTo,omitempty" tf:"forward_dead_lettered_messages_to,omitempty"` // The name of a Queue or Topic to automatically forward messages to. + // +kubebuilder:validation:Optional ForwardTo *string `json:"forwardTo,omitempty" tf:"forward_to,omitempty"` // The lock duration for the subscription as an ISO 8601 duration. The default value is 1 minute or P0DT0H1M0S . The maximum value is 5 minutes or P0DT0H5M0S . + // +kubebuilder:validation:Optional LockDuration *string `json:"lockDuration,omitempty" tf:"lock_duration,omitempty"` // The maximum number of deliveries. + // +kubebuilder:validation:Optional MaxDeliveryCount *float64 `json:"maxDeliveryCount,omitempty" tf:"max_delivery_count,omitempty"` // Boolean flag which controls whether this Subscription supports the concept of a session. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional RequiresSession *bool `json:"requiresSession,omitempty" tf:"requires_session,omitempty"` // The status of the Subscription. Possible values are Active,ReceiveDisabled, or Disabled. Defaults to Active. + // +kubebuilder:validation:Optional Status *string `json:"status,omitempty" tf:"status,omitempty"` // The ID of the ServiceBus Topic to create this Subscription in. Changing this forces a new resource to be created. diff --git a/apis/servicebus/v1beta1/zz_subscriptionrule_types.go b/apis/servicebus/v1beta1/zz_subscriptionrule_types.go index 2a27504c0..db3069b44 100755 --- a/apis/servicebus/v1beta1/zz_subscriptionrule_types.go +++ b/apis/servicebus/v1beta1/zz_subscriptionrule_types.go @@ -76,30 +76,39 @@ type CorrelationFilterObservation struct { type CorrelationFilterParameters struct { // Content type of the message. + // +kubebuilder:validation:Optional ContentType *string `json:"contentType,omitempty" tf:"content_type,omitempty"` // Identifier of the correlation. + // +kubebuilder:validation:Optional CorrelationID *string `json:"correlationId,omitempty" tf:"correlation_id,omitempty"` // Application specific label. + // +kubebuilder:validation:Optional Label *string `json:"label,omitempty" tf:"label,omitempty"` // Identifier of the message. + // +kubebuilder:validation:Optional MessageID *string `json:"messageId,omitempty" tf:"message_id,omitempty"` // A list of user defined properties to be included in the filter. Specified as a map of name/value pairs. + // +kubebuilder:validation:Optional Properties map[string]*string `json:"properties,omitempty" tf:"properties,omitempty"` // Address of the queue to reply to. + // +kubebuilder:validation:Optional ReplyTo *string `json:"replyTo,omitempty" tf:"reply_to,omitempty"` // Session identifier to reply to. + // +kubebuilder:validation:Optional ReplyToSessionID *string `json:"replyToSessionId,omitempty" tf:"reply_to_session_id,omitempty"` // Session identifier. + // +kubebuilder:validation:Optional SessionID *string `json:"sessionId,omitempty" tf:"session_id,omitempty"` // Address to send to. + // +kubebuilder:validation:Optional To *string `json:"to,omitempty" tf:"to,omitempty"` } @@ -144,15 +153,19 @@ type SubscriptionRuleObservation struct { type SubscriptionRuleParameters struct { // Represents set of actions written in SQL language-based syntax that is performed against a BrokeredMessage. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // A correlation_filter block as documented below to be evaluated against a BrokeredMessage. Required when filter_type is set to CorrelationFilter. + // +kubebuilder:validation:Optional CorrelationFilter []CorrelationFilterParameters `json:"correlationFilter,omitempty" tf:"correlation_filter,omitempty"` // Type of filter to be applied to a BrokeredMessage. Possible values are SqlFilter and CorrelationFilter. + // +kubebuilder:validation:Optional FilterType *string `json:"filterType,omitempty" tf:"filter_type,omitempty"` // Represents a filter written in SQL language-based syntax that to be evaluated against a BrokeredMessage. Required when filter_type is set to SqlFilter. + // +kubebuilder:validation:Optional SQLFilter *string `json:"sqlFilter,omitempty" tf:"sql_filter,omitempty"` // The ID of the ServiceBus Subscription in which this Rule should be created. Changing this forces a new resource to be created. diff --git a/apis/servicebus/v1beta1/zz_topic_types.go b/apis/servicebus/v1beta1/zz_topic_types.go index 19d1602ef..d6379cd7e 100755 --- a/apis/servicebus/v1beta1/zz_topic_types.go +++ b/apis/servicebus/v1beta1/zz_topic_types.go @@ -103,29 +103,37 @@ type TopicObservation struct { type TopicParameters struct { // The ISO 8601 timespan duration of the idle interval after which the Topic is automatically deleted, minimum of 5 minutes. + // +kubebuilder:validation:Optional AutoDeleteOnIdle *string `json:"autoDeleteOnIdle,omitempty" tf:"auto_delete_on_idle,omitempty"` // The ISO 8601 timespan duration of TTL of messages sent to this topic if no TTL value is set on the message itself. + // +kubebuilder:validation:Optional DefaultMessageTTL *string `json:"defaultMessageTtl,omitempty" tf:"default_message_ttl,omitempty"` // The ISO 8601 timespan duration during which duplicates can be detected. Defaults to 10 minutes. (PT10M) + // +kubebuilder:validation:Optional DuplicateDetectionHistoryTimeWindow *string `json:"duplicateDetectionHistoryTimeWindow,omitempty" tf:"duplicate_detection_history_time_window,omitempty"` // Boolean flag which controls if server-side batched operations are enabled. + // +kubebuilder:validation:Optional EnableBatchedOperations *bool `json:"enableBatchedOperations,omitempty" tf:"enable_batched_operations,omitempty"` // Boolean flag which controls whether Express Entities are enabled. An express topic holds a message in memory temporarily before writing it to persistent storage. + // +kubebuilder:validation:Optional EnableExpress *bool `json:"enableExpress,omitempty" tf:"enable_express,omitempty"` // Boolean flag which controls whether to enable Changing this forces a new resource to be created. // the topic to be partitioned across multiple message brokers. Defaults to false. // Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional EnablePartitioning *bool `json:"enablePartitioning,omitempty" tf:"enable_partitioning,omitempty"` // Integer value which controls the maximum size of a message allowed on the topic for Premium SKU. For supported values see the "Large messages support" section of this document. + // +kubebuilder:validation:Optional MaxMessageSizeInKilobytes *float64 `json:"maxMessageSizeInKilobytes,omitempty" tf:"max_message_size_in_kilobytes,omitempty"` // Integer value which controls the size of memory allocated for the topic. For supported values see the "Queue/topic size" section of this document. + // +kubebuilder:validation:Optional MaxSizeInMegabytes *float64 `json:"maxSizeInMegabytes,omitempty" tf:"max_size_in_megabytes,omitempty"` // The ID of the ServiceBus Namespace to create Changing this forces a new resource to be created. @@ -146,12 +154,15 @@ type TopicParameters struct { // Boolean flag which controls whether Changing this forces a new resource to be created. // the Topic requires duplicate detection. Defaults to false. Changing this forces // a new resource to be created. + // +kubebuilder:validation:Optional RequiresDuplicateDetection *bool `json:"requiresDuplicateDetection,omitempty" tf:"requires_duplicate_detection,omitempty"` // The Status of the Service Bus Topic. Acceptable values are Active or Disabled. Defaults to Active. + // +kubebuilder:validation:Optional Status *string `json:"status,omitempty" tf:"status,omitempty"` // Boolean flag which controls whether the Topic supports ordering. + // +kubebuilder:validation:Optional SupportOrdering *bool `json:"supportOrdering,omitempty" tf:"support_ordering,omitempty"` } diff --git a/apis/servicebus/v1beta1/zz_topicauthorizationrule_types.go b/apis/servicebus/v1beta1/zz_topicauthorizationrule_types.go index 4ee4d6d0a..a7058c5ad 100755 --- a/apis/servicebus/v1beta1/zz_topicauthorizationrule_types.go +++ b/apis/servicebus/v1beta1/zz_topicauthorizationrule_types.go @@ -46,12 +46,15 @@ type TopicAuthorizationRuleObservation struct { type TopicAuthorizationRuleParameters struct { // Grants listen access to this this Authorization Rule. Defaults to false. + // +kubebuilder:validation:Optional Listen *bool `json:"listen,omitempty" tf:"listen,omitempty"` // Grants manage access to this this Authorization Rule. When this property is true - both listen and send must be too. Defaults to false. + // +kubebuilder:validation:Optional Manage *bool `json:"manage,omitempty" tf:"manage,omitempty"` // Grants send access to this this Authorization Rule. Defaults to false. + // +kubebuilder:validation:Optional Send *bool `json:"send,omitempty" tf:"send,omitempty"` // Specifies the ID of the ServiceBus Topic. Changing this forces a new resource to be created. diff --git a/apis/servicefabric/v1beta1/zz_cluster_types.go b/apis/servicefabric/v1beta1/zz_cluster_types.go index f3d0f6dd9..c8097b7df 100755 --- a/apis/servicefabric/v1beta1/zz_cluster_types.go +++ b/apis/servicefabric/v1beta1/zz_cluster_types.go @@ -34,9 +34,11 @@ type ApplicationPortsObservation struct { type ApplicationPortsParameters struct { // The end of the Ephemeral Port Range on this Node Type. + // +kubebuilder:validation:Optional EndPort *float64 `json:"endPort,omitempty" tf:"end_port,omitempty"` // The start of the Ephemeral Port Range on this Node Type. + // +kubebuilder:validation:Optional StartPort *float64 `json:"startPort,omitempty" tf:"start_port,omitempty"` } @@ -67,12 +69,15 @@ type AzureActiveDirectoryObservation struct { type AzureActiveDirectoryParameters struct { // The Azure Active Directory Client ID which should be used for the Client Application. + // +kubebuilder:validation:Optional ClientApplicationID *string `json:"clientApplicationId,omitempty" tf:"client_application_id,omitempty"` // The Azure Active Directory Cluster Application ID. + // +kubebuilder:validation:Optional ClusterApplicationID *string `json:"clusterApplicationId,omitempty" tf:"cluster_application_id,omitempty"` // The Azure Active Directory Tenant ID. + // +kubebuilder:validation:Optional TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` } @@ -97,9 +102,11 @@ type CertificateCommonNamesObservation struct { type CertificateCommonNamesParameters struct { // A common_names block as defined below. + // +kubebuilder:validation:Optional CommonNames []CommonNamesParameters `json:"commonNames,omitempty" tf:"common_names,omitempty"` // The X509 Store where the Certificate Exists, such as My. + // +kubebuilder:validation:Optional X509StoreName *string `json:"x509StoreName,omitempty" tf:"x509_store_name,omitempty"` } @@ -130,12 +137,15 @@ type CertificateObservation struct { type CertificateParameters struct { // The Thumbprint of the Certificate. + // +kubebuilder:validation:Optional Thumbprint *string `json:"thumbprint,omitempty" tf:"thumbprint,omitempty"` // The Secondary Thumbprint of the Certificate. + // +kubebuilder:validation:Optional ThumbprintSecondary *string `json:"thumbprintSecondary,omitempty" tf:"thumbprint_secondary,omitempty"` // The X509 Store where the Certificate Exists, such as My. + // +kubebuilder:validation:Optional X509StoreName *string `json:"x509StoreName,omitempty" tf:"x509_store_name,omitempty"` } @@ -166,12 +176,15 @@ type ClientCertificateCommonNameObservation struct { type ClientCertificateCommonNameParameters struct { // The common or subject name of the certificate. + // +kubebuilder:validation:Optional CommonName *string `json:"commonName,omitempty" tf:"common_name,omitempty"` // Does the Client Certificate have Admin Access to the cluster? Non-admin clients can only perform read only operations on the cluster. + // +kubebuilder:validation:Optional IsAdmin *bool `json:"isAdmin,omitempty" tf:"is_admin,omitempty"` // The Issuer Thumbprint of the Certificate. + // +kubebuilder:validation:Optional IssuerThumbprint *string `json:"issuerThumbprint,omitempty" tf:"issuer_thumbprint,omitempty"` } @@ -196,9 +209,11 @@ type ClientCertificateThumbprintObservation struct { type ClientCertificateThumbprintParameters struct { // Does the Client Certificate have Admin Access to the cluster? Non-admin clients can only perform read only operations on the cluster. + // +kubebuilder:validation:Optional IsAdmin *bool `json:"isAdmin,omitempty" tf:"is_admin,omitempty"` // The Thumbprint associated with the Client Certificate. + // +kubebuilder:validation:Optional Thumbprint *string `json:"thumbprint,omitempty" tf:"thumbprint,omitempty"` } @@ -346,42 +361,55 @@ type ClusterObservation struct { type ClusterParameters struct { // A List of one or more features which should be enabled, such as DnsService. + // +kubebuilder:validation:Optional AddOnFeatures []*string `json:"addOnFeatures,omitempty" tf:"add_on_features,omitempty"` // An azure_active_directory block as defined below. + // +kubebuilder:validation:Optional AzureActiveDirectory []AzureActiveDirectoryParameters `json:"azureActiveDirectory,omitempty" tf:"azure_active_directory,omitempty"` // A certificate block as defined below. Conflicts with certificate_common_names. + // +kubebuilder:validation:Optional Certificate []CertificateParameters `json:"certificate,omitempty" tf:"certificate,omitempty"` // A certificate_common_names block as defined below. Conflicts with certificate. + // +kubebuilder:validation:Optional CertificateCommonNames []CertificateCommonNamesParameters `json:"certificateCommonNames,omitempty" tf:"certificate_common_names,omitempty"` // A client_certificate_common_name block as defined below. + // +kubebuilder:validation:Optional ClientCertificateCommonName []ClientCertificateCommonNameParameters `json:"clientCertificateCommonName,omitempty" tf:"client_certificate_common_name,omitempty"` // One or more client_certificate_thumbprint blocks as defined below. + // +kubebuilder:validation:Optional ClientCertificateThumbprint []ClientCertificateThumbprintParameters `json:"clientCertificateThumbprint,omitempty" tf:"client_certificate_thumbprint,omitempty"` // Required if Upgrade Mode set to Manual, Specifies the Version of the Cluster Code of the cluster. + // +kubebuilder:validation:Optional ClusterCodeVersion *string `json:"clusterCodeVersion,omitempty" tf:"cluster_code_version,omitempty"` // A diagnostics_config block as defined below. + // +kubebuilder:validation:Optional DiagnosticsConfig []DiagnosticsConfigParameters `json:"diagnosticsConfig,omitempty" tf:"diagnostics_config,omitempty"` // One or more fabric_settings blocks as defined below. + // +kubebuilder:validation:Optional FabricSettings []FabricSettingsParameters `json:"fabricSettings,omitempty" tf:"fabric_settings,omitempty"` // Specifies the Azure Region where the Service Fabric Cluster should exist. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the Management Endpoint of the cluster such as http://example.com. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ManagementEndpoint *string `json:"managementEndpoint,omitempty" tf:"management_endpoint,omitempty"` // One or more node_type blocks as defined below. + // +kubebuilder:validation:Optional NodeType []NodeTypeParameters `json:"nodeType,omitempty" tf:"node_type,omitempty"` // Specifies the Reliability Level of the Cluster. Possible values include None, Bronze, Silver, Gold and Platinum. + // +kubebuilder:validation:Optional ReliabilityLevel *string `json:"reliabilityLevel,omitempty" tf:"reliability_level,omitempty"` // The name of the Resource Group in which the Service Fabric Cluster exists. Changing this forces a new resource to be created. @@ -398,27 +426,35 @@ type ClusterParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A reverse_proxy_certificate block as defined below. Conflicts with reverse_proxy_certificate_common_names. + // +kubebuilder:validation:Optional ReverseProxyCertificate []ReverseProxyCertificateParameters `json:"reverseProxyCertificate,omitempty" tf:"reverse_proxy_certificate,omitempty"` // A reverse_proxy_certificate_common_names block as defined below. Conflicts with reverse_proxy_certificate. + // +kubebuilder:validation:Optional ReverseProxyCertificateCommonNames []ReverseProxyCertificateCommonNamesParameters `json:"reverseProxyCertificateCommonNames,omitempty" tf:"reverse_proxy_certificate_common_names,omitempty"` // Specifies the logical grouping of VMs in upgrade domains. Possible values are Hierarchical or Parallel. + // +kubebuilder:validation:Optional ServiceFabricZonalUpgradeMode *string `json:"serviceFabricZonalUpgradeMode,omitempty" tf:"service_fabric_zonal_upgrade_mode,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the Upgrade Mode of the cluster. Possible values are Automatic or Manual. + // +kubebuilder:validation:Optional UpgradeMode *string `json:"upgradeMode,omitempty" tf:"upgrade_mode,omitempty"` // A upgrade_policy block as defined below. + // +kubebuilder:validation:Optional UpgradePolicy []UpgradePolicyParameters `json:"upgradePolicy,omitempty" tf:"upgrade_policy,omitempty"` // Specifies the Image expected for the Service Fabric Cluster, such as Windows. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional VMImage *string `json:"vmImage,omitempty" tf:"vm_image,omitempty"` // Specifies the upgrade mode for the virtual machine scale set updates that happen in all availability zones at once. Possible values are Hierarchical or Parallel. + // +kubebuilder:validation:Optional VmssZonalUpgradeMode *string `json:"vmssZonalUpgradeMode,omitempty" tf:"vmss_zonal_upgrade_mode,omitempty"` } @@ -443,9 +479,11 @@ type CommonNamesObservation struct { type CommonNamesParameters struct { // The common or subject name of the certificate. + // +kubebuilder:validation:Optional CertificateCommonName *string `json:"certificateCommonName,omitempty" tf:"certificate_common_name,omitempty"` // The Issuer Thumbprint of the Certificate. + // +kubebuilder:validation:Optional CertificateIssuerThumbprint *string `json:"certificateIssuerThumbprint,omitempty" tf:"certificate_issuer_thumbprint,omitempty"` } @@ -476,12 +514,15 @@ type DeltaHealthPolicyObservation struct { type DeltaHealthPolicyParameters struct { // Specifies the maximum tolerated percentage of delta unhealthy applications that can have aggregated health states of error. If the current unhealthy applications do not respect the percentage relative to the state at the beginning of the upgrade, the cluster is unhealthy. Defaults to 0. + // +kubebuilder:validation:Optional MaxDeltaUnhealthyApplicationsPercent *float64 `json:"maxDeltaUnhealthyApplicationsPercent,omitempty" tf:"max_delta_unhealthy_applications_percent,omitempty"` // Specifies the maximum tolerated percentage of delta unhealthy nodes that can have aggregated health states of error. If the current unhealthy nodes do not respect the percentage relative to the state at the beginning of the upgrade, the cluster is unhealthy. Defaults to 0. + // +kubebuilder:validation:Optional MaxDeltaUnhealthyNodesPercent *float64 `json:"maxDeltaUnhealthyNodesPercent,omitempty" tf:"max_delta_unhealthy_nodes_percent,omitempty"` // Specifies the maximum tolerated percentage of upgrade domain delta unhealthy nodes that can have aggregated health state of error. If there is any upgrade domain where the current unhealthy nodes do not respect the percentage relative to the state at the beginning of the upgrade, the cluster is unhealthy. Defaults to 0. + // +kubebuilder:validation:Optional MaxUpgradeDomainDeltaUnhealthyNodesPercent *float64 `json:"maxUpgradeDomainDeltaUnhealthyNodesPercent,omitempty" tf:"max_upgrade_domain_delta_unhealthy_nodes_percent,omitempty"` } @@ -524,18 +565,23 @@ type DiagnosticsConfigObservation struct { type DiagnosticsConfigParameters struct { // The Blob Endpoint of the Storage Account. + // +kubebuilder:validation:Optional BlobEndpoint *string `json:"blobEndpoint,omitempty" tf:"blob_endpoint,omitempty"` // The protected diagnostics storage key name, such as StorageAccountKey1. + // +kubebuilder:validation:Optional ProtectedAccountKeyName *string `json:"protectedAccountKeyName,omitempty" tf:"protected_account_key_name,omitempty"` // The Queue Endpoint of the Storage Account. + // +kubebuilder:validation:Optional QueueEndpoint *string `json:"queueEndpoint,omitempty" tf:"queue_endpoint,omitempty"` // The name of the Storage Account where the Diagnostics should be sent to. + // +kubebuilder:validation:Optional StorageAccountName *string `json:"storageAccountName,omitempty" tf:"storage_account_name,omitempty"` // The Table Endpoint of the Storage Account. + // +kubebuilder:validation:Optional TableEndpoint *string `json:"tableEndpoint,omitempty" tf:"table_endpoint,omitempty"` } @@ -560,9 +606,11 @@ type EphemeralPortsObservation struct { type EphemeralPortsParameters struct { // The end of the Ephemeral Port Range on this Node Type. + // +kubebuilder:validation:Optional EndPort *float64 `json:"endPort,omitempty" tf:"end_port,omitempty"` // The start of the Ephemeral Port Range on this Node Type. + // +kubebuilder:validation:Optional StartPort *float64 `json:"startPort,omitempty" tf:"start_port,omitempty"` } @@ -587,9 +635,11 @@ type FabricSettingsObservation struct { type FabricSettingsParameters struct { // The name of the Fabric Setting, such as Security or Federation. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A map containing settings for the specified Fabric Setting. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } @@ -614,9 +664,11 @@ type HealthPolicyObservation struct { type HealthPolicyParameters struct { // Specifies the maximum tolerated percentage of applications that can have aggregated health state of error. If the upgrade exceeds this percentage, the cluster is unhealthy. Defaults to 0. + // +kubebuilder:validation:Optional MaxUnhealthyApplicationsPercent *float64 `json:"maxUnhealthyApplicationsPercent,omitempty" tf:"max_unhealthy_applications_percent,omitempty"` // Specifies the maximum tolerated percentage of nodes that can have aggregated health states of error. If an upgrade exceeds this percentage, the cluster is unhealthy. Defaults to 0. + // +kubebuilder:validation:Optional MaxUnhealthyNodesPercent *float64 `json:"maxUnhealthyNodesPercent,omitempty" tf:"max_unhealthy_nodes_percent,omitempty"` } @@ -707,42 +759,55 @@ type NodeTypeObservation struct { type NodeTypeParameters struct { // A application_ports block as defined below. + // +kubebuilder:validation:Optional ApplicationPorts []ApplicationPortsParameters `json:"applicationPorts,omitempty" tf:"application_ports,omitempty"` // The capacity tags applied to the nodes in the node type, the cluster resource manager uses these tags to understand how much resource a node has. + // +kubebuilder:validation:Optional Capacities map[string]*string `json:"capacities,omitempty" tf:"capacities,omitempty"` // The Port used for the Client Endpoint for this Node Type. + // +kubebuilder:validation:Optional ClientEndpointPort *float64 `json:"clientEndpointPort,omitempty" tf:"client_endpoint_port,omitempty"` // The Durability Level for this Node Type. Possible values include Bronze, Gold and Silver. Defaults to Bronze. + // +kubebuilder:validation:Optional DurabilityLevel *string `json:"durabilityLevel,omitempty" tf:"durability_level,omitempty"` // A ephemeral_ports block as defined below. + // +kubebuilder:validation:Optional EphemeralPorts []EphemeralPortsParameters `json:"ephemeralPorts,omitempty" tf:"ephemeral_ports,omitempty"` // The Port used for the HTTP Endpoint for this Node Type. + // +kubebuilder:validation:Optional HTTPEndpointPort *float64 `json:"httpEndpointPort,omitempty" tf:"http_endpoint_port,omitempty"` // The number of nodes for this Node Type. + // +kubebuilder:validation:Optional InstanceCount *float64 `json:"instanceCount,omitempty" tf:"instance_count,omitempty"` // Is this the Primary Node Type? + // +kubebuilder:validation:Optional IsPrimary *bool `json:"isPrimary,omitempty" tf:"is_primary,omitempty"` // Should this node type run only stateless services? + // +kubebuilder:validation:Optional IsStateless *bool `json:"isStateless,omitempty" tf:"is_stateless,omitempty"` // Does this node type span availability zones? + // +kubebuilder:validation:Optional MultipleAvailabilityZones *bool `json:"multipleAvailabilityZones,omitempty" tf:"multiple_availability_zones,omitempty"` // The name of the Node Type. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The placement tags applied to nodes in the node type, which can be used to indicate where certain services (workload) should run. + // +kubebuilder:validation:Optional PlacementProperties map[string]*string `json:"placementProperties,omitempty" tf:"placement_properties,omitempty"` // The Port used for the Reverse Proxy Endpoint for this Node Type. Changing this will upgrade the cluster. + // +kubebuilder:validation:Optional ReverseProxyEndpointPort *float64 `json:"reverseProxyEndpointPort,omitempty" tf:"reverse_proxy_endpoint_port,omitempty"` } @@ -767,9 +832,11 @@ type ReverseProxyCertificateCommonNamesCommonNamesObservation struct { type ReverseProxyCertificateCommonNamesCommonNamesParameters struct { // The common or subject name of the certificate. + // +kubebuilder:validation:Optional CertificateCommonName *string `json:"certificateCommonName,omitempty" tf:"certificate_common_name,omitempty"` // The Issuer Thumbprint of the Certificate. + // +kubebuilder:validation:Optional CertificateIssuerThumbprint *string `json:"certificateIssuerThumbprint,omitempty" tf:"certificate_issuer_thumbprint,omitempty"` } @@ -794,9 +861,11 @@ type ReverseProxyCertificateCommonNamesObservation struct { type ReverseProxyCertificateCommonNamesParameters struct { // A common_names block as defined below. + // +kubebuilder:validation:Optional CommonNames []ReverseProxyCertificateCommonNamesCommonNamesParameters `json:"commonNames,omitempty" tf:"common_names,omitempty"` // The X509 Store where the Certificate Exists, such as My. + // +kubebuilder:validation:Optional X509StoreName *string `json:"x509StoreName,omitempty" tf:"x509_store_name,omitempty"` } @@ -827,12 +896,15 @@ type ReverseProxyCertificateObservation struct { type ReverseProxyCertificateParameters struct { // The Thumbprint of the Certificate. + // +kubebuilder:validation:Optional Thumbprint *string `json:"thumbprint,omitempty" tf:"thumbprint,omitempty"` // The Secondary Thumbprint of the Certificate. + // +kubebuilder:validation:Optional ThumbprintSecondary *string `json:"thumbprintSecondary,omitempty" tf:"thumbprint_secondary,omitempty"` // The X509 Store where the Certificate Exists, such as My. + // +kubebuilder:validation:Optional X509StoreName *string `json:"x509StoreName,omitempty" tf:"x509_store_name,omitempty"` } @@ -899,30 +971,39 @@ type UpgradePolicyObservation struct { type UpgradePolicyParameters struct { // A delta_health_policy block as defined below + // +kubebuilder:validation:Optional DeltaHealthPolicy []DeltaHealthPolicyParameters `json:"deltaHealthPolicy,omitempty" tf:"delta_health_policy,omitempty"` // Indicates whether to restart the Service Fabric node even if only dynamic configurations have changed. + // +kubebuilder:validation:Optional ForceRestartEnabled *bool `json:"forceRestartEnabled,omitempty" tf:"force_restart_enabled,omitempty"` // Specifies the duration, in "hh:mm:ss" string format, after which Service Fabric retries the health check if the previous health check fails. Defaults to 00:45:00. + // +kubebuilder:validation:Optional HealthCheckRetryTimeout *string `json:"healthCheckRetryTimeout,omitempty" tf:"health_check_retry_timeout,omitempty"` // Specifies the duration, in "hh:mm:ss" string format, that Service Fabric waits in order to verify that the cluster is stable before it continues to the next upgrade domain or completes the upgrade. This wait duration prevents undetected changes of health right after the health check is performed. Defaults to 00:01:00. + // +kubebuilder:validation:Optional HealthCheckStableDuration *string `json:"healthCheckStableDuration,omitempty" tf:"health_check_stable_duration,omitempty"` // Specifies the duration, in "hh:mm:ss" string format, that Service Fabric waits before it performs the initial health check after it finishes the upgrade on the upgrade domain. Defaults to 00:00:30. + // +kubebuilder:validation:Optional HealthCheckWaitDuration *string `json:"healthCheckWaitDuration,omitempty" tf:"health_check_wait_duration,omitempty"` // A health_policy block as defined below + // +kubebuilder:validation:Optional HealthPolicy []HealthPolicyParameters `json:"healthPolicy,omitempty" tf:"health_policy,omitempty"` // Specifies the duration, in "hh:mm:ss" string format, that Service Fabric takes to upgrade a single upgrade domain. After this period, the upgrade fails. Defaults to 02:00:00. + // +kubebuilder:validation:Optional UpgradeDomainTimeout *string `json:"upgradeDomainTimeout,omitempty" tf:"upgrade_domain_timeout,omitempty"` // Specifies the duration, in "hh:mm:ss" string format, that Service Fabric waits for a replica set to reconfigure into a safe state, if it is not already in a safe state, before Service Fabric proceeds with the upgrade. Defaults to 10675199.02:48:05.4775807. + // +kubebuilder:validation:Optional UpgradeReplicaSetCheckTimeout *string `json:"upgradeReplicaSetCheckTimeout,omitempty" tf:"upgrade_replica_set_check_timeout,omitempty"` // Specifies the duration, in "hh:mm:ss" string format, that Service Fabric takes for the entire upgrade. After this period, the upgrade fails. Defaults to 12:00:00. + // +kubebuilder:validation:Optional UpgradeTimeout *string `json:"upgradeTimeout,omitempty" tf:"upgrade_timeout,omitempty"` } diff --git a/apis/servicefabric/v1beta1/zz_managedcluster_types.go b/apis/servicefabric/v1beta1/zz_managedcluster_types.go index aeaea35f9..407956a3c 100755 --- a/apis/servicefabric/v1beta1/zz_managedcluster_types.go +++ b/apis/servicefabric/v1beta1/zz_managedcluster_types.go @@ -40,12 +40,15 @@ type ActiveDirectoryObservation struct { type ActiveDirectoryParameters struct { // The ID of the Client Application. + // +kubebuilder:validation:Optional ClientApplicationID *string `json:"clientApplicationId,omitempty" tf:"client_application_id,omitempty"` // The ID of the Cluster Application. + // +kubebuilder:validation:Optional ClusterApplicationID *string `json:"clusterApplicationId,omitempty" tf:"cluster_application_id,omitempty"` // The ID of the Tenant. + // +kubebuilder:validation:Optional TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` } @@ -76,12 +79,15 @@ type AuthenticationCertificateObservation struct { type AuthenticationCertificateParameters struct { // The certificate's CN. + // +kubebuilder:validation:Optional CommonName *string `json:"commonName,omitempty" tf:"common_name,omitempty"` // The thumbprint of the certificate. + // +kubebuilder:validation:Optional Thumbprint *string `json:"thumbprint,omitempty" tf:"thumbprint,omitempty"` // The type of the certificate. Can be AdminClient or ReadOnlyClient. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -106,9 +112,11 @@ type AuthenticationObservation struct { type AuthenticationParameters struct { // A active_directory block as defined above. + // +kubebuilder:validation:Optional ActiveDirectory []ActiveDirectoryParameters `json:"activeDirectory,omitempty" tf:"active_directory,omitempty"` // One or more certificate blocks as defined below. + // +kubebuilder:validation:Optional Certificate []AuthenticationCertificateParameters `json:"certificate,omitempty" tf:"certificate,omitempty"` } @@ -133,9 +141,11 @@ type CertificatesObservation struct { type CertificatesParameters struct { // The certificate store on the Virtual Machine to which the certificate should be added. + // +kubebuilder:validation:Optional Store *string `json:"store,omitempty" tf:"store,omitempty"` // The URL of a certificate that has been uploaded to Key Vault as a secret + // +kubebuilder:validation:Optional URL *string `json:"url,omitempty" tf:"url,omitempty"` } @@ -166,12 +176,15 @@ type CustomFabricSettingObservation struct { type CustomFabricSettingParameters struct { // Parameter name. + // +kubebuilder:validation:Optional Parameter *string `json:"parameter,omitempty" tf:"parameter,omitempty"` // Section name. + // +kubebuilder:validation:Optional Section *string `json:"section,omitempty" tf:"section,omitempty"` // Parameter value. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -214,18 +227,23 @@ type LBRuleObservation struct { type LBRuleParameters struct { // LB Backend port. + // +kubebuilder:validation:Optional BackendPort *float64 `json:"backendPort,omitempty" tf:"backend_port,omitempty"` // LB Frontend port. + // +kubebuilder:validation:Optional FrontendPort *float64 `json:"frontendPort,omitempty" tf:"frontend_port,omitempty"` // Protocol for the probe. Can be one of tcp, udp, http, or https. + // +kubebuilder:validation:Optional ProbeProtocol *string `json:"probeProtocol,omitempty" tf:"probe_protocol,omitempty"` // Path for the probe to check, when probe protocol is set to http. + // +kubebuilder:validation:Optional ProbeRequestPath *string `json:"probeRequestPath,omitempty" tf:"probe_request_path,omitempty"` // The transport protocol used in this rule. Can be one of tcp or udp. + // +kubebuilder:validation:Optional Protocol *string `json:"protocol,omitempty" tf:"protocol,omitempty"` } @@ -388,54 +406,71 @@ type ManagedClusterNodeTypeObservation struct { type ManagedClusterNodeTypeParameters struct { // Sets the port range available for applications. Format is -, for example 10000-20000. + // +kubebuilder:validation:Optional ApplicationPortRange *string `json:"applicationPortRange,omitempty" tf:"application_port_range,omitempty"` // Specifies a list of key/value pairs used to set capacity tags for this node type. + // +kubebuilder:validation:Optional Capacities map[string]*string `json:"capacities,omitempty" tf:"capacities,omitempty"` // The size of the data disk in gigabytes.. + // +kubebuilder:validation:Optional DataDiskSizeGb *float64 `json:"dataDiskSizeGb,omitempty" tf:"data_disk_size_gb,omitempty"` // The type of the disk to use for storing data. It can be one of Premium_LRS, Standard_LRS, or StandardSSD_LRS. + // +kubebuilder:validation:Optional DataDiskType *string `json:"dataDiskType,omitempty" tf:"data_disk_type,omitempty"` // Sets the port range available for the OS. Format is -, for example 10000-20000. There has to be at least 255 ports available and cannot overlap with application_port_range.. + // +kubebuilder:validation:Optional EphemeralPortRange *string `json:"ephemeralPortRange,omitempty" tf:"ephemeral_port_range,omitempty"` // If set the node type can be composed of multiple placement groups. + // +kubebuilder:validation:Optional MultiplePlacementGroupsEnabled *bool `json:"multiplePlacementGroupsEnabled,omitempty" tf:"multiple_placement_groups_enabled,omitempty"` // The name which should be used for this node type. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies a list of placement tags that can be used to indicate where services should run.. + // +kubebuilder:validation:Optional PlacementProperties map[string]*string `json:"placementProperties,omitempty" tf:"placement_properties,omitempty"` // If set to true, system services will run on this node type. Only one node type should be marked as primary. Primary node type cannot be deleted or changed once they're created. + // +kubebuilder:validation:Optional Primary *bool `json:"primary,omitempty" tf:"primary,omitempty"` // If set to true, only stateless workloads can run on this node type. + // +kubebuilder:validation:Optional Stateless *bool `json:"stateless,omitempty" tf:"stateless,omitempty"` // The offer type of the marketplace image cluster VMs will use. + // +kubebuilder:validation:Optional VMImageOffer *string `json:"vmImageOffer,omitempty" tf:"vm_image_offer,omitempty"` // The publisher of the marketplace image cluster VMs will use. + // +kubebuilder:validation:Optional VMImagePublisher *string `json:"vmImagePublisher,omitempty" tf:"vm_image_publisher,omitempty"` // The SKU of the marketplace image cluster VMs will use. + // +kubebuilder:validation:Optional VMImageSku *string `json:"vmImageSku,omitempty" tf:"vm_image_sku,omitempty"` // The version of the marketplace image cluster VMs will use. + // +kubebuilder:validation:Optional VMImageVersion *string `json:"vmImageVersion,omitempty" tf:"vm_image_version,omitempty"` // The number of instances this node type will launch. + // +kubebuilder:validation:Optional VMInstanceCount *float64 `json:"vmInstanceCount,omitempty" tf:"vm_instance_count,omitempty"` // One or more vm_secrets blocks as defined below. + // +kubebuilder:validation:Optional VMSecrets []VMSecretsParameters `json:"vmSecrets,omitempty" tf:"vm_secrets,omitempty"` // The size of the instances in this node type. + // +kubebuilder:validation:Optional VMSize *string `json:"vmSize,omitempty" tf:"vm_size,omitempty"` } @@ -493,33 +528,43 @@ type ManagedClusterObservation struct { type ManagedClusterParameters struct { // Controls how connections to the cluster are authenticated. A authentication block as defined below. + // +kubebuilder:validation:Optional Authentication []AuthenticationParameters `json:"authentication,omitempty" tf:"authentication,omitempty"` // If true, backup service is enabled. + // +kubebuilder:validation:Optional BackupServiceEnabled *bool `json:"backupServiceEnabled,omitempty" tf:"backup_service_enabled,omitempty"` // Port to use when connecting to the cluster. + // +kubebuilder:validation:Optional ClientConnectionPort *float64 `json:"clientConnectionPort,omitempty" tf:"client_connection_port,omitempty"` // One or more custom_fabric_setting blocks as defined below. + // +kubebuilder:validation:Optional CustomFabricSetting []CustomFabricSettingParameters `json:"customFabricSetting,omitempty" tf:"custom_fabric_setting,omitempty"` // Hostname for the cluster. If unset the cluster's name will be used.. + // +kubebuilder:validation:Optional DNSName *string `json:"dnsName,omitempty" tf:"dns_name,omitempty"` // If true, DNS service is enabled. + // +kubebuilder:validation:Optional DNSServiceEnabled *bool `json:"dnsServiceEnabled,omitempty" tf:"dns_service_enabled,omitempty"` // Port that should be used by the Service Fabric Explorer to visualize applications and cluster status. + // +kubebuilder:validation:Optional HTTPGatewayPort *float64 `json:"httpGatewayPort,omitempty" tf:"http_gateway_port,omitempty"` // One or more lb_rule blocks as defined below. + // +kubebuilder:validation:Optional LBRule []LBRuleParameters `json:"lbRule,omitempty" tf:"lb_rule,omitempty"` // The Azure Region where the Resource Group should exist. Changing this forces a new Resource Group to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // One or more node_type blocks as defined below. + // +kubebuilder:validation:Optional NodeType []ManagedClusterNodeTypeParameters `json:"nodeType,omitempty" tf:"node_type,omitempty"` // Administrator password for the VMs that will be created as part of this cluster. @@ -540,15 +585,19 @@ type ManagedClusterParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // SKU for this cluster. Changing this forces a new resource to be created. Default is Basic, allowed values are either Basic or Standard. + // +kubebuilder:validation:Optional Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // A mapping of tags which should be assigned to the Resource Group. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Upgrade wave for the fabric runtime. Default is Wave0, allowed value must be one of Wave0, Wave1, or Wave2. + // +kubebuilder:validation:Optional UpgradeWave *string `json:"upgradeWave,omitempty" tf:"upgrade_wave,omitempty"` // Administrator password for the VMs that will be created as part of this cluster. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } @@ -573,9 +622,11 @@ type VMSecretsObservation struct { type VMSecretsParameters struct { // One or more certificates blocks as defined above. + // +kubebuilder:validation:Optional Certificates []CertificatesParameters `json:"certificates,omitempty" tf:"certificates,omitempty"` // The ID of the Vault that contain the certificates. + // +kubebuilder:validation:Optional VaultID *string `json:"vaultId,omitempty" tf:"vault_id,omitempty"` } diff --git a/apis/servicelinker/v1beta1/zz_springcloudconnection_types.go b/apis/servicelinker/v1beta1/zz_springcloudconnection_types.go index 9794d437a..b66ec49a1 100755 --- a/apis/servicelinker/v1beta1/zz_springcloudconnection_types.go +++ b/apis/servicelinker/v1beta1/zz_springcloudconnection_types.go @@ -56,12 +56,15 @@ type AuthenticationParameters struct { CertificateSecretRef *v1.SecretKeySelector `json:"certificateSecretRef,omitempty" tf:"-"` // Client ID for userAssignedIdentity or servicePrincipal auth. Should be specified when type is set to servicePrincipalSecret or servicePrincipalCertificate. When type is set to userAssignedIdentity, client_id and subscription_id should be either both specified or both not specified. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // Username or account name for secret auth. name and secret should be either both specified or both not specified when type is set to secret. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Principal ID for servicePrincipal auth. Should be specified when type is set to servicePrincipalSecret or servicePrincipalCertificate. + // +kubebuilder:validation:Optional PrincipalID *string `json:"principalId,omitempty" tf:"principal_id,omitempty"` // Password or account key for secret auth. secret and name should be either both specified or both not specified when type is set to secret. @@ -69,9 +72,11 @@ type AuthenticationParameters struct { SecretSecretRef *v1.SecretKeySelector `json:"secretSecretRef,omitempty" tf:"-"` // Subscription ID for userAssignedIdentity. subscription_id and client_id should be either both specified or both not specified. + // +kubebuilder:validation:Optional SubscriptionID *string `json:"subscriptionId,omitempty" tf:"subscription_id,omitempty"` // The authentication type. Possible values are systemAssignedIdentity, userAssignedIdentity, servicePrincipalSecret, servicePrincipalCertificate, secret. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -90,6 +95,7 @@ type SecretStoreObservation struct { type SecretStoreParameters struct { // The key vault id to store secret. + // +kubebuilder:validation:Optional KeyVaultID *string `json:"keyVaultId,omitempty" tf:"key_vault_id,omitempty"` } @@ -141,15 +147,19 @@ type SpringCloudConnectionObservation struct { type SpringCloudConnectionParameters struct { // The authentication info. An authentication block as defined below. + // +kubebuilder:validation:Optional Authentication []AuthenticationParameters `json:"authentication,omitempty" tf:"authentication,omitempty"` // The application client type. Possible values are none, dotnet, java, python, go, php, ruby, django, nodejs and springBoot. + // +kubebuilder:validation:Optional ClientType *string `json:"clientType,omitempty" tf:"client_type,omitempty"` // The name of the service connection. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // An option to store secret value in secure place. An secret_store block as defined below. + // +kubebuilder:validation:Optional SecretStore []SecretStoreParameters `json:"secretStore,omitempty" tf:"secret_store,omitempty"` // The ID of the data source spring cloud. Changing this forces a new resource to be created. @@ -181,6 +191,7 @@ type SpringCloudConnectionParameters struct { TargetResourceIDSelector *v1.Selector `json:"targetResourceIdSelector,omitempty" tf:"-"` // The type of the VNet solution. Possible values are serviceEndpoint, privateLink. + // +kubebuilder:validation:Optional VnetSolution *string `json:"vnetSolution,omitempty" tf:"vnet_solution,omitempty"` } diff --git a/apis/signalrservice/v1beta1/zz_networkacl_types.go b/apis/signalrservice/v1beta1/zz_networkacl_types.go index 8d580db0f..21a591477 100755 --- a/apis/signalrservice/v1beta1/zz_networkacl_types.go +++ b/apis/signalrservice/v1beta1/zz_networkacl_types.go @@ -46,12 +46,15 @@ type NetworkACLObservation struct { type NetworkACLParameters struct { // The default action to control the network access when no other rule matches. Possible values are Allow and Deny. + // +kubebuilder:validation:Optional DefaultAction *string `json:"defaultAction,omitempty" tf:"default_action,omitempty"` // A private_endpoint block as defined below. + // +kubebuilder:validation:Optional PrivateEndpoint []PrivateEndpointParameters `json:"privateEndpoint,omitempty" tf:"private_endpoint,omitempty"` // A public_network block as defined below. + // +kubebuilder:validation:Optional PublicNetwork []PublicNetworkParameters `json:"publicNetwork,omitempty" tf:"public_network,omitempty"` // The ID of the SignalR service. Changing this forces a new resource to be created. @@ -93,9 +96,11 @@ type PrivateEndpointObservation struct { type PrivateEndpointParameters struct { // The allowed request types for the Private Endpoint Connection. Possible values are ClientConnection, ServerConnection, RESTAPI and Trace. + // +kubebuilder:validation:Optional AllowedRequestTypes []*string `json:"allowedRequestTypes,omitempty" tf:"allowed_request_types,omitempty"` // The denied request types for the Private Endpoint Connection. Possible values are ClientConnection, ServerConnection, RESTAPI and Trace. + // +kubebuilder:validation:Optional DeniedRequestTypes []*string `json:"deniedRequestTypes,omitempty" tf:"denied_request_types,omitempty"` // The ID of the Private Endpoint which is based on the SignalR service. @@ -134,9 +139,11 @@ type PublicNetworkObservation struct { type PublicNetworkParameters struct { // The allowed request types for the public network. Possible values are ClientConnection, ServerConnection, RESTAPI and Trace. + // +kubebuilder:validation:Optional AllowedRequestTypes []*string `json:"allowedRequestTypes,omitempty" tf:"allowed_request_types,omitempty"` // The denied request types for the public network. Possible values are ClientConnection, ServerConnection, RESTAPI and Trace. + // +kubebuilder:validation:Optional DeniedRequestTypes []*string `json:"deniedRequestTypes,omitempty" tf:"denied_request_types,omitempty"` } diff --git a/apis/signalrservice/v1beta1/zz_service_types.go b/apis/signalrservice/v1beta1/zz_service_types.go index e013647c5..421087515 100755 --- a/apis/signalrservice/v1beta1/zz_service_types.go +++ b/apis/signalrservice/v1beta1/zz_service_types.go @@ -28,6 +28,7 @@ type CorsObservation struct { type CorsParameters struct { // A list of origins which should be able to make cross-origin calls. * can be used to allow all calls. + // +kubebuilder:validation:Optional AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` } @@ -58,9 +59,11 @@ type IdentityObservation struct { type IdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this signalR. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this signalR. Possible values are SystemAssigned, UserAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -97,15 +100,19 @@ type LiveTraceObservation struct { type LiveTraceParameters struct { // Whether the log category ConnectivityLogs is enabled? Defaults to true + // +kubebuilder:validation:Optional ConnectivityLogsEnabled *bool `json:"connectivityLogsEnabled,omitempty" tf:"connectivity_logs_enabled,omitempty"` // Whether the live trace is enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Whether the log category HttpRequestLogs is enabled? Defaults to true + // +kubebuilder:validation:Optional HTTPRequestLogsEnabled *bool `json:"httpRequestLogsEnabled,omitempty" tf:"http_request_logs_enabled,omitempty"` // Whether the log category MessagingLogs is enabled? Defaults to true + // +kubebuilder:validation:Optional MessagingLogsEnabled *bool `json:"messagingLogsEnabled,omitempty" tf:"messaging_logs_enabled,omitempty"` } @@ -238,36 +245,47 @@ type ServiceObservation struct { type ServiceParameters struct { // Whether to enable AAD auth? Defaults to true. + // +kubebuilder:validation:Optional AADAuthEnabled *bool `json:"aadAuthEnabled,omitempty" tf:"aad_auth_enabled,omitempty"` // Specifies if Connectivity Logs are enabled or not. Defaults to false. + // +kubebuilder:validation:Optional ConnectivityLogsEnabled *bool `json:"connectivityLogsEnabled,omitempty" tf:"connectivity_logs_enabled,omitempty"` // A cors block as documented below. + // +kubebuilder:validation:Optional Cors []CorsParameters `json:"cors,omitempty" tf:"cors,omitempty"` // Specifies if Http Request Logs are enabled or not. Defaults to false. + // +kubebuilder:validation:Optional HTTPRequestLogsEnabled *bool `json:"httpRequestLogsEnabled,omitempty" tf:"http_request_logs_enabled,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // A live_trace block as defined below. + // +kubebuilder:validation:Optional LiveTrace []LiveTraceParameters `json:"liveTrace,omitempty" tf:"live_trace,omitempty"` // Specifies if Live Trace is enabled or not. Defaults to false. + // +kubebuilder:validation:Optional LiveTraceEnabled *bool `json:"liveTraceEnabled,omitempty" tf:"live_trace_enabled,omitempty"` // Whether to enable local auth? Defaults to true. + // +kubebuilder:validation:Optional LocalAuthEnabled *bool `json:"localAuthEnabled,omitempty" tf:"local_auth_enabled,omitempty"` // Specifies the supported Azure location where the SignalR service exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies if Messaging Logs are enabled or not. Defaults to false. + // +kubebuilder:validation:Optional MessagingLogsEnabled *bool `json:"messagingLogsEnabled,omitempty" tf:"messaging_logs_enabled,omitempty"` // Whether to enable public network access? Defaults to true. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // The name of the resource group in which to create the SignalR service. Changing this forces a new resource to be created. @@ -284,21 +302,27 @@ type ServiceParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Specifies the client connection timeout. Defaults to 30. + // +kubebuilder:validation:Optional ServerlessConnectionTimeoutInSeconds *float64 `json:"serverlessConnectionTimeoutInSeconds,omitempty" tf:"serverless_connection_timeout_in_seconds,omitempty"` // Specifies the service mode. Possible values are Classic, Default and Serverless. Defaults to Default. + // +kubebuilder:validation:Optional ServiceMode *string `json:"serviceMode,omitempty" tf:"service_mode,omitempty"` // A sku block as documented below. + // +kubebuilder:validation:Optional Sku []SkuParameters `json:"sku,omitempty" tf:"sku,omitempty"` // Whether to request client certificate during TLS handshake? Defaults to false. + // +kubebuilder:validation:Optional TLSClientCertEnabled *bool `json:"tlsClientCertEnabled,omitempty" tf:"tls_client_cert_enabled,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // An upstream_endpoint block as documented below. Using this block requires the SignalR service to be Serverless. When creating multiple blocks they will be processed in the order they are defined in. + // +kubebuilder:validation:Optional UpstreamEndpoint []UpstreamEndpointParameters `json:"upstreamEndpoint,omitempty" tf:"upstream_endpoint,omitempty"` } @@ -323,9 +347,11 @@ type SkuObservation struct { type SkuParameters struct { // Specifies the number of units associated with this SignalR service. Valid values are 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 20, 30, 40, 50, 60, 70, 80, 90 and 100. + // +kubebuilder:validation:Optional Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` // Specifies which tier to use. Valid values are Free_F1, Standard_S1 and Premium_P1. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -362,15 +388,19 @@ type UpstreamEndpointObservation struct { type UpstreamEndpointParameters struct { // The categories to match on, or * for all. + // +kubebuilder:validation:Optional CategoryPattern []*string `json:"categoryPattern,omitempty" tf:"category_pattern,omitempty"` // The events to match on, or * for all. + // +kubebuilder:validation:Optional EventPattern []*string `json:"eventPattern,omitempty" tf:"event_pattern,omitempty"` // The hubs to match on, or * for all. + // +kubebuilder:validation:Optional HubPattern []*string `json:"hubPattern,omitempty" tf:"hub_pattern,omitempty"` // The upstream URL Template. This can be a url or a template such as http://host.com/{hub}/api/{category}/{event}. + // +kubebuilder:validation:Optional URLTemplate *string `json:"urlTemplate,omitempty" tf:"url_template,omitempty"` } diff --git a/apis/signalrservice/v1beta1/zz_signalrsharedprivatelinkresource_types.go b/apis/signalrservice/v1beta1/zz_signalrsharedprivatelinkresource_types.go index e17255e46..b41bedfb3 100755 --- a/apis/signalrservice/v1beta1/zz_signalrsharedprivatelinkresource_types.go +++ b/apis/signalrservice/v1beta1/zz_signalrsharedprivatelinkresource_types.go @@ -52,9 +52,11 @@ type SignalrSharedPrivateLinkResourceObservation struct { type SignalrSharedPrivateLinkResourceParameters struct { // The name of the Signalr Shared Private Link Resource. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The request message for requesting approval of the Shared Private Link Enabled Remote Resource. + // +kubebuilder:validation:Optional RequestMessage *string `json:"requestMessage,omitempty" tf:"request_message,omitempty"` // The id of the Signalr Service. Changing this forces a new resource to be created. @@ -72,6 +74,7 @@ type SignalrSharedPrivateLinkResourceParameters struct { SignalrServiceIDSelector *v1.Selector `json:"signalrServiceIdSelector,omitempty" tf:"-"` // The sub resource name which the Signalr Private Endpoint can connect to. Possible values are sites, vault. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SubResourceName *string `json:"subResourceName,omitempty" tf:"sub_resource_name,omitempty"` // The ID of the Shared Private Link Enabled Remote Resource which this Signalr Private Endpoint should be connected to. Changing this forces a new resource to be created. diff --git a/apis/signalrservice/v1beta1/zz_webpubsub_types.go b/apis/signalrservice/v1beta1/zz_webpubsub_types.go index a86f7c7d7..7b8f77ad0 100755 --- a/apis/signalrservice/v1beta1/zz_webpubsub_types.go +++ b/apis/signalrservice/v1beta1/zz_webpubsub_types.go @@ -40,9 +40,11 @@ type WebPubsubIdentityObservation struct { type WebPubsubIdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Web PubSub. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Web PubSub. Possible values are SystemAssigned, UserAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -115,15 +117,19 @@ type WebPubsubLiveTraceObservation struct { type WebPubsubLiveTraceParameters struct { // Whether the log category ConnectivityLogs is enabled? Defaults to true + // +kubebuilder:validation:Optional ConnectivityLogsEnabled *bool `json:"connectivityLogsEnabled,omitempty" tf:"connectivity_logs_enabled,omitempty"` // Whether the live trace is enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Whether the log category HttpRequestLogs is enabled? Defaults to true + // +kubebuilder:validation:Optional HTTPRequestLogsEnabled *bool `json:"httpRequestLogsEnabled,omitempty" tf:"http_request_logs_enabled,omitempty"` // Whether the log category MessagingLogs is enabled? Defaults to true + // +kubebuilder:validation:Optional MessagingLogsEnabled *bool `json:"messagingLogsEnabled,omitempty" tf:"messaging_logs_enabled,omitempty"` } @@ -186,27 +192,35 @@ type WebPubsubObservation struct { type WebPubsubParameters struct { // Whether to enable AAD auth? Defaults to true. + // +kubebuilder:validation:Optional AADAuthEnabled *bool `json:"aadAuthEnabled,omitempty" tf:"aad_auth_enabled,omitempty"` // Specifies the number of units associated with this Web PubSub resource. Valid values are: Free: 1, Standard: 1, 2, 5, 10, 20, 50, 100. + // +kubebuilder:validation:Optional Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []WebPubsubIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // A live_trace block as defined below. + // +kubebuilder:validation:Optional LiveTrace []WebPubsubLiveTraceParameters `json:"liveTrace,omitempty" tf:"live_trace,omitempty"` // Whether to enable local auth? Defaults to true. + // +kubebuilder:validation:Optional LocalAuthEnabled *bool `json:"localAuthEnabled,omitempty" tf:"local_auth_enabled,omitempty"` // Specifies the supported Azure location where the Web PubSub service exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the Web PubSub service. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Whether to enable public network access? Defaults to true. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // The name of the resource group in which to create the Web PubSub service. Changing this forces a new resource to be created. @@ -223,12 +237,15 @@ type WebPubsubParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Specifies which SKU to use. Possible values are Free_F1, Standard_S1, and Premium_P1. + // +kubebuilder:validation:Optional Sku *string `json:"sku,omitempty" tf:"sku,omitempty"` // Whether to request client certificate during TLS handshake? Defaults to false. + // +kubebuilder:validation:Optional TLSClientCertEnabled *bool `json:"tlsClientCertEnabled,omitempty" tf:"tls_client_cert_enabled,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/signalrservice/v1beta1/zz_webpubsubhub_types.go b/apis/signalrservice/v1beta1/zz_webpubsubhub_types.go index 23c91f291..4d954b83f 100755 --- a/apis/signalrservice/v1beta1/zz_webpubsubhub_types.go +++ b/apis/signalrservice/v1beta1/zz_webpubsubhub_types.go @@ -72,15 +72,19 @@ type EventHandlerObservation struct { type EventHandlerParameters struct { // An auth block as defined below. + // +kubebuilder:validation:Optional Auth []AuthParameters `json:"auth,omitempty" tf:"auth,omitempty"` // Specifies the list of system events. Supported values are connect, connected and disconnected. + // +kubebuilder:validation:Optional SystemEvents []*string `json:"systemEvents,omitempty" tf:"system_events,omitempty"` // The Event Handler URL Template. Two predefined parameters {hub} and {event} are available to use in the template. The value of the EventHandler URL is dynamically calculated when the client request comes in. Example: http://example.com/api/{hub}/{event}. + // +kubebuilder:validation:Optional URLTemplate *string `json:"urlTemplate,omitempty" tf:"url_template,omitempty"` // Specifies the matching event names. There are 3 kind of patterns supported: * * matches any event name * , Combine multiple events with , for example event1,event2, it matches event event1 and event2 * The single event name, for example event1, it matches event1. + // +kubebuilder:validation:Optional UserEventPattern *string `json:"userEventPattern,omitempty" tf:"user_event_pattern,omitempty"` } @@ -137,9 +141,11 @@ type EventListenerParameters struct { EventHubNamespaceNameSelector *v1.Selector `json:"eventhubNamespaceNameSelector,omitempty" tf:"-"` // Specifies the list of system events. Supported values are connected and disconnected. + // +kubebuilder:validation:Optional SystemEventNameFilter []*string `json:"systemEventNameFilter,omitempty" tf:"system_event_name_filter,omitempty"` // Specifies the list of matching user event names. ["*"] can be used to match all events. + // +kubebuilder:validation:Optional UserEventNameFilter []*string `json:"userEventNameFilter,omitempty" tf:"user_event_name_filter,omitempty"` } @@ -185,15 +191,19 @@ type WebPubsubHubParameters struct { // Is anonymous connections are allowed for this hub? Defaults to false. // Possible values are true, false. + // +kubebuilder:validation:Optional AnonymousConnectionsEnabled *bool `json:"anonymousConnectionsEnabled,omitempty" tf:"anonymous_connections_enabled,omitempty"` // An event_handler block as defined below. + // +kubebuilder:validation:Optional EventHandler []EventHandlerParameters `json:"eventHandler,omitempty" tf:"event_handler,omitempty"` // An event_listener block as defined below. + // +kubebuilder:validation:Optional EventListener []EventListenerParameters `json:"eventListener,omitempty" tf:"event_listener,omitempty"` // The name of the Web Pubsub hub service. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the id of the Web Pubsub. Changing this forces a new resource to be created. diff --git a/apis/signalrservice/v1beta1/zz_webpubsubnetworkacl_types.go b/apis/signalrservice/v1beta1/zz_webpubsubnetworkacl_types.go index bd25caa2d..b898b28c5 100755 --- a/apis/signalrservice/v1beta1/zz_webpubsubnetworkacl_types.go +++ b/apis/signalrservice/v1beta1/zz_webpubsubnetworkacl_types.go @@ -46,12 +46,15 @@ type WebPubsubNetworkACLObservation struct { type WebPubsubNetworkACLParameters struct { // The default action to control the network access when no other rule matches. Possible values are Allow and Deny. Defaults to Deny. + // +kubebuilder:validation:Optional DefaultAction *string `json:"defaultAction,omitempty" tf:"default_action,omitempty"` // A private_endpoint block as defined below. + // +kubebuilder:validation:Optional PrivateEndpoint []WebPubsubNetworkACLPrivateEndpointParameters `json:"privateEndpoint,omitempty" tf:"private_endpoint,omitempty"` // A public_network block as defined below. + // +kubebuilder:validation:Optional PublicNetwork []WebPubsubNetworkACLPublicNetworkParameters `json:"publicNetwork,omitempty" tf:"public_network,omitempty"` // The ID of the Web Pubsub service. Changing this forces a new resource to be created. @@ -93,9 +96,11 @@ type WebPubsubNetworkACLPrivateEndpointObservation struct { type WebPubsubNetworkACLPrivateEndpointParameters struct { // The allowed request types for the Private Endpoint Connection. Possible values are ClientConnection, ServerConnection, RESTAPI and Trace. + // +kubebuilder:validation:Optional AllowedRequestTypes []*string `json:"allowedRequestTypes,omitempty" tf:"allowed_request_types,omitempty"` // The denied request types for the Private Endpoint Connection. Possible values are ClientConnection, ServerConnection, RESTAPI and Trace. + // +kubebuilder:validation:Optional DeniedRequestTypes []*string `json:"deniedRequestTypes,omitempty" tf:"denied_request_types,omitempty"` // The ID of the Private Endpoint which is based on the Web Pubsub service. @@ -134,9 +139,11 @@ type WebPubsubNetworkACLPublicNetworkObservation struct { type WebPubsubNetworkACLPublicNetworkParameters struct { // The allowed request types for the public network. Possible values are ClientConnection, ServerConnection, RESTAPI and Trace. + // +kubebuilder:validation:Optional AllowedRequestTypes []*string `json:"allowedRequestTypes,omitempty" tf:"allowed_request_types,omitempty"` // The denied request types for the public network. Possible values are ClientConnection, ServerConnection, RESTAPI and Trace. + // +kubebuilder:validation:Optional DeniedRequestTypes []*string `json:"deniedRequestTypes,omitempty" tf:"denied_request_types,omitempty"` } diff --git a/apis/solutions/v1beta1/zz_managedapplicationdefinition_types.go b/apis/solutions/v1beta1/zz_managedapplicationdefinition_types.go index 6c69c4811..a9ec9165f 100755 --- a/apis/solutions/v1beta1/zz_managedapplicationdefinition_types.go +++ b/apis/solutions/v1beta1/zz_managedapplicationdefinition_types.go @@ -34,9 +34,11 @@ type AuthorizationObservation struct { type AuthorizationParameters struct { // Specifies a role definition identifier for the provider. This role will define all the permissions that the provider must have on the managed application's container resource group. This role definition cannot have permission to delete the resource group. + // +kubebuilder:validation:Optional RoleDefinitionID *string `json:"roleDefinitionId,omitempty" tf:"role_definition_id,omitempty"` // Specifies a service principal identifier for the provider. This is the identity that the provider will use to call ARM to manage the managed application resources. + // +kubebuilder:validation:Optional ServicePrincipalID *string `json:"servicePrincipalId,omitempty" tf:"service_principal_id,omitempty"` } @@ -115,30 +117,39 @@ type ManagedApplicationDefinitionObservation struct { type ManagedApplicationDefinitionParameters struct { // One or more authorization block defined below. + // +kubebuilder:validation:Optional Authorization []AuthorizationParameters `json:"authorization,omitempty" tf:"authorization,omitempty"` // Specifies the createUiDefinition JSON for the backing template with Microsoft.Solutions/applications resource. + // +kubebuilder:validation:Optional CreateUIDefinition *string `json:"createUiDefinition,omitempty" tf:"create_ui_definition,omitempty"` // Specifies the managed application definition description. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // Specifies the managed application definition display name. + // +kubebuilder:validation:Optional DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the managed application lock level. Valid values include CanNotDelete, None, ReadOnly. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional LockLevel *string `json:"lockLevel,omitempty" tf:"lock_level,omitempty"` // Specifies the inline main template JSON which has resources to be provisioned. + // +kubebuilder:validation:Optional MainTemplate *string `json:"mainTemplate,omitempty" tf:"main_template,omitempty"` // Is the package enabled? Defaults to true. + // +kubebuilder:validation:Optional PackageEnabled *bool `json:"packageEnabled,omitempty" tf:"package_enabled,omitempty"` // Specifies the managed application definition package file Uri. + // +kubebuilder:validation:Optional PackageFileURI *string `json:"packageFileUri,omitempty" tf:"package_file_uri,omitempty"` // The name of the Resource Group where the Managed Application Definition should exist. Changing this forces a new resource to be created. @@ -155,6 +166,7 @@ type ManagedApplicationDefinitionParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/sql/v1beta1/zz_mssqldatabase_types.go b/apis/sql/v1beta1/zz_mssqldatabase_types.go index 2f9d59e2c..d52fcae25 100755 --- a/apis/sql/v1beta1/zz_mssqldatabase_types.go +++ b/apis/sql/v1beta1/zz_mssqldatabase_types.go @@ -52,6 +52,7 @@ type ImportObservation struct { type ImportParameters struct { // Specifies the name of the SQL administrator. + // +kubebuilder:validation:Optional AdministratorLogin *string `json:"administratorLogin,omitempty" tf:"administrator_login,omitempty"` // Specifies the password of the SQL administrator. @@ -59,9 +60,11 @@ type ImportParameters struct { AdministratorLoginPasswordSecretRef v1.SecretKeySelector `json:"administratorLoginPasswordSecretRef" tf:"-"` // Specifies the type of authentication used to access the server. Valid values are SQL or ADPassword. + // +kubebuilder:validation:Optional AuthenticationType *string `json:"authenticationType,omitempty" tf:"authentication_type,omitempty"` // The resource id for the storage account used to store BACPAC file. If set, private endpoint connection will be created for the storage account. Must match storage account used for storage_uri parameter. + // +kubebuilder:validation:Optional StorageAccountID *string `json:"storageAccountId,omitempty" tf:"storage_account_id,omitempty"` // Specifies the access key for the storage account. @@ -69,9 +72,11 @@ type ImportParameters struct { StorageKeySecretRef v1.SecretKeySelector `json:"storageKeySecretRef" tf:"-"` // Specifies the type of access key for the storage account. Valid values are StorageAccessKey or SharedAccessKey. + // +kubebuilder:validation:Optional StorageKeyType *string `json:"storageKeyType,omitempty" tf:"storage_key_type,omitempty"` // Specifies the blob URI of the .bacpac file. + // +kubebuilder:validation:Optional StorageURI *string `json:"storageUri,omitempty" tf:"storage_uri,omitempty"` } @@ -108,15 +113,19 @@ type LongTermRetentionPolicyObservation struct { type LongTermRetentionPolicyParameters struct { // The monthly retention policy for an LTR backup in an ISO 8601 format. Valid value is between 1 to 120 months. e.g. P1Y, P1M, P4W or P30D. + // +kubebuilder:validation:Optional MonthlyRetention *string `json:"monthlyRetention,omitempty" tf:"monthly_retention,omitempty"` // The week of year to take the yearly backup. Value has to be between 1 and 52. + // +kubebuilder:validation:Optional WeekOfYear *float64 `json:"weekOfYear,omitempty" tf:"week_of_year,omitempty"` // The weekly retention policy for an LTR backup in an ISO 8601 format. Valid value is between 1 to 520 weeks. e.g. P1Y, P1M, P1W or P7D. + // +kubebuilder:validation:Optional WeeklyRetention *string `json:"weeklyRetention,omitempty" tf:"weekly_retention,omitempty"` // The yearly retention policy for an LTR backup in an ISO 8601 format. Valid value is between 1 to 10 years. e.g. P1Y, P12M, P52W or P365D. + // +kubebuilder:validation:Optional YearlyRetention *string `json:"yearlyRetention,omitempty" tf:"yearly_retention,omitempty"` } @@ -291,60 +300,79 @@ type MSSQLDatabaseObservation struct { type MSSQLDatabaseParameters struct { // Time in minutes after which database is automatically paused. A value of -1 means that automatic pause is disabled. This property is only settable for General Purpose Serverless databases. + // +kubebuilder:validation:Optional AutoPauseDelayInMinutes *float64 `json:"autoPauseDelayInMinutes,omitempty" tf:"auto_pause_delay_in_minutes,omitempty"` // Specifies the collation of the database. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Collation *string `json:"collation,omitempty" tf:"collation,omitempty"` // The create mode of the database. Possible values are Copy, Default, OnlineSecondary, PointInTimeRestore, Recovery, Restore, RestoreExternalBackup, RestoreExternalBackupSecondary, RestoreLongTermRetentionBackup and Secondary. Mutually exclusive with import. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional CreateMode *string `json:"createMode,omitempty" tf:"create_mode,omitempty"` // The ID of the source database from which to create the new database. This should only be used for databases with create_mode values that use another database as reference. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional CreationSourceDatabaseID *string `json:"creationSourceDatabaseId,omitempty" tf:"creation_source_database_id,omitempty"` // Specifies the ID of the elastic pool containing this database. + // +kubebuilder:validation:Optional ElasticPoolID *string `json:"elasticPoolId,omitempty" tf:"elastic_pool_id,omitempty"` // A boolean that specifies if the Geo Backup Policy is enabled. Defaults to true. + // +kubebuilder:validation:Optional GeoBackupEnabled *bool `json:"geoBackupEnabled,omitempty" tf:"geo_backup_enabled,omitempty"` // A Database Import block as documented below. Mutually exclusive with create_mode. + // +kubebuilder:validation:Optional Import []ImportParameters `json:"import,omitempty" tf:"import,omitempty"` // A boolean that specifies if this is a ledger database. Defaults to false. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional LedgerEnabled *bool `json:"ledgerEnabled,omitempty" tf:"ledger_enabled,omitempty"` // Specifies the license type applied to this database. Possible values are LicenseIncluded and BasePrice. + // +kubebuilder:validation:Optional LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"` // A long_term_retention_policy block as defined below. + // +kubebuilder:validation:Optional LongTermRetentionPolicy []LongTermRetentionPolicyParameters `json:"longTermRetentionPolicy,omitempty" tf:"long_term_retention_policy,omitempty"` // The name of the Public Maintenance Configuration window to apply to the database. Valid values include SQL_Default, SQL_EastUS_DB_1, SQL_EastUS2_DB_1, SQL_SoutheastAsia_DB_1, SQL_AustraliaEast_DB_1, SQL_NorthEurope_DB_1, SQL_SouthCentralUS_DB_1, SQL_WestUS2_DB_1, SQL_UKSouth_DB_1, SQL_WestEurope_DB_1, SQL_EastUS_DB_2, SQL_EastUS2_DB_2, SQL_WestUS2_DB_2, SQL_SoutheastAsia_DB_2, SQL_AustraliaEast_DB_2, SQL_NorthEurope_DB_2, SQL_SouthCentralUS_DB_2, SQL_UKSouth_DB_2, SQL_WestEurope_DB_2, SQL_AustraliaSoutheast_DB_1, SQL_BrazilSouth_DB_1, SQL_CanadaCentral_DB_1, SQL_CanadaEast_DB_1, SQL_CentralUS_DB_1, SQL_EastAsia_DB_1, SQL_FranceCentral_DB_1, SQL_GermanyWestCentral_DB_1, SQL_CentralIndia_DB_1, SQL_SouthIndia_DB_1, SQL_JapanEast_DB_1, SQL_JapanWest_DB_1, SQL_NorthCentralUS_DB_1, SQL_UKWest_DB_1, SQL_WestUS_DB_1, SQL_AustraliaSoutheast_DB_2, SQL_BrazilSouth_DB_2, SQL_CanadaCentral_DB_2, SQL_CanadaEast_DB_2, SQL_CentralUS_DB_2, SQL_EastAsia_DB_2, SQL_FranceCentral_DB_2, SQL_GermanyWestCentral_DB_2, SQL_CentralIndia_DB_2, SQL_SouthIndia_DB_2, SQL_JapanEast_DB_2, SQL_JapanWest_DB_2, SQL_NorthCentralUS_DB_2, SQL_UKWest_DB_2, SQL_WestUS_DB_2, SQL_WestCentralUS_DB_1, SQL_FranceSouth_DB_1, SQL_WestCentralUS_DB_2, SQL_FranceSouth_DB_2, SQL_SwitzerlandNorth_DB_1, SQL_SwitzerlandNorth_DB_2, SQL_BrazilSoutheast_DB_1, SQL_UAENorth_DB_1, SQL_BrazilSoutheast_DB_2, SQL_UAENorth_DB_2. Defaults to SQL_Default. + // +kubebuilder:validation:Optional MaintenanceConfigurationName *string `json:"maintenanceConfigurationName,omitempty" tf:"maintenance_configuration_name,omitempty"` // The max size of the database in gigabytes. + // +kubebuilder:validation:Optional MaxSizeGb *float64 `json:"maxSizeGb,omitempty" tf:"max_size_gb,omitempty"` // Minimal capacity that database will always have allocated, if not paused. This property is only settable for General Purpose Serverless databases. + // +kubebuilder:validation:Optional MinCapacity *float64 `json:"minCapacity,omitempty" tf:"min_capacity,omitempty"` // The number of readonly secondary replicas associated with the database to which readonly application intent connections may be routed. This property is only settable for Hyperscale edition databases. + // +kubebuilder:validation:Optional ReadReplicaCount *float64 `json:"readReplicaCount,omitempty" tf:"read_replica_count,omitempty"` // If enabled, connections that have application intent set to readonly in their connection string may be routed to a readonly secondary replica. This property is only settable for Premium and Business Critical databases. + // +kubebuilder:validation:Optional ReadScale *bool `json:"readScale,omitempty" tf:"read_scale,omitempty"` // The ID of the database to be recovered. This property is only applicable when the create_mode is Recovery. + // +kubebuilder:validation:Optional RecoverDatabaseID *string `json:"recoverDatabaseId,omitempty" tf:"recover_database_id,omitempty"` // The ID of the database to be restored. This property is only applicable when the create_mode is Restore. + // +kubebuilder:validation:Optional RestoreDroppedDatabaseID *string `json:"restoreDroppedDatabaseId,omitempty" tf:"restore_dropped_database_id,omitempty"` // Specifies the point in time (ISO8601 format) of the source database that will be restored to create the new database. This property is only settable for create_mode= PointInTimeRestore databases. + // +kubebuilder:validation:Optional RestorePointInTime *string `json:"restorePointInTime,omitempty" tf:"restore_point_in_time,omitempty"` // Specifies the name of the sample schema to apply when creating this database. Possible value is AdventureWorksLT. + // +kubebuilder:validation:Optional SampleName *string `json:"sampleName,omitempty" tf:"sample_name,omitempty"` // The id of the MS SQL Server on which to create the database. Changing this forces a new resource to be created. @@ -362,24 +390,31 @@ type MSSQLDatabaseParameters struct { ServerIDSelector *v1.Selector `json:"serverIdSelector,omitempty" tf:"-"` // A short_term_retention_policy block as defined below. + // +kubebuilder:validation:Optional ShortTermRetentionPolicy []ShortTermRetentionPolicyParameters `json:"shortTermRetentionPolicy,omitempty" tf:"short_term_retention_policy,omitempty"` // Specifies the name of the SKU used by the database. For example, GP_S_Gen5_2,HS_Gen4_1,BC_Gen5_2, ElasticPool, Basic,S0, P2 ,DW100c, DS100. Changing this from the HyperScale service tier to another service tier will create a new resource. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // Specifies the storage account type used to store backups for this database. Possible values are Geo, Local and Zone. The default value is Geo. + // +kubebuilder:validation:Optional StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Threat detection policy configuration. The threat_detection_policy block supports fields documented below. + // +kubebuilder:validation:Optional ThreatDetectionPolicy []ThreatDetectionPolicyParameters `json:"threatDetectionPolicy,omitempty" tf:"threat_detection_policy,omitempty"` // If set to true, Transparent Data Encryption will be enabled on the database. Defaults to true. + // +kubebuilder:validation:Optional TransparentDataEncryptionEnabled *bool `json:"transparentDataEncryptionEnabled,omitempty" tf:"transparent_data_encryption_enabled,omitempty"` // Whether or not this database is zone redundant, which means the replicas of this database will be spread across multiple availability zones. This property is only settable for Premium and Business Critical databases. + // +kubebuilder:validation:Optional ZoneRedundant *bool `json:"zoneRedundant,omitempty" tf:"zone_redundant,omitempty"` } @@ -404,9 +439,11 @@ type ShortTermRetentionPolicyObservation struct { type ShortTermRetentionPolicyParameters struct { // The hours between each differential backup. This is only applicable to live databases but not dropped databases. Value has to be 12 or 24. Defaults to 12 hours. + // +kubebuilder:validation:Optional BackupIntervalInHours *float64 `json:"backupIntervalInHours,omitempty" tf:"backup_interval_in_hours,omitempty"` // Point In Time Restore configuration. Value has to be between 7 and 35. + // +kubebuilder:validation:Optional RetentionDays *float64 `json:"retentionDays,omitempty" tf:"retention_days,omitempty"` } @@ -455,18 +492,23 @@ type ThreatDetectionPolicyObservation struct { type ThreatDetectionPolicyParameters struct { // Specifies a list of alerts which should be disabled. Possible values include Access_Anomaly, Sql_Injection and Sql_Injection_Vulnerability. + // +kubebuilder:validation:Optional DisabledAlerts []*string `json:"disabledAlerts,omitempty" tf:"disabled_alerts,omitempty"` // Should the account administrators be emailed when this alert is triggered? Possible values are Disabled and Enabled. + // +kubebuilder:validation:Optional EmailAccountAdmins *string `json:"emailAccountAdmins,omitempty" tf:"email_account_admins,omitempty"` // A list of email addresses which alerts should be sent to. + // +kubebuilder:validation:Optional EmailAddresses []*string `json:"emailAddresses,omitempty" tf:"email_addresses,omitempty"` // Specifies the number of days to keep in the Threat Detection audit logs. + // +kubebuilder:validation:Optional RetentionDays *float64 `json:"retentionDays,omitempty" tf:"retention_days,omitempty"` // The State of the Policy. Possible values are Enabled, Disabled or New. + // +kubebuilder:validation:Optional State *string `json:"state,omitempty" tf:"state,omitempty"` // Specifies the identifier key of the Threat Detection audit storage account. Required if state is Enabled. @@ -474,6 +516,7 @@ type ThreatDetectionPolicyParameters struct { StorageAccountAccessKeySecretRef *v1.SecretKeySelector `json:"storageAccountAccessKeySecretRef,omitempty" tf:"-"` // Specifies the blob storage endpoint (e.g. https://example.blob.core.windows.net). This blob storage will hold all Threat Detection audit logs. Required if state is Enabled. + // +kubebuilder:validation:Optional StorageEndpoint *string `json:"storageEndpoint,omitempty" tf:"storage_endpoint,omitempty"` } diff --git a/apis/sql/v1beta1/zz_mssqldatabaseextendedauditingpolicy_types.go b/apis/sql/v1beta1/zz_mssqldatabaseextendedauditingpolicy_types.go index 2cd30a974..69e31155b 100755 --- a/apis/sql/v1beta1/zz_mssqldatabaseextendedauditingpolicy_types.go +++ b/apis/sql/v1beta1/zz_mssqldatabaseextendedauditingpolicy_types.go @@ -69,15 +69,19 @@ type MSSQLDatabaseExtendedAuditingPolicyParameters struct { DatabaseIDSelector *v1.Selector `json:"databaseIdSelector,omitempty" tf:"-"` // Whether to enable the extended auditing policy. Possible values are true and false. Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Enable audit events to Azure Monitor? Defaults to true. + // +kubebuilder:validation:Optional LogMonitoringEnabled *bool `json:"logMonitoringEnabled,omitempty" tf:"log_monitoring_enabled,omitempty"` // The number of days to retain logs for in the storage account. Defaults to 0. + // +kubebuilder:validation:Optional RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` // Is storage_account_access_key value the storage's secondary key? + // +kubebuilder:validation:Optional StorageAccountAccessKeyIsSecondary *bool `json:"storageAccountAccessKeyIsSecondary,omitempty" tf:"storage_account_access_key_is_secondary,omitempty"` // The access key to use for the auditing storage account. diff --git a/apis/sql/v1beta1/zz_mssqldatabasevulnerabilityassessmentrulebaseline_types.go b/apis/sql/v1beta1/zz_mssqldatabasevulnerabilityassessmentrulebaseline_types.go index d707d8374..c2b253329 100755 --- a/apis/sql/v1beta1/zz_mssqldatabasevulnerabilityassessmentrulebaseline_types.go +++ b/apis/sql/v1beta1/zz_mssqldatabasevulnerabilityassessmentrulebaseline_types.go @@ -28,6 +28,7 @@ type BaselineResultObservation struct { type BaselineResultParameters struct { // A list representing a result of the baseline. + // +kubebuilder:validation:Optional Result []*string `json:"result,omitempty" tf:"result,omitempty"` } @@ -67,9 +68,11 @@ type MSSQLDatabaseVulnerabilityAssessmentRuleBaselineObservation struct { type MSSQLDatabaseVulnerabilityAssessmentRuleBaselineParameters struct { // The name of the vulnerability assessment rule baseline. Valid options are default and master. default implies a baseline on a database level rule and master for server level rule. Defaults to default. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional BaselineName *string `json:"baselineName,omitempty" tf:"baseline_name,omitempty"` // A baseline_result block as documented below. Multiple blocks can be defined. + // +kubebuilder:validation:Optional BaselineResult []BaselineResultParameters `json:"baselineResult,omitempty" tf:"baseline_result,omitempty"` // Specifies the name of the MS SQL Database. Changing this forces a new resource to be created. @@ -86,6 +89,7 @@ type MSSQLDatabaseVulnerabilityAssessmentRuleBaselineParameters struct { DatabaseNameSelector *v1.Selector `json:"databaseNameSelector,omitempty" tf:"-"` // The vulnerability assessment rule ID. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional RuleID *string `json:"ruleId,omitempty" tf:"rule_id,omitempty"` // The Vulnerability Assessment ID of the MS SQL Server. Changing this forces a new resource to be created. diff --git a/apis/sql/v1beta1/zz_mssqlelasticpool_types.go b/apis/sql/v1beta1/zz_mssqlelasticpool_types.go index c1102007e..afc73cedd 100755 --- a/apis/sql/v1beta1/zz_mssqlelasticpool_types.go +++ b/apis/sql/v1beta1/zz_mssqlelasticpool_types.go @@ -85,21 +85,27 @@ type MSSQLElasticPoolObservation struct { type MSSQLElasticPoolParameters struct { // Specifies the license type applied to this database. Possible values are LicenseIncluded and BasePrice. + // +kubebuilder:validation:Optional LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the Public Maintenance Configuration window to apply to the elastic pool. Valid values include SQL_Default, SQL_EastUS_DB_1, SQL_EastUS2_DB_1, SQL_SoutheastAsia_DB_1, SQL_AustraliaEast_DB_1, SQL_NorthEurope_DB_1, SQL_SouthCentralUS_DB_1, SQL_WestUS2_DB_1, SQL_UKSouth_DB_1, SQL_WestEurope_DB_1, SQL_EastUS_DB_2, SQL_EastUS2_DB_2, SQL_WestUS2_DB_2, SQL_SoutheastAsia_DB_2, SQL_AustraliaEast_DB_2, SQL_NorthEurope_DB_2, SQL_SouthCentralUS_DB_2, SQL_UKSouth_DB_2, SQL_WestEurope_DB_2, SQL_AustraliaSoutheast_DB_1, SQL_BrazilSouth_DB_1, SQL_CanadaCentral_DB_1, SQL_CanadaEast_DB_1, SQL_CentralUS_DB_1, SQL_EastAsia_DB_1, SQL_FranceCentral_DB_1, SQL_GermanyWestCentral_DB_1, SQL_CentralIndia_DB_1, SQL_SouthIndia_DB_1, SQL_JapanEast_DB_1, SQL_JapanWest_DB_1, SQL_NorthCentralUS_DB_1, SQL_UKWest_DB_1, SQL_WestUS_DB_1, SQL_AustraliaSoutheast_DB_2, SQL_BrazilSouth_DB_2, SQL_CanadaCentral_DB_2, SQL_CanadaEast_DB_2, SQL_CentralUS_DB_2, SQL_EastAsia_DB_2, SQL_FranceCentral_DB_2, SQL_GermanyWestCentral_DB_2, SQL_CentralIndia_DB_2, SQL_SouthIndia_DB_2, SQL_JapanEast_DB_2, SQL_JapanWest_DB_2, SQL_NorthCentralUS_DB_2, SQL_UKWest_DB_2, SQL_WestUS_DB_2, SQL_WestCentralUS_DB_1, SQL_FranceSouth_DB_1, SQL_WestCentralUS_DB_2, SQL_FranceSouth_DB_2, SQL_SwitzerlandNorth_DB_1, SQL_SwitzerlandNorth_DB_2, SQL_BrazilSoutheast_DB_1, SQL_UAENorth_DB_1, SQL_BrazilSoutheast_DB_2, SQL_UAENorth_DB_2. Defaults to SQL_Default. + // +kubebuilder:validation:Optional MaintenanceConfigurationName *string `json:"maintenanceConfigurationName,omitempty" tf:"maintenance_configuration_name,omitempty"` // The max data size of the elastic pool in bytes. Conflicts with max_size_gb. + // +kubebuilder:validation:Optional MaxSizeBytes *float64 `json:"maxSizeBytes,omitempty" tf:"max_size_bytes,omitempty"` // The max data size of the elastic pool in gigabytes. Conflicts with max_size_bytes. + // +kubebuilder:validation:Optional MaxSizeGb *float64 `json:"maxSizeGb,omitempty" tf:"max_size_gb,omitempty"` // A per_database_settings block as defined below. + // +kubebuilder:validation:Optional PerDatabaseSettings []PerDatabaseSettingsParameters `json:"perDatabaseSettings,omitempty" tf:"per_database_settings,omitempty"` // The name of the resource group in which to create the elastic pool. This must be the same as the resource group of the underlying SQL server. Changing this forces a new resource to be created. @@ -129,12 +135,15 @@ type MSSQLElasticPoolParameters struct { ServerNameSelector *v1.Selector `json:"serverNameSelector,omitempty" tf:"-"` // A sku block as defined below. + // +kubebuilder:validation:Optional Sku []SkuParameters `json:"sku,omitempty" tf:"sku,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Whether or not this elastic pool is zone redundant. tier needs to be Premium for DTU based or BusinessCritical for vCore based sku. + // +kubebuilder:validation:Optional ZoneRedundant *bool `json:"zoneRedundant,omitempty" tf:"zone_redundant,omitempty"` } @@ -159,9 +168,11 @@ type PerDatabaseSettingsObservation struct { type PerDatabaseSettingsParameters struct { // The maximum capacity any one database can consume. + // +kubebuilder:validation:Optional MaxCapacity *float64 `json:"maxCapacity,omitempty" tf:"max_capacity,omitempty"` // The minimum capacity all databases are guaranteed. + // +kubebuilder:validation:Optional MinCapacity *float64 `json:"minCapacity,omitempty" tf:"min_capacity,omitempty"` } @@ -198,15 +209,19 @@ type SkuObservation struct { type SkuParameters struct { // The scale up/out capacity, representing server's compute units. For more information see the documentation for your Elasticpool configuration: vCore-based or DTU-based. + // +kubebuilder:validation:Optional Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` // The family of hardware Gen4, Gen5, Fsv2 or DC. + // +kubebuilder:validation:Optional Family *string `json:"family,omitempty" tf:"family,omitempty"` // Specifies the SKU Name for this Elasticpool. The name of the SKU, will be either vCore based tier + family pattern (e.g. GP_Gen4, BC_Gen5) or the DTU based BasicPool, StandardPool, or PremiumPool pattern. Possible values are BasicPool, StandardPool, PremiumPool, GP_Gen4, GP_Gen5, GP_Fsv2, GP_DC, BC_Gen4, BC_Gen5 and BC_DC. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The tier of the particular SKU. Possible values are GeneralPurpose, BusinessCritical, Basic, Standard, or Premium. For more information see the documentation for your Elasticpool configuration: vCore-based or DTU-based. + // +kubebuilder:validation:Optional Tier *string `json:"tier,omitempty" tf:"tier,omitempty"` } diff --git a/apis/sql/v1beta1/zz_mssqlfailovergroup_types.go b/apis/sql/v1beta1/zz_mssqlfailovergroup_types.go index c66cac1de..9e36184be 100755 --- a/apis/sql/v1beta1/zz_mssqlfailovergroup_types.go +++ b/apis/sql/v1beta1/zz_mssqlfailovergroup_types.go @@ -69,12 +69,15 @@ type MSSQLFailoverGroupParameters struct { DatabasesSelector *v1.Selector `json:"databasesSelector,omitempty" tf:"-"` // A partner_server block as defined below. + // +kubebuilder:validation:Optional PartnerServer []PartnerServerParameters `json:"partnerServer,omitempty" tf:"partner_server,omitempty"` // A read_write_endpoint_failover_policy block as defined below. + // +kubebuilder:validation:Optional ReadWriteEndpointFailoverPolicy []ReadWriteEndpointFailoverPolicyParameters `json:"readWriteEndpointFailoverPolicy,omitempty" tf:"read_write_endpoint_failover_policy,omitempty"` // Whether failover is enabled for the readonly endpoint. Defaults to false. + // +kubebuilder:validation:Optional ReadonlyEndpointFailoverPolicyEnabled *bool `json:"readonlyEndpointFailoverPolicyEnabled,omitempty" tf:"readonly_endpoint_failover_policy_enabled,omitempty"` // The ID of the primary SQL Server on which to create the failover group. Changing this forces a new resource to be created. @@ -92,6 +95,7 @@ type MSSQLFailoverGroupParameters struct { ServerIDSelector *v1.Selector `json:"serverIdSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -148,9 +152,11 @@ type ReadWriteEndpointFailoverPolicyObservation struct { type ReadWriteEndpointFailoverPolicyParameters struct { // The grace period in minutes, before failover with data loss is attempted for the read-write endpoint. Required when mode is Automatic. + // +kubebuilder:validation:Optional GraceMinutes *float64 `json:"graceMinutes,omitempty" tf:"grace_minutes,omitempty"` // The failover policy of the read-write endpoint for the failover group. Possible values are Automatic or Manual. + // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` } diff --git a/apis/sql/v1beta1/zz_mssqlfirewallrule_types.go b/apis/sql/v1beta1/zz_mssqlfirewallrule_types.go index fdcbfb997..09cd8a0d7 100755 --- a/apis/sql/v1beta1/zz_mssqlfirewallrule_types.go +++ b/apis/sql/v1beta1/zz_mssqlfirewallrule_types.go @@ -40,6 +40,7 @@ type MSSQLFirewallRuleObservation struct { type MSSQLFirewallRuleParameters struct { // The ending IP address to allow through the firewall for this rule. + // +kubebuilder:validation:Optional EndIPAddress *string `json:"endIpAddress,omitempty" tf:"end_ip_address,omitempty"` // The resource ID of the SQL Server on which to create the Firewall Rule. Changing this forces a new resource to be created. @@ -57,6 +58,7 @@ type MSSQLFirewallRuleParameters struct { ServerIDSelector *v1.Selector `json:"serverIdSelector,omitempty" tf:"-"` // The starting IP address to allow through the firewall for this rule. + // +kubebuilder:validation:Optional StartIPAddress *string `json:"startIpAddress,omitempty" tf:"start_ip_address,omitempty"` } diff --git a/apis/sql/v1beta1/zz_mssqljobagent_types.go b/apis/sql/v1beta1/zz_mssqljobagent_types.go index d96b0bd1a..b9064a272 100755 --- a/apis/sql/v1beta1/zz_mssqljobagent_types.go +++ b/apis/sql/v1beta1/zz_mssqljobagent_types.go @@ -60,12 +60,15 @@ type MSSQLJobAgentParameters struct { DatabaseIDSelector *v1.Selector `json:"databaseIdSelector,omitempty" tf:"-"` // The Azure Region where the Elastic Job Agent should exist. Changing this forces a new Elastic Job Agent to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name which should be used for this Elastic Job Agent. Changing this forces a new Elastic Job Agent to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A mapping of tags which should be assigned to the Database. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/sql/v1beta1/zz_mssqljobcredential_types.go b/apis/sql/v1beta1/zz_mssqljobcredential_types.go index e1e15dd59..8b9ffbdda 100755 --- a/apis/sql/v1beta1/zz_mssqljobcredential_types.go +++ b/apis/sql/v1beta1/zz_mssqljobcredential_types.go @@ -52,6 +52,7 @@ type MSSQLJobCredentialParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The username part of the credential. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } diff --git a/apis/sql/v1beta1/zz_mssqlmanageddatabase_types.go b/apis/sql/v1beta1/zz_mssqlmanageddatabase_types.go index 31af774bf..ecfeecb8f 100755 --- a/apis/sql/v1beta1/zz_mssqlmanageddatabase_types.go +++ b/apis/sql/v1beta1/zz_mssqlmanageddatabase_types.go @@ -55,15 +55,19 @@ type MSSQLManagedDatabaseLongTermRetentionPolicyObservation struct { type MSSQLManagedDatabaseLongTermRetentionPolicyParameters struct { // The monthly retention policy for an LTR backup in an ISO 8601 format. Valid value is between 1 to 120 months. e.g. P1Y, P1M, P4W or P30D. + // +kubebuilder:validation:Optional MonthlyRetention *string `json:"monthlyRetention,omitempty" tf:"monthly_retention,omitempty"` // The week of year to take the yearly backup. Value has to be between 1 and 52. + // +kubebuilder:validation:Optional WeekOfYear *float64 `json:"weekOfYear,omitempty" tf:"week_of_year,omitempty"` // The weekly retention policy for an LTR backup in an ISO 8601 format. Valid value is between 1 to 520 weeks. e.g. P1Y, P1M, P1W or P7D. + // +kubebuilder:validation:Optional WeeklyRetention *string `json:"weeklyRetention,omitempty" tf:"weekly_retention,omitempty"` // The yearly retention policy for an LTR backup in an ISO 8601 format. Valid value is between 1 to 10 years. e.g. P1Y, P12M, P52W or P365D. + // +kubebuilder:validation:Optional YearlyRetention *string `json:"yearlyRetention,omitempty" tf:"yearly_retention,omitempty"` } @@ -85,6 +89,7 @@ type MSSQLManagedDatabaseObservation struct { type MSSQLManagedDatabaseParameters struct { // A long_term_retention_policy block as defined below. + // +kubebuilder:validation:Optional LongTermRetentionPolicy []MSSQLManagedDatabaseLongTermRetentionPolicyParameters `json:"longTermRetentionPolicy,omitempty" tf:"long_term_retention_policy,omitempty"` // The ID of the Azure SQL Managed Instance on which to create this Managed Database. Changing this forces a new resource to be created. @@ -102,6 +107,7 @@ type MSSQLManagedDatabaseParameters struct { ManagedInstanceIDSelector *v1.Selector `json:"managedInstanceIdSelector,omitempty" tf:"-"` // The backup retention period in days. This is how many days Point-in-Time Restore will be supported. + // +kubebuilder:validation:Optional ShortTermRetentionDays *float64 `json:"shortTermRetentionDays,omitempty" tf:"short_term_retention_days,omitempty"` } diff --git a/apis/sql/v1beta1/zz_mssqlmanagedinstance_types.go b/apis/sql/v1beta1/zz_mssqlmanagedinstance_types.go index 40b16ba0b..2b4b35f63 100755 --- a/apis/sql/v1beta1/zz_mssqlmanagedinstance_types.go +++ b/apis/sql/v1beta1/zz_mssqlmanagedinstance_types.go @@ -40,9 +40,11 @@ type IdentityObservation struct { type IdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this SQL Managed Instance. Required when type is set to UserAssigned. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this SQL Managed Instance. Possible values are SystemAssigned, UserAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -160,6 +162,7 @@ type MSSQLManagedInstanceObservation struct { type MSSQLManagedInstanceParameters struct { // The administrator login name for the new SQL Managed Instance. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional AdministratorLogin *string `json:"administratorLogin,omitempty" tf:"administrator_login,omitempty"` // The password associated with the administrator_login user. Needs to comply with Azure's Password Policy @@ -167,6 +170,7 @@ type MSSQLManagedInstanceParameters struct { AdministratorLoginPasswordSecretRef v1.SecretKeySelector `json:"administratorLoginPasswordSecretRef" tf:"-"` // Specifies how the SQL Managed Instance will be collated. Default value is SQL_Latin1_General_CP1_CI_AS. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Collation *string `json:"collation,omitempty" tf:"collation,omitempty"` // The ID of the SQL Managed Instance which will share the DNS zone. This is a prerequisite for creating an azurerm_sql_managed_instance_failover_group. Setting this after creation forces a new resource to be created. @@ -184,24 +188,31 @@ type MSSQLManagedInstanceParameters struct { DNSZonePartnerIDSelector *v1.Selector `json:"dnsZonePartnerIdSelector,omitempty" tf:"-"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // What type of license the Managed Instance will use. Possible values are LicenseIncluded and BasePrice. + // +kubebuilder:validation:Optional LicenseType *string `json:"licenseType,omitempty" tf:"license_type,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the Public Maintenance Configuration window to apply to the SQL Managed Instance. Valid values include SQL_Default or an Azure Location in the format SQL_{Location}_MI_{Size}(for example SQL_EastUS_MI_1). Defaults to SQL_Default. + // +kubebuilder:validation:Optional MaintenanceConfigurationName *string `json:"maintenanceConfigurationName,omitempty" tf:"maintenance_configuration_name,omitempty"` // The Minimum TLS Version. Default value is 1.2 Valid values include 1.0, 1.1, 1.2. + // +kubebuilder:validation:Optional MinimumTLSVersion *string `json:"minimumTlsVersion,omitempty" tf:"minimum_tls_version,omitempty"` // Specifies how the SQL Managed Instance will be accessed. Default value is Default. Valid values include Default, Proxy, and Redirect. + // +kubebuilder:validation:Optional ProxyOverride *string `json:"proxyOverride,omitempty" tf:"proxy_override,omitempty"` // Is the public data endpoint enabled? Default value is false. + // +kubebuilder:validation:Optional PublicDataEndpointEnabled *bool `json:"publicDataEndpointEnabled,omitempty" tf:"public_data_endpoint_enabled,omitempty"` // The name of the resource group in which to create the SQL Managed Instance. Changing this forces a new resource to be created. @@ -218,12 +229,15 @@ type MSSQLManagedInstanceParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Specifies the SKU Name for the SQL Managed Instance. Valid values include GP_Gen4, GP_Gen5, GP_Gen8IM, GP_Gen8IH, BC_Gen4, BC_Gen5, BC_Gen8IM or BC_Gen8IH. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // Specifies the storage account type used to store backups for this database. Changing this forces a new resource to be created. Possible values are GRS, LRS and ZRS. The default value is GRS. + // +kubebuilder:validation:Optional StorageAccountType *string `json:"storageAccountType,omitempty" tf:"storage_account_type,omitempty"` // Maximum storage space for the SQL Managed instance. This should be a multiple of 32 (GB). + // +kubebuilder:validation:Optional StorageSizeInGb *float64 `json:"storageSizeInGb,omitempty" tf:"storage_size_in_gb,omitempty"` // The subnet resource id that the SQL Managed Instance will be associated with. Changing this forces a new resource to be created. @@ -241,12 +255,15 @@ type MSSQLManagedInstanceParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The TimeZone ID that the SQL Managed Instance will be operating in. Default value is UTC. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional TimezoneID *string `json:"timezoneId,omitempty" tf:"timezone_id,omitempty"` // Number of cores that should be assigned to the SQL Managed Instance. Values can be 8, 16, or 24 for Gen4 SKUs, or 4, 8, 16, 24, 32, 40, 64, or 80 for Gen5 SKUs. + // +kubebuilder:validation:Optional Vcores *float64 `json:"vcores,omitempty" tf:"vcores,omitempty"` } diff --git a/apis/sql/v1beta1/zz_mssqlmanagedinstanceactivedirectoryadministrator_types.go b/apis/sql/v1beta1/zz_mssqlmanagedinstanceactivedirectoryadministrator_types.go index ae751739d..6d44882f7 100755 --- a/apis/sql/v1beta1/zz_mssqlmanagedinstanceactivedirectoryadministrator_types.go +++ b/apis/sql/v1beta1/zz_mssqlmanagedinstanceactivedirectoryadministrator_types.go @@ -52,9 +52,11 @@ type MSSQLManagedInstanceActiveDirectoryAdministratorObservation struct { type MSSQLManagedInstanceActiveDirectoryAdministratorParameters struct { // When true, only permit logins from AAD users and administrators. When false, also allow local database users. + // +kubebuilder:validation:Optional AzureadAuthenticationOnly *bool `json:"azureadAuthenticationOnly,omitempty" tf:"azuread_authentication_only,omitempty"` // The login name of the principal to set as the Managed Instance Administrator. + // +kubebuilder:validation:Optional LoginUsername *string `json:"loginUsername,omitempty" tf:"login_username,omitempty"` // The ID of the Azure SQL Managed Instance for which to set the administrator. Changing this forces a new resource to be created. @@ -72,9 +74,11 @@ type MSSQLManagedInstanceActiveDirectoryAdministratorParameters struct { ManagedInstanceIDSelector *v1.Selector `json:"managedInstanceIdSelector,omitempty" tf:"-"` // The Object ID of the principal to set as the Managed Instance Administrator. + // +kubebuilder:validation:Optional ObjectID *string `json:"objectId,omitempty" tf:"object_id,omitempty"` // The Azure Active Directory Tenant ID. + // +kubebuilder:validation:Optional TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` } diff --git a/apis/sql/v1beta1/zz_mssqlmanagedinstancefailovergroup_types.go b/apis/sql/v1beta1/zz_mssqlmanagedinstancefailovergroup_types.go index bcf68f06e..b0b82afd1 100755 --- a/apis/sql/v1beta1/zz_mssqlmanagedinstancefailovergroup_types.go +++ b/apis/sql/v1beta1/zz_mssqlmanagedinstancefailovergroup_types.go @@ -84,9 +84,11 @@ type MSSQLManagedInstanceFailoverGroupParameters struct { PartnerManagedInstanceIDSelector *v1.Selector `json:"partnerManagedInstanceIdSelector,omitempty" tf:"-"` // A read_write_endpoint_failover_policy block as defined below. + // +kubebuilder:validation:Optional ReadWriteEndpointFailoverPolicy []MSSQLManagedInstanceFailoverGroupReadWriteEndpointFailoverPolicyParameters `json:"readWriteEndpointFailoverPolicy,omitempty" tf:"read_write_endpoint_failover_policy,omitempty"` // Failover policy for the read-only endpoint. Defaults to true. + // +kubebuilder:validation:Optional ReadonlyEndpointFailoverPolicyEnabled *bool `json:"readonlyEndpointFailoverPolicyEnabled,omitempty" tf:"readonly_endpoint_failover_policy_enabled,omitempty"` } @@ -111,9 +113,11 @@ type MSSQLManagedInstanceFailoverGroupReadWriteEndpointFailoverPolicyObservation type MSSQLManagedInstanceFailoverGroupReadWriteEndpointFailoverPolicyParameters struct { // Applies only if mode is Automatic. The grace period in minutes before failover with data loss is attempted. + // +kubebuilder:validation:Optional GraceMinutes *float64 `json:"graceMinutes,omitempty" tf:"grace_minutes,omitempty"` // The failover mode. Possible values are Automatic or Manual. + // +kubebuilder:validation:Optional Mode *string `json:"mode,omitempty" tf:"mode,omitempty"` } diff --git a/apis/sql/v1beta1/zz_mssqlmanagedinstancevulnerabilityassessment_types.go b/apis/sql/v1beta1/zz_mssqlmanagedinstancevulnerabilityassessment_types.go index d48795475..aedf82759 100755 --- a/apis/sql/v1beta1/zz_mssqlmanagedinstancevulnerabilityassessment_types.go +++ b/apis/sql/v1beta1/zz_mssqlmanagedinstancevulnerabilityassessment_types.go @@ -54,6 +54,7 @@ type MSSQLManagedInstanceVulnerabilityAssessmentParameters struct { ManagedInstanceIDSelector *v1.Selector `json:"managedInstanceIdSelector,omitempty" tf:"-"` // The recurring scans settings. The recurring_scans block supports fields documented below. + // +kubebuilder:validation:Optional RecurringScans []RecurringScansParameters `json:"recurringScans,omitempty" tf:"recurring_scans,omitempty"` // Specifies the identifier key of the storage account for vulnerability assessment scan results. If storage_container_sas_key isn't specified, storage_account_access_key is required. @@ -61,6 +62,7 @@ type MSSQLManagedInstanceVulnerabilityAssessmentParameters struct { StorageAccountAccessKeySecretRef *v1.SecretKeySelector `json:"storageAccountAccessKeySecretRef,omitempty" tf:"-"` // A blob storage container path to hold the scan results (e.g. https://myStorage.blob.core.windows.net/VaScans/). + // +kubebuilder:validation:Optional StorageContainerPath *string `json:"storageContainerPath,omitempty" tf:"storage_container_path,omitempty"` // A shared access signature (SAS Key) that has write access to the blob container specified in storage_container_path parameter. If storage_account_access_key isn't specified, storage_container_sas_key is required. @@ -95,12 +97,15 @@ type RecurringScansObservation struct { type RecurringScansParameters struct { // Boolean flag which specifies if the schedule scan notification will be sent to the subscription administrators. Defaults to true. + // +kubebuilder:validation:Optional EmailSubscriptionAdmins *bool `json:"emailSubscriptionAdmins,omitempty" tf:"email_subscription_admins,omitempty"` // Specifies an array of e-mail addresses to which the scan notification is sent. + // +kubebuilder:validation:Optional Emails []*string `json:"emails,omitempty" tf:"emails,omitempty"` // Boolean flag which specifies if recurring scans is enabled or disabled. Defaults to false. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` } diff --git a/apis/sql/v1beta1/zz_mssqlserver_types.go b/apis/sql/v1beta1/zz_mssqlserver_types.go index 0007e1ac1..6b627baf8 100755 --- a/apis/sql/v1beta1/zz_mssqlserver_types.go +++ b/apis/sql/v1beta1/zz_mssqlserver_types.go @@ -40,6 +40,7 @@ type AzureadAdministratorObservation struct { type AzureadAdministratorParameters struct { // Specifies whether only AD Users and administrators (e.g. azuread_administrator.0.login_username) can be used to login, or also local database users (e.g. administrator_login). When true, the administrator_login and administrator_login_password properties can be omitted. + // +kubebuilder:validation:Optional AzureadAuthenticationOnly *bool `json:"azureadAuthenticationOnly,omitempty" tf:"azuread_authentication_only,omitempty"` // The login username of the Azure AD Administrator of this SQL Server. @@ -71,6 +72,7 @@ type AzureadAdministratorParameters struct { ObjectIDSelector *v1.Selector `json:"objectIdSelector,omitempty" tf:"-"` // The tenant id of the Azure AD Administrator of this SQL Server. + // +kubebuilder:validation:Optional TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` } @@ -101,9 +103,11 @@ type MSSQLServerIdentityObservation struct { type MSSQLServerIdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this SQL Server. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this SQL Server. Possible values are SystemAssigned, UserAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -194,6 +198,7 @@ type MSSQLServerObservation struct { type MSSQLServerParameters struct { // The administrator login name for the new server. Required unless azuread_authentication_only in the azuread_administrator block is true. When omitted, Azure will generate a default username which cannot be subsequently changed. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional AdministratorLogin *string `json:"administratorLogin,omitempty" tf:"administrator_login,omitempty"` // The password associated with the administrator_login user. Needs to comply with Azure's Password Policy. Required unless azuread_authentication_only in the azuread_administrator block is true. @@ -201,21 +206,27 @@ type MSSQLServerParameters struct { AdministratorLoginPasswordSecretRef *v1.SecretKeySelector `json:"administratorLoginPasswordSecretRef,omitempty" tf:"-"` // An azuread_administrator block as defined below. + // +kubebuilder:validation:Optional AzureadAdministrator []AzureadAdministratorParameters `json:"azureadAdministrator,omitempty" tf:"azuread_administrator,omitempty"` // The connection policy the server will use. Possible values are Default, Proxy, and Redirect. Defaults to Default. + // +kubebuilder:validation:Optional ConnectionPolicy *string `json:"connectionPolicy,omitempty" tf:"connection_policy,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []MSSQLServerIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The Minimum TLS Version for all SQL Database and SQL Data Warehouse databases associated with the server. Valid values are: 1.0, 1.1 , 1.2 and Disabled. Defaults to 1.2. + // +kubebuilder:validation:Optional MinimumTLSVersion *string `json:"minimumTlsVersion,omitempty" tf:"minimum_tls_version,omitempty"` // Whether outbound network traffic is restricted for this server. Defaults to false. + // +kubebuilder:validation:Optional OutboundNetworkRestrictionEnabled *bool `json:"outboundNetworkRestrictionEnabled,omitempty" tf:"outbound_network_restriction_enabled,omitempty"` // Specifies the primary user managed identity id. Required if type is UserAssigned and should be combined with identity_ids. @@ -233,6 +244,7 @@ type MSSQLServerParameters struct { PrimaryUserAssignedIdentityIDSelector *v1.Selector `json:"primaryUserAssignedIdentityIdSelector,omitempty" tf:"-"` // Whether public network access is allowed for this server. Defaults to true. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // The name of the resource group in which to create the Microsoft SQL Server. Changing this forces a new resource to be created. @@ -249,6 +261,7 @@ type MSSQLServerParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The fully versioned Key Vault Key URL (e.g. 'https://.vault.azure.net/keys//) to be used as the Customer Managed Key(CMK/BYOK) for the Transparent Data Encryption(TDE) layer. @@ -266,6 +279,7 @@ type MSSQLServerParameters struct { TransparentDataEncryptionKeyVaultKeyIDSelector *v1.Selector `json:"transparentDataEncryptionKeyVaultKeyIdSelector,omitempty" tf:"-"` // The version for the new server. Valid values are: 2.0 (for v11 server) and 12.0 (for v12 server). Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` } diff --git a/apis/sql/v1beta1/zz_mssqlservermicrosoftsupportauditingpolicy_types.go b/apis/sql/v1beta1/zz_mssqlservermicrosoftsupportauditingpolicy_types.go index d03ed8135..18705f32d 100755 --- a/apis/sql/v1beta1/zz_mssqlservermicrosoftsupportauditingpolicy_types.go +++ b/apis/sql/v1beta1/zz_mssqlservermicrosoftsupportauditingpolicy_types.go @@ -57,9 +57,11 @@ type MSSQLServerMicrosoftSupportAuditingPolicyParameters struct { BlobStorageEndpointSelector *v1.Selector `json:"blobStorageEndpointSelector,omitempty" tf:"-"` // Whether to enable the extended auditing policy. Possible values are true and false. Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Enable audit events to Azure Monitor? To enable server audit events to Azure Monitor, please enable its main database audit events to Azure Monitor. Defaults to true. + // +kubebuilder:validation:Optional LogMonitoringEnabled *bool `json:"logMonitoringEnabled,omitempty" tf:"log_monitoring_enabled,omitempty"` // The ID of the SQL Server to set the extended auditing policy. Changing this forces a new resource to be created. diff --git a/apis/sql/v1beta1/zz_mssqlserversecurityalertpolicy_types.go b/apis/sql/v1beta1/zz_mssqlserversecurityalertpolicy_types.go index f1eadfcc0..e401c0ef1 100755 --- a/apis/sql/v1beta1/zz_mssqlserversecurityalertpolicy_types.go +++ b/apis/sql/v1beta1/zz_mssqlserversecurityalertpolicy_types.go @@ -64,12 +64,15 @@ type MSSQLServerSecurityAlertPolicyObservation struct { type MSSQLServerSecurityAlertPolicyParameters struct { // Specifies an array of alerts that are disabled. Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Data_Exfiltration, Unsafe_Action. + // +kubebuilder:validation:Optional DisabledAlerts []*string `json:"disabledAlerts,omitempty" tf:"disabled_alerts,omitempty"` // Boolean flag which specifies if the alert is sent to the account administrators or not. Defaults to false. + // +kubebuilder:validation:Optional EmailAccountAdmins *bool `json:"emailAccountAdmins,omitempty" tf:"email_account_admins,omitempty"` // Specifies an array of email addresses to which the alert is sent. + // +kubebuilder:validation:Optional EmailAddresses []*string `json:"emailAddresses,omitempty" tf:"email_addresses,omitempty"` // The name of the resource group that contains the MS SQL Server. Changing this forces a new resource to be created. @@ -86,6 +89,7 @@ type MSSQLServerSecurityAlertPolicyParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Specifies the number of days to keep in the Threat Detection audit logs. Defaults to 0. + // +kubebuilder:validation:Optional RetentionDays *float64 `json:"retentionDays,omitempty" tf:"retention_days,omitempty"` // Specifies the name of the MS SQL Server. Changing this forces a new resource to be created. @@ -102,6 +106,7 @@ type MSSQLServerSecurityAlertPolicyParameters struct { ServerNameSelector *v1.Selector `json:"serverNameSelector,omitempty" tf:"-"` // Specifies the state of the policy, whether it is enabled or disabled or a policy has not been applied yet on the specific database server. Possible values are Disabled, Enabled and New. + // +kubebuilder:validation:Optional State *string `json:"state,omitempty" tf:"state,omitempty"` // Specifies the identifier key of the Threat Detection audit storage account. This is mandatory when you use storage_endpoint to specify a storage account blob endpoint. diff --git a/apis/sql/v1beta1/zz_mssqlservertransparentdataencryption_types.go b/apis/sql/v1beta1/zz_mssqlservertransparentdataencryption_types.go index 591626b88..f7e760574 100755 --- a/apis/sql/v1beta1/zz_mssqlservertransparentdataencryption_types.go +++ b/apis/sql/v1beta1/zz_mssqlservertransparentdataencryption_types.go @@ -37,6 +37,7 @@ type MSSQLServerTransparentDataEncryptionObservation struct { type MSSQLServerTransparentDataEncryptionParameters struct { // When enabled, the server will continuously check the key vault for any new versions of the key being used as the TDE protector. If a new version of the key is detected, the TDE protector on the server will be automatically rotated to the latest key version within 60 minutes. + // +kubebuilder:validation:Optional AutoRotationEnabled *bool `json:"autoRotationEnabled,omitempty" tf:"auto_rotation_enabled,omitempty"` // To use customer managed keys from Azure Key Vault, provide the AKV Key ID. To use service managed keys, omit this field. diff --git a/apis/sql/v1beta1/zz_mssqlservervulnerabilityassessment_types.go b/apis/sql/v1beta1/zz_mssqlservervulnerabilityassessment_types.go index 12770449c..f860e45fc 100755 --- a/apis/sql/v1beta1/zz_mssqlservervulnerabilityassessment_types.go +++ b/apis/sql/v1beta1/zz_mssqlservervulnerabilityassessment_types.go @@ -40,6 +40,7 @@ type MSSQLServerVulnerabilityAssessmentObservation struct { type MSSQLServerVulnerabilityAssessmentParameters struct { // The recurring scans settings. The recurring_scans block supports fields documented below. + // +kubebuilder:validation:Optional RecurringScans []MSSQLServerVulnerabilityAssessmentRecurringScansParameters `json:"recurringScans,omitempty" tf:"recurring_scans,omitempty"` // The id of the security alert policy of the MS SQL Server. Changing this forces a new resource to be created. @@ -61,6 +62,7 @@ type MSSQLServerVulnerabilityAssessmentParameters struct { StorageAccountAccessKeySecretRef *v1.SecretKeySelector `json:"storageAccountAccessKeySecretRef,omitempty" tf:"-"` // A blob storage container path to hold the scan results (e.g. https://example.blob.core.windows.net/VaScans/). + // +kubebuilder:validation:Optional StorageContainerPath *string `json:"storageContainerPath,omitempty" tf:"storage_container_path,omitempty"` // A shared access signature (SAS Key) that has write access to the blob container specified in storage_container_path parameter. If storage_account_access_key isn't specified, storage_container_sas_key is required. @@ -95,12 +97,15 @@ type MSSQLServerVulnerabilityAssessmentRecurringScansObservation struct { type MSSQLServerVulnerabilityAssessmentRecurringScansParameters struct { // Boolean flag which specifies if the schedule scan notification will be sent to the subscription administrators. Defaults to false. + // +kubebuilder:validation:Optional EmailSubscriptionAdmins *bool `json:"emailSubscriptionAdmins,omitempty" tf:"email_subscription_admins,omitempty"` // Specifies an array of email addresses to which the scan notification is sent. + // +kubebuilder:validation:Optional Emails []*string `json:"emails,omitempty" tf:"emails,omitempty"` // Boolean flag which specifies if recurring scans is enabled or disabled. Defaults to false. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` } diff --git a/apis/sql/v1beta1/zz_mssqlvirtualnetworkrule_types.go b/apis/sql/v1beta1/zz_mssqlvirtualnetworkrule_types.go index a86dbea1e..335727c1a 100755 --- a/apis/sql/v1beta1/zz_mssqlvirtualnetworkrule_types.go +++ b/apis/sql/v1beta1/zz_mssqlvirtualnetworkrule_types.go @@ -37,6 +37,7 @@ type MSSQLVirtualNetworkRuleObservation struct { type MSSQLVirtualNetworkRuleParameters struct { // Create the virtual network rule before the subnet has the virtual network service endpoint enabled. Defaults to false. + // +kubebuilder:validation:Optional IgnoreMissingVnetServiceEndpoint *bool `json:"ignoreMissingVnetServiceEndpoint,omitempty" tf:"ignore_missing_vnet_service_endpoint,omitempty"` // The resource ID of the SQL Server to which this SQL virtual network rule will be applied. Changing this forces a new resource to be created. diff --git a/apis/storage/v1beta1/zz_account_types.go b/apis/storage/v1beta1/zz_account_types.go index 86ccf8de8..957a16905 100755 --- a/apis/storage/v1beta1/zz_account_types.go +++ b/apis/storage/v1beta1/zz_account_types.go @@ -310,81 +310,107 @@ type AccountObservation struct { type AccountParameters struct { // Defines the access tier for BlobStorage, FileStorage and StorageV2 accounts. Valid options are Hot and Cool, defaults to Hot. + // +kubebuilder:validation:Optional AccessTier *string `json:"accessTier,omitempty" tf:"access_tier,omitempty"` // Defines the Kind of account. Valid options are BlobStorage, BlockBlobStorage, FileStorage, Storage and StorageV2. Defaults to StorageV2. + // +kubebuilder:validation:Optional AccountKind *string `json:"accountKind,omitempty" tf:"account_kind,omitempty"` // Defines the type of replication to use for this storage account. Valid options are LRS, GRS, RAGRS, ZRS, GZRS and RAGZRS. + // +kubebuilder:validation:Optional AccountReplicationType *string `json:"accountReplicationType,omitempty" tf:"account_replication_type,omitempty"` // Defines the Tier to use for this storage account. Valid options are Standard and Premium. For BlockBlobStorage and FileStorage accounts only Premium is valid. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional AccountTier *string `json:"accountTier,omitempty" tf:"account_tier,omitempty"` // Allow or disallow nested items within this Account to opt into being public. Defaults to true. + // +kubebuilder:validation:Optional AllowNestedItemsToBePublic *bool `json:"allowNestedItemsToBePublic,omitempty" tf:"allow_nested_items_to_be_public,omitempty"` // Restrict copy to and from Storage Accounts within an AAD tenant or with Private Links to the same VNet. Possible values are AAD and PrivateLink. + // +kubebuilder:validation:Optional AllowedCopyScope *string `json:"allowedCopyScope,omitempty" tf:"allowed_copy_scope,omitempty"` // A azure_files_authentication block as defined below. + // +kubebuilder:validation:Optional AzureFilesAuthentication []AzureFilesAuthenticationParameters `json:"azureFilesAuthentication,omitempty" tf:"azure_files_authentication,omitempty"` // A blob_properties block as defined below. + // +kubebuilder:validation:Optional BlobProperties []BlobPropertiesParameters `json:"blobProperties,omitempty" tf:"blob_properties,omitempty"` // Should cross Tenant replication be enabled? Defaults to true. + // +kubebuilder:validation:Optional CrossTenantReplicationEnabled *bool `json:"crossTenantReplicationEnabled,omitempty" tf:"cross_tenant_replication_enabled,omitempty"` // A custom_domain block as documented below. + // +kubebuilder:validation:Optional CustomDomain []CustomDomainParameters `json:"customDomain,omitempty" tf:"custom_domain,omitempty"` // A customer_managed_key block as documented below. + // +kubebuilder:validation:Optional CustomerManagedKey []CustomerManagedKeyParameters `json:"customerManagedKey,omitempty" tf:"customer_managed_key,omitempty"` // Default to Azure Active Directory authorization in the Azure portal when accessing the Storage Account. The default value is false + // +kubebuilder:validation:Optional DefaultToOauthAuthentication *bool `json:"defaultToOauthAuthentication,omitempty" tf:"default_to_oauth_authentication,omitempty"` // Specifies the Edge Zone within the Azure Region where this Storage Account should exist. Changing this forces a new Storage Account to be created. + // +kubebuilder:validation:Optional EdgeZone *string `json:"edgeZone,omitempty" tf:"edge_zone,omitempty"` // Boolean flag which forces HTTPS if enabled, see here for more information. Defaults to true. + // +kubebuilder:validation:Optional EnableHTTPSTrafficOnly *bool `json:"enableHttpsTrafficOnly,omitempty" tf:"enable_https_traffic_only,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // An immutability_policy block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ImmutabilityPolicy []ImmutabilityPolicyParameters `json:"immutabilityPolicy,omitempty" tf:"immutability_policy,omitempty"` // Is infrastructure encryption enabled? Changing this forces a new resource to be created. Defaults to false. + // +kubebuilder:validation:Optional InfrastructureEncryptionEnabled *bool `json:"infrastructureEncryptionEnabled,omitempty" tf:"infrastructure_encryption_enabled,omitempty"` // Is Hierarchical Namespace enabled? This can be used with Azure Data Lake Storage Gen 2 (see here for more information). Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional IsHnsEnabled *bool `json:"isHnsEnabled,omitempty" tf:"is_hns_enabled,omitempty"` // Is Large File Share Enabled? + // +kubebuilder:validation:Optional LargeFileShareEnabled *bool `json:"largeFileShareEnabled,omitempty" tf:"large_file_share_enabled,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The minimum supported TLS version for the storage account. Possible values are TLS1_0, TLS1_1, and TLS1_2. Defaults to TLS1_2 for new storage accounts. + // +kubebuilder:validation:Optional MinTLSVersion *string `json:"minTlsVersion,omitempty" tf:"min_tls_version,omitempty"` // A network_rules block as documented below. + // +kubebuilder:validation:Optional NetworkRules []NetworkRulesParameters `json:"networkRules,omitempty" tf:"network_rules,omitempty"` // Is NFSv3 protocol enabled? Changing this forces a new resource to be created. Defaults to false. + // +kubebuilder:validation:Optional Nfsv3Enabled *bool `json:"nfsv3Enabled,omitempty" tf:"nfsv3_enabled,omitempty"` // Whether the public network access is enabled? Defaults to true. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // The encryption type of the queue service. Possible values are Service and Account. Changing this forces a new resource to be created. Default value is Service. + // +kubebuilder:validation:Optional QueueEncryptionKeyType *string `json:"queueEncryptionKeyType,omitempty" tf:"queue_encryption_key_type,omitempty"` // A queue_properties block as defined below. + // +kubebuilder:validation:Optional QueueProperties []QueuePropertiesParameters `json:"queueProperties,omitempty" tf:"queue_properties,omitempty"` // The name of the resource group in which to create the storage account. Changing this forces a new resource to be created. @@ -401,27 +427,35 @@ type AccountParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A routing block as defined below. + // +kubebuilder:validation:Optional Routing []RoutingParameters `json:"routing,omitempty" tf:"routing,omitempty"` // A sas_policy block as defined below. + // +kubebuilder:validation:Optional SASPolicy []SASPolicyParameters `json:"sasPolicy,omitempty" tf:"sas_policy,omitempty"` // Boolean, enable SFTP for the storage account + // +kubebuilder:validation:Optional SFTPEnabled *bool `json:"sftpEnabled,omitempty" tf:"sftp_enabled,omitempty"` // A share_properties block as defined below. + // +kubebuilder:validation:Optional ShareProperties []SharePropertiesParameters `json:"shareProperties,omitempty" tf:"share_properties,omitempty"` // Indicates whether the storage account permits requests to be authorized with the account access key via Shared Key. If false, then all requests, including shared access signatures, must be authorized with Azure Active Directory (Azure AD). The default value is true. + // +kubebuilder:validation:Optional SharedAccessKeyEnabled *bool `json:"sharedAccessKeyEnabled,omitempty" tf:"shared_access_key_enabled,omitempty"` // A static_website block as defined below. + // +kubebuilder:validation:Optional StaticWebsite []StaticWebsiteParameters `json:"staticWebsite,omitempty" tf:"static_website,omitempty"` // The encryption type of the table service. Possible values are Service and Account. Changing this forces a new resource to be created. Default value is Service. + // +kubebuilder:validation:Optional TableEncryptionKeyType *string `json:"tableEncryptionKeyType,omitempty" tf:"table_encryption_key_type,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -470,21 +504,27 @@ type ActiveDirectoryObservation struct { type ActiveDirectoryParameters struct { // Specifies the domain GUID. + // +kubebuilder:validation:Optional DomainGUID *string `json:"domainGuid,omitempty" tf:"domain_guid,omitempty"` // Specifies the primary domain that the AD DNS server is authoritative for. + // +kubebuilder:validation:Optional DomainName *string `json:"domainName,omitempty" tf:"domain_name,omitempty"` // Specifies the security identifier (SID). + // +kubebuilder:validation:Optional DomainSid *string `json:"domainSid,omitempty" tf:"domain_sid,omitempty"` // Specifies the Active Directory forest. + // +kubebuilder:validation:Optional ForestName *string `json:"forestName,omitempty" tf:"forest_name,omitempty"` // Specifies the NetBIOS domain name. + // +kubebuilder:validation:Optional NetbiosDomainName *string `json:"netbiosDomainName,omitempty" tf:"netbios_domain_name,omitempty"` // Specifies the security identifier (SID) for Azure Storage. + // +kubebuilder:validation:Optional StorageSid *string `json:"storageSid,omitempty" tf:"storage_sid,omitempty"` } @@ -509,9 +549,11 @@ type AzureFilesAuthenticationObservation struct { type AzureFilesAuthenticationParameters struct { // A active_directory block as defined below. Required when directory_type is AD. + // +kubebuilder:validation:Optional ActiveDirectory []ActiveDirectoryParameters `json:"activeDirectory,omitempty" tf:"active_directory,omitempty"` // Specifies the directory service used. Possible values are AADDS, AD and AADKERB. + // +kubebuilder:validation:Optional DirectoryType *string `json:"directoryType,omitempty" tf:"directory_type,omitempty"` } @@ -578,30 +620,39 @@ type BlobPropertiesObservation struct { type BlobPropertiesParameters struct { // Is the blob service properties for change feed events enabled? Default to false. + // +kubebuilder:validation:Optional ChangeFeedEnabled *bool `json:"changeFeedEnabled,omitempty" tf:"change_feed_enabled,omitempty"` // The duration of change feed events retention in days. The possible values are between 1 and 146000 days (400 years). Setting this to null (or omit this in the configuration file) indicates an infinite retention of the change feed. + // +kubebuilder:validation:Optional ChangeFeedRetentionInDays *float64 `json:"changeFeedRetentionInDays,omitempty" tf:"change_feed_retention_in_days,omitempty"` // A container_delete_retention_policy block as defined below. + // +kubebuilder:validation:Optional ContainerDeleteRetentionPolicy []ContainerDeleteRetentionPolicyParameters `json:"containerDeleteRetentionPolicy,omitempty" tf:"container_delete_retention_policy,omitempty"` // A cors_rule block as defined below. + // +kubebuilder:validation:Optional CorsRule []CorsRuleParameters `json:"corsRule,omitempty" tf:"cors_rule,omitempty"` // The API Version which should be used by default for requests to the Data Plane API if an incoming request doesn't specify an API Version. + // +kubebuilder:validation:Optional DefaultServiceVersion *string `json:"defaultServiceVersion,omitempty" tf:"default_service_version,omitempty"` // A delete_retention_policy block as defined below. + // +kubebuilder:validation:Optional DeleteRetentionPolicy []DeleteRetentionPolicyParameters `json:"deleteRetentionPolicy,omitempty" tf:"delete_retention_policy,omitempty"` // Is the last access time based tracking enabled? Default to false. + // +kubebuilder:validation:Optional LastAccessTimeEnabled *bool `json:"lastAccessTimeEnabled,omitempty" tf:"last_access_time_enabled,omitempty"` // A restore_policy block as defined below. This must be used together with delete_retention_policy set, versioning_enabled and change_feed_enabled set to true. + // +kubebuilder:validation:Optional RestorePolicy []RestorePolicyParameters `json:"restorePolicy,omitempty" tf:"restore_policy,omitempty"` // Is versioning enabled? Default to false. + // +kubebuilder:validation:Optional VersioningEnabled *bool `json:"versioningEnabled,omitempty" tf:"versioning_enabled,omitempty"` } @@ -620,6 +671,7 @@ type ContainerDeleteRetentionPolicyObservation struct { type ContainerDeleteRetentionPolicyParameters struct { // Specifies the number of days that the azurerm_storage_share should be retained, between 1 and 365 days. Defaults to 7. + // +kubebuilder:validation:Optional Days *float64 `json:"days,omitempty" tf:"days,omitempty"` } @@ -664,19 +716,24 @@ type CorsRuleObservation struct { type CorsRuleParameters struct { // A list of headers that are allowed to be a part of the cross-origin request. + // +kubebuilder:validation:Optional AllowedHeaders []*string `json:"allowedHeaders,omitempty" tf:"allowed_headers,omitempty"` // A list of HTTP methods that are allowed to be executed by the origin. Valid options are // DELETE, GET, HEAD, MERGE, POST, OPTIONS, PUT or PATCH. + // +kubebuilder:validation:Optional AllowedMethods []*string `json:"allowedMethods,omitempty" tf:"allowed_methods,omitempty"` // A list of origin domains that will be allowed by CORS. + // +kubebuilder:validation:Optional AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` // A list of response headers that are exposed to CORS clients. + // +kubebuilder:validation:Optional ExposedHeaders []*string `json:"exposedHeaders,omitempty" tf:"exposed_headers,omitempty"` // The number of seconds the client should cache a preflight response. + // +kubebuilder:validation:Optional MaxAgeInSeconds *float64 `json:"maxAgeInSeconds,omitempty" tf:"max_age_in_seconds,omitempty"` } @@ -701,9 +758,11 @@ type CustomDomainObservation struct { type CustomDomainParameters struct { // The Custom Domain Name to use for the Storage Account, which will be validated by Azure. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Should the Custom Domain Name be validated by using indirect CNAME validation? + // +kubebuilder:validation:Optional UseSubdomain *bool `json:"useSubdomain,omitempty" tf:"use_subdomain,omitempty"` } @@ -728,9 +787,11 @@ type CustomerManagedKeyObservation struct { type CustomerManagedKeyParameters struct { // The ID of the Key Vault Key, supplying a version-less key ID will enable auto-rotation of this key. + // +kubebuilder:validation:Optional KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"` // The ID of a user assigned identity. + // +kubebuilder:validation:Optional UserAssignedIdentityID *string `json:"userAssignedIdentityId,omitempty" tf:"user_assigned_identity_id,omitempty"` } @@ -749,6 +810,7 @@ type DeleteRetentionPolicyObservation struct { type DeleteRetentionPolicyParameters struct { // Specifies the number of days that the azurerm_storage_share should be retained, between 1 and 365 days. Defaults to 7. + // +kubebuilder:validation:Optional Days *float64 `json:"days,omitempty" tf:"days,omitempty"` } @@ -785,15 +847,19 @@ type HourMetricsObservation struct { type HourMetricsParameters struct { // Indicates whether minute metrics are enabled for the Queue service. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Indicates whether metrics should generate summary statistics for called API operations. + // +kubebuilder:validation:Optional IncludeApis *bool `json:"includeApis,omitempty" tf:"include_apis,omitempty"` // Specifies the number of days that logs will be retained. + // +kubebuilder:validation:Optional RetentionPolicyDays *float64 `json:"retentionPolicyDays,omitempty" tf:"retention_policy_days,omitempty"` // The version of storage analytics to configure. + // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` } @@ -824,9 +890,11 @@ type IdentityObservation struct { type IdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Storage Account. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Storage Account. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -857,12 +925,15 @@ type ImmutabilityPolicyObservation struct { type ImmutabilityPolicyParameters struct { // When enabled, new blocks can be written to an append blob while maintaining immutability protection and compliance. Only new blocks can be added and any existing blocks cannot be modified or deleted. + // +kubebuilder:validation:Optional AllowProtectedAppendWrites *bool `json:"allowProtectedAppendWrites,omitempty" tf:"allow_protected_append_writes,omitempty"` // The immutability period for the blobs in the container since the policy creation, in days. + // +kubebuilder:validation:Optional PeriodSinceCreationInDays *float64 `json:"periodSinceCreationInDays,omitempty" tf:"period_since_creation_in_days,omitempty"` // Defines the mode of the policy. Disabled state disables the policy, Unlocked state allows increase and decrease of immutability retention time and also allows toggling allowProtectedAppendWrites property, Locked state only allows the increase of the immutability retention time. A policy can only be created in a Disabled or Unlocked state and can be toggled between the two states. Only a policy in an Unlocked state can transition to a Locked state which cannot be reverted. + // +kubebuilder:validation:Optional State *string `json:"state,omitempty" tf:"state,omitempty"` } @@ -905,18 +976,23 @@ type LoggingObservation struct { type LoggingParameters struct { // (Defaults to 60 minutes) Used when deleting the Storage Account. + // +kubebuilder:validation:Optional Delete *bool `json:"delete,omitempty" tf:"delete,omitempty"` // (Defaults to 5 minutes) Used when retrieving the Storage Account. + // +kubebuilder:validation:Optional Read *bool `json:"read,omitempty" tf:"read,omitempty"` // Specifies the number of days that logs will be retained. + // +kubebuilder:validation:Optional RetentionPolicyDays *float64 `json:"retentionPolicyDays,omitempty" tf:"retention_policy_days,omitempty"` // The version of storage analytics to configure. + // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` // Indicates whether all write requests should be logged. + // +kubebuilder:validation:Optional Write *bool `json:"write,omitempty" tf:"write,omitempty"` } @@ -953,15 +1029,19 @@ type MinuteMetricsObservation struct { type MinuteMetricsParameters struct { // Indicates whether minute metrics are enabled for the Queue service. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Indicates whether metrics should generate summary statistics for called API operations. + // +kubebuilder:validation:Optional IncludeApis *bool `json:"includeApis,omitempty" tf:"include_apis,omitempty"` // Specifies the number of days that logs will be retained. + // +kubebuilder:validation:Optional RetentionPolicyDays *float64 `json:"retentionPolicyDays,omitempty" tf:"retention_policy_days,omitempty"` // The version of storage analytics to configure. + // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` } @@ -1004,18 +1084,23 @@ type NetworkRulesObservation struct { type NetworkRulesParameters struct { // Specifies whether traffic is bypassed for Logging/Metrics/AzureServices. Valid options are any combination of Logging, Metrics, AzureServices, or None. + // +kubebuilder:validation:Optional Bypass []*string `json:"bypass,omitempty" tf:"bypass,omitempty"` // Specifies the default action of allow or deny when no other rules match. Valid options are Deny or Allow. + // +kubebuilder:validation:Optional DefaultAction *string `json:"defaultAction,omitempty" tf:"default_action,omitempty"` // List of public IP or IP ranges in CIDR Format. Only IPv4 addresses are allowed. /31 CIDRs, /32 CIDRs, and Private IP address ranges (as defined in RFC 1918), are not allowed. + // +kubebuilder:validation:Optional IPRules []*string `json:"ipRules,omitempty" tf:"ip_rules,omitempty"` // One or More private_link_access block as defined below. + // +kubebuilder:validation:Optional PrivateLinkAccess []PrivateLinkAccessParameters `json:"privateLinkAccess,omitempty" tf:"private_link_access,omitempty"` // A list of resource ids for subnets. + // +kubebuilder:validation:Optional VirtualNetworkSubnetIds []*string `json:"virtualNetworkSubnetIds,omitempty" tf:"virtual_network_subnet_ids,omitempty"` } @@ -1040,9 +1125,11 @@ type PrivateLinkAccessObservation struct { type PrivateLinkAccessParameters struct { // The resource id of the resource access rule to be granted access. + // +kubebuilder:validation:Optional EndpointResourceID *string `json:"endpointResourceId,omitempty" tf:"endpoint_resource_id,omitempty"` // The tenant id of the resource of the resource access rule to be granted access. Defaults to the current tenant id. + // +kubebuilder:validation:Optional EndpointTenantID *string `json:"endpointTenantId,omitempty" tf:"endpoint_tenant_id,omitempty"` } @@ -1087,19 +1174,24 @@ type QueuePropertiesCorsRuleObservation struct { type QueuePropertiesCorsRuleParameters struct { // A list of headers that are allowed to be a part of the cross-origin request. + // +kubebuilder:validation:Optional AllowedHeaders []*string `json:"allowedHeaders,omitempty" tf:"allowed_headers,omitempty"` // A list of HTTP methods that are allowed to be executed by the origin. Valid options are // DELETE, GET, HEAD, MERGE, POST, OPTIONS, PUT or PATCH. + // +kubebuilder:validation:Optional AllowedMethods []*string `json:"allowedMethods,omitempty" tf:"allowed_methods,omitempty"` // A list of origin domains that will be allowed by CORS. + // +kubebuilder:validation:Optional AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` // A list of response headers that are exposed to CORS clients. + // +kubebuilder:validation:Optional ExposedHeaders []*string `json:"exposedHeaders,omitempty" tf:"exposed_headers,omitempty"` // The number of seconds the client should cache a preflight response. + // +kubebuilder:validation:Optional MaxAgeInSeconds *float64 `json:"maxAgeInSeconds,omitempty" tf:"max_age_in_seconds,omitempty"` } @@ -1136,15 +1228,19 @@ type QueuePropertiesObservation struct { type QueuePropertiesParameters struct { // A cors_rule block as defined above. + // +kubebuilder:validation:Optional CorsRule []QueuePropertiesCorsRuleParameters `json:"corsRule,omitempty" tf:"cors_rule,omitempty"` // A hour_metrics block as defined below. + // +kubebuilder:validation:Optional HourMetrics []HourMetricsParameters `json:"hourMetrics,omitempty" tf:"hour_metrics,omitempty"` // A logging block as defined below. + // +kubebuilder:validation:Optional Logging []LoggingParameters `json:"logging,omitempty" tf:"logging,omitempty"` // A minute_metrics block as defined below. + // +kubebuilder:validation:Optional MinuteMetrics []MinuteMetricsParameters `json:"minuteMetrics,omitempty" tf:"minute_metrics,omitempty"` } @@ -1163,6 +1259,7 @@ type RestorePolicyObservation struct { type RestorePolicyParameters struct { // Specifies the number of days that the azurerm_storage_share should be retained, between 1 and 365 days. Defaults to 7. + // +kubebuilder:validation:Optional Days *float64 `json:"days,omitempty" tf:"days,omitempty"` } @@ -1181,6 +1278,7 @@ type RetentionPolicyObservation struct { type RetentionPolicyParameters struct { // Specifies the number of days that the azurerm_storage_share should be retained, between 1 and 365 days. Defaults to 7. + // +kubebuilder:validation:Optional Days *float64 `json:"days,omitempty" tf:"days,omitempty"` } @@ -1211,12 +1309,15 @@ type RoutingObservation struct { type RoutingParameters struct { // Specifies the kind of network routing opted by the user. Possible values are InternetRouting and MicrosoftRouting. Defaults to MicrosoftRouting. + // +kubebuilder:validation:Optional Choice *string `json:"choice,omitempty" tf:"choice,omitempty"` // Should internet routing storage endpoints be published? Defaults to false. + // +kubebuilder:validation:Optional PublishInternetEndpoints *bool `json:"publishInternetEndpoints,omitempty" tf:"publish_internet_endpoints,omitempty"` // Should Microsoft routing storage endpoints be published? Defaults to false. + // +kubebuilder:validation:Optional PublishMicrosoftEndpoints *bool `json:"publishMicrosoftEndpoints,omitempty" tf:"publish_microsoft_endpoints,omitempty"` } @@ -1241,9 +1342,11 @@ type SASPolicyObservation struct { type SASPolicyParameters struct { // The SAS expiration action. The only possible value is Log at this moment. Defaults to Log. + // +kubebuilder:validation:Optional ExpirationAction *string `json:"expirationAction,omitempty" tf:"expiration_action,omitempty"` // The SAS expiration period in format of DD.HH:MM:SS. + // +kubebuilder:validation:Optional ExpirationPeriod *string `json:"expirationPeriod,omitempty" tf:"expiration_period,omitempty"` } @@ -1286,18 +1389,23 @@ type SMBObservation struct { type SMBParameters struct { // A set of SMB authentication methods. Possible values are NTLMv2, and Kerberos. + // +kubebuilder:validation:Optional AuthenticationTypes []*string `json:"authenticationTypes,omitempty" tf:"authentication_types,omitempty"` // A set of SMB channel encryption. Possible values are AES-128-CCM, AES-128-GCM, and AES-256-GCM. + // +kubebuilder:validation:Optional ChannelEncryptionType []*string `json:"channelEncryptionType,omitempty" tf:"channel_encryption_type,omitempty"` // A set of Kerberos ticket encryption. Possible values are RC4-HMAC, and AES-256. + // +kubebuilder:validation:Optional KerberosTicketEncryptionType []*string `json:"kerberosTicketEncryptionType,omitempty" tf:"kerberos_ticket_encryption_type,omitempty"` // Indicates whether multichannel is enabled. Defaults to false. This is only supported on Premium storage accounts. + // +kubebuilder:validation:Optional MultichannelEnabled *bool `json:"multichannelEnabled,omitempty" tf:"multichannel_enabled,omitempty"` // A set of SMB protocol versions. Possible values are SMB2.1, SMB3.0, and SMB3.1.1. + // +kubebuilder:validation:Optional Versions []*string `json:"versions,omitempty" tf:"versions,omitempty"` } @@ -1342,19 +1450,24 @@ type SharePropertiesCorsRuleObservation struct { type SharePropertiesCorsRuleParameters struct { // A list of headers that are allowed to be a part of the cross-origin request. + // +kubebuilder:validation:Optional AllowedHeaders []*string `json:"allowedHeaders,omitempty" tf:"allowed_headers,omitempty"` // A list of HTTP methods that are allowed to be executed by the origin. Valid options are // DELETE, GET, HEAD, MERGE, POST, OPTIONS, PUT or PATCH. + // +kubebuilder:validation:Optional AllowedMethods []*string `json:"allowedMethods,omitempty" tf:"allowed_methods,omitempty"` // A list of origin domains that will be allowed by CORS. + // +kubebuilder:validation:Optional AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` // A list of response headers that are exposed to CORS clients. + // +kubebuilder:validation:Optional ExposedHeaders []*string `json:"exposedHeaders,omitempty" tf:"exposed_headers,omitempty"` // The number of seconds the client should cache a preflight response. + // +kubebuilder:validation:Optional MaxAgeInSeconds *float64 `json:"maxAgeInSeconds,omitempty" tf:"max_age_in_seconds,omitempty"` } @@ -1385,12 +1498,15 @@ type SharePropertiesObservation struct { type SharePropertiesParameters struct { // A cors_rule block as defined below. + // +kubebuilder:validation:Optional CorsRule []SharePropertiesCorsRuleParameters `json:"corsRule,omitempty" tf:"cors_rule,omitempty"` // A retention_policy block as defined below. + // +kubebuilder:validation:Optional RetentionPolicy []RetentionPolicyParameters `json:"retentionPolicy,omitempty" tf:"retention_policy,omitempty"` // A smb block as defined below. + // +kubebuilder:validation:Optional SMB []SMBParameters `json:"smb,omitempty" tf:"smb,omitempty"` } @@ -1415,9 +1531,11 @@ type StaticWebsiteObservation struct { type StaticWebsiteParameters struct { // The absolute path to a custom webpage that should be used when a request is made which does not correspond to an existing file. + // +kubebuilder:validation:Optional Error404Document *string `json:"error404Document,omitempty" tf:"error_404_document,omitempty"` // The webpage that Azure Storage serves for requests to the root of a website or any subfolder. For example, index.html. The value is case-sensitive. + // +kubebuilder:validation:Optional IndexDocument *string `json:"indexDocument,omitempty" tf:"index_document,omitempty"` } diff --git a/apis/storage/v1beta1/zz_accountlocaluser_types.go b/apis/storage/v1beta1/zz_accountlocaluser_types.go index 3fed23c97..6e36b871d 100755 --- a/apis/storage/v1beta1/zz_accountlocaluser_types.go +++ b/apis/storage/v1beta1/zz_accountlocaluser_types.go @@ -58,18 +58,23 @@ type AccountLocalUserObservation struct { type AccountLocalUserParameters struct { // The home directory of the Storage Account Local User. + // +kubebuilder:validation:Optional HomeDirectory *string `json:"homeDirectory,omitempty" tf:"home_directory,omitempty"` // One or more permission_scope blocks as defined below. + // +kubebuilder:validation:Optional PermissionScope []PermissionScopeParameters `json:"permissionScope,omitempty" tf:"permission_scope,omitempty"` // One or more ssh_authorized_key blocks as defined below. + // +kubebuilder:validation:Optional SSHAuthorizedKey []SSHAuthorizedKeyParameters `json:"sshAuthorizedKey,omitempty" tf:"ssh_authorized_key,omitempty"` // Specifies whether SSH Key Authentication is enabled. Defaults to false. + // +kubebuilder:validation:Optional SSHKeyEnabled *bool `json:"sshKeyEnabled,omitempty" tf:"ssh_key_enabled,omitempty"` // Specifies whether SSH Password Authentication is enabled. Defaults to false. + // +kubebuilder:validation:Optional SSHPasswordEnabled *bool `json:"sshPasswordEnabled,omitempty" tf:"ssh_password_enabled,omitempty"` // The ID of the Storage Account that this Storage Account Local User resides in. Changing this forces a new Storage Account Local User to be created. @@ -111,6 +116,7 @@ type PermissionScopeObservation struct { type PermissionScopeParameters struct { // A permissions block as defined below. + // +kubebuilder:validation:Optional Permissions []PermissionsParameters `json:"permissions,omitempty" tf:"permissions,omitempty"` // The container name (when service is set to blob) or the file share name (when service is set to file), used by the Storage Account Local User. @@ -127,6 +133,7 @@ type PermissionScopeParameters struct { ResourceNameSelector *v1.Selector `json:"resourceNameSelector,omitempty" tf:"-"` // The storage service used by this Storage Account Local User. Possible values are blob and file. + // +kubebuilder:validation:Optional Service *string `json:"service,omitempty" tf:"service,omitempty"` } @@ -169,18 +176,23 @@ type PermissionsObservation struct { type PermissionsParameters struct { // (Defaults to 30 minutes) Used when creating the Storage Account Local User. + // +kubebuilder:validation:Optional Create *bool `json:"create,omitempty" tf:"create,omitempty"` // (Defaults to 30 minutes) Used when deleting the Storage Account Local User. + // +kubebuilder:validation:Optional Delete *bool `json:"delete,omitempty" tf:"delete,omitempty"` // Specifies if the Local User has the list permission for this scope. Defaults to false. + // +kubebuilder:validation:Optional List *bool `json:"list,omitempty" tf:"list,omitempty"` // (Defaults to 5 minutes) Used when retrieving the Storage Account Local User. + // +kubebuilder:validation:Optional Read *bool `json:"read,omitempty" tf:"read,omitempty"` // Specifies if the Local User has the write permission for this scope. Defaults to false. + // +kubebuilder:validation:Optional Write *bool `json:"write,omitempty" tf:"write,omitempty"` } @@ -205,9 +217,11 @@ type SSHAuthorizedKeyObservation struct { type SSHAuthorizedKeyParameters struct { // The description of this SSH authorized key. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The public key value of this SSH authorized key. + // +kubebuilder:validation:Optional Key *string `json:"key,omitempty" tf:"key,omitempty"` } diff --git a/apis/storage/v1beta1/zz_accountnetworkrules_types.go b/apis/storage/v1beta1/zz_accountnetworkrules_types.go index cc6b34fb0..957392444 100755 --- a/apis/storage/v1beta1/zz_accountnetworkrules_types.go +++ b/apis/storage/v1beta1/zz_accountnetworkrules_types.go @@ -58,15 +58,19 @@ type AccountNetworkRulesObservation struct { type AccountNetworkRulesParameters struct { // Specifies whether traffic is bypassed for Logging/Metrics/AzureServices. Valid options are any combination of Logging, Metrics, AzureServices, or None. + // +kubebuilder:validation:Optional Bypass []*string `json:"bypass,omitempty" tf:"bypass,omitempty"` // Specifies the default action of allow or deny when no other rules match. Valid options are Deny or Allow. + // +kubebuilder:validation:Optional DefaultAction *string `json:"defaultAction,omitempty" tf:"default_action,omitempty"` // List of public IP or IP ranges in CIDR Format. Only IPv4 addresses are allowed. Private IP address ranges (as defined in RFC 1918) are not allowed. + // +kubebuilder:validation:Optional IPRules []*string `json:"ipRules,omitempty" tf:"ip_rules,omitempty"` // One or More private_link_access block as defined below. + // +kubebuilder:validation:Optional PrivateLinkAccess []AccountNetworkRulesPrivateLinkAccessParameters `json:"privateLinkAccess,omitempty" tf:"private_link_access,omitempty"` // Specifies the ID of the storage account. Changing this forces a new resource to be created. @@ -84,6 +88,7 @@ type AccountNetworkRulesParameters struct { StorageAccountIDSelector *v1.Selector `json:"storageAccountIdSelector,omitempty" tf:"-"` // A list of virtual network subnet ids to secure the storage account. + // +kubebuilder:validation:Optional VirtualNetworkSubnetIds []*string `json:"virtualNetworkSubnetIds,omitempty" tf:"virtual_network_subnet_ids,omitempty"` } @@ -108,9 +113,11 @@ type AccountNetworkRulesPrivateLinkAccessObservation struct { type AccountNetworkRulesPrivateLinkAccessParameters struct { // The resource id of the resource access rule to be granted access. + // +kubebuilder:validation:Optional EndpointResourceID *string `json:"endpointResourceId,omitempty" tf:"endpoint_resource_id,omitempty"` // The tenant id of the resource of the resource access rule to be granted access. Defaults to the current tenant id. + // +kubebuilder:validation:Optional EndpointTenantID *string `json:"endpointTenantId,omitempty" tf:"endpoint_tenant_id,omitempty"` } diff --git a/apis/storage/v1beta1/zz_blob_types.go b/apis/storage/v1beta1/zz_blob_types.go index d9ac69e38..402e90aa0 100755 --- a/apis/storage/v1beta1/zz_blob_types.go +++ b/apis/storage/v1beta1/zz_blob_types.go @@ -101,33 +101,43 @@ type BlobObservation struct { type BlobParameters struct { // The access tier of the storage blob. Possible values are Archive, Cool and Hot. + // +kubebuilder:validation:Optional AccessTier *string `json:"accessTier,omitempty" tf:"access_tier,omitempty"` // Controls the cache control header content of the response when blob is requested . + // +kubebuilder:validation:Optional CacheControl *string `json:"cacheControl,omitempty" tf:"cache_control,omitempty"` // The MD5 sum of the blob contents. Cannot be defined if source_uri is defined, or if blob type is Append or Page. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ContentMd5 *string `json:"contentMd5,omitempty" tf:"content_md5,omitempty"` // The content type of the storage blob. Cannot be defined if source_uri is defined. Defaults to application/octet-stream. + // +kubebuilder:validation:Optional ContentType *string `json:"contentType,omitempty" tf:"content_type,omitempty"` // A map of custom blob metadata. + // +kubebuilder:validation:Optional Metadata map[string]*string `json:"metadata,omitempty" tf:"metadata,omitempty"` // The number of workers per CPU core to run for concurrent uploads. Defaults to 8. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Parallelism *float64 `json:"parallelism,omitempty" tf:"parallelism,omitempty"` // Used only for page blobs to specify the size in bytes of the blob to be created. Must be a multiple of 512. Defaults to 0. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Size *float64 `json:"size,omitempty" tf:"size,omitempty"` // An absolute path to a file on the local system. This field cannot be specified for Append blobs and cannot be specified if source_content or source_uri is specified. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Source *string `json:"source,omitempty" tf:"source,omitempty"` // The content for this blob which should be defined inline. This field can only be specified for Block blobs and cannot be specified if source or source_uri is specified. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SourceContent *string `json:"sourceContent,omitempty" tf:"source_content,omitempty"` // The URI of an existing blob, or a file in the Azure File service, to use as the source contents for the blob to be created. Changing this forces a new resource to be created. This field cannot be specified for Append blobs and cannot be specified if source or source_content is specified. + // +kubebuilder:validation:Optional SourceURI *string `json:"sourceUri,omitempty" tf:"source_uri,omitempty"` // Specifies the storage account in which to create the storage container. Changing this forces a new resource to be created. @@ -158,6 +168,7 @@ type BlobParameters struct { StorageContainerNameSelector *v1.Selector `json:"storageContainerNameSelector,omitempty" tf:"-"` // The type of the storage blob to be created. Possible values are Append, Block or Page. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/storage/v1beta1/zz_blobinventorypolicy_types.go b/apis/storage/v1beta1/zz_blobinventorypolicy_types.go index 5a474a8c9..fd394b3ad 100755 --- a/apis/storage/v1beta1/zz_blobinventorypolicy_types.go +++ b/apis/storage/v1beta1/zz_blobinventorypolicy_types.go @@ -34,6 +34,7 @@ type BlobInventoryPolicyObservation struct { type BlobInventoryPolicyParameters struct { // One or more rules blocks as defined below. + // +kubebuilder:validation:Optional Rules []RulesParameters `json:"rules,omitempty" tf:"rules,omitempty"` // The ID of the storage account to apply this Blob Inventory Policy to. Changing this forces a new Storage Blob Inventory Policy to be created. @@ -96,21 +97,27 @@ type FilterObservation struct { type FilterParameters struct { // A set of blob types. Possible values are blockBlob, appendBlob, and pageBlob. The storage account with is_hns_enabled is true doesn't support pageBlob. + // +kubebuilder:validation:Optional BlobTypes []*string `json:"blobTypes,omitempty" tf:"blob_types,omitempty"` // A set of strings for blob prefixes to be excluded. Maximum of 10 blob prefixes. + // +kubebuilder:validation:Optional ExcludePrefixes []*string `json:"excludePrefixes,omitempty" tf:"exclude_prefixes,omitempty"` // Includes blob versions in blob inventory or not? Defaults to false. + // +kubebuilder:validation:Optional IncludeBlobVersions *bool `json:"includeBlobVersions,omitempty" tf:"include_blob_versions,omitempty"` // Includes deleted blobs in blob inventory or not? Defaults to false. + // +kubebuilder:validation:Optional IncludeDeleted *bool `json:"includeDeleted,omitempty" tf:"include_deleted,omitempty"` // Includes blob snapshots in blob inventory or not? Defaults to false. + // +kubebuilder:validation:Optional IncludeSnapshots *bool `json:"includeSnapshots,omitempty" tf:"include_snapshots,omitempty"` // A set of strings for blob prefixes to be matched. Maximum of 10 blob prefixes. + // +kubebuilder:validation:Optional PrefixMatch []*string `json:"prefixMatch,omitempty" tf:"prefix_match,omitempty"` } @@ -162,21 +169,27 @@ type RulesObservation struct { type RulesParameters struct { // A filter block as defined above. Can only be set when the scope is Blob. + // +kubebuilder:validation:Optional Filter []FilterParameters `json:"filter,omitempty" tf:"filter,omitempty"` // The format of the inventory files. Possible values are Csv and Parquet. + // +kubebuilder:validation:Optional Format *string `json:"format,omitempty" tf:"format,omitempty"` // The name which should be used for this Blob Inventory Policy Rule. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The inventory schedule applied by this rule. Possible values are Daily and Weekly. + // +kubebuilder:validation:Optional Schedule *string `json:"schedule,omitempty" tf:"schedule,omitempty"` // A list of fields to be included in the inventory. See the Azure API reference for all the supported fields. + // +kubebuilder:validation:Optional SchemaFields []*string `json:"schemaFields,omitempty" tf:"schema_fields,omitempty"` // The scope of the inventory for this rule. Possible values are Blob and Container. + // +kubebuilder:validation:Optional Scope *string `json:"scope,omitempty" tf:"scope,omitempty"` // The storage container name to store the blob inventory files for this rule. diff --git a/apis/storage/v1beta1/zz_container_types.go b/apis/storage/v1beta1/zz_container_types.go index 37c18951a..176b1aa6a 100755 --- a/apis/storage/v1beta1/zz_container_types.go +++ b/apis/storage/v1beta1/zz_container_types.go @@ -49,9 +49,11 @@ type ContainerObservation struct { type ContainerParameters struct { // The Access Level configured for this Container. Possible values are blob, container or private. Defaults to private. + // +kubebuilder:validation:Optional ContainerAccessType *string `json:"containerAccessType,omitempty" tf:"container_access_type,omitempty"` // A mapping of MetaData for this Container. All metadata keys should be lowercase. + // +kubebuilder:validation:Optional Metadata map[string]*string `json:"metadata,omitempty" tf:"metadata,omitempty"` // The name of the Storage Account where the Container should be created. Changing this forces a new resource to be created. diff --git a/apis/storage/v1beta1/zz_datalakegen2filesystem_types.go b/apis/storage/v1beta1/zz_datalakegen2filesystem_types.go index d7efb8149..b272eca71 100755 --- a/apis/storage/v1beta1/zz_datalakegen2filesystem_types.go +++ b/apis/storage/v1beta1/zz_datalakegen2filesystem_types.go @@ -46,15 +46,19 @@ type AceObservation struct { type AceParameters struct { // Specifies the Object ID of the Azure Active Directory User or Group that the entry relates to. Only valid for user or group entries. + // +kubebuilder:validation:Optional ID *string `json:"id,omitempty" tf:"id,omitempty"` // Specifies the permissions for the entry in rwx form. For example, rwx gives full permissions but r-- only gives read permissions. + // +kubebuilder:validation:Optional Permissions *string `json:"permissions,omitempty" tf:"permissions,omitempty"` // Specifies whether the ACE represents an access entry or a default entry. Default value is access. + // +kubebuilder:validation:Optional Scope *string `json:"scope,omitempty" tf:"scope,omitempty"` // Specifies the type of entry. Can be user, group, mask or other. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -97,15 +101,19 @@ type DataLakeGen2FileSystemObservation struct { type DataLakeGen2FileSystemParameters struct { // One or more ace blocks as defined below to specify the entries for the ACL for the path. + // +kubebuilder:validation:Optional Ace []AceParameters `json:"ace,omitempty" tf:"ace,omitempty"` // Specifies the Object ID of the Azure Active Directory Group to make the owning group of the root path (i.e. /). Possible values also include $superuser. + // +kubebuilder:validation:Optional Group *string `json:"group,omitempty" tf:"group,omitempty"` // Specifies the Object ID of the Azure Active Directory User to make the owning user of the root path (i.e. /). Possible values also include $superuser. + // +kubebuilder:validation:Optional Owner *string `json:"owner,omitempty" tf:"owner,omitempty"` // A mapping of Key to Base64-Encoded Values which should be assigned to this Data Lake Gen2 File System. + // +kubebuilder:validation:Optional Properties map[string]*string `json:"properties,omitempty" tf:"properties,omitempty"` // Specifies the ID of the Storage Account in which the Data Lake Gen2 File System should exist. Changing this forces a new resource to be created. diff --git a/apis/storage/v1beta1/zz_datalakegen2path_types.go b/apis/storage/v1beta1/zz_datalakegen2path_types.go index e484dc370..bfa3880a2 100755 --- a/apis/storage/v1beta1/zz_datalakegen2path_types.go +++ b/apis/storage/v1beta1/zz_datalakegen2path_types.go @@ -46,15 +46,19 @@ type DataLakeGen2PathAceObservation struct { type DataLakeGen2PathAceParameters struct { // Specifies the Object ID of the Azure Active Directory User or Group that the entry relates to. Only valid for user or group entries. + // +kubebuilder:validation:Optional ID *string `json:"id,omitempty" tf:"id,omitempty"` // Specifies the permissions for the entry in rwx form. For example, rwx gives full permissions but r-- only gives read permissions. + // +kubebuilder:validation:Optional Permissions *string `json:"permissions,omitempty" tf:"permissions,omitempty"` // Specifies whether the ACE represents an access entry or a default entry. Default value is access. + // +kubebuilder:validation:Optional Scope *string `json:"scope,omitempty" tf:"scope,omitempty"` // Specifies the type of entry. Can be user, group, mask or other. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -106,6 +110,7 @@ type DataLakeGen2PathObservation struct { type DataLakeGen2PathParameters struct { // One or more ace blocks as defined below to specify the entries for the ACL for the path. + // +kubebuilder:validation:Optional Ace []DataLakeGen2PathAceParameters `json:"ace,omitempty" tf:"ace,omitempty"` // The name of the Data Lake Gen2 File System which should be created within the Storage Account. Must be unique within the storage account the queue is located. Changing this forces a new resource to be created. @@ -122,15 +127,19 @@ type DataLakeGen2PathParameters struct { FileSystemNameSelector *v1.Selector `json:"filesystemNameSelector,omitempty" tf:"-"` // Specifies the Object ID of the Azure Active Directory Group to make the owning group. Possible values also include $superuser. + // +kubebuilder:validation:Optional Group *string `json:"group,omitempty" tf:"group,omitempty"` // Specifies the Object ID of the Azure Active Directory User to make the owning user. Possible values also include $superuser. + // +kubebuilder:validation:Optional Owner *string `json:"owner,omitempty" tf:"owner,omitempty"` // The path which should be created within the Data Lake Gen2 File System in the Storage Account. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` // Specifies the type for path to create. Currently only directory is supported. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Resource *string `json:"resource,omitempty" tf:"resource,omitempty"` // Specifies the ID of the Storage Account in which the Data Lake Gen2 File System should exist. Changing this forces a new resource to be created. diff --git a/apis/storage/v1beta1/zz_encryptionscope_types.go b/apis/storage/v1beta1/zz_encryptionscope_types.go index e2ac09874..5eb16a9da 100755 --- a/apis/storage/v1beta1/zz_encryptionscope_types.go +++ b/apis/storage/v1beta1/zz_encryptionscope_types.go @@ -46,12 +46,15 @@ type EncryptionScopeObservation struct { type EncryptionScopeParameters struct { // Is a secondary layer of encryption with Platform Managed Keys for data applied? Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional InfrastructureEncryptionRequired *bool `json:"infrastructureEncryptionRequired,omitempty" tf:"infrastructure_encryption_required,omitempty"` // The ID of the Key Vault Key. Required when source is Microsoft.KeyVault. + // +kubebuilder:validation:Optional KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"` // The source of the Storage Encryption Scope. Possible values are Microsoft.KeyVault and Microsoft.Storage. + // +kubebuilder:validation:Optional Source *string `json:"source,omitempty" tf:"source,omitempty"` // The ID of the Storage Account where this Storage Encryption Scope is created. Changing this forces a new Storage Encryption Scope to be created. diff --git a/apis/storage/v1beta1/zz_managementpolicy_types.go b/apis/storage/v1beta1/zz_managementpolicy_types.go index 5c44d2ab4..092aadedf 100755 --- a/apis/storage/v1beta1/zz_managementpolicy_types.go +++ b/apis/storage/v1beta1/zz_managementpolicy_types.go @@ -40,12 +40,15 @@ type ActionsObservation struct { type ActionsParameters struct { // A base_blob block as documented below. + // +kubebuilder:validation:Optional BaseBlob []BaseBlobParameters `json:"baseBlob,omitempty" tf:"base_blob,omitempty"` // A snapshot block as documented below. + // +kubebuilder:validation:Optional Snapshot []SnapshotParameters `json:"snapshot,omitempty" tf:"snapshot,omitempty"` // A version block as documented below. + // +kubebuilder:validation:Optional Version []VersionParameters `json:"version,omitempty" tf:"version,omitempty"` } @@ -124,36 +127,47 @@ type BaseBlobObservation struct { type BaseBlobParameters struct { // Whether a blob should automatically be tiered from cool back to hot if it's accessed again after being tiered to cool. Defaults to false. + // +kubebuilder:validation:Optional AutoTierToHotFromCoolEnabled *bool `json:"autoTierToHotFromCoolEnabled,omitempty" tf:"auto_tier_to_hot_from_cool_enabled,omitempty"` // The age in days after creation to delete the blob snapshot. Must be between 0 and 99999. Defaults to -1. + // +kubebuilder:validation:Optional DeleteAfterDaysSinceCreationGreaterThan *float64 `json:"deleteAfterDaysSinceCreationGreaterThan,omitempty" tf:"delete_after_days_since_creation_greater_than,omitempty"` // The age in days after last access time to delete the blob. Must be between 0 and 99999. Defaults to -1. + // +kubebuilder:validation:Optional DeleteAfterDaysSinceLastAccessTimeGreaterThan *float64 `json:"deleteAfterDaysSinceLastAccessTimeGreaterThan,omitempty" tf:"delete_after_days_since_last_access_time_greater_than,omitempty"` // The age in days after last modification to delete the blob. Must be between 0 and 99999. Defaults to -1. + // +kubebuilder:validation:Optional DeleteAfterDaysSinceModificationGreaterThan *float64 `json:"deleteAfterDaysSinceModificationGreaterThan,omitempty" tf:"delete_after_days_since_modification_greater_than,omitempty"` // The age in days after creation to archive storage. Supports blob currently at Hot or Cool tier. Must be between 0 and99999. Defaults to -1. + // +kubebuilder:validation:Optional TierToArchiveAfterDaysSinceCreationGreaterThan *float64 `json:"tierToArchiveAfterDaysSinceCreationGreaterThan,omitempty" tf:"tier_to_archive_after_days_since_creation_greater_than,omitempty"` // The age in days after last access time to tier blobs to archive storage. Supports blob currently at Hot or Cool tier. Must be between 0 and99999. Defaults to -1. + // +kubebuilder:validation:Optional TierToArchiveAfterDaysSinceLastAccessTimeGreaterThan *float64 `json:"tierToArchiveAfterDaysSinceLastAccessTimeGreaterThan,omitempty" tf:"tier_to_archive_after_days_since_last_access_time_greater_than,omitempty"` // The age in days after last tier change to the blobs to skip to be archved. Must be between 0 and 99999. Defaults to -1. + // +kubebuilder:validation:Optional TierToArchiveAfterDaysSinceLastTierChangeGreaterThan *float64 `json:"tierToArchiveAfterDaysSinceLastTierChangeGreaterThan,omitempty" tf:"tier_to_archive_after_days_since_last_tier_change_greater_than,omitempty"` // The age in days after last modification to tier blobs to archive storage. Supports blob currently at Hot or Cool tier. Must be between 0 and 99999. Defaults to -1. + // +kubebuilder:validation:Optional TierToArchiveAfterDaysSinceModificationGreaterThan *float64 `json:"tierToArchiveAfterDaysSinceModificationGreaterThan,omitempty" tf:"tier_to_archive_after_days_since_modification_greater_than,omitempty"` // The age in days after creation to cool storage. Supports blob currently at Hot tier. Must be between 0 and 99999. Defaults to -1. + // +kubebuilder:validation:Optional TierToCoolAfterDaysSinceCreationGreaterThan *float64 `json:"tierToCoolAfterDaysSinceCreationGreaterThan,omitempty" tf:"tier_to_cool_after_days_since_creation_greater_than,omitempty"` // The age in days after last access time to tier blobs to cool storage. Supports blob currently at Hot tier. Must be between 0 and 99999. Defaults to -1. + // +kubebuilder:validation:Optional TierToCoolAfterDaysSinceLastAccessTimeGreaterThan *float64 `json:"tierToCoolAfterDaysSinceLastAccessTimeGreaterThan,omitempty" tf:"tier_to_cool_after_days_since_last_access_time_greater_than,omitempty"` // The age in days after last modification to tier blobs to cool storage. Supports blob currently at Hot tier. Must be between 0 and 99999. Defaults to -1. + // +kubebuilder:validation:Optional TierToCoolAfterDaysSinceModificationGreaterThan *float64 `json:"tierToCoolAfterDaysSinceModificationGreaterThan,omitempty" tf:"tier_to_cool_after_days_since_modification_greater_than,omitempty"` } @@ -184,12 +198,15 @@ type FiltersObservation struct { type FiltersParameters struct { // An array of predefined values. Valid options are blockBlob and appendBlob. + // +kubebuilder:validation:Optional BlobTypes []*string `json:"blobTypes,omitempty" tf:"blob_types,omitempty"` // A match_blob_index_tag block as defined below. The block defines the blob index tag based filtering for blob objects. + // +kubebuilder:validation:Optional MatchBlobIndexTag []MatchBlobIndexTagParameters `json:"matchBlobIndexTag,omitempty" tf:"match_blob_index_tag,omitempty"` // An array of strings for prefixes to be matched. + // +kubebuilder:validation:Optional PrefixMatch []*string `json:"prefixMatch,omitempty" tf:"prefix_match,omitempty"` } @@ -214,6 +231,7 @@ type ManagementPolicyObservation struct { type ManagementPolicyParameters struct { // A rule block as documented below. + // +kubebuilder:validation:Optional Rule []RuleParameters `json:"rule,omitempty" tf:"rule,omitempty"` // Specifies the id of the storage account to apply the management policy to. Changing this forces a new resource to be created. @@ -258,12 +276,15 @@ type MatchBlobIndexTagObservation struct { type MatchBlobIndexTagParameters struct { // The name of the rule. Rule name is case-sensitive. It must be unique within a policy. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The comparison operator which is used for object comparison and filtering. Possible value is ==. Defaults to ==. + // +kubebuilder:validation:Optional Operation *string `json:"operation,omitempty" tf:"operation,omitempty"` // The filter tag value used for tag based filtering for blob objects. + // +kubebuilder:validation:Optional Value *string `json:"value,omitempty" tf:"value,omitempty"` } @@ -300,15 +321,19 @@ type RuleObservation struct { type RuleParameters struct { // An actions block as documented below. + // +kubebuilder:validation:Optional Actions []ActionsParameters `json:"actions,omitempty" tf:"actions,omitempty"` // Boolean to specify whether the rule is enabled. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // A filters block as documented below. + // +kubebuilder:validation:Optional Filters []FiltersParameters `json:"filters,omitempty" tf:"filters,omitempty"` // The name of the rule. Rule name is case-sensitive. It must be unique within a policy. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -345,15 +370,19 @@ type SnapshotObservation struct { type SnapshotParameters struct { // The age in days after creation to tier blob version to archive storage. Must be between 0 and 99999. Defaults to -1. + // +kubebuilder:validation:Optional ChangeTierToArchiveAfterDaysSinceCreation *float64 `json:"changeTierToArchiveAfterDaysSinceCreation,omitempty" tf:"change_tier_to_archive_after_days_since_creation,omitempty"` // The age in days creation create to tier blob version to cool storage. Must be between 0 and 99999. Defaults to -1. + // +kubebuilder:validation:Optional ChangeTierToCoolAfterDaysSinceCreation *float64 `json:"changeTierToCoolAfterDaysSinceCreation,omitempty" tf:"change_tier_to_cool_after_days_since_creation,omitempty"` // The age in days after creation to delete the blob snapshot. Must be between 0 and 99999. Defaults to -1. + // +kubebuilder:validation:Optional DeleteAfterDaysSinceCreationGreaterThan *float64 `json:"deleteAfterDaysSinceCreationGreaterThan,omitempty" tf:"delete_after_days_since_creation_greater_than,omitempty"` // The age in days after last tier change to the blobs to skip to be archved. Must be between 0 and 99999. Defaults to -1. + // +kubebuilder:validation:Optional TierToArchiveAfterDaysSinceLastTierChangeGreaterThan *float64 `json:"tierToArchiveAfterDaysSinceLastTierChangeGreaterThan,omitempty" tf:"tier_to_archive_after_days_since_last_tier_change_greater_than,omitempty"` } @@ -390,15 +419,19 @@ type VersionObservation struct { type VersionParameters struct { // The age in days after creation to tier blob version to archive storage. Must be between 0 and 99999. Defaults to -1. + // +kubebuilder:validation:Optional ChangeTierToArchiveAfterDaysSinceCreation *float64 `json:"changeTierToArchiveAfterDaysSinceCreation,omitempty" tf:"change_tier_to_archive_after_days_since_creation,omitempty"` // The age in days creation create to tier blob version to cool storage. Must be between 0 and 99999. Defaults to -1. + // +kubebuilder:validation:Optional ChangeTierToCoolAfterDaysSinceCreation *float64 `json:"changeTierToCoolAfterDaysSinceCreation,omitempty" tf:"change_tier_to_cool_after_days_since_creation,omitempty"` // The age in days after creation to delete the blob version. Must be between 0 and 99999. Defaults to -1. + // +kubebuilder:validation:Optional DeleteAfterDaysSinceCreation *float64 `json:"deleteAfterDaysSinceCreation,omitempty" tf:"delete_after_days_since_creation,omitempty"` // The age in days after last tier change to the blobs to skip to be archved. Must be between 0 and 99999. Defaults to -1. + // +kubebuilder:validation:Optional TierToArchiveAfterDaysSinceLastTierChangeGreaterThan *float64 `json:"tierToArchiveAfterDaysSinceLastTierChangeGreaterThan,omitempty" tf:"tier_to_archive_after_days_since_last_tier_change_greater_than,omitempty"` } diff --git a/apis/storage/v1beta1/zz_objectreplication_types.go b/apis/storage/v1beta1/zz_objectreplication_types.go index 554ce199a..d7c02cf80 100755 --- a/apis/storage/v1beta1/zz_objectreplication_types.go +++ b/apis/storage/v1beta1/zz_objectreplication_types.go @@ -57,6 +57,7 @@ type ObjectReplicationParameters struct { DestinationStorageAccountIDSelector *v1.Selector `json:"destinationStorageAccountIdSelector,omitempty" tf:"-"` // One or more rules blocks as defined below. + // +kubebuilder:validation:Optional Rules []ObjectReplicationRulesParameters `json:"rules,omitempty" tf:"rules,omitempty"` // The ID of the source storage account. Changing this forces a new Storage Object Replication to be created. @@ -103,6 +104,7 @@ type ObjectReplicationRulesObservation struct { type ObjectReplicationRulesParameters struct { // The time after which the Block Blobs created will be copies to the destination. Possible values are OnlyNewObjects, Everything and time in RFC3339 format: 2006-01-02T15:04:00Z. + // +kubebuilder:validation:Optional CopyBlobsCreatedAfter *string `json:"copyBlobsCreatedAfter,omitempty" tf:"copy_blobs_created_after,omitempty"` // The destination storage container name. Changing this forces a new Storage Object Replication to be created. @@ -119,6 +121,7 @@ type ObjectReplicationRulesParameters struct { DestinationContainerNameSelector *v1.Selector `json:"destinationContainerNameSelector,omitempty" tf:"-"` // Specifies a list of filters prefixes, the blobs whose names begin with which will be replicated. + // +kubebuilder:validation:Optional FilterOutBlobsWithPrefix []*string `json:"filterOutBlobsWithPrefix,omitempty" tf:"filter_out_blobs_with_prefix,omitempty"` // The source storage container name. Changing this forces a new Storage Object Replication to be created. diff --git a/apis/storage/v1beta1/zz_queue_types.go b/apis/storage/v1beta1/zz_queue_types.go index ee1396766..0699f2d89 100755 --- a/apis/storage/v1beta1/zz_queue_types.go +++ b/apis/storage/v1beta1/zz_queue_types.go @@ -37,6 +37,7 @@ type QueueObservation struct { type QueueParameters struct { // A mapping of MetaData which should be assigned to this Storage Queue. + // +kubebuilder:validation:Optional Metadata map[string]*string `json:"metadata,omitempty" tf:"metadata,omitempty"` // Specifies the Storage Account in which the Storage Queue should exist. Changing this forces a new resource to be created. diff --git a/apis/storage/v1beta1/zz_share_types.go b/apis/storage/v1beta1/zz_share_types.go index 53a893ebe..9a3f76c69 100755 --- a/apis/storage/v1beta1/zz_share_types.go +++ b/apis/storage/v1beta1/zz_share_types.go @@ -34,9 +34,11 @@ type ACLObservation struct { type ACLParameters struct { // An access_policy block as defined below. + // +kubebuilder:validation:Optional AccessPolicy []AccessPolicyParameters `json:"accessPolicy,omitempty" tf:"access_policy,omitempty"` // The ID which should be used for this Shared Identifier. + // +kubebuilder:validation:Optional ID *string `json:"id,omitempty" tf:"id,omitempty"` } @@ -67,12 +69,15 @@ type AccessPolicyObservation struct { type AccessPolicyParameters struct { // The time at which this Access Policy should be valid until, in ISO8601 format. + // +kubebuilder:validation:Optional Expiry *string `json:"expiry,omitempty" tf:"expiry,omitempty"` // The permissions which should be associated with this Shared Identifier. Possible value is combination of r (read), w (write), d (delete), and l (list). + // +kubebuilder:validation:Optional Permissions *string `json:"permissions,omitempty" tf:"permissions,omitempty"` // The time at which this Access Policy should be valid from, in ISO8601 format. + // +kubebuilder:validation:Optional Start *string `json:"start,omitempty" tf:"start,omitempty"` } @@ -127,18 +132,23 @@ type ShareObservation struct { type ShareParameters struct { // One or more acl blocks as defined below. + // +kubebuilder:validation:Optional ACL []ACLParameters `json:"acl,omitempty" tf:"acl,omitempty"` // The access tier of the File Share. Possible values are Hot, Cool and TransactionOptimized, Premium. + // +kubebuilder:validation:Optional AccessTier *string `json:"accessTier,omitempty" tf:"access_tier,omitempty"` // The protocol used for the share. Possible values are SMB and NFS. The SMB indicates the share can be accessed by SMBv3.0, SMBv2.1 and REST. The NFS indicates the share can be accessed by NFSv4.1. Defaults to SMB. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional EnabledProtocol *string `json:"enabledProtocol,omitempty" tf:"enabled_protocol,omitempty"` // A mapping of MetaData for this File Share. + // +kubebuilder:validation:Optional Metadata map[string]*string `json:"metadata,omitempty" tf:"metadata,omitempty"` // The maximum size of the share, in gigabytes. For Standard storage accounts, this must be 1GB (or higher) and at most 5120 GB (5 TB). For Premium FileStorage storage accounts, this must be greater than 100 GB and at most 102400 GB (100 TB). + // +kubebuilder:validation:Optional Quota *float64 `json:"quota,omitempty" tf:"quota,omitempty"` // Specifies the storage account in which to create the share. Changing this forces a new resource to be created. diff --git a/apis/storage/v1beta1/zz_sharedirectory_types.go b/apis/storage/v1beta1/zz_sharedirectory_types.go index d029c3822..a52d454b3 100755 --- a/apis/storage/v1beta1/zz_sharedirectory_types.go +++ b/apis/storage/v1beta1/zz_sharedirectory_types.go @@ -43,9 +43,11 @@ type ShareDirectoryObservation struct { type ShareDirectoryParameters struct { // A mapping of metadata to assign to this Directory. + // +kubebuilder:validation:Optional Metadata map[string]*string `json:"metadata,omitempty" tf:"metadata,omitempty"` // The name (or path) of the Directory that should be created within this File Share. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The name of the File Share where this Directory should be created. Changing this forces a new resource to be created. diff --git a/apis/storage/v1beta1/zz_table_types.go b/apis/storage/v1beta1/zz_table_types.go index fd66bdabf..b90a313d2 100755 --- a/apis/storage/v1beta1/zz_table_types.go +++ b/apis/storage/v1beta1/zz_table_types.go @@ -40,12 +40,15 @@ type ACLAccessPolicyObservation struct { type ACLAccessPolicyParameters struct { // The ISO8061 UTC time at which this Access Policy should be valid until. + // +kubebuilder:validation:Optional Expiry *string `json:"expiry,omitempty" tf:"expiry,omitempty"` // The permissions which should associated with this Shared Identifier. + // +kubebuilder:validation:Optional Permissions *string `json:"permissions,omitempty" tf:"permissions,omitempty"` // The ISO8061 UTC time at which this Access Policy should be valid from. + // +kubebuilder:validation:Optional Start *string `json:"start,omitempty" tf:"start,omitempty"` } @@ -70,9 +73,11 @@ type TableACLObservation struct { type TableACLParameters struct { // An access_policy block as defined below. + // +kubebuilder:validation:Optional AccessPolicy []ACLAccessPolicyParameters `json:"accessPolicy,omitempty" tf:"access_policy,omitempty"` // The ID which should be used for this Shared Identifier. + // +kubebuilder:validation:Optional ID *string `json:"id,omitempty" tf:"id,omitempty"` } @@ -103,9 +108,11 @@ type TableObservation struct { type TableParameters struct { // One or more acl blocks as defined below. + // +kubebuilder:validation:Optional ACL []TableACLParameters `json:"acl,omitempty" tf:"acl,omitempty"` // The name of the storage table. Only Alphanumeric characters allowed, starting with a letter. Must be unique within the storage account the table is located. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the storage account in which to create the storage table. Changing this forces a new resource to be created. diff --git a/apis/storage/v1beta1/zz_tableentity_types.go b/apis/storage/v1beta1/zz_tableentity_types.go index 90e7a4857..2a91d2068 100755 --- a/apis/storage/v1beta1/zz_tableentity_types.go +++ b/apis/storage/v1beta1/zz_tableentity_types.go @@ -49,12 +49,15 @@ type TableEntityObservation struct { type TableEntityParameters struct { // A map of key/value pairs that describe the entity to be inserted/merged in to the storage table. + // +kubebuilder:validation:Optional Entity map[string]*string `json:"entity,omitempty" tf:"entity,omitempty"` // The key for the partition where the entity will be inserted/merged. Changing this forces a new resource. + // +kubebuilder:validation:Optional PartitionKey *string `json:"partitionKey,omitempty" tf:"partition_key,omitempty"` // The key for the row where the entity will be inserted/merged. Changing this forces a new resource. + // +kubebuilder:validation:Optional RowKey *string `json:"rowKey,omitempty" tf:"row_key,omitempty"` // Specifies the storage account in which to create the storage table entity. Changing this forces a new resource to be created. diff --git a/apis/storagecache/v1beta1/zz_hpccache_types.go b/apis/storagecache/v1beta1/zz_hpccache_types.go index c80106a7f..07b8037d8 100755 --- a/apis/storagecache/v1beta1/zz_hpccache_types.go +++ b/apis/storagecache/v1beta1/zz_hpccache_types.go @@ -70,27 +70,35 @@ type AccessRuleObservation struct { type AccessRuleParameters struct { // The access level for this rule. Possible values are: rw, ro, no. + // +kubebuilder:validation:Optional Access *string `json:"access,omitempty" tf:"access,omitempty"` // The anonymous GID used when root_squash_enabled is true. + // +kubebuilder:validation:Optional AnonymousGID *float64 `json:"anonymousGid,omitempty" tf:"anonymous_gid,omitempty"` // The anonymous UID used when root_squash_enabled is true. + // +kubebuilder:validation:Optional AnonymousUID *float64 `json:"anonymousUid,omitempty" tf:"anonymous_uid,omitempty"` // The filter applied to the scope for this rule. The filter's format depends on its scope: default scope matches all clients and has no filter value; network scope takes a CIDR format; host takes an IP address or fully qualified domain name. If a client does not match any filter rule and there is no default rule, access is denied. + // +kubebuilder:validation:Optional Filter *string `json:"filter,omitempty" tf:"filter,omitempty"` // Whether to enable root squash? + // +kubebuilder:validation:Optional RootSquashEnabled *bool `json:"rootSquashEnabled,omitempty" tf:"root_squash_enabled,omitempty"` // The scope of this rule. The scope and (potentially) the filter determine which clients match the rule. Possible values are: default, network, host. + // +kubebuilder:validation:Optional Scope *string `json:"scope,omitempty" tf:"scope,omitempty"` // Whether allow access to subdirectories under the root export? + // +kubebuilder:validation:Optional SubmountAccessEnabled *bool `json:"submountAccessEnabled,omitempty" tf:"submount_access_enabled,omitempty"` // Whether SUID is allowed? + // +kubebuilder:validation:Optional SuidEnabled *bool `json:"suidEnabled,omitempty" tf:"suid_enabled,omitempty"` } @@ -109,6 +117,7 @@ type BindObservation struct { type BindParameters struct { // The Bind Distinguished Name (DN) identity to be used in the secure LDAP connection. + // +kubebuilder:validation:Optional Dn *string `json:"dn,omitempty" tf:"dn,omitempty"` // The password of the Active Directory domain administrator. @@ -137,9 +146,11 @@ type DNSObservation struct { type DNSParameters struct { // The DNS search domain for the HPC Cache. + // +kubebuilder:validation:Optional SearchDomain *string `json:"searchDomain,omitempty" tf:"search_domain,omitempty"` // A list of DNS servers for the HPC Cache. At most three IP(s) are allowed to set. + // +kubebuilder:validation:Optional Servers []*string `json:"servers,omitempty" tf:"servers,omitempty"` } @@ -158,6 +169,7 @@ type DefaultAccessPolicyObservation struct { type DefaultAccessPolicyParameters struct { // One to three access_rule blocks as defined above. + // +kubebuilder:validation:Optional AccessRule []AccessRuleParameters `json:"accessRule,omitempty" tf:"access_rule,omitempty"` } @@ -206,18 +218,23 @@ type DirectoryActiveDirectoryObservation struct { type DirectoryActiveDirectoryParameters struct { // The NetBIOS name to assign to the HPC Cache when it joins the Active Directory domain as a server. + // +kubebuilder:validation:Optional CacheNetbiosName *string `json:"cacheNetbiosName,omitempty" tf:"cache_netbios_name,omitempty"` // The primary DNS IP address used to resolve the Active Directory domain controller's FQDN. + // +kubebuilder:validation:Optional DNSPrimaryIP *string `json:"dnsPrimaryIp,omitempty" tf:"dns_primary_ip,omitempty"` // The secondary DNS IP address used to resolve the Active Directory domain controller's FQDN. + // +kubebuilder:validation:Optional DNSSecondaryIP *string `json:"dnsSecondaryIp,omitempty" tf:"dns_secondary_ip,omitempty"` // The fully qualified domain name of the Active Directory domain controller. + // +kubebuilder:validation:Optional DomainName *string `json:"domainName,omitempty" tf:"domain_name,omitempty"` // The Active Directory domain's NetBIOS name. + // +kubebuilder:validation:Optional DomainNetbiosName *string `json:"domainNetbiosName,omitempty" tf:"domain_netbios_name,omitempty"` // The password of the Active Directory domain administrator. @@ -225,6 +242,7 @@ type DirectoryActiveDirectoryParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The username of the Active Directory domain administrator. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } @@ -249,9 +267,11 @@ type DirectoryFlatFileObservation struct { type DirectoryFlatFileParameters struct { // The URI of the file containing group information (/etc/group file format in Unix-like OS). + // +kubebuilder:validation:Optional GroupFileURI *string `json:"groupFileUri,omitempty" tf:"group_file_uri,omitempty"` // The URI of the file containing user information (/etc/passwd file format in Unix-like OS). + // +kubebuilder:validation:Optional PasswordFileURI *string `json:"passwordFileUri,omitempty" tf:"password_file_uri,omitempty"` } @@ -300,21 +320,27 @@ type DirectoryLdapObservation struct { type DirectoryLdapParameters struct { // The base distinguished name (DN) for the LDAP domain. + // +kubebuilder:validation:Optional BaseDn *string `json:"baseDn,omitempty" tf:"base_dn,omitempty"` // A bind block as defined above. + // +kubebuilder:validation:Optional Bind []BindParameters `json:"bind,omitempty" tf:"bind,omitempty"` // The URI of the CA certificate to validate the LDAP secure connection. + // +kubebuilder:validation:Optional CertificateValidationURI *string `json:"certificateValidationUri,omitempty" tf:"certificate_validation_uri,omitempty"` // Whether the certificate should be automatically downloaded. This can be set to true only when certificate_validation_uri is provided. + // +kubebuilder:validation:Optional DownloadCertificateAutomatically *bool `json:"downloadCertificateAutomatically,omitempty" tf:"download_certificate_automatically,omitempty"` // Whether the LDAP connection should be encrypted? + // +kubebuilder:validation:Optional Encrypted *bool `json:"encrypted,omitempty" tf:"encrypted,omitempty"` // The FQDN or IP address of the LDAP server. + // +kubebuilder:validation:Optional Server *string `json:"server,omitempty" tf:"server,omitempty"` } @@ -423,39 +449,51 @@ type HPCCacheObservation struct { type HPCCacheParameters struct { // Specifies whether the HPC Cache automatically rotates Encryption Key to the latest version. + // +kubebuilder:validation:Optional AutomaticallyRotateKeyToLatestEnabled *bool `json:"automaticallyRotateKeyToLatestEnabled,omitempty" tf:"automatically_rotate_key_to_latest_enabled,omitempty"` // The size of the HPC Cache, in GB. Possible values are 3072, 6144, 12288, 21623, 24576, 43246, 49152 and 86491. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional CacheSizeInGb *float64 `json:"cacheSizeInGb,omitempty" tf:"cache_size_in_gb,omitempty"` // A dns block as defined below. + // +kubebuilder:validation:Optional DNS []DNSParameters `json:"dns,omitempty" tf:"dns,omitempty"` // A default_access_policy block as defined below. + // +kubebuilder:validation:Optional DefaultAccessPolicy []DefaultAccessPolicyParameters `json:"defaultAccessPolicy,omitempty" tf:"default_access_policy,omitempty"` // A directory_active_directory block as defined below. + // +kubebuilder:validation:Optional DirectoryActiveDirectory []DirectoryActiveDirectoryParameters `json:"directoryActiveDirectory,omitempty" tf:"directory_active_directory,omitempty"` // A directory_flat_file block as defined below. + // +kubebuilder:validation:Optional DirectoryFlatFile []DirectoryFlatFileParameters `json:"directoryFlatFile,omitempty" tf:"directory_flat_file,omitempty"` // A directory_ldap block as defined below. + // +kubebuilder:validation:Optional DirectoryLdap []DirectoryLdapParameters `json:"directoryLdap,omitempty" tf:"directory_ldap,omitempty"` // An identity block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // The ID of the Key Vault Key which should be used to encrypt the data in this HPC Cache. + // +kubebuilder:validation:Optional KeyVaultKeyID *string `json:"keyVaultKeyId,omitempty" tf:"key_vault_key_id,omitempty"` // Specifies the supported Azure Region where the HPC Cache should be created. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The IPv4 maximum transmission unit configured for the subnet of the HPC Cache. Possible values range from 576 - 1500. Defaults to 1500. + // +kubebuilder:validation:Optional Mtu *float64 `json:"mtu,omitempty" tf:"mtu,omitempty"` // The NTP server IP Address or FQDN for the HPC Cache. Defaults to time.windows.com. + // +kubebuilder:validation:Optional NtpServer *string `json:"ntpServer,omitempty" tf:"ntp_server,omitempty"` // The name of the Resource Group in which to create the HPC Cache. Changing this forces a new resource to be created. @@ -472,6 +510,7 @@ type HPCCacheParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The SKU of HPC Cache to use. Possible values are (ReadWrite) - Standard_2G, Standard_4G Standard_8G or (ReadOnly) - Standard_L4_5G, Standard_L9G, and Standard_L16G. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // The ID of the Subnet for the HPC Cache. Changing this forces a new resource to be created. @@ -489,6 +528,7 @@ type HPCCacheParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // A mapping of tags to assign to the HPC Cache. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } @@ -513,9 +553,11 @@ type IdentityObservation struct { type IdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this HPC Cache. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this HPC Cache. Only possible value is UserAssigned. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/storagecache/v1beta1/zz_hpccacheaccesspolicy_types.go b/apis/storagecache/v1beta1/zz_hpccacheaccesspolicy_types.go index 9da6c0ec9..4eb2a026a 100755 --- a/apis/storagecache/v1beta1/zz_hpccacheaccesspolicy_types.go +++ b/apis/storagecache/v1beta1/zz_hpccacheaccesspolicy_types.go @@ -70,27 +70,35 @@ type HPCCacheAccessPolicyAccessRuleObservation struct { type HPCCacheAccessPolicyAccessRuleParameters struct { // The access level for this rule. Possible values are: rw, ro, no. + // +kubebuilder:validation:Optional Access *string `json:"access,omitempty" tf:"access,omitempty"` // The anonymous GID used when root_squash_enabled is true. + // +kubebuilder:validation:Optional AnonymousGID *float64 `json:"anonymousGid,omitempty" tf:"anonymous_gid,omitempty"` // The anonymous UID used when root_squash_enabled is true. + // +kubebuilder:validation:Optional AnonymousUID *float64 `json:"anonymousUid,omitempty" tf:"anonymous_uid,omitempty"` // The filter applied to the scope for this rule. The filter's format depends on its scope: default scope matches all clients and has no filter value; network scope takes a CIDR format; host takes an IP address or fully qualified domain name. If a client does not match any filter rule and there is no default rule, access is denied. + // +kubebuilder:validation:Optional Filter *string `json:"filter,omitempty" tf:"filter,omitempty"` // Whether to enable root squash? + // +kubebuilder:validation:Optional RootSquashEnabled *bool `json:"rootSquashEnabled,omitempty" tf:"root_squash_enabled,omitempty"` // The scope of this rule. The scope and (potentially) the filter determine which clients match the rule. Possible values are: default, network, host. + // +kubebuilder:validation:Optional Scope *string `json:"scope,omitempty" tf:"scope,omitempty"` // Whether allow access to subdirectories under the root export? + // +kubebuilder:validation:Optional SubmountAccessEnabled *bool `json:"submountAccessEnabled,omitempty" tf:"submount_access_enabled,omitempty"` // Whether SUID is allowed? + // +kubebuilder:validation:Optional SuidEnabled *bool `json:"suidEnabled,omitempty" tf:"suid_enabled,omitempty"` } @@ -115,6 +123,7 @@ type HPCCacheAccessPolicyObservation struct { type HPCCacheAccessPolicyParameters struct { // Up to three access_rule blocks as defined below. + // +kubebuilder:validation:Optional AccessRule []HPCCacheAccessPolicyAccessRuleParameters `json:"accessRule,omitempty" tf:"access_rule,omitempty"` // The ID of the HPC Cache that this HPC Cache Access Policy resides in. Changing this forces a new HPC Cache Access Policy to be created. diff --git a/apis/storagecache/v1beta1/zz_hpccacheblobnfstarget_types.go b/apis/storagecache/v1beta1/zz_hpccacheblobnfstarget_types.go index 1145cb785..5bc4b9f74 100755 --- a/apis/storagecache/v1beta1/zz_hpccacheblobnfstarget_types.go +++ b/apis/storagecache/v1beta1/zz_hpccacheblobnfstarget_types.go @@ -55,6 +55,7 @@ type HPCCacheBlobNFSTargetObservation struct { type HPCCacheBlobNFSTargetParameters struct { // The name of the access policy applied to this target. Defaults to default. + // +kubebuilder:validation:Optional AccessPolicyName *string `json:"accessPolicyName,omitempty" tf:"access_policy_name,omitempty"` // The name of the HPC Cache, which the HPC Cache Blob NFS Target will be added to. Changing this forces a new HPC Cache Blob NFS Target to be created. @@ -71,6 +72,7 @@ type HPCCacheBlobNFSTargetParameters struct { CacheNameSelector *v1.Selector `json:"cacheNameSelector,omitempty" tf:"-"` // The client-facing file path of the HPC Cache Blob NFS Target. + // +kubebuilder:validation:Optional NamespacePath *string `json:"namespacePath,omitempty" tf:"namespace_path,omitempty"` // The name of the Resource Group where the HPC Cache Blob NFS Target should exist. Changing this forces a new HPC Cache Blob NFS Target to be created. @@ -87,9 +89,11 @@ type HPCCacheBlobNFSTargetParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The Resource Manager ID of the Storage Container used as the HPC Cache Blob NFS Target. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional StorageContainerID *string `json:"storageContainerId,omitempty" tf:"storage_container_id,omitempty"` // The type of usage of the HPC Cache Blob NFS Target. Possible values are: READ_HEAVY_INFREQ, READ_HEAVY_CHECK_180, WRITE_WORKLOAD_15, WRITE_AROUND, WRITE_WORKLOAD_CHECK_30, WRITE_WORKLOAD_CHECK_60 and WRITE_WORKLOAD_CLOUDWS. + // +kubebuilder:validation:Optional UsageModel *string `json:"usageModel,omitempty" tf:"usage_model,omitempty"` } diff --git a/apis/storagecache/v1beta1/zz_hpccacheblobtarget_types.go b/apis/storagecache/v1beta1/zz_hpccacheblobtarget_types.go index 1fab9c5a0..ee0357580 100755 --- a/apis/storagecache/v1beta1/zz_hpccacheblobtarget_types.go +++ b/apis/storagecache/v1beta1/zz_hpccacheblobtarget_types.go @@ -46,6 +46,7 @@ type HPCCacheBlobTargetObservation struct { type HPCCacheBlobTargetParameters struct { // The name of the access policy applied to this target. Defaults to default. + // +kubebuilder:validation:Optional AccessPolicyName *string `json:"accessPolicyName,omitempty" tf:"access_policy_name,omitempty"` // The name HPC Cache, which the HPC Cache Blob Target will be added to. Changing this forces a new resource to be created. @@ -62,6 +63,7 @@ type HPCCacheBlobTargetParameters struct { CacheNameSelector *v1.Selector `json:"cacheNameSelector,omitempty" tf:"-"` // The client-facing file path of the HPC Cache Blob Target. + // +kubebuilder:validation:Optional NamespacePath *string `json:"namespacePath,omitempty" tf:"namespace_path,omitempty"` // The name of the Resource Group in which to create the HPC Cache Blob Target. Changing this forces a new resource to be created. diff --git a/apis/storagecache/v1beta1/zz_hpccachenfstarget_types.go b/apis/storagecache/v1beta1/zz_hpccachenfstarget_types.go index a6a4719cd..35fee2c72 100755 --- a/apis/storagecache/v1beta1/zz_hpccachenfstarget_types.go +++ b/apis/storagecache/v1beta1/zz_hpccachenfstarget_types.go @@ -62,6 +62,7 @@ type HPCCacheNFSTargetParameters struct { CacheNameSelector *v1.Selector `json:"cacheNameSelector,omitempty" tf:"-"` // Can be specified multiple times to define multiple namespace_junction. Each namespace_juntion block supports fields documented below. + // +kubebuilder:validation:Optional NamespaceJunction []NamespaceJunctionParameters `json:"namespaceJunction,omitempty" tf:"namespace_junction,omitempty"` // The name of the Resource Group in which to create the HPC Cache NFS Target. Changing this forces a new resource to be created. @@ -78,9 +79,11 @@ type HPCCacheNFSTargetParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The IP address or fully qualified domain name (FQDN) of the HPC Cache NFS target. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional TargetHostName *string `json:"targetHostName,omitempty" tf:"target_host_name,omitempty"` // The type of usage of the HPC Cache NFS Target. Possible values are: READ_HEAVY_INFREQ, READ_HEAVY_CHECK_180, WRITE_WORKLOAD_15, WRITE_AROUND, WRITE_WORKLOAD_CHECK_30, WRITE_WORKLOAD_CHECK_60 and WRITE_WORKLOAD_CLOUDWS. + // +kubebuilder:validation:Optional UsageModel *string `json:"usageModel,omitempty" tf:"usage_model,omitempty"` } @@ -117,15 +120,19 @@ type NamespaceJunctionObservation struct { type NamespaceJunctionParameters struct { // The name of the access policy applied to this target. Defaults to default. + // +kubebuilder:validation:Optional AccessPolicyName *string `json:"accessPolicyName,omitempty" tf:"access_policy_name,omitempty"` // The NFS export of this NFS target within the HPC Cache NFS Target. + // +kubebuilder:validation:Optional NFSExport *string `json:"nfsExport,omitempty" tf:"nfs_export,omitempty"` // The client-facing file path of this NFS target within the HPC Cache NFS Target. + // +kubebuilder:validation:Optional NamespacePath *string `json:"namespacePath,omitempty" tf:"namespace_path,omitempty"` // The relative subdirectory path from the nfs_export to map to the namespace_path. Defaults to "", in which case the whole nfs_export is exported. + // +kubebuilder:validation:Optional TargetPath *string `json:"targetPath,omitempty" tf:"target_path,omitempty"` } diff --git a/apis/storagepool/v1beta1/zz_diskpool_types.go b/apis/storagepool/v1beta1/zz_diskpool_types.go index a9ec138ee..862869fc8 100755 --- a/apis/storagepool/v1beta1/zz_diskpool_types.go +++ b/apis/storagepool/v1beta1/zz_diskpool_types.go @@ -55,6 +55,7 @@ type DiskPoolObservation struct { type DiskPoolParameters struct { // The Azure Region where the Disk Pool should exist. Changing this forces a new Disk Pool to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the Resource Group where the Disk Pool should exist. Changing this forces a new Disk Pool to be created. @@ -71,6 +72,7 @@ type DiskPoolParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The SKU of the Disk Pool. Possible values are Basic_B1, Standard_S1 and Premium_P1. Changing this forces a new Disk Pool to be created. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // The ID of the Subnet where the Disk Pool should be created. Changing this forces a new Disk Pool to be created. @@ -88,9 +90,11 @@ type DiskPoolParameters struct { SubnetIDSelector *v1.Selector `json:"subnetIdSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the Disk Pool. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies a list of Availability Zones in which this Disk Pool should be located. Changing this forces a new Disk Pool to be created. + // +kubebuilder:validation:Optional Zones []*string `json:"zones,omitempty" tf:"zones,omitempty"` } diff --git a/apis/storagesync/v1beta1/zz_storagesync_types.go b/apis/storagesync/v1beta1/zz_storagesync_types.go index d0eb6edae..187fe2d9e 100755 --- a/apis/storagesync/v1beta1/zz_storagesync_types.go +++ b/apis/storagesync/v1beta1/zz_storagesync_types.go @@ -46,9 +46,11 @@ type StorageSyncObservation struct { type StorageSyncParameters struct { // Incoming traffic policy. Possible values are AllowAllTraffic and AllowVirtualNetworksOnly. + // +kubebuilder:validation:Optional IncomingTrafficPolicy *string `json:"incomingTrafficPolicy,omitempty" tf:"incoming_traffic_policy,omitempty"` // The Azure Region where the Storage Sync should exist. Changing this forces a new Storage Sync to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the Resource Group where the Storage Sync should exist. Changing this forces a new Storage Sync to be created. @@ -65,6 +67,7 @@ type StorageSyncParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the Storage Sync. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/streamanalytics/v1beta1/zz_cluster_types.go b/apis/streamanalytics/v1beta1/zz_cluster_types.go index 5a49f8040..95e99cf14 100755 --- a/apis/streamanalytics/v1beta1/zz_cluster_types.go +++ b/apis/streamanalytics/v1beta1/zz_cluster_types.go @@ -46,6 +46,7 @@ type ClusterObservation struct { type ClusterParameters struct { // The Azure Region where the Stream Analytics Cluster 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 where the Stream Analytics Cluster should exist. Changing this forces a new resource to be created. @@ -62,9 +63,11 @@ type ClusterParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The number of streaming units supported by the Cluster. Accepted values are multiples of 36 in the range of 36 to 216. + // +kubebuilder:validation:Optional StreamingCapacity *float64 `json:"streamingCapacity,omitempty" tf:"streaming_capacity,omitempty"` // A mapping of tags which should be assigned to the Stream Analytics. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/streamanalytics/v1beta1/zz_functionjavascriptuda_types.go b/apis/streamanalytics/v1beta1/zz_functionjavascriptuda_types.go index abb971ce1..f4bb99fc2 100755 --- a/apis/streamanalytics/v1beta1/zz_functionjavascriptuda_types.go +++ b/apis/streamanalytics/v1beta1/zz_functionjavascriptuda_types.go @@ -46,12 +46,15 @@ type FunctionJavascriptUdaObservation struct { type FunctionJavascriptUdaParameters struct { // One or more input blocks as defined below. + // +kubebuilder:validation:Optional Input []InputParameters `json:"input,omitempty" tf:"input,omitempty"` // An output block as defined below. + // +kubebuilder:validation:Optional Output []OutputParameters `json:"output,omitempty" tf:"output,omitempty"` // The JavaScript of this UDA Function. + // +kubebuilder:validation:Optional Script *string `json:"script,omitempty" tf:"script,omitempty"` // The resource ID of the Stream Analytics Job where this Function should be created. Changing this forces a new resource to be created. @@ -90,9 +93,11 @@ type InputObservation struct { type InputParameters struct { // Is this input parameter a configuration parameter? Defaults to false. + // +kubebuilder:validation:Optional ConfigurationParameter *bool `json:"configurationParameter,omitempty" tf:"configuration_parameter,omitempty"` // The input data type of this JavaScript Function. Possible values include any, array, bigint, datetime, float, nvarchar(max) and record. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -111,6 +116,7 @@ type OutputObservation struct { type OutputParameters struct { // The output data type from this JavaScript Function. Possible values include any, array, bigint, datetime, float, nvarchar(max) and record. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/streamanalytics/v1beta1/zz_job_types.go b/apis/streamanalytics/v1beta1/zz_job_types.go index 18d50e9ad..974d787fb 100755 --- a/apis/streamanalytics/v1beta1/zz_job_types.go +++ b/apis/streamanalytics/v1beta1/zz_job_types.go @@ -34,6 +34,7 @@ type IdentityObservation struct { type IdentityParameters struct { // Specifies the type of Managed Service Identity that should be configured on this Stream Analytics Job. The only possible value is SystemAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -145,33 +146,43 @@ type JobObservation struct { type JobParameters struct { // Specifies the compatibility level for this job - which controls certain runtime behaviours of the streaming job. Possible values are 1.0, 1.1 and 1.2. + // +kubebuilder:validation:Optional CompatibilityLevel *string `json:"compatibilityLevel,omitempty" tf:"compatibility_level,omitempty"` // The policy for storing stream analytics content. Possible values are JobStorageAccount, SystemAccount. + // +kubebuilder:validation:Optional ContentStoragePolicy *string `json:"contentStoragePolicy,omitempty" tf:"content_storage_policy,omitempty"` // Specifies the Data Locale of the Job, which should be a supported .NET Culture. + // +kubebuilder:validation:Optional DataLocale *string `json:"dataLocale,omitempty" tf:"data_locale,omitempty"` // Specifies the maximum tolerable delay in seconds where events arriving late could be included. Supported range is -1 (indefinite) to 1814399 (20d 23h 59m 59s). Default is 0. + // +kubebuilder:validation:Optional EventsLateArrivalMaxDelayInSeconds *float64 `json:"eventsLateArrivalMaxDelayInSeconds,omitempty" tf:"events_late_arrival_max_delay_in_seconds,omitempty"` // Specifies the maximum tolerable delay in seconds where out-of-order events can be adjusted to be back in order. Supported range is 0 to 599 (9m 59s). Default is 5. + // +kubebuilder:validation:Optional EventsOutOfOrderMaxDelayInSeconds *float64 `json:"eventsOutOfOrderMaxDelayInSeconds,omitempty" tf:"events_out_of_order_max_delay_in_seconds,omitempty"` // Specifies the policy which should be applied to events which arrive out of order in the input event stream. Possible values are Adjust and Drop. Default is Adjust. + // +kubebuilder:validation:Optional EventsOutOfOrderPolicy *string `json:"eventsOutOfOrderPolicy,omitempty" tf:"events_out_of_order_policy,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // The details of the job storage account. A job_storage_account block as defined below. + // +kubebuilder:validation:Optional JobStorageAccount []JobStorageAccountParameters `json:"jobStorageAccount,omitempty" tf:"job_storage_account,omitempty"` // The Azure Region in which the Resource Group exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the policy which should be applied to events which arrive at the output and cannot be written to the external storage due to being malformed (such as missing column values, column values of wrong type or size). Possible values are Drop and Stop. Default is Drop. + // +kubebuilder:validation:Optional OutputErrorPolicy *string `json:"outputErrorPolicy,omitempty" tf:"output_error_policy,omitempty"` // The name of the Resource Group where the Stream Analytics Job should exist. Changing this forces a new resource to be created. @@ -188,18 +199,23 @@ type JobParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The ID of an existing Stream Analytics Cluster where the Stream Analytics Job should run. + // +kubebuilder:validation:Optional StreamAnalyticsClusterID *string `json:"streamAnalyticsClusterId,omitempty" tf:"stream_analytics_cluster_id,omitempty"` // Specifies the number of streaming units that the streaming job uses. Supported values are 1, 3, 6 and multiples of 6 up to 120. + // +kubebuilder:validation:Optional StreamingUnits *float64 `json:"streamingUnits,omitempty" tf:"streaming_units,omitempty"` // A mapping of tags assigned to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the query that will be run in the streaming job, written in Stream Analytics Query Language (SAQL). + // +kubebuilder:validation:Optional TransformationQuery *string `json:"transformationQuery,omitempty" tf:"transformation_query,omitempty"` // The type of the Stream Analytics Job. Possible values are Cloud and Edge. Defaults to Cloud. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -228,9 +244,11 @@ type JobStorageAccountParameters struct { AccountKeySecretRef v1.SecretKeySelector `json:"accountKeySecretRef" tf:"-"` // The name of the Azure storage account. + // +kubebuilder:validation:Optional AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` // The authentication mode of the storage account. The only supported value is ConnectionString. Defaults to ConnectionString. + // +kubebuilder:validation:Optional AuthenticationMode *string `json:"authenticationMode,omitempty" tf:"authentication_mode,omitempty"` } diff --git a/apis/streamanalytics/v1beta1/zz_managedprivateendpoint_types.go b/apis/streamanalytics/v1beta1/zz_managedprivateendpoint_types.go index 0ce7a26e0..552d44158 100755 --- a/apis/streamanalytics/v1beta1/zz_managedprivateendpoint_types.go +++ b/apis/streamanalytics/v1beta1/zz_managedprivateendpoint_types.go @@ -66,6 +66,7 @@ type ManagedPrivateEndpointParameters struct { StreamAnalyticsClusterNameSelector *v1.Selector `json:"streamAnalyticsClusterNameSelector,omitempty" tf:"-"` // Specifies the sub resource name which the Stream Analytics Private Endpoint is able to connect to. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SubresourceName *string `json:"subresourceName,omitempty" tf:"subresource_name,omitempty"` // The ID of the Private Link Enabled Remote Resource which this Stream Analytics Private endpoint should be connected to. Changing this forces a new resource to be created. diff --git a/apis/streamanalytics/v1beta1/zz_outputblob_types.go b/apis/streamanalytics/v1beta1/zz_outputblob_types.go index d8352f804..d229fcb63 100755 --- a/apis/streamanalytics/v1beta1/zz_outputblob_types.go +++ b/apis/streamanalytics/v1beta1/zz_outputblob_types.go @@ -79,18 +79,23 @@ type OutputBlobObservation struct { type OutputBlobParameters struct { // The authentication mode for the Stream Output. Possible values are Msi and ConnectionString. Defaults to ConnectionString. + // +kubebuilder:validation:Optional AuthenticationMode *string `json:"authenticationMode,omitempty" tf:"authentication_mode,omitempty"` // The maximum wait time per batch in hh:mm:ss e.g. 00:02:00 for two minutes. + // +kubebuilder:validation:Optional BatchMaxWaitTime *string `json:"batchMaxWaitTime,omitempty" tf:"batch_max_wait_time,omitempty"` // The minimum number of rows per batch (must be between 0 and 10000). + // +kubebuilder:validation:Optional BatchMinRows *float64 `json:"batchMinRows,omitempty" tf:"batch_min_rows,omitempty"` // The date format. Wherever {date} appears in path_pattern, the value of this property is used as the date format instead. + // +kubebuilder:validation:Optional DateFormat *string `json:"dateFormat,omitempty" tf:"date_format,omitempty"` // The blob path pattern. Not a regular expression. It represents a pattern against which blob names will be matched to determine whether or not they should be included as input or output to the job. + // +kubebuilder:validation:Optional PathPattern *string `json:"pathPattern,omitempty" tf:"path_pattern,omitempty"` // The name of the Resource Group where the Stream Analytics Job exists. Changing this forces a new resource to be created. @@ -107,6 +112,7 @@ type OutputBlobParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A serialization block as defined below. + // +kubebuilder:validation:Optional Serialization []SerializationParameters `json:"serialization,omitempty" tf:"serialization,omitempty"` // The Access Key which should be used to connect to this Storage Account. @@ -153,6 +159,7 @@ type OutputBlobParameters struct { StreamAnalyticsJobNameSelector *v1.Selector `json:"streamAnalyticsJobNameSelector,omitempty" tf:"-"` // The time format. Wherever {time} appears in path_pattern, the value of this property is used as the time format instead. + // +kubebuilder:validation:Optional TimeFormat *string `json:"timeFormat,omitempty" tf:"time_format,omitempty"` } @@ -189,15 +196,19 @@ type SerializationObservation struct { type SerializationParameters struct { // The encoding of the incoming data in the case of input and the encoding of outgoing data in the case of output. It currently can only be set to UTF8. + // +kubebuilder:validation:Optional Encoding *string `json:"encoding,omitempty" tf:"encoding,omitempty"` // The delimiter that will be used to separate comma-separated value (CSV) records. Possible values are (space), , (comma), (tab), | (pipe) and ;. + // +kubebuilder:validation:Optional FieldDelimiter *string `json:"fieldDelimiter,omitempty" tf:"field_delimiter,omitempty"` // Specifies the format of the JSON the output will be written in. Possible values are Array and LineSeparated. + // +kubebuilder:validation:Optional Format *string `json:"format,omitempty" tf:"format,omitempty"` // The serialization format used for outgoing data streams. Possible values are Avro, Csv, Json and Parquet. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/streamanalytics/v1beta1/zz_outputeventhub_types.go b/apis/streamanalytics/v1beta1/zz_outputeventhub_types.go index 224519073..949fd05a2 100755 --- a/apis/streamanalytics/v1beta1/zz_outputeventhub_types.go +++ b/apis/streamanalytics/v1beta1/zz_outputeventhub_types.go @@ -67,6 +67,7 @@ type OutputEventHubObservation struct { type OutputEventHubParameters struct { // The authentication mode for the Stream Output. Possible values are Msi and ConnectionString. Defaults to ConnectionString. + // +kubebuilder:validation:Optional AuthenticationMode *string `json:"authenticationMode,omitempty" tf:"authentication_mode,omitempty"` // The name of the Event Hub. @@ -83,9 +84,11 @@ type OutputEventHubParameters struct { EventHubNameSelector *v1.Selector `json:"eventhubNameSelector,omitempty" tf:"-"` // The column that is used for the Event Hub partition key. + // +kubebuilder:validation:Optional PartitionKey *string `json:"partitionKey,omitempty" tf:"partition_key,omitempty"` // A list of property columns to add to the Event Hub output. + // +kubebuilder:validation:Optional PropertyColumns []*string `json:"propertyColumns,omitempty" tf:"property_columns,omitempty"` // The name of the Resource Group where the Stream Analytics Job exists. Changing this forces a new resource to be created. @@ -102,6 +105,7 @@ type OutputEventHubParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A serialization block as defined below. + // +kubebuilder:validation:Optional Serialization []OutputEventHubSerializationParameters `json:"serialization,omitempty" tf:"serialization,omitempty"` // The namespace that is associated with the desired Event Hub, Service Bus Queue, Service Bus Topic, etc. @@ -122,6 +126,7 @@ type OutputEventHubParameters struct { SharedAccessPolicyKeySecretRef *v1.SecretKeySelector `json:"sharedAccessPolicyKeySecretRef,omitempty" tf:"-"` // The shared access policy name for the Event Hub, Service Bus Queue, Service Bus Topic, etc. Required when authentication_mode is set to ConnectionString. + // +kubebuilder:validation:Optional SharedAccessPolicyName *string `json:"sharedAccessPolicyName,omitempty" tf:"shared_access_policy_name,omitempty"` // The name of the Stream Analytics Job. Changing this forces a new resource to be created. @@ -162,15 +167,19 @@ type OutputEventHubSerializationObservation struct { type OutputEventHubSerializationParameters struct { // The encoding of the incoming data in the case of input and the encoding of outgoing data in the case of output. It currently can only be set to UTF8. + // +kubebuilder:validation:Optional Encoding *string `json:"encoding,omitempty" tf:"encoding,omitempty"` // The delimiter that will be used to separate comma-separated value (CSV) records. Possible values are (space), , (comma), (tab), | (pipe) and ;. + // +kubebuilder:validation:Optional FieldDelimiter *string `json:"fieldDelimiter,omitempty" tf:"field_delimiter,omitempty"` // Specifies the format of the JSON the output will be written in. Possible values are Array and LineSeparated. + // +kubebuilder:validation:Optional Format *string `json:"format,omitempty" tf:"format,omitempty"` // The serialization format used for outgoing data streams. Possible values are Avro, Csv, Json and Parquet. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/streamanalytics/v1beta1/zz_outputfunction_types.go b/apis/streamanalytics/v1beta1/zz_outputfunction_types.go index e4e7da324..ec2f2b070 100755 --- a/apis/streamanalytics/v1beta1/zz_outputfunction_types.go +++ b/apis/streamanalytics/v1beta1/zz_outputfunction_types.go @@ -56,9 +56,11 @@ type OutputFunctionParameters struct { APIKeySecretRef v1.SecretKeySelector `json:"apiKeySecretRef" tf:"-"` // The maximum number of events in each batch that's sent to the function. Defaults to 100. + // +kubebuilder:validation:Optional BatchMaxCount *float64 `json:"batchMaxCount,omitempty" tf:"batch_max_count,omitempty"` // The maximum batch size in bytes that's sent to the function. Defaults to 262144 (256 kB). + // +kubebuilder:validation:Optional BatchMaxInBytes *float64 `json:"batchMaxInBytes,omitempty" tf:"batch_max_in_bytes,omitempty"` // The name of the Function App. @@ -76,6 +78,7 @@ type OutputFunctionParameters struct { FunctionAppSelector *v1.Selector `json:"functionAppSelector,omitempty" tf:"-"` // The name of the function in the Function App. + // +kubebuilder:validation:Optional FunctionName *string `json:"functionName,omitempty" tf:"function_name,omitempty"` // The name of the Resource Group where the Stream Analytics Output should exist. Changing this forces a new resource to be created. diff --git a/apis/streamanalytics/v1beta1/zz_outputmssql_types.go b/apis/streamanalytics/v1beta1/zz_outputmssql_types.go index 9849e9803..22866a31e 100755 --- a/apis/streamanalytics/v1beta1/zz_outputmssql_types.go +++ b/apis/streamanalytics/v1beta1/zz_outputmssql_types.go @@ -73,18 +73,23 @@ type OutputMSSQLObservation struct { type OutputMSSQLParameters struct { // The authentication mode for the Stream Output. Possible values are Msi and ConnectionString. Defaults to ConnectionString. + // +kubebuilder:validation:Optional AuthenticationMode *string `json:"authenticationMode,omitempty" tf:"authentication_mode,omitempty"` // The MS SQL database name where the reference table exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Database *string `json:"database,omitempty" tf:"database,omitempty"` // The max batch count to write to the SQL Database. Defaults to 10000. Possible values are between 1 and 1073741824. + // +kubebuilder:validation:Optional MaxBatchCount *float64 `json:"maxBatchCount,omitempty" tf:"max_batch_count,omitempty"` // The max writer count for the SQL Database. Defaults to 1. Possible values are 0 which bases the writer count on the query partition and 1 which corresponds to a single writer. + // +kubebuilder:validation:Optional MaxWriterCount *float64 `json:"maxWriterCount,omitempty" tf:"max_writer_count,omitempty"` // The name of the Stream Output. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Password used together with username, to login to the Microsoft SQL Server. Required if authentication_mode is ConnectionString. @@ -144,6 +149,7 @@ type OutputMSSQLParameters struct { TableSelector *v1.Selector `json:"tableSelector,omitempty" tf:"-"` // Username used to login to the Microsoft SQL Server. Changing this forces a new resource to be created. Required if authentication_mode is ConnectionString. + // +kubebuilder:validation:Optional User *string `json:"user,omitempty" tf:"user,omitempty"` } diff --git a/apis/streamanalytics/v1beta1/zz_outputpowerbi_types.go b/apis/streamanalytics/v1beta1/zz_outputpowerbi_types.go index c9565ba08..f113bdc2c 100755 --- a/apis/streamanalytics/v1beta1/zz_outputpowerbi_types.go +++ b/apis/streamanalytics/v1beta1/zz_outputpowerbi_types.go @@ -63,12 +63,15 @@ type OutputPowerBIObservation struct { type OutputPowerBIParameters struct { // The name of the Power BI dataset. + // +kubebuilder:validation:Optional DataSet *string `json:"dataset,omitempty" tf:"dataset,omitempty"` // The ID of the Power BI group, this must be a valid UUID. + // +kubebuilder:validation:Optional GroupID *string `json:"groupId,omitempty" tf:"group_id,omitempty"` // The name of the Power BI group. Use this property to help remember which specific Power BI group id was used. + // +kubebuilder:validation:Optional GroupName *string `json:"groupName,omitempty" tf:"group_name,omitempty"` // The ID of the Stream Analytics Job. Changing this forces a new resource to be created. @@ -86,12 +89,15 @@ type OutputPowerBIParameters struct { StreamAnalyticsJobIDSelector *v1.Selector `json:"streamAnalyticsJobIdSelector,omitempty" tf:"-"` // The name of the Power BI table under the specified dataset. + // +kubebuilder:validation:Optional Table *string `json:"table,omitempty" tf:"table,omitempty"` // The user display name of the user that was used to obtain the refresh token. + // +kubebuilder:validation:Optional TokenUserDisplayName *string `json:"tokenUserDisplayName,omitempty" tf:"token_user_display_name,omitempty"` // The user principal name (UPN) of the user that was used to obtain the refresh token. + // +kubebuilder:validation:Optional TokenUserPrincipalName *string `json:"tokenUserPrincipalName,omitempty" tf:"token_user_principal_name,omitempty"` } diff --git a/apis/streamanalytics/v1beta1/zz_outputservicebusqueue_types.go b/apis/streamanalytics/v1beta1/zz_outputservicebusqueue_types.go index f01539aa1..efa3bb649 100755 --- a/apis/streamanalytics/v1beta1/zz_outputservicebusqueue_types.go +++ b/apis/streamanalytics/v1beta1/zz_outputservicebusqueue_types.go @@ -73,12 +73,15 @@ type OutputServiceBusQueueObservation struct { type OutputServiceBusQueueParameters struct { // The authentication mode for the Stream Output. Possible values are Msi and ConnectionString. Defaults to ConnectionString. + // +kubebuilder:validation:Optional AuthenticationMode *string `json:"authenticationMode,omitempty" tf:"authentication_mode,omitempty"` // The name of the Stream Output. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A list of property columns to add to the Service Bus Queue output. + // +kubebuilder:validation:Optional PropertyColumns []*string `json:"propertyColumns,omitempty" tf:"property_columns,omitempty"` // The name of the Service Bus Queue. @@ -108,6 +111,7 @@ type OutputServiceBusQueueParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A serialization block as defined below. + // +kubebuilder:validation:Optional Serialization []OutputServiceBusQueueSerializationParameters `json:"serialization,omitempty" tf:"serialization,omitempty"` // The namespace that is associated with the desired Event Hub, Service Bus Queue, Service Bus Topic, etc. @@ -128,6 +132,7 @@ type OutputServiceBusQueueParameters struct { SharedAccessPolicyKeySecretRef *v1.SecretKeySelector `json:"sharedAccessPolicyKeySecretRef,omitempty" tf:"-"` // The shared access policy name for the Event Hub, Service Bus Queue, Service Bus Topic, etc. Required if authentication_mode is ConnectionString. + // +kubebuilder:validation:Optional SharedAccessPolicyName *string `json:"sharedAccessPolicyName,omitempty" tf:"shared_access_policy_name,omitempty"` // The name of the Stream Analytics Job. Changing this forces a new resource to be created. @@ -144,6 +149,7 @@ type OutputServiceBusQueueParameters struct { StreamAnalyticsJobNameSelector *v1.Selector `json:"streamAnalyticsJobNameSelector,omitempty" tf:"-"` // A key-value pair of system property columns that will be attached to the outgoing messages for the Service Bus Queue Output. + // +kubebuilder:validation:Optional SystemPropertyColumns map[string]*string `json:"systemPropertyColumns,omitempty" tf:"system_property_columns,omitempty"` } @@ -180,15 +186,19 @@ type OutputServiceBusQueueSerializationObservation struct { type OutputServiceBusQueueSerializationParameters struct { // The encoding of the incoming data in the case of input and the encoding of outgoing data in the case of output. It currently can only be set to UTF8. + // +kubebuilder:validation:Optional Encoding *string `json:"encoding,omitempty" tf:"encoding,omitempty"` // The delimiter that will be used to separate comma-separated value (CSV) records. Possible values are (space), , (comma), (tab), | (pipe) and ;. + // +kubebuilder:validation:Optional FieldDelimiter *string `json:"fieldDelimiter,omitempty" tf:"field_delimiter,omitempty"` // Specifies the format of the JSON the output will be written in. Possible values are Array and LineSeparated. + // +kubebuilder:validation:Optional Format *string `json:"format,omitempty" tf:"format,omitempty"` // The serialization format used for outgoing data streams. Possible values are Avro, Csv, Json and Parquet. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/streamanalytics/v1beta1/zz_outputservicebustopic_types.go b/apis/streamanalytics/v1beta1/zz_outputservicebustopic_types.go index a89bc9362..0ba6f9b80 100755 --- a/apis/streamanalytics/v1beta1/zz_outputservicebustopic_types.go +++ b/apis/streamanalytics/v1beta1/zz_outputservicebustopic_types.go @@ -73,12 +73,15 @@ type OutputServiceBusTopicObservation struct { type OutputServiceBusTopicParameters struct { // The authentication mode for the Stream Output. Possible values are Msi and ConnectionString. Defaults to ConnectionString. + // +kubebuilder:validation:Optional AuthenticationMode *string `json:"authenticationMode,omitempty" tf:"authentication_mode,omitempty"` // The name of the Stream Output. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A list of property columns to add to the Service Bus Topic output. + // +kubebuilder:validation:Optional PropertyColumns []*string `json:"propertyColumns,omitempty" tf:"property_columns,omitempty"` // The name of the Resource Group where the Stream Analytics Job exists. Changing this forces a new resource to be created. @@ -95,6 +98,7 @@ type OutputServiceBusTopicParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A serialization block as defined below. + // +kubebuilder:validation:Optional Serialization []OutputServiceBusTopicSerializationParameters `json:"serialization,omitempty" tf:"serialization,omitempty"` // The namespace that is associated with the desired Event Hub, Service Bus Topic, Service Bus Topic, etc. @@ -115,6 +119,7 @@ type OutputServiceBusTopicParameters struct { SharedAccessPolicyKeySecretRef *v1.SecretKeySelector `json:"sharedAccessPolicyKeySecretRef,omitempty" tf:"-"` // The shared access policy name for the Event Hub, Service Bus Queue, Service Bus Topic, etc. Required if authentication_mode is ConnectionString. + // +kubebuilder:validation:Optional SharedAccessPolicyName *string `json:"sharedAccessPolicyName,omitempty" tf:"shared_access_policy_name,omitempty"` // The name of the Stream Analytics Job. Changing this forces a new resource to be created. @@ -131,6 +136,7 @@ type OutputServiceBusTopicParameters struct { StreamAnalyticsJobNameSelector *v1.Selector `json:"streamAnalyticsJobNameSelector,omitempty" tf:"-"` // A key-value pair of system property columns that will be attached to the outgoing messages for the Service Bus Topic Output. + // +kubebuilder:validation:Optional SystemPropertyColumns map[string]*string `json:"systemPropertyColumns,omitempty" tf:"system_property_columns,omitempty"` // The name of the Service Bus Topic. @@ -180,15 +186,19 @@ type OutputServiceBusTopicSerializationObservation struct { type OutputServiceBusTopicSerializationParameters struct { // The encoding of the incoming data in the case of input and the encoding of outgoing data in the case of output. It currently can only be set to UTF8. + // +kubebuilder:validation:Optional Encoding *string `json:"encoding,omitempty" tf:"encoding,omitempty"` // The delimiter that will be used to separate comma-separated value (CSV) records. Possible values are (space), , (comma), (tab), | (pipe) and ;. + // +kubebuilder:validation:Optional FieldDelimiter *string `json:"fieldDelimiter,omitempty" tf:"field_delimiter,omitempty"` // Specifies the format of the JSON the output will be written in. Possible values are Array and LineSeparated. + // +kubebuilder:validation:Optional Format *string `json:"format,omitempty" tf:"format,omitempty"` // The serialization format used for outgoing data streams. Possible values are Avro, Csv, Json and Parquet. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/streamanalytics/v1beta1/zz_outputsynapse_types.go b/apis/streamanalytics/v1beta1/zz_outputsynapse_types.go index 4237f7038..63f25250c 100755 --- a/apis/streamanalytics/v1beta1/zz_outputsynapse_types.go +++ b/apis/streamanalytics/v1beta1/zz_outputsynapse_types.go @@ -52,6 +52,7 @@ type OutputSynapseObservation struct { type OutputSynapseParameters struct { // The name of the Azure SQL database. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Database *string `json:"database,omitempty" tf:"database,omitempty"` // The password that will be used to connect to the Azure SQL database. @@ -72,6 +73,7 @@ type OutputSynapseParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The name of the SQL server containing the Azure SQL database. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Server *string `json:"server,omitempty" tf:"server,omitempty"` // The name of the Stream Analytics Job. Changing this forces a new resource to be created. @@ -88,6 +90,7 @@ type OutputSynapseParameters struct { StreamAnalyticsJobNameSelector *v1.Selector `json:"streamAnalyticsJobNameSelector,omitempty" tf:"-"` // The name of the table in the Azure SQL database. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Table *string `json:"table,omitempty" tf:"table,omitempty"` // The user name that will be used to connect to the Azure SQL database. Changing this forces a new resource to be created. diff --git a/apis/streamanalytics/v1beta1/zz_outputtable_types.go b/apis/streamanalytics/v1beta1/zz_outputtable_types.go index c6a4c7436..84f90bf57 100755 --- a/apis/streamanalytics/v1beta1/zz_outputtable_types.go +++ b/apis/streamanalytics/v1beta1/zz_outputtable_types.go @@ -61,12 +61,15 @@ type OutputTableObservation struct { type OutputTableParameters struct { // The number of records for a batch operation. Must be between 1 and 100. + // +kubebuilder:validation:Optional BatchSize *float64 `json:"batchSize,omitempty" tf:"batch_size,omitempty"` // A list of the column names to be removed from output event entities. + // +kubebuilder:validation:Optional ColumnsToRemove []*string `json:"columnsToRemove,omitempty" tf:"columns_to_remove,omitempty"` // The name of the output column that contains the partition key. + // +kubebuilder:validation:Optional PartitionKey *string `json:"partitionKey,omitempty" tf:"partition_key,omitempty"` // The name of the Resource Group where the Stream Analytics Job exists. Changing this forces a new resource to be created. @@ -83,6 +86,7 @@ type OutputTableParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The name of the output column that contains the row key. + // +kubebuilder:validation:Optional RowKey *string `json:"rowKey,omitempty" tf:"row_key,omitempty"` // The Access Key which should be used to connect to this Storage Account. diff --git a/apis/streamanalytics/v1beta1/zz_referenceinputblob_types.go b/apis/streamanalytics/v1beta1/zz_referenceinputblob_types.go index 2410eaca2..f33dcc849 100755 --- a/apis/streamanalytics/v1beta1/zz_referenceinputblob_types.go +++ b/apis/streamanalytics/v1beta1/zz_referenceinputblob_types.go @@ -73,15 +73,19 @@ type ReferenceInputBlobObservation struct { type ReferenceInputBlobParameters struct { // The authentication mode for the Stream Analytics Reference Input. Possible values are Msi and ConnectionString. Defaults to ConnectionString. + // +kubebuilder:validation:Optional AuthenticationMode *string `json:"authenticationMode,omitempty" tf:"authentication_mode,omitempty"` // The date format. Wherever {date} appears in path_pattern, the value of this property is used as the date format instead. + // +kubebuilder:validation:Optional DateFormat *string `json:"dateFormat,omitempty" tf:"date_format,omitempty"` // The name of the Reference Input Blob. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The blob path pattern. Not a regular expression. It represents a pattern against which blob names will be matched to determine whether or not they should be included as input or output to the job. + // +kubebuilder:validation:Optional PathPattern *string `json:"pathPattern,omitempty" tf:"path_pattern,omitempty"` // The name of the Resource Group where the Stream Analytics Job exists. Changing this forces a new resource to be created. @@ -98,6 +102,7 @@ type ReferenceInputBlobParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A serialization block as defined below. + // +kubebuilder:validation:Optional Serialization []ReferenceInputBlobSerializationParameters `json:"serialization,omitempty" tf:"serialization,omitempty"` // The Access Key which should be used to connect to this Storage Account. Required if authentication_mode is ConnectionString. @@ -144,6 +149,7 @@ type ReferenceInputBlobParameters struct { StreamAnalyticsJobNameSelector *v1.Selector `json:"streamAnalyticsJobNameSelector,omitempty" tf:"-"` // The time format. Wherever {time} appears in path_pattern, the value of this property is used as the time format instead. + // +kubebuilder:validation:Optional TimeFormat *string `json:"timeFormat,omitempty" tf:"time_format,omitempty"` } @@ -174,12 +180,15 @@ type ReferenceInputBlobSerializationObservation struct { type ReferenceInputBlobSerializationParameters struct { // The encoding of the incoming data in the case of input and the encoding of outgoing data in the case of output. It currently can only be set to UTF8. + // +kubebuilder:validation:Optional Encoding *string `json:"encoding,omitempty" tf:"encoding,omitempty"` // The delimiter that will be used to separate comma-separated value (CSV) records. Possible values are (space), , (comma), (tab), | (pipe) and ;. + // +kubebuilder:validation:Optional FieldDelimiter *string `json:"fieldDelimiter,omitempty" tf:"field_delimiter,omitempty"` // The serialization format used for the reference data. Possible values are Avro, Csv and Json. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/streamanalytics/v1beta1/zz_referenceinputmssql_types.go b/apis/streamanalytics/v1beta1/zz_referenceinputmssql_types.go index 4d2c1b766..4e5c247e9 100755 --- a/apis/streamanalytics/v1beta1/zz_referenceinputmssql_types.go +++ b/apis/streamanalytics/v1beta1/zz_referenceinputmssql_types.go @@ -86,9 +86,11 @@ type ReferenceInputMSSQLParameters struct { DatabaseSelector *v1.Selector `json:"databaseSelector,omitempty" tf:"-"` // The query used to retrieve incremental changes in the reference data from the MS SQL database. Cannot be set when refresh_type is Static. + // +kubebuilder:validation:Optional DeltaSnapshotQuery *string `json:"deltaSnapshotQuery,omitempty" tf:"delta_snapshot_query,omitempty"` // The query used to retrieve the reference data from the MS SQL database. + // +kubebuilder:validation:Optional FullSnapshotQuery *string `json:"fullSnapshotQuery,omitempty" tf:"full_snapshot_query,omitempty"` // The password to connect to the MS SQL database. @@ -96,9 +98,11 @@ type ReferenceInputMSSQLParameters struct { PasswordSecretRef v1.SecretKeySelector `json:"passwordSecretRef" tf:"-"` // The frequency in hh:mm:ss with which the reference data should be retrieved from the MS SQL database e.g. 00:20:00 for every 20 minutes. Must be set when refresh_type is RefreshPeriodicallyWithFull or RefreshPeriodicallyWithDelta. + // +kubebuilder:validation:Optional RefreshIntervalDuration *string `json:"refreshIntervalDuration,omitempty" tf:"refresh_interval_duration,omitempty"` // Defines whether and how the reference data should be refreshed. Accepted values are Static, RefreshPeriodicallyWithFull and RefreshPeriodicallyWithDelta. + // +kubebuilder:validation:Optional RefreshType *string `json:"refreshType,omitempty" tf:"refresh_type,omitempty"` // The name of the Resource Group where the Stream Analytics Job should exist. Changing this forces a new resource to be created. @@ -133,9 +137,11 @@ type ReferenceInputMSSQLParameters struct { StreamAnalyticsJobName *string `json:"streamAnalyticsJobName" tf:"stream_analytics_job_name,omitempty"` // The name of the table in the Azure SQL database. + // +kubebuilder:validation:Optional Table *string `json:"table,omitempty" tf:"table,omitempty"` // The username to connect to the MS SQL database. + // +kubebuilder:validation:Optional Username *string `json:"username,omitempty" tf:"username,omitempty"` } diff --git a/apis/streamanalytics/v1beta1/zz_streaminputblob_types.go b/apis/streamanalytics/v1beta1/zz_streaminputblob_types.go index 5c8419545..34ae8d86c 100755 --- a/apis/streamanalytics/v1beta1/zz_streaminputblob_types.go +++ b/apis/streamanalytics/v1beta1/zz_streaminputblob_types.go @@ -67,12 +67,15 @@ type StreamInputBlobObservation struct { type StreamInputBlobParameters struct { // The date format. Wherever {date} appears in path_pattern, the value of this property is used as the date format instead. + // +kubebuilder:validation:Optional DateFormat *string `json:"dateFormat,omitempty" tf:"date_format,omitempty"` // The name of the Stream Input Blob. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The blob path pattern. Not a regular expression. It represents a pattern against which blob names will be matched to determine whether or not they should be included as input or output to the job. + // +kubebuilder:validation:Optional PathPattern *string `json:"pathPattern,omitempty" tf:"path_pattern,omitempty"` // The name of the Resource Group where the Stream Analytics Job exists. Changing this forces a new resource to be created. @@ -89,6 +92,7 @@ type StreamInputBlobParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A serialization block as defined below. + // +kubebuilder:validation:Optional Serialization []StreamInputBlobSerializationParameters `json:"serialization,omitempty" tf:"serialization,omitempty"` // The Access Key which should be used to connect to this Storage Account. @@ -135,6 +139,7 @@ type StreamInputBlobParameters struct { StreamAnalyticsJobNameSelector *v1.Selector `json:"streamAnalyticsJobNameSelector,omitempty" tf:"-"` // The time format. Wherever {time} appears in path_pattern, the value of this property is used as the time format instead. + // +kubebuilder:validation:Optional TimeFormat *string `json:"timeFormat,omitempty" tf:"time_format,omitempty"` } @@ -165,12 +170,15 @@ type StreamInputBlobSerializationObservation struct { type StreamInputBlobSerializationParameters struct { // The encoding of the incoming data in the case of input and the encoding of outgoing data in the case of output. It currently can only be set to UTF8. + // +kubebuilder:validation:Optional Encoding *string `json:"encoding,omitempty" tf:"encoding,omitempty"` // The delimiter that will be used to separate comma-separated value (CSV) records. Possible values are (space), , (comma), (tab), | (pipe) and ;. + // +kubebuilder:validation:Optional FieldDelimiter *string `json:"fieldDelimiter,omitempty" tf:"field_delimiter,omitempty"` // The serialization format used for incoming data streams. Possible values are Avro, Csv and Json. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/streamanalytics/v1beta1/zz_streaminputeventhub_types.go b/apis/streamanalytics/v1beta1/zz_streaminputeventhub_types.go index 15eb1674d..133cae83c 100755 --- a/apis/streamanalytics/v1beta1/zz_streaminputeventhub_types.go +++ b/apis/streamanalytics/v1beta1/zz_streaminputeventhub_types.go @@ -70,6 +70,7 @@ type StreamInputEventHubObservation struct { type StreamInputEventHubParameters struct { // The authentication mode for the Stream Output. Possible values are Msi and ConnectionString. Defaults to ConnectionString. + // +kubebuilder:validation:Optional AuthenticationMode *string `json:"authenticationMode,omitempty" tf:"authentication_mode,omitempty"` // The name of an Event Hub Consumer Group that should be used to read events from the Event Hub. Specifying distinct consumer group names for multiple inputs allows each of those inputs to receive the same events from the Event Hub. If not set the input will use the Event Hub's default consumer group. @@ -99,9 +100,11 @@ type StreamInputEventHubParameters struct { EventHubNameSelector *v1.Selector `json:"eventhubNameSelector,omitempty" tf:"-"` // The name of the Stream Input EventHub. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The property the input Event Hub has been partitioned by. + // +kubebuilder:validation:Optional PartitionKey *string `json:"partitionKey,omitempty" tf:"partition_key,omitempty"` // The name of the Resource Group where the Stream Analytics Job exists. Changing this forces a new resource to be created. @@ -118,6 +121,7 @@ type StreamInputEventHubParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A serialization block as defined below. + // +kubebuilder:validation:Optional Serialization []StreamInputEventHubSerializationParameters `json:"serialization,omitempty" tf:"serialization,omitempty"` // The namespace that is associated with the desired Event Hub, Service Bus Queue, Service Bus Topic, etc. @@ -138,6 +142,7 @@ type StreamInputEventHubParameters struct { SharedAccessPolicyKeySecretRef *v1.SecretKeySelector `json:"sharedAccessPolicyKeySecretRef,omitempty" tf:"-"` // The shared access policy name for the Event Hub, Service Bus Queue, Service Bus Topic, etc. + // +kubebuilder:validation:Optional SharedAccessPolicyName *string `json:"sharedAccessPolicyName,omitempty" tf:"shared_access_policy_name,omitempty"` // The name of the Stream Analytics Job. Changing this forces a new resource to be created. @@ -181,12 +186,15 @@ type StreamInputEventHubSerializationObservation struct { type StreamInputEventHubSerializationParameters struct { // The encoding of the incoming data in the case of input and the encoding of outgoing data in the case of output. It currently can only be set to UTF8. + // +kubebuilder:validation:Optional Encoding *string `json:"encoding,omitempty" tf:"encoding,omitempty"` // The delimiter that will be used to separate comma-separated value (CSV) records. Possible values are (space), , (comma), (tab), | (pipe) and ;. + // +kubebuilder:validation:Optional FieldDelimiter *string `json:"fieldDelimiter,omitempty" tf:"field_delimiter,omitempty"` // The serialization format used for incoming data streams. Possible values are Avro, Csv and Json. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/streamanalytics/v1beta1/zz_streaminputiothub_types.go b/apis/streamanalytics/v1beta1/zz_streaminputiothub_types.go index 0f2b1dd43..18f1f2484 100755 --- a/apis/streamanalytics/v1beta1/zz_streaminputiothub_types.go +++ b/apis/streamanalytics/v1beta1/zz_streaminputiothub_types.go @@ -61,6 +61,7 @@ type StreamInputIOTHubObservation struct { type StreamInputIOTHubParameters struct { // The IoT Hub endpoint to connect to (ie. messages/events, messages/operationsMonitoringEvents, etc.). + // +kubebuilder:validation:Optional Endpoint *string `json:"endpoint,omitempty" tf:"endpoint,omitempty"` // The name of an Event Hub Consumer Group that should be used to read events from the Event Hub. Specifying distinct consumer group names for multiple inputs allows each of those inputs to receive the same events from the Event Hub. @@ -90,6 +91,7 @@ type StreamInputIOTHubParameters struct { IOTHubNamespaceSelector *v1.Selector `json:"iothubNamespaceSelector,omitempty" tf:"-"` // The name of the Stream Input IoTHub. 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 where the Stream Analytics Job exists. Changing this forces a new resource to be created. @@ -106,6 +108,7 @@ type StreamInputIOTHubParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A serialization block as defined below. + // +kubebuilder:validation:Optional Serialization []StreamInputIOTHubSerializationParameters `json:"serialization,omitempty" tf:"serialization,omitempty"` // The shared access policy key for the specified shared access policy. Changing this forces a new resource to be created. @@ -113,6 +116,7 @@ type StreamInputIOTHubParameters struct { SharedAccessPolicyKeySecretRef v1.SecretKeySelector `json:"sharedAccessPolicyKeySecretRef" tf:"-"` // The shared access policy name for the Event Hub, Service Bus Queue, Service Bus Topic, etc. + // +kubebuilder:validation:Optional SharedAccessPolicyName *string `json:"sharedAccessPolicyName,omitempty" tf:"shared_access_policy_name,omitempty"` // The name of the Stream Analytics Job. Changing this forces a new resource to be created. @@ -156,12 +160,15 @@ type StreamInputIOTHubSerializationObservation struct { type StreamInputIOTHubSerializationParameters struct { // The encoding of the incoming data in the case of input and the encoding of outgoing data in the case of output. It currently can only be set to UTF8. + // +kubebuilder:validation:Optional Encoding *string `json:"encoding,omitempty" tf:"encoding,omitempty"` // The delimiter that will be used to separate comma-separated value (CSV) records. Possible values are (space), , (comma), (tab), | (pipe) and ;. + // +kubebuilder:validation:Optional FieldDelimiter *string `json:"fieldDelimiter,omitempty" tf:"field_delimiter,omitempty"` // The serialization format used for incoming data streams. Possible values are Avro, Csv and Json. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/synapse/v1beta1/zz_firewallrule_types.go b/apis/synapse/v1beta1/zz_firewallrule_types.go index 4c1396b44..914923242 100755 --- a/apis/synapse/v1beta1/zz_firewallrule_types.go +++ b/apis/synapse/v1beta1/zz_firewallrule_types.go @@ -40,9 +40,11 @@ type FirewallRuleObservation struct { type FirewallRuleParameters struct { // The ending IP address to allow through the firewall for this rule. + // +kubebuilder:validation:Optional EndIPAddress *string `json:"endIpAddress,omitempty" tf:"end_ip_address,omitempty"` // The starting IP address to allow through the firewall for this rule. + // +kubebuilder:validation:Optional StartIPAddress *string `json:"startIpAddress,omitempty" tf:"start_ip_address,omitempty"` // The ID of the Synapse Workspace on which to create the Firewall Rule. Changing this forces a new resource to be created. diff --git a/apis/synapse/v1beta1/zz_integrationruntimeazure_types.go b/apis/synapse/v1beta1/zz_integrationruntimeazure_types.go index 79b878206..286de9018 100755 --- a/apis/synapse/v1beta1/zz_integrationruntimeazure_types.go +++ b/apis/synapse/v1beta1/zz_integrationruntimeazure_types.go @@ -58,15 +58,19 @@ type IntegrationRuntimeAzureObservation struct { type IntegrationRuntimeAzureParameters struct { // Compute type of the cluster which will execute data flow job. Valid values are General, ComputeOptimized and MemoryOptimized. Defaults to General. + // +kubebuilder:validation:Optional ComputeType *string `json:"computeType,omitempty" tf:"compute_type,omitempty"` // Core count of the cluster which will execute data flow job. Valid values are 8, 16, 32, 48, 80, 144 and 272. Defaults to 8. + // +kubebuilder:validation:Optional CoreCount *float64 `json:"coreCount,omitempty" tf:"core_count,omitempty"` // Integration runtime description. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The Azure Region where the Synapse Azure Integration Runtime should exist. Use AutoResolve to create an auto-resolve integration runtime. Changing this forces a new Synapse Azure Integration Runtime to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The Synapse Workspace ID in which to associate the Integration Runtime with. Changing this forces a new Synapse Azure Integration Runtime to be created. @@ -84,6 +88,7 @@ type IntegrationRuntimeAzureParameters struct { SynapseWorkspaceIDSelector *v1.Selector `json:"synapseWorkspaceIdSelector,omitempty" tf:"-"` // Time to live (in minutes) setting of the cluster which will execute data flow job. Defaults to 0. + // +kubebuilder:validation:Optional TimeToLiveMin *float64 `json:"timeToLiveMin,omitempty" tf:"time_to_live_min,omitempty"` } diff --git a/apis/synapse/v1beta1/zz_integrationruntimeselfhosted_types.go b/apis/synapse/v1beta1/zz_integrationruntimeselfhosted_types.go index 5286c01c3..bdba4214a 100755 --- a/apis/synapse/v1beta1/zz_integrationruntimeselfhosted_types.go +++ b/apis/synapse/v1beta1/zz_integrationruntimeselfhosted_types.go @@ -40,6 +40,7 @@ type IntegrationRuntimeSelfHostedObservation struct { type IntegrationRuntimeSelfHostedParameters struct { // Integration runtime description. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // The Synapse Workspace ID in which to associate the Integration Runtime with. Changing this forces a new Synapse Self-hosted Integration Runtime to be created. diff --git a/apis/synapse/v1beta1/zz_linkedservice_types.go b/apis/synapse/v1beta1/zz_linkedservice_types.go index 3671a368d..93492e79e 100755 --- a/apis/synapse/v1beta1/zz_linkedservice_types.go +++ b/apis/synapse/v1beta1/zz_linkedservice_types.go @@ -44,6 +44,7 @@ type IntegrationRuntimeParameters struct { NameSelector *v1.Selector `json:"nameSelector,omitempty" tf:"-"` // A map of parameters to associate with the integration runtime. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` } @@ -120,18 +121,23 @@ type LinkedServiceObservation struct { type LinkedServiceParameters struct { // A map of additional properties to associate with the Synapse Linked Service. + // +kubebuilder:validation:Optional AdditionalProperties map[string]*string `json:"additionalProperties,omitempty" tf:"additional_properties,omitempty"` // List of tags that can be used for describing the Synapse Linked Service. + // +kubebuilder:validation:Optional Annotations []*string `json:"annotations,omitempty" tf:"annotations,omitempty"` // The description for the Synapse Linked Service. + // +kubebuilder:validation:Optional Description *string `json:"description,omitempty" tf:"description,omitempty"` // A integration_runtime block as defined below. + // +kubebuilder:validation:Optional IntegrationRuntime []IntegrationRuntimeParameters `json:"integrationRuntime,omitempty" tf:"integration_runtime,omitempty"` // A map of parameters to associate with the Synapse Linked Service. + // +kubebuilder:validation:Optional Parameters map[string]*string `json:"parameters,omitempty" tf:"parameters,omitempty"` // The Synapse Workspace ID in which to associate the Linked Service with. Changing this forces a new Synapse Linked Service to be created. @@ -157,9 +163,11 @@ type LinkedServiceParameters struct { // MongoDbAtlas, MongoDbV2, MySql, Netezza, OData, Odbc, Office365, Oracle, OracleServiceCloud, Paypal, Phoenix, PostgreSql, Presto, QuickBooks, // Responsys, RestService, SqlServer, Salesforce, SalesforceMarketingCloud, SalesforceServiceCloud, SapBW, SapCloudForCustomer, SapEcc, SapHana, SapOpenHub, // SapTable, ServiceNow, Sftp, SharePointOnlineList, Shopify, Snowflake, Spark, Square, Sybase, Teradata, Vertica, Web, Xero, Zoho. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // A JSON object that contains the properties of the Synapse Linked Service. + // +kubebuilder:validation:Optional TypePropertiesJSON *string `json:"typePropertiesJson,omitempty" tf:"type_properties_json,omitempty"` } diff --git a/apis/synapse/v1beta1/zz_managedprivateendpoint_types.go b/apis/synapse/v1beta1/zz_managedprivateendpoint_types.go index 494eaff21..8b69fc214 100755 --- a/apis/synapse/v1beta1/zz_managedprivateendpoint_types.go +++ b/apis/synapse/v1beta1/zz_managedprivateendpoint_types.go @@ -43,9 +43,11 @@ type ManagedPrivateEndpointObservation struct { type ManagedPrivateEndpointParameters struct { // Specifies the name which should be used for this Managed Private Endpoint. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Specifies the sub resource name which the Synapse Private Endpoint is able to connect to. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SubresourceName *string `json:"subresourceName,omitempty" tf:"subresource_name,omitempty"` // The ID of the Synapse Workspace on which to create the Managed Private Endpoint. Changing this forces a new resource to be created. diff --git a/apis/synapse/v1beta1/zz_privatelinkhub_types.go b/apis/synapse/v1beta1/zz_privatelinkhub_types.go index 86bb85551..8e00fa6a6 100755 --- a/apis/synapse/v1beta1/zz_privatelinkhub_types.go +++ b/apis/synapse/v1beta1/zz_privatelinkhub_types.go @@ -40,6 +40,7 @@ type PrivateLinkHubObservation struct { type PrivateLinkHubParameters struct { // Specifies the Azure location where the Synapse Private Link Hub exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the resource group in which to create the Synapse Private Link Hub. Changing this forces a new resource to be created. @@ -56,6 +57,7 @@ type PrivateLinkHubParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the Synapse Private Link Hub. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/synapse/v1beta1/zz_roleassignment_types.go b/apis/synapse/v1beta1/zz_roleassignment_types.go index 5ce99a32d..38d0c468f 100755 --- a/apis/synapse/v1beta1/zz_roleassignment_types.go +++ b/apis/synapse/v1beta1/zz_roleassignment_types.go @@ -46,12 +46,15 @@ type RoleAssignmentObservation struct { type RoleAssignmentParameters struct { // The ID of the Principal (User, Group or Service Principal) to assign the Synapse Role Definition to. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PrincipalID *string `json:"principalId,omitempty" tf:"principal_id,omitempty"` // The Role Name of the Synapse Built-In Role. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional RoleName *string `json:"roleName,omitempty" tf:"role_name,omitempty"` // The Synapse Spark Pool which the Synapse Role Assignment applies to. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SynapseSparkPoolID *string `json:"synapseSparkPoolId,omitempty" tf:"synapse_spark_pool_id,omitempty"` // The Synapse Workspace which the Synapse Role Assignment applies to. Changing this forces a new resource to be created. diff --git a/apis/synapse/v1beta1/zz_sparkpool_types.go b/apis/synapse/v1beta1/zz_sparkpool_types.go index a3822208f..320cfadea 100755 --- a/apis/synapse/v1beta1/zz_sparkpool_types.go +++ b/apis/synapse/v1beta1/zz_sparkpool_types.go @@ -28,6 +28,7 @@ type AutoPauseObservation struct { type AutoPauseParameters struct { // Number of minutes of idle time before the Spark Pool is automatically paused. Must be between 5 and 10080. + // +kubebuilder:validation:Optional DelayInMinutes *float64 `json:"delayInMinutes,omitempty" tf:"delay_in_minutes,omitempty"` } @@ -52,9 +53,11 @@ type AutoScaleObservation struct { type AutoScaleParameters struct { // The maximum number of nodes the Spark Pool can support. Must be between 3 and 200. + // +kubebuilder:validation:Optional MaxNodeCount *float64 `json:"maxNodeCount,omitempty" tf:"max_node_count,omitempty"` // The minimum number of nodes the Spark Pool can support. Must be between 3 and 200. + // +kubebuilder:validation:Optional MinNodeCount *float64 `json:"minNodeCount,omitempty" tf:"min_node_count,omitempty"` } @@ -79,9 +82,11 @@ type LibraryRequirementObservation struct { type LibraryRequirementParameters struct { // The content of library requirements. + // +kubebuilder:validation:Optional Content *string `json:"content,omitempty" tf:"content,omitempty"` // The name of the library requirements file. + // +kubebuilder:validation:Optional Filename *string `json:"filename,omitempty" tf:"filename,omitempty"` } @@ -106,9 +111,11 @@ type SparkConfigObservation struct { type SparkConfigParameters struct { // The contents of a spark configuration. + // +kubebuilder:validation:Optional Content *string `json:"content,omitempty" tf:"content,omitempty"` // The name of the file where the spark configuration content will be stored. + // +kubebuilder:validation:Optional Filename *string `json:"filename,omitempty" tf:"filename,omitempty"` } @@ -229,51 +236,67 @@ type SparkPoolObservation struct { type SparkPoolParameters struct { // An auto_pause block as defined below. + // +kubebuilder:validation:Optional AutoPause []AutoPauseParameters `json:"autoPause,omitempty" tf:"auto_pause,omitempty"` // An auto_scale block as defined below. Exactly one of node_count or auto_scale must be specified. + // +kubebuilder:validation:Optional AutoScale []AutoScaleParameters `json:"autoScale,omitempty" tf:"auto_scale,omitempty"` // The cache size in the Spark Pool. + // +kubebuilder:validation:Optional CacheSize *float64 `json:"cacheSize,omitempty" tf:"cache_size,omitempty"` // Indicates whether compute isolation is enabled or not. Defaults to false. + // +kubebuilder:validation:Optional ComputeIsolationEnabled *bool `json:"computeIsolationEnabled,omitempty" tf:"compute_isolation_enabled,omitempty"` // Indicates whether Dynamic Executor Allocation is enabled or not. Defaults to false. + // +kubebuilder:validation:Optional DynamicExecutorAllocationEnabled *bool `json:"dynamicExecutorAllocationEnabled,omitempty" tf:"dynamic_executor_allocation_enabled,omitempty"` // A library_requirement block as defined below. + // +kubebuilder:validation:Optional LibraryRequirement []LibraryRequirementParameters `json:"libraryRequirement,omitempty" tf:"library_requirement,omitempty"` // The maximum number of executors allocated only when dynamic_executor_allocation_enabled set to true. + // +kubebuilder:validation:Optional MaxExecutors *float64 `json:"maxExecutors,omitempty" tf:"max_executors,omitempty"` // The minimum number of executors allocated only when dynamic_executor_allocation_enabled set to true. + // +kubebuilder:validation:Optional MinExecutors *float64 `json:"minExecutors,omitempty" tf:"min_executors,omitempty"` // The number of nodes in the Spark Pool. Exactly one of node_count or auto_scale must be specified. + // +kubebuilder:validation:Optional NodeCount *float64 `json:"nodeCount,omitempty" tf:"node_count,omitempty"` // The level of node in the Spark Pool. Possible values are Small, Medium, Large, None, XLarge, XXLarge and XXXLarge. + // +kubebuilder:validation:Optional NodeSize *string `json:"nodeSize,omitempty" tf:"node_size,omitempty"` // The kind of nodes that the Spark Pool provides. Possible values are MemoryOptimized and None. + // +kubebuilder:validation:Optional NodeSizeFamily *string `json:"nodeSizeFamily,omitempty" tf:"node_size_family,omitempty"` // Indicates whether session level packages are enabled or not. Defaults to false. + // +kubebuilder:validation:Optional SessionLevelPackagesEnabled *bool `json:"sessionLevelPackagesEnabled,omitempty" tf:"session_level_packages_enabled,omitempty"` // A spark_config block as defined below. + // +kubebuilder:validation:Optional SparkConfig []SparkConfigParameters `json:"sparkConfig,omitempty" tf:"spark_config,omitempty"` // The Spark events folder. Defaults to /events. + // +kubebuilder:validation:Optional SparkEventsFolder *string `json:"sparkEventsFolder,omitempty" tf:"spark_events_folder,omitempty"` // The default folder where Spark logs will be written. Defaults to /logs. + // +kubebuilder:validation:Optional SparkLogFolder *string `json:"sparkLogFolder,omitempty" tf:"spark_log_folder,omitempty"` // The Apache Spark version. Possible values are 2.4 , 3.1 , 3.2 and 3.3. Defaults to 2.4. + // +kubebuilder:validation:Optional SparkVersion *string `json:"sparkVersion,omitempty" tf:"spark_version,omitempty"` // The ID of the Synapse Workspace where the Synapse Spark Pool should exist. Changing this forces a new Synapse Spark Pool to be created. @@ -291,6 +314,7 @@ type SparkPoolParameters struct { SynapseWorkspaceIDSelector *v1.Selector `json:"synapseWorkspaceIdSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the Synapse Spark Pool. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/synapse/v1beta1/zz_sqlpool_types.go b/apis/synapse/v1beta1/zz_sqlpool_types.go index bbcc1172b..3513365aa 100755 --- a/apis/synapse/v1beta1/zz_sqlpool_types.go +++ b/apis/synapse/v1beta1/zz_sqlpool_types.go @@ -34,9 +34,11 @@ type RestoreObservation struct { type RestoreParameters struct { // Specifies the Snapshot time to restore formatted as an RFC3339 date string. Changing this forces a new Synapse SQL Pool to be created. + // +kubebuilder:validation:Optional PointInTime *string `json:"pointInTime,omitempty" tf:"point_in_time,omitempty"` // The ID of the Synapse SQL Pool or SQL Database which is to restore. Changing this forces a new Synapse SQL Pool to be created. + // +kubebuilder:validation:Optional SourceDatabaseID *string `json:"sourceDatabaseId,omitempty" tf:"source_database_id,omitempty"` } @@ -103,24 +105,31 @@ type SQLPoolObservation struct { type SQLPoolParameters struct { // The name of the collation to use with this pool, only applicable when create_mode is set to Default. Azure default is SQL_LATIN1_GENERAL_CP1_CI_AS. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Collation *string `json:"collation,omitempty" tf:"collation,omitempty"` // Specifies how to create the SQL Pool. Valid values are: Default, Recovery or PointInTimeRestore. Must be Default to create a new database. Defaults to Default. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional CreateMode *string `json:"createMode,omitempty" tf:"create_mode,omitempty"` // Is transparent data encryption enabled? + // +kubebuilder:validation:Optional DataEncrypted *bool `json:"dataEncrypted,omitempty" tf:"data_encrypted,omitempty"` // Is geo-backup policy enabled? Defaults to true. + // +kubebuilder:validation:Optional GeoBackupPolicyEnabled *bool `json:"geoBackupPolicyEnabled,omitempty" tf:"geo_backup_policy_enabled,omitempty"` // The ID of the Synapse SQL Pool or SQL Database which is to back up, only applicable when create_mode is set to Recovery. Changing this forces a new Synapse SQL Pool to be created. + // +kubebuilder:validation:Optional RecoveryDatabaseID *string `json:"recoveryDatabaseId,omitempty" tf:"recovery_database_id,omitempty"` // A restore block as defined below. only applicable when create_mode is set to PointInTimeRestore. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Restore []RestoreParameters `json:"restore,omitempty" tf:"restore,omitempty"` // Specifies the SKU Name for this Synapse SQL Pool. Possible values are DW100c, DW200c, DW300c, DW400c, DW500c, DW1000c, DW1500c, DW2000c, DW2500c, DW3000c, DW5000c, DW6000c, DW7500c, DW10000c, DW15000c or DW30000c. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // The ID of Synapse Workspace within which this SQL Pool should be created. Changing this forces a new Synapse SQL Pool to be created. @@ -138,6 +147,7 @@ type SQLPoolParameters struct { SynapseWorkspaceIDSelector *v1.Selector `json:"synapseWorkspaceIdSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the Synapse SQL Pool. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/synapse/v1beta1/zz_sqlpoolextendedauditingpolicy_types.go b/apis/synapse/v1beta1/zz_sqlpoolextendedauditingpolicy_types.go index 08e147efa..071e85d73 100755 --- a/apis/synapse/v1beta1/zz_sqlpoolextendedauditingpolicy_types.go +++ b/apis/synapse/v1beta1/zz_sqlpoolextendedauditingpolicy_types.go @@ -49,9 +49,11 @@ type SQLPoolExtendedAuditingPolicyObservation struct { type SQLPoolExtendedAuditingPolicyParameters struct { // Enable audit events to Azure Monitor? To enable server audit events to Azure Monitor, please enable its master database audit events to Azure Monitor. Defaults to true. + // +kubebuilder:validation:Optional LogMonitoringEnabled *bool `json:"logMonitoringEnabled,omitempty" tf:"log_monitoring_enabled,omitempty"` // The number of days to retain logs for in the storage account. Defaults to 0. + // +kubebuilder:validation:Optional RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` // The ID of the Synapse SQL pool to set the extended auditing policy. Changing this forces a new resource to be created. @@ -69,6 +71,7 @@ type SQLPoolExtendedAuditingPolicyParameters struct { SQLPoolIDSelector *v1.Selector `json:"sqlPoolIdSelector,omitempty" tf:"-"` // Is storage_account_access_key value the storage's secondary key? + // +kubebuilder:validation:Optional StorageAccountAccessKeyIsSecondary *bool `json:"storageAccountAccessKeyIsSecondary,omitempty" tf:"storage_account_access_key_is_secondary,omitempty"` // The access key to use for the auditing storage account. diff --git a/apis/synapse/v1beta1/zz_sqlpoolsecurityalertpolicy_types.go b/apis/synapse/v1beta1/zz_sqlpoolsecurityalertpolicy_types.go index 5d82cd64b..d1e0f74e3 100755 --- a/apis/synapse/v1beta1/zz_sqlpoolsecurityalertpolicy_types.go +++ b/apis/synapse/v1beta1/zz_sqlpoolsecurityalertpolicy_types.go @@ -61,18 +61,23 @@ type SQLPoolSecurityAlertPolicyObservation struct { type SQLPoolSecurityAlertPolicyParameters struct { // Specifies an array of alerts that are disabled. Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Data_Exfiltration, Unsafe_Action. + // +kubebuilder:validation:Optional DisabledAlerts []*string `json:"disabledAlerts,omitempty" tf:"disabled_alerts,omitempty"` // Boolean flag which specifies if the alert is sent to the account administrators or not. Defaults to false. + // +kubebuilder:validation:Optional EmailAccountAdminsEnabled *bool `json:"emailAccountAdminsEnabled,omitempty" tf:"email_account_admins_enabled,omitempty"` // Specifies an array of email addresses to which the alert is sent. + // +kubebuilder:validation:Optional EmailAddresses []*string `json:"emailAddresses,omitempty" tf:"email_addresses,omitempty"` // Specifies the state of the policy, whether it is enabled or disabled or a policy has not been applied yet on the specific SQL pool. Possible values are Disabled, Enabled and New. + // +kubebuilder:validation:Optional PolicyState *string `json:"policyState,omitempty" tf:"policy_state,omitempty"` // Specifies the number of days to keep in the Threat Detection audit logs. Defaults to 0. + // +kubebuilder:validation:Optional RetentionDays *float64 `json:"retentionDays,omitempty" tf:"retention_days,omitempty"` // Specifies the ID of the Synapse SQL Pool. Changing this forces a new resource to be created. diff --git a/apis/synapse/v1beta1/zz_sqlpoolworkloadclassifier_types.go b/apis/synapse/v1beta1/zz_sqlpoolworkloadclassifier_types.go index d924c68d3..615e2148f 100755 --- a/apis/synapse/v1beta1/zz_sqlpoolworkloadclassifier_types.go +++ b/apis/synapse/v1beta1/zz_sqlpoolworkloadclassifier_types.go @@ -64,21 +64,27 @@ type SQLPoolWorkloadClassifierObservation struct { type SQLPoolWorkloadClassifierParameters struct { // Specifies the session context value that a request can be classified against. + // +kubebuilder:validation:Optional Context *string `json:"context,omitempty" tf:"context,omitempty"` // The workload classifier end time for classification. It's of the HH:MM format in UTC time zone. + // +kubebuilder:validation:Optional EndTime *string `json:"endTime,omitempty" tf:"end_time,omitempty"` // The workload classifier importance. The allowed values are low, below_normal, normal, above_normal and high. + // +kubebuilder:validation:Optional Importance *string `json:"importance,omitempty" tf:"importance,omitempty"` // Specifies the label value that a request can be classified against. + // +kubebuilder:validation:Optional Label *string `json:"label,omitempty" tf:"label,omitempty"` // The workload classifier member name used to classified against. + // +kubebuilder:validation:Optional MemberName *string `json:"memberName,omitempty" tf:"member_name,omitempty"` // The workload classifier start time for classification. It's of the HH:MM format in UTC time zone. + // +kubebuilder:validation:Optional StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` // The ID of the Synapse SQL Pool Workload Group. Changing this forces a new Synapse SQL Pool Workload Classifier to be created. diff --git a/apis/synapse/v1beta1/zz_sqlpoolworkloadgroup_types.go b/apis/synapse/v1beta1/zz_sqlpoolworkloadgroup_types.go index fcaa4302d..ec9926b41 100755 --- a/apis/synapse/v1beta1/zz_sqlpoolworkloadgroup_types.go +++ b/apis/synapse/v1beta1/zz_sqlpoolworkloadgroup_types.go @@ -64,21 +64,27 @@ type SQLPoolWorkloadGroupObservation struct { type SQLPoolWorkloadGroupParameters struct { // The workload group importance level. Defaults to normal. + // +kubebuilder:validation:Optional Importance *string `json:"importance,omitempty" tf:"importance,omitempty"` // The workload group cap percentage resource. + // +kubebuilder:validation:Optional MaxResourcePercent *float64 `json:"maxResourcePercent,omitempty" tf:"max_resource_percent,omitempty"` // The workload group request maximum grant percentage. Defaults to 3. + // +kubebuilder:validation:Optional MaxResourcePercentPerRequest *float64 `json:"maxResourcePercentPerRequest,omitempty" tf:"max_resource_percent_per_request,omitempty"` // The workload group minimum percentage resource. + // +kubebuilder:validation:Optional MinResourcePercent *float64 `json:"minResourcePercent,omitempty" tf:"min_resource_percent,omitempty"` // The workload group request minimum grant percentage. + // +kubebuilder:validation:Optional MinResourcePercentPerRequest *float64 `json:"minResourcePercentPerRequest,omitempty" tf:"min_resource_percent_per_request,omitempty"` // The workload group query execution timeout. + // +kubebuilder:validation:Optional QueryExecutionTimeoutInSeconds *float64 `json:"queryExecutionTimeoutInSeconds,omitempty" tf:"query_execution_timeout_in_seconds,omitempty"` // The ID of the Synapse SQL Pool. Changing this forces a new Synapse SQL Pool Workload Group to be created. diff --git a/apis/synapse/v1beta1/zz_workspace_types.go b/apis/synapse/v1beta1/zz_workspace_types.go index 09cf3e890..333ba10c9 100755 --- a/apis/synapse/v1beta1/zz_workspace_types.go +++ b/apis/synapse/v1beta1/zz_workspace_types.go @@ -40,12 +40,15 @@ type AADAdminObservation struct { type AADAdminParameters struct { // The login name of the Azure AD Administrator of this Synapse Workspace. + // +kubebuilder:validation:Optional Login *string `json:"login,omitempty" tf:"login"` // The object id of the Azure AD Administrator of this Synapse Workspace. + // +kubebuilder:validation:Optional ObjectID *string `json:"objectId,omitempty" tf:"object_id"` // The tenant id of the Azure AD Administrator of this Synapse Workspace. + // +kubebuilder:validation:Optional TenantID *string `json:"tenantId,omitempty" tf:"tenant_id"` } @@ -100,24 +103,31 @@ type AzureDevopsRepoObservation struct { type AzureDevopsRepoParameters struct { // Specifies the Azure DevOps account name. + // +kubebuilder:validation:Optional AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` // Specifies the collaboration branch of the repository to get code from. + // +kubebuilder:validation:Optional BranchName *string `json:"branchName,omitempty" tf:"branch_name,omitempty"` // The last commit ID. + // +kubebuilder:validation:Optional LastCommitID *string `json:"lastCommitId,omitempty" tf:"last_commit_id,omitempty"` // Specifies the name of the Azure DevOps project. + // +kubebuilder:validation:Optional ProjectName *string `json:"projectName,omitempty" tf:"project_name,omitempty"` // Specifies the name of the git repository. + // +kubebuilder:validation:Optional RepositoryName *string `json:"repositoryName,omitempty" tf:"repository_name,omitempty"` // Specifies the root folder within the repository. Set to / for the top level. + // +kubebuilder:validation:Optional RootFolder *string `json:"rootFolder,omitempty" tf:"root_folder,omitempty"` // the ID of the tenant for the Azure DevOps account. + // +kubebuilder:validation:Optional TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` } @@ -139,6 +149,7 @@ type CustomerManagedKeyObservation struct { type CustomerManagedKeyParameters struct { // An identifier for the key. Name needs to match the name of the key used with the azurerm_synapse_workspace_key resource. Defaults to "cmk" if not specified. + // +kubebuilder:validation:Optional KeyName *string `json:"keyName,omitempty" tf:"key_name,omitempty"` // The Azure Key Vault Key Versionless ID to be used as the Customer Managed Key (CMK) for double encryption (e.g. https://example-keyvault.vault.azure.net/type/cmk/). @@ -201,21 +212,27 @@ type GithubRepoObservation struct { type GithubRepoParameters struct { // Specifies the GitHub account name. + // +kubebuilder:validation:Optional AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` // Specifies the collaboration branch of the repository to get code from. + // +kubebuilder:validation:Optional BranchName *string `json:"branchName,omitempty" tf:"branch_name,omitempty"` // Specifies the GitHub Enterprise host name. For example: https://github.mydomain.com. + // +kubebuilder:validation:Optional GitURL *string `json:"gitUrl,omitempty" tf:"git_url,omitempty"` // The last commit ID. + // +kubebuilder:validation:Optional LastCommitID *string `json:"lastCommitId,omitempty" tf:"last_commit_id,omitempty"` // Specifies the name of the git repository. + // +kubebuilder:validation:Optional RepositoryName *string `json:"repositoryName,omitempty" tf:"repository_name,omitempty"` // Specifies the root folder within the repository. Set to / for the top level. + // +kubebuilder:validation:Optional RootFolder *string `json:"rootFolder,omitempty" tf:"root_folder,omitempty"` } @@ -246,9 +263,11 @@ type IdentityObservation struct { type IdentityParameters struct { // Specifies a list of User Assigned Managed Identity IDs to be assigned to this Synapse Workspace. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be associated with this Synapse Workspace. Possible values are SystemAssigned, UserAssigned and SystemAssigned, UserAssigned (to enable both). + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -279,12 +298,15 @@ type SQLAADAdminObservation struct { type SQLAADAdminParameters struct { // The login name of the Azure AD Administrator of this Synapse Workspace SQL. + // +kubebuilder:validation:Optional Login *string `json:"login,omitempty" tf:"login"` // The object id of the Azure AD Administrator of this Synapse Workspace SQL. + // +kubebuilder:validation:Optional ObjectID *string `json:"objectId,omitempty" tf:"object_id"` // The tenant id of the Azure AD Administrator of this Synapse Workspace SQL. + // +kubebuilder:validation:Optional TenantID *string `json:"tenantId,omitempty" tf:"tenant_id"` } @@ -405,9 +427,11 @@ type WorkspaceObservation struct { type WorkspaceParameters struct { // An aad_admin block as defined below. Conflicts with customer_managed_key. + // +kubebuilder:validation:Optional AADAdmin []AADAdminParameters `json:"aadAdmin,omitempty" tf:"aad_admin,omitempty"` // An azure_devops_repo block as defined below. + // +kubebuilder:validation:Optional AzureDevopsRepo []AzureDevopsRepoParameters `json:"azureDevopsRepo,omitempty" tf:"azure_devops_repo,omitempty"` // Subnet ID used for computes in workspace Changing this forces a new resource to be created. @@ -425,21 +449,27 @@ type WorkspaceParameters struct { ComputeSubnetIDSelector *v1.Selector `json:"computeSubnetIdSelector,omitempty" tf:"-"` // A customer_managed_key block as defined below. Conflicts with aad_admin. + // +kubebuilder:validation:Optional CustomerManagedKey []CustomerManagedKeyParameters `json:"customerManagedKey,omitempty" tf:"customer_managed_key,omitempty"` // Is data exfiltration protection enabled in this workspace? If set to true, managed_virtual_network_enabled must also be set to true. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DataExfiltrationProtectionEnabled *bool `json:"dataExfiltrationProtectionEnabled,omitempty" tf:"data_exfiltration_protection_enabled,omitempty"` // A github_repo block as defined below. + // +kubebuilder:validation:Optional GithubRepo []GithubRepoParameters `json:"githubRepo,omitempty" tf:"github_repo,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // Allowed AAD Tenant Ids For Linking. + // +kubebuilder:validation:Optional LinkingAllowedForAADTenantIds []*string `json:"linkingAllowedForAadTenantIds,omitempty" tf:"linking_allowed_for_aad_tenant_ids,omitempty"` // Specifies the Azure Region where the synapse Workspace should exist. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Workspace managed resource group. Changing this forces a new resource to be created. @@ -456,12 +486,15 @@ type WorkspaceParameters struct { ManagedResourceGroupNameSelector *v1.Selector `json:"managedResourceGroupNameSelector,omitempty" tf:"-"` // Is Virtual Network enabled for all computes in this workspace? Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ManagedVirtualNetworkEnabled *bool `json:"managedVirtualNetworkEnabled,omitempty" tf:"managed_virtual_network_enabled,omitempty"` // Whether public network access is allowed for the Cognitive Account. Defaults to true. + // +kubebuilder:validation:Optional PublicNetworkAccessEnabled *bool `json:"publicNetworkAccessEnabled,omitempty" tf:"public_network_access_enabled,omitempty"` // The ID of purview account. + // +kubebuilder:validation:Optional PurviewID *string `json:"purviewId,omitempty" tf:"purview_id,omitempty"` // Specifies the name of the Resource Group where the synapse Workspace should exist. Changing this forces a new resource to be created. @@ -478,9 +511,11 @@ type WorkspaceParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // An sql_aad_admin block as defined below. + // +kubebuilder:validation:Optional SQLAADAdmin []SQLAADAdminParameters `json:"sqlAadAdmin,omitempty" tf:"sql_aad_admin,omitempty"` // Specifies The login name of the SQL administrator. Changing this forces a new resource to be created. If this is not provided aad_admin or customer_managed_key must be provided. + // +kubebuilder:validation:Optional SQLAdministratorLogin *string `json:"sqlAdministratorLogin,omitempty" tf:"sql_administrator_login,omitempty"` // The Password associated with the sql_administrator_login for the SQL administrator. If this is not provided aad_admin or customer_managed_key must be provided. @@ -488,6 +523,7 @@ type WorkspaceParameters struct { SQLAdministratorLoginPasswordSecretRef *v1.SecretKeySelector `json:"sqlAdministratorLoginPasswordSecretRef,omitempty" tf:"-"` // Are pipelines (running as workspace's system assigned identity) allowed to access SQL pools? + // +kubebuilder:validation:Optional SQLIdentityControlEnabled *bool `json:"sqlIdentityControlEnabled,omitempty" tf:"sql_identity_control_enabled,omitempty"` // Specifies the ID of storage data lake gen2 filesystem resource. Changing this forces a new resource to be created. @@ -505,6 +541,7 @@ type WorkspaceParameters struct { StorageDataLakeGen2FileSystemIDSelector *v1.Selector `json:"storageDataLakeGen2FilesystemIdSelector,omitempty" tf:"-"` // A mapping of tags which should be assigned to the Synapse Workspace. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/synapse/v1beta1/zz_workspaceaadadmin_types.go b/apis/synapse/v1beta1/zz_workspaceaadadmin_types.go index b1700a921..c12637f67 100755 --- a/apis/synapse/v1beta1/zz_workspaceaadadmin_types.go +++ b/apis/synapse/v1beta1/zz_workspaceaadadmin_types.go @@ -44,9 +44,11 @@ type WorkspaceAADAdminObservation struct { type WorkspaceAADAdminParameters struct { // The login name of the Azure AD Administrator of this Synapse Workspace. + // +kubebuilder:validation:Optional Login *string `json:"login,omitempty" tf:"login,omitempty"` // The object id of the Azure AD Administrator of this Synapse Workspace. + // +kubebuilder:validation:Optional ObjectID *string `json:"objectId,omitempty" tf:"object_id,omitempty"` // The ID of the Synapse Workspace where the Azure AD Administrator should be configured. @@ -64,6 +66,7 @@ type WorkspaceAADAdminParameters struct { SynapseWorkspaceIDSelector *v1.Selector `json:"synapseWorkspaceIdSelector,omitempty" tf:"-"` // The tenant id of the Azure AD Administrator of this Synapse Workspace. + // +kubebuilder:validation:Optional TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` } diff --git a/apis/synapse/v1beta1/zz_workspaceextendedauditingpolicy_types.go b/apis/synapse/v1beta1/zz_workspaceextendedauditingpolicy_types.go index e0754eca2..1afe4dbea 100755 --- a/apis/synapse/v1beta1/zz_workspaceextendedauditingpolicy_types.go +++ b/apis/synapse/v1beta1/zz_workspaceextendedauditingpolicy_types.go @@ -49,12 +49,15 @@ type WorkspaceExtendedAuditingPolicyObservation struct { type WorkspaceExtendedAuditingPolicyParameters struct { // Enable audit events to Azure Monitor? To enable server audit events to Azure Monitor, please enable its master database audit events to Azure Monitor. Defaults to true. + // +kubebuilder:validation:Optional LogMonitoringEnabled *bool `json:"logMonitoringEnabled,omitempty" tf:"log_monitoring_enabled,omitempty"` // The number of days to retain logs for in the storage account. Defaults to 0. + // +kubebuilder:validation:Optional RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` // Is storage_account_access_key value the storage's secondary key? + // +kubebuilder:validation:Optional StorageAccountAccessKeyIsSecondary *bool `json:"storageAccountAccessKeyIsSecondary,omitempty" tf:"storage_account_access_key_is_secondary,omitempty"` // The access key to use for the auditing storage account. diff --git a/apis/synapse/v1beta1/zz_workspacesecurityalertpolicy_types.go b/apis/synapse/v1beta1/zz_workspacesecurityalertpolicy_types.go index 91e04a363..ba4ab62ff 100755 --- a/apis/synapse/v1beta1/zz_workspacesecurityalertpolicy_types.go +++ b/apis/synapse/v1beta1/zz_workspacesecurityalertpolicy_types.go @@ -61,18 +61,23 @@ type WorkspaceSecurityAlertPolicyObservation struct { type WorkspaceSecurityAlertPolicyParameters struct { // Specifies an array of alerts that are disabled. Allowed values are: Sql_Injection, Sql_Injection_Vulnerability, Access_Anomaly, Data_Exfiltration, Unsafe_Action. + // +kubebuilder:validation:Optional DisabledAlerts []*string `json:"disabledAlerts,omitempty" tf:"disabled_alerts,omitempty"` // Boolean flag which specifies if the alert is sent to the account administrators or not. Defaults to false. + // +kubebuilder:validation:Optional EmailAccountAdminsEnabled *bool `json:"emailAccountAdminsEnabled,omitempty" tf:"email_account_admins_enabled,omitempty"` // Specifies an array of email addresses to which the alert is sent. + // +kubebuilder:validation:Optional EmailAddresses []*string `json:"emailAddresses,omitempty" tf:"email_addresses,omitempty"` // Specifies the state of the policy, whether it is enabled or disabled or a policy has not been applied yet on the specific workspace. Possible values are Disabled, Enabled and New. + // +kubebuilder:validation:Optional PolicyState *string `json:"policyState,omitempty" tf:"policy_state,omitempty"` // Specifies the number of days to keep in the Threat Detection audit logs. Defaults to 0. + // +kubebuilder:validation:Optional RetentionDays *float64 `json:"retentionDays,omitempty" tf:"retention_days,omitempty"` // Specifies the identifier key of the Threat Detection audit storage account. diff --git a/apis/synapse/v1beta1/zz_workspacesqlaadadmin_types.go b/apis/synapse/v1beta1/zz_workspacesqlaadadmin_types.go index e597a3547..8bf6f72f1 100755 --- a/apis/synapse/v1beta1/zz_workspacesqlaadadmin_types.go +++ b/apis/synapse/v1beta1/zz_workspacesqlaadadmin_types.go @@ -44,9 +44,11 @@ type WorkspaceSQLAADAdminObservation struct { type WorkspaceSQLAADAdminParameters struct { // The login name of the Azure AD Administrator of this Synapse Workspace. + // +kubebuilder:validation:Optional Login *string `json:"login,omitempty" tf:"login,omitempty"` // The object id of the Azure AD Administrator of this Synapse Workspace. + // +kubebuilder:validation:Optional ObjectID *string `json:"objectId,omitempty" tf:"object_id,omitempty"` // The ID of the Synapse Workspace where the Azure AD Administrator should be configured. @@ -64,6 +66,7 @@ type WorkspaceSQLAADAdminParameters struct { SynapseWorkspaceIDSelector *v1.Selector `json:"synapseWorkspaceIdSelector,omitempty" tf:"-"` // The tenant id of the Azure AD Administrator of this Synapse Workspace. + // +kubebuilder:validation:Optional TenantID *string `json:"tenantId,omitempty" tf:"tenant_id,omitempty"` } diff --git a/apis/synapse/v1beta1/zz_workspacevulnerabilityassessment_types.go b/apis/synapse/v1beta1/zz_workspacevulnerabilityassessment_types.go index 8a0d90a30..f4671d52e 100755 --- a/apis/synapse/v1beta1/zz_workspacevulnerabilityassessment_types.go +++ b/apis/synapse/v1beta1/zz_workspacevulnerabilityassessment_types.go @@ -40,12 +40,15 @@ type RecurringScansObservation struct { type RecurringScansParameters struct { // Boolean flag which specifies if the schedule scan notification will be sent to the subscription administrators. Defaults to false. + // +kubebuilder:validation:Optional EmailSubscriptionAdminsEnabled *bool `json:"emailSubscriptionAdminsEnabled,omitempty" tf:"email_subscription_admins_enabled,omitempty"` // Specifies an array of email addresses to which the scan notification is sent. + // +kubebuilder:validation:Optional Emails []*string `json:"emails,omitempty" tf:"emails,omitempty"` // Boolean flag which specifies if recurring scans is enabled or disabled. Defaults to false. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` } @@ -76,6 +79,7 @@ type WorkspaceVulnerabilityAssessmentObservation struct { type WorkspaceVulnerabilityAssessmentParameters struct { // The recurring scans settings. The recurring_scans block supports fields documented below. + // +kubebuilder:validation:Optional RecurringScans []RecurringScansParameters `json:"recurringScans,omitempty" tf:"recurring_scans,omitempty"` // Specifies the identifier key of the storage account for vulnerability assessment scan results. If storage_container_sas_key isn't specified, storage_account_access_key is required. @@ -83,6 +87,7 @@ type WorkspaceVulnerabilityAssessmentParameters struct { StorageAccountAccessKeySecretRef *v1.SecretKeySelector `json:"storageAccountAccessKeySecretRef,omitempty" tf:"-"` // A blob storage container path to hold the scan results (e.g. https://example.blob.core.windows.net/VaScans/). + // +kubebuilder:validation:Optional StorageContainerPath *string `json:"storageContainerPath,omitempty" tf:"storage_container_path,omitempty"` // A shared access signature (SAS Key) that has write access to the blob container specified in storage_container_path parameter. If storage_account_access_key isn't specified, storage_container_sas_key is required. diff --git a/apis/timeseriesinsights/v1beta1/zz_eventsourceeventhub_types.go b/apis/timeseriesinsights/v1beta1/zz_eventsourceeventhub_types.go index 15762d943..c5474e084 100755 --- a/apis/timeseriesinsights/v1beta1/zz_eventsourceeventhub_types.go +++ b/apis/timeseriesinsights/v1beta1/zz_eventsourceeventhub_types.go @@ -115,6 +115,7 @@ type EventSourceEventHubParameters struct { EventSourceResourceIDSelector *v1.Selector `json:"eventSourceResourceIdSelector,omitempty" tf:"-"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the EventHub Namespace name. @@ -148,9 +149,11 @@ type EventSourceEventHubParameters struct { SharedAccessKeySecretRef v1.SecretKeySelector `json:"sharedAccessKeySecretRef" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the value that will be used as the event source's timestamp. This value defaults to the event creation time. + // +kubebuilder:validation:Optional TimestampPropertyName *string `json:"timestampPropertyName,omitempty" tf:"timestamp_property_name,omitempty"` } diff --git a/apis/timeseriesinsights/v1beta1/zz_eventsourceiothub_types.go b/apis/timeseriesinsights/v1beta1/zz_eventsourceiothub_types.go index ac90e24bb..4dfec8067 100755 --- a/apis/timeseriesinsights/v1beta1/zz_eventsourceiothub_types.go +++ b/apis/timeseriesinsights/v1beta1/zz_eventsourceiothub_types.go @@ -115,9 +115,11 @@ type EventSourceIOTHubParameters struct { IOTHubNameSelector *v1.Selector `json:"iothubNameSelector,omitempty" tf:"-"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the name of the Shared Access key that grants the Event Source access to the IotHub. + // +kubebuilder:validation:Optional SharedAccessKeyName *string `json:"sharedAccessKeyName,omitempty" tf:"shared_access_key_name,omitempty"` // Specifies the value of the Shared Access Policy key that grants the Time Series Insights service read access to the IotHub. @@ -125,9 +127,11 @@ type EventSourceIOTHubParameters struct { SharedAccessKeySecretRef v1.SecretKeySelector `json:"sharedAccessKeySecretRef" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the value that will be used as the event source's timestamp. This value defaults to the event creation time. + // +kubebuilder:validation:Optional TimestampPropertyName *string `json:"timestampPropertyName,omitempty" tf:"timestamp_property_name,omitempty"` } diff --git a/apis/timeseriesinsights/v1beta1/zz_gen2environment_types.go b/apis/timeseriesinsights/v1beta1/zz_gen2environment_types.go index fae4c7e37..1cc9c7426 100755 --- a/apis/timeseriesinsights/v1beta1/zz_gen2environment_types.go +++ b/apis/timeseriesinsights/v1beta1/zz_gen2environment_types.go @@ -67,9 +67,11 @@ type Gen2EnvironmentObservation struct { type Gen2EnvironmentParameters struct { // A list of property ids for the Azure IoT Time Series Insights Gen2 Environment. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional IDProperties []*string `json:"idProperties,omitempty" tf:"id_properties,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the resource group in which to create the Azure IoT Time Series Insights Gen2 Environment. Changing this forces a new resource to be created. @@ -86,15 +88,19 @@ type Gen2EnvironmentParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Specifies the SKU Name for this IoT Time Series Insights Gen2 Environment. Currently it supports only L1. For gen2, capacity cannot be specified. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // A storage block as defined below. + // +kubebuilder:validation:Optional Storage []StorageParameters `json:"storage,omitempty" tf:"storage,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies the ISO8601 timespan specifying the minimum number of days the environment's events will be available for query. + // +kubebuilder:validation:Optional WarmStoreDataRetentionTime *string `json:"warmStoreDataRetentionTime,omitempty" tf:"warm_store_data_retention_time,omitempty"` } diff --git a/apis/timeseriesinsights/v1beta1/zz_referencedataset_types.go b/apis/timeseriesinsights/v1beta1/zz_referencedataset_types.go index 9bdf5cd54..2d27d2352 100755 --- a/apis/timeseriesinsights/v1beta1/zz_referencedataset_types.go +++ b/apis/timeseriesinsights/v1beta1/zz_referencedataset_types.go @@ -34,9 +34,11 @@ type KeyPropertyObservation struct { type KeyPropertyParameters struct { // The name of the key property. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The data type of the key property. Valid values include Bool, DateTime, Double, String. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -79,15 +81,19 @@ type ReferenceDataSetObservation struct { type ReferenceDataSetParameters struct { // The comparison behavior that will be used to compare keys. Valid values include Ordinal and OrdinalIgnoreCase. Defaults to Ordinal. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DataStringComparisonBehavior *string `json:"dataStringComparisonBehavior,omitempty" tf:"data_string_comparison_behavior,omitempty"` // A key_property block as defined below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional KeyProperty []KeyPropertyParameters `json:"keyProperty,omitempty" tf:"key_property,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The resource ID of the Azure IoT Time Series Insights Environment in which to create the Azure IoT Time Series Insights Reference Data Set. Changing this forces a new resource to be created. diff --git a/apis/timeseriesinsights/v1beta1/zz_standardenvironment_types.go b/apis/timeseriesinsights/v1beta1/zz_standardenvironment_types.go index cbd227e68..2a966c621 100755 --- a/apis/timeseriesinsights/v1beta1/zz_standardenvironment_types.go +++ b/apis/timeseriesinsights/v1beta1/zz_standardenvironment_types.go @@ -64,12 +64,15 @@ type StandardEnvironmentObservation struct { type StandardEnvironmentParameters struct { // Specifies the ISO8601 timespan specifying the minimum number of days the environment's events will be available for query. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional DataRetentionTime *string `json:"dataRetentionTime,omitempty" tf:"data_retention_time,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the event property which will be used to partition data. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional PartitionKey *string `json:"partitionKey,omitempty" tf:"partition_key,omitempty"` // The name of the resource group in which to create the Azure IoT Time Series Insights Standard Environment. Changing this forces a new resource to be created. @@ -86,12 +89,15 @@ type StandardEnvironmentParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Specifies the SKU Name for this IoT Time Series Insights Standard Environment. It is string consisting of two parts separated by an underscore(_).The first part is the name, valid values include: S1 and S2. The second part is the capacity (e.g. the number of deployed units of the sku), which must be a positive integer (e.g. S1_1). Possible values are S1_1, S1_2, S1_3, S1_4, S1_5, S1_6, S1_7, S1_8, S1_9, S1_10, S2_1, S2_2, S2_3, S2_4, S2_5, S2_6, S2_7, S2_8, S2_9 and S2_10. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // Specifies the behaviour the IoT Time Series Insights service should take when the environment's capacity has been exceeded. Valid values include PauseIngress and PurgeOldData. Defaults to PurgeOldData. + // +kubebuilder:validation:Optional StorageLimitExceededBehavior *string `json:"storageLimitExceededBehavior,omitempty" tf:"storage_limit_exceeded_behavior,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/web/v1beta1/zz_appactiveslot_types.go b/apis/web/v1beta1/zz_appactiveslot_types.go index 97a09700f..375ff4d2b 100755 --- a/apis/web/v1beta1/zz_appactiveslot_types.go +++ b/apis/web/v1beta1/zz_appactiveslot_types.go @@ -42,6 +42,7 @@ type AppActiveSlotParameters struct { // The swap action should overwrite the Production slot's network configuration with the configuration from this slot. Defaults to true. Changing this forces a new resource to be created. // The swap action should overwrite the Production slot's network configuration with the configuration from this slot. Defaults to `true`. + // +kubebuilder:validation:Optional OverwriteNetworkConfig *bool `json:"overwriteNetworkConfig,omitempty" tf:"overwrite_network_config,omitempty"` // The ID of the Slot to swap with Production. diff --git a/apis/web/v1beta1/zz_apphybridconnection_types.go b/apis/web/v1beta1/zz_apphybridconnection_types.go index 54db4a708..06c1a3800 100755 --- a/apis/web/v1beta1/zz_apphybridconnection_types.go +++ b/apis/web/v1beta1/zz_apphybridconnection_types.go @@ -74,10 +74,12 @@ type AppHybridConnectionParameters struct { // The hostname of the endpoint. // The hostname of the endpoint. + // +kubebuilder:validation:Optional HostName *string `json:"hostname,omitempty" tf:"hostname,omitempty"` // The port to use for the endpoint. // The port to use for the endpoint + // +kubebuilder:validation:Optional Port *float64 `json:"port,omitempty" tf:"port,omitempty"` // The ID of the Relay Hybrid Connection to use. Changing this forces a new resource to be created. @@ -97,6 +99,7 @@ type AppHybridConnectionParameters struct { // The name of the Relay key with Send permission to use. Defaults to RootManageSharedAccessKey // The name of the Relay key with `Send` permission to use. Defaults to `RootManageSharedAccessKey` + // +kubebuilder:validation:Optional SendKeyName *string `json:"sendKeyName,omitempty" tf:"send_key_name,omitempty"` // The ID of the Web App for this Hybrid Connection. Changing this forces a new resource to be created. diff --git a/apis/web/v1beta1/zz_appserviceplan_types.go b/apis/web/v1beta1/zz_appserviceplan_types.go index 04b0acc01..4f168ec6d 100755 --- a/apis/web/v1beta1/zz_appserviceplan_types.go +++ b/apis/web/v1beta1/zz_appserviceplan_types.go @@ -91,24 +91,31 @@ type AppServicePlanObservation struct { type AppServicePlanParameters struct { // The ID of the App Service Environment where the App Service Plan should be located. Changing forces a new resource to be created. + // +kubebuilder:validation:Optional AppServiceEnvironmentID *string `json:"appServiceEnvironmentId,omitempty" tf:"app_service_environment_id,omitempty"` // Whether to create a xenon App Service Plan. + // +kubebuilder:validation:Optional IsXenon *bool `json:"isXenon,omitempty" tf:"is_xenon,omitempty"` // The kind of the App Service Plan to create. Possible values are Windows (also available as App), Linux, elastic (for Premium Consumption), xenon and FunctionApp (for a Consumption Plan). Defaults to Windows. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Kind *string `json:"kind,omitempty" tf:"kind,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The maximum number of total workers allowed for this ElasticScaleEnabled App Service Plan. + // +kubebuilder:validation:Optional MaximumElasticWorkerCount *float64 `json:"maximumElasticWorkerCount,omitempty" tf:"maximum_elastic_worker_count,omitempty"` // Can Apps assigned to this App Service Plan be scaled independently? If set to false apps assigned to this plan will scale to all instances of the plan. + // +kubebuilder:validation:Optional PerSiteScaling *bool `json:"perSiteScaling,omitempty" tf:"per_site_scaling,omitempty"` // Is this App Service Plan Reserved. + // +kubebuilder:validation:Optional Reserved *bool `json:"reserved,omitempty" tf:"reserved,omitempty"` // The name of the resource group in which to create the App Service Plan component. Changing this forces a new resource to be created. @@ -125,12 +132,15 @@ type AppServicePlanParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A sku block as documented below. + // +kubebuilder:validation:Optional Sku []SkuParameters `json:"sku,omitempty" tf:"sku,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // Specifies if the App Service Plan should be Zone Redundant. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ZoneRedundant *bool `json:"zoneRedundant,omitempty" tf:"zone_redundant,omitempty"` } @@ -161,12 +171,15 @@ type SkuObservation struct { type SkuParameters struct { // Specifies the number of workers associated with this App Service Plan. + // +kubebuilder:validation:Optional Capacity *float64 `json:"capacity,omitempty" tf:"capacity,omitempty"` // Specifies the plan's instance size. + // +kubebuilder:validation:Optional Size *string `json:"size,omitempty" tf:"size,omitempty"` // Specifies the plan's pricing tier. + // +kubebuilder:validation:Optional Tier *string `json:"tier,omitempty" tf:"tier,omitempty"` } diff --git a/apis/web/v1beta1/zz_functionapp_types.go b/apis/web/v1beta1/zz_functionapp_types.go index fb3042adf..cdb96dded 100755 --- a/apis/web/v1beta1/zz_functionapp_types.go +++ b/apis/web/v1beta1/zz_functionapp_types.go @@ -34,9 +34,11 @@ type ActiveDirectoryObservation struct { type ActiveDirectoryParameters struct { // Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. @@ -137,45 +139,59 @@ type AuthSettingsObservation struct { type AuthSettingsParameters struct { // A active_directory block as defined below. + // +kubebuilder:validation:Optional ActiveDirectory []ActiveDirectoryParameters `json:"activeDirectory,omitempty" tf:"active_directory,omitempty"` // Login parameters to send to the OpenID Connect authorization endpoint when a user logs in. Each parameter must be in the form "key=value". + // +kubebuilder:validation:Optional AdditionalLoginParams map[string]*string `json:"additionalLoginParams,omitempty" tf:"additional_login_params,omitempty"` // External URLs that can be redirected to as part of logging in or logging out of the app. + // +kubebuilder:validation:Optional AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` // The default provider to use when multiple providers have been set up. Possible values are AzureActiveDirectory, Facebook, Google, MicrosoftAccount and Twitter. + // +kubebuilder:validation:Optional DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` // Is Authentication enabled? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // A facebook block as defined below. + // +kubebuilder:validation:Optional Facebook []FacebookParameters `json:"facebook,omitempty" tf:"facebook,omitempty"` // A google block as defined below. + // +kubebuilder:validation:Optional Google []GoogleParameters `json:"google,omitempty" tf:"google,omitempty"` // Issuer URI. When using Azure Active Directory, this value is the URI of the directory tenant, e.g. https://sts.windows.net/{tenant-guid}/. + // +kubebuilder:validation:Optional Issuer *string `json:"issuer,omitempty" tf:"issuer,omitempty"` // A microsoft block as defined below. + // +kubebuilder:validation:Optional Microsoft []MicrosoftParameters `json:"microsoft,omitempty" tf:"microsoft,omitempty"` // The runtime version of the Authentication/Authorization module. + // +kubebuilder:validation:Optional RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72. + // +kubebuilder:validation:Optional TokenRefreshExtensionHours *float64 `json:"tokenRefreshExtensionHours,omitempty" tf:"token_refresh_extension_hours,omitempty"` // If enabled the module will durably store platform-specific security tokens that are obtained during login flows. Defaults to false. + // +kubebuilder:validation:Optional TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` // A twitter block as defined below. + // +kubebuilder:validation:Optional Twitter []TwitterParameters `json:"twitter,omitempty" tf:"twitter,omitempty"` // The action to take when an unauthenticated client attempts to access the app. Possible values are AllowAnonymous and RedirectToLoginPage. + // +kubebuilder:validation:Optional UnauthenticatedClientAction *string `json:"unauthenticatedClientAction,omitempty" tf:"unauthenticated_client_action,omitempty"` } @@ -200,9 +216,11 @@ type ConnectionStringObservation struct { type ConnectionStringParameters struct { // The name of the Connection String. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The type of the Connection String. Possible values are APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, PostgreSQL, RedisCache, ServiceBus, SQLAzure and SQLServer. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // The value for the Connection String. @@ -231,9 +249,11 @@ type CorsObservation struct { type CorsParameters struct { // A list of origins which should be able to make cross-origin calls. * can be used to allow all calls. + // +kubebuilder:validation:Optional AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` // Are credentials supported? + // +kubebuilder:validation:Optional SupportCredentials *bool `json:"supportCredentials,omitempty" tf:"support_credentials,omitempty"` } @@ -258,6 +278,7 @@ type FacebookObservation struct { type FacebookParameters struct { // The App ID of the Facebook app used for login + // +kubebuilder:validation:Optional AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The App Secret of the Facebook app used for Facebook login. @@ -265,6 +286,7 @@ type FacebookParameters struct { AppSecretSecretRef v1.SecretKeySelector `json:"appSecretSecretRef" tf:"-"` // The OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. https://msdn.microsoft.com/en-us/library/dn631845.aspx + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -423,42 +445,55 @@ type FunctionAppParameters struct { AppServicePlanIDSelector *v1.Selector `json:"appServicePlanIdSelector,omitempty" tf:"-"` // A map of key-value pairs for App Settings and custom values. + // +kubebuilder:validation:Optional AppSettings map[string]*string `json:"appSettings,omitempty" tf:"app_settings,omitempty"` // A auth_settings block as defined below. + // +kubebuilder:validation:Optional AuthSettings []AuthSettingsParameters `json:"authSettings,omitempty" tf:"auth_settings,omitempty"` // The mode of the Function App's client certificates requirement for incoming requests. Possible values are Required and Optional. + // +kubebuilder:validation:Optional ClientCertMode *string `json:"clientCertMode,omitempty" tf:"client_cert_mode,omitempty"` // An connection_string block as defined below. + // +kubebuilder:validation:Optional ConnectionString []ConnectionStringParameters `json:"connectionString,omitempty" tf:"connection_string,omitempty"` // The amount of memory in gigabyte-seconds that your application is allowed to consume per day. Setting this value only affects function apps under the consumption plan. + // +kubebuilder:validation:Optional DailyMemoryTimeQuota *float64 `json:"dailyMemoryTimeQuota,omitempty" tf:"daily_memory_time_quota,omitempty"` // Should the built-in logging of this Function App be enabled? Defaults to true. + // +kubebuilder:validation:Optional EnableBuiltinLogging *bool `json:"enableBuiltinLogging,omitempty" tf:"enable_builtin_logging,omitempty"` // Is the Function App enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Can the Function App only be accessed via HTTPS? Defaults to false. + // +kubebuilder:validation:Optional HTTPSOnly *bool `json:"httpsOnly,omitempty" tf:"https_only,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []IdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // The User Assigned Identity Id used for looking up KeyVault secrets. The identity must be assigned to the application. See Access vaults with a user-assigned identity for more information. + // +kubebuilder:validation:Optional KeyVaultReferenceIdentityID *string `json:"keyVaultReferenceIdentityId,omitempty" tf:"key_vault_reference_identity_id,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // Specifies the name of the Function App. Changing this forces a new resource to be created. Limit the function name to 32 characters to avoid naming collisions. For more information about Function App naming rule. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A string indicating the Operating System type for this function app. Possible values are linux and “(empty string). Changing this forces a new resource to be created. Defaults to "". + // +kubebuilder:validation:Optional OsType *string `json:"osType,omitempty" tf:"os_type,omitempty"` // The name of the resource group in which to create the Function App. Changing this forces a new resource to be created. @@ -475,9 +510,11 @@ type FunctionAppParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A site_config object as defined below. + // +kubebuilder:validation:Optional SiteConfig []SiteConfigParameters `json:"siteConfig,omitempty" tf:"site_config,omitempty"` // A source_control block, as defined below. + // +kubebuilder:validation:Optional SourceControl []SourceControlParameters `json:"sourceControl,omitempty" tf:"source_control,omitempty"` // The access key which will be used to access the backend storage account for the Function App. @@ -498,9 +535,11 @@ type FunctionAppParameters struct { StorageAccountNameSelector *v1.Selector `json:"storageAccountNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The runtime version associated with the Function App. Defaults to ~1. + // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` } @@ -525,6 +564,7 @@ type GoogleObservation struct { type GoogleParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. @@ -532,6 +572,7 @@ type GoogleParameters struct { ClientSecretSecretRef v1.SecretKeySelector `json:"clientSecretSecretRef" tf:"-"` // The OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. https://msdn.microsoft.com/en-us/library/dn631845.aspx + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -568,15 +609,19 @@ type HeadersObservation struct { type HeadersParameters struct { // A list of allowed Azure FrontDoor IDs in UUID notation with a maximum of 8. + // +kubebuilder:validation:Optional XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` // A list to allow the Azure FrontDoor health probe header. Only allowed value is "1". + // +kubebuilder:validation:Optional XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` // A list of allowed 'X-Forwarded-For' IPs in CIDR notation with a maximum of 8 + // +kubebuilder:validation:Optional XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` // A list of allowed 'X-Forwarded-Host' domains with a maximum of 8. + // +kubebuilder:validation:Optional XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } @@ -628,21 +673,27 @@ type IPRestrictionObservation struct { type IPRestrictionParameters struct { // Allow or Deny access for this IP range. Defaults to Allow. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action"` // The headers for this specific scm_ip_restriction as defined below. + // +kubebuilder:validation:Optional Headers []HeadersParameters `json:"headers,omitempty" tf:"headers"` // The IP Address used for this IP Restriction in CIDR notation. + // +kubebuilder:validation:Optional IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address"` // The name for this IP Restriction. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name"` // The priority for this IP Restriction. Restrictions are enforced in priority order. By default, priority is set to 65000 if not specified. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority"` // The Service Tag used for this IP Restriction. + // +kubebuilder:validation:Optional ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag"` // The Virtual Network Subnet ID used for this IP Restriction. @@ -687,9 +738,11 @@ type IdentityObservation struct { type IdentityParameters struct { // Specifies a list of user managed identity ids to be assigned. Required if type is UserAssigned. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the identity type of the Function App. Possible values are SystemAssigned (where Azure will generate a Service Principal for you), UserAssigned where you can specify the Service Principal IDs in the identity_ids field, and SystemAssigned, UserAssigned which assigns both a system managed identity as well as the specified user assigned identities. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -714,6 +767,7 @@ type MicrosoftObservation struct { type MicrosoftParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. @@ -721,6 +775,7 @@ type MicrosoftParameters struct { ClientSecretSecretRef v1.SecretKeySelector `json:"clientSecretSecretRef" tf:"-"` // The OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. https://msdn.microsoft.com/en-us/library/dn631845.aspx + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -757,15 +812,19 @@ type ScmIPRestrictionHeadersObservation struct { type ScmIPRestrictionHeadersParameters struct { // A list of allowed Azure FrontDoor IDs in UUID notation with a maximum of 8. + // +kubebuilder:validation:Optional XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` // A list to allow the Azure FrontDoor health probe header. Only allowed value is "1". + // +kubebuilder:validation:Optional XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` // A list of allowed 'X-Forwarded-For' IPs in CIDR notation with a maximum of 8 + // +kubebuilder:validation:Optional XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` // A list of allowed 'X-Forwarded-Host' domains with a maximum of 8. + // +kubebuilder:validation:Optional XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } @@ -817,21 +876,27 @@ type ScmIPRestrictionObservation struct { type ScmIPRestrictionParameters struct { // Allow or Deny access for this IP range. Defaults to Allow. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action"` // The headers for this specific scm_ip_restriction as defined below. + // +kubebuilder:validation:Optional Headers []ScmIPRestrictionHeadersParameters `json:"headers,omitempty" tf:"headers"` // The IP Address used for this IP Restriction in CIDR notation. + // +kubebuilder:validation:Optional IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address"` // The name for this IP Restriction. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name"` // The priority for this IP Restriction. Restrictions are enforced in priority order. By default, priority is set to 65000 if not specified. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority"` // The Service Tag used for this IP Restriction. + // +kubebuilder:validation:Optional ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag"` // The Virtual Network Subnet ID used for this IP Restriction. @@ -984,66 +1049,87 @@ type SiteConfigObservation struct { type SiteConfigParameters struct { // Should the Function App be loaded at all times? Defaults to false. + // +kubebuilder:validation:Optional AlwaysOn *bool `json:"alwaysOn,omitempty" tf:"always_on,omitempty"` // The number of workers this function app can scale out to. Only applicable to apps on the Consumption and Premium plan. + // +kubebuilder:validation:Optional AppScaleLimit *float64 `json:"appScaleLimit,omitempty" tf:"app_scale_limit,omitempty"` // The name of the slot to automatically swap to during deployment + // +kubebuilder:validation:Optional AutoSwapSlotName *string `json:"autoSwapSlotName,omitempty" tf:"auto_swap_slot_name,omitempty"` // A cors block as defined below. + // +kubebuilder:validation:Optional Cors []CorsParameters `json:"cors,omitempty" tf:"cors,omitempty"` // The version of the .NET framework's CLR used in this function app. Possible values are v4.0 (including .NET Core 2.1 and 3.1), v5.0 and v6.0. For more information on which .NET Framework version to use based on the runtime version you're targeting - please see this table. Defaults to v4.0. + // +kubebuilder:validation:Optional DotnetFrameworkVersion *string `json:"dotnetFrameworkVersion,omitempty" tf:"dotnet_framework_version,omitempty"` // The number of minimum instances for this function app. Only affects apps on the Premium plan. + // +kubebuilder:validation:Optional ElasticInstanceMinimum *float64 `json:"elasticInstanceMinimum,omitempty" tf:"elastic_instance_minimum,omitempty"` // State of FTP / FTPS service for this function app. Possible values include: AllAllowed, FtpsOnly and Disabled. Defaults to AllAllowed. + // +kubebuilder:validation:Optional FtpsState *string `json:"ftpsState,omitempty" tf:"ftps_state,omitempty"` // Path which will be checked for this function app health. + // +kubebuilder:validation:Optional HealthCheckPath *string `json:"healthCheckPath,omitempty" tf:"health_check_path,omitempty"` // Specifies whether or not the HTTP2 protocol should be enabled. Defaults to false. + // +kubebuilder:validation:Optional Http2Enabled *bool `json:"http2Enabled,omitempty" tf:"http2_enabled,omitempty"` // A List of objects representing IP restrictions as defined below. + // +kubebuilder:validation:Optional IPRestriction []IPRestrictionParameters `json:"ipRestriction,omitempty" tf:"ip_restriction,omitempty"` // Java version hosted by the function app in Azure. Possible values are 1.8, 11 & 17 (In-Preview). + // +kubebuilder:validation:Optional JavaVersion *string `json:"javaVersion,omitempty" tf:"java_version,omitempty"` // Linux App Framework and version for the AppService, e.g. DOCKER|(golang:latest). + // +kubebuilder:validation:Optional LinuxFxVersion *string `json:"linuxFxVersion,omitempty" tf:"linux_fx_version,omitempty"` // The minimum supported TLS version for the function app. Possible values are 1.0, 1.1, and 1.2. Defaults to 1.2 for new function apps. + // +kubebuilder:validation:Optional MinTLSVersion *string `json:"minTlsVersion,omitempty" tf:"min_tls_version,omitempty"` // The number of pre-warmed instances for this function app. Only affects apps on the Premium plan. + // +kubebuilder:validation:Optional PreWarmedInstanceCount *float64 `json:"preWarmedInstanceCount,omitempty" tf:"pre_warmed_instance_count,omitempty"` // Should Runtime Scale Monitoring be enabled?. Only applicable to apps on the Premium plan. Defaults to false. + // +kubebuilder:validation:Optional RuntimeScaleMonitoringEnabled *bool `json:"runtimeScaleMonitoringEnabled,omitempty" tf:"runtime_scale_monitoring_enabled,omitempty"` // A List of objects representing IP restrictions as defined below. + // +kubebuilder:validation:Optional ScmIPRestriction []ScmIPRestrictionParameters `json:"scmIpRestriction,omitempty" tf:"scm_ip_restriction,omitempty"` // The type of Source Control used by the Function App. Valid values include: BitBucketGit, BitBucketHg, CodePlexGit, CodePlexHg, Dropbox, ExternalGit, ExternalHg, GitHub, LocalGit, None (default), OneDrive, Tfs, VSO, and VSTSRM. + // +kubebuilder:validation:Optional ScmType *string `json:"scmType,omitempty" tf:"scm_type,omitempty"` // IP security restrictions for scm to use main. Defaults to false. + // +kubebuilder:validation:Optional ScmUseMainIPRestriction *bool `json:"scmUseMainIpRestriction,omitempty" tf:"scm_use_main_ip_restriction,omitempty"` // Should the Function App run in 32 bit mode, rather than 64 bit mode? Defaults to true. + // +kubebuilder:validation:Optional Use32BitWorkerProcess *bool `json:"use32BitWorkerProcess,omitempty" tf:"use_32_bit_worker_process,omitempty"` // Should all outbound traffic to have Virtual Network Security Groups and User Defined Routes applied? Defaults to false. + // +kubebuilder:validation:Optional VnetRouteAllEnabled *bool `json:"vnetRouteAllEnabled,omitempty" tf:"vnet_route_all_enabled,omitempty"` // Should WebSockets be enabled? + // +kubebuilder:validation:Optional WebsocketsEnabled *bool `json:"websocketsEnabled,omitempty" tf:"websockets_enabled,omitempty"` } @@ -1101,18 +1187,23 @@ type SourceControlObservation struct { type SourceControlParameters struct { // The branch of the remote repository to use. Defaults to 'master'. + // +kubebuilder:validation:Optional Branch *string `json:"branch,omitempty" tf:"branch,omitempty"` // Limits to manual integration. Defaults to false if not specified. + // +kubebuilder:validation:Optional ManualIntegration *bool `json:"manualIntegration,omitempty" tf:"manual_integration,omitempty"` // The URL of the source code repository. + // +kubebuilder:validation:Optional RepoURL *string `json:"repoUrl,omitempty" tf:"repo_url,omitempty"` // Enable roll-back for the repository. Defaults to false if not specified. + // +kubebuilder:validation:Optional RollbackEnabled *bool `json:"rollbackEnabled,omitempty" tf:"rollback_enabled,omitempty"` // Use Mercurial if true, otherwise uses Git. + // +kubebuilder:validation:Optional UseMercurial *bool `json:"useMercurial,omitempty" tf:"use_mercurial,omitempty"` } @@ -1131,6 +1222,7 @@ type TwitterObservation struct { type TwitterParameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + // +kubebuilder:validation:Optional ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The OAuth 1.0a consumer secret of the Twitter application used for sign-in. diff --git a/apis/web/v1beta1/zz_functionappactiveslot_types.go b/apis/web/v1beta1/zz_functionappactiveslot_types.go index 874cd9b35..3000c3c4e 100755 --- a/apis/web/v1beta1/zz_functionappactiveslot_types.go +++ b/apis/web/v1beta1/zz_functionappactiveslot_types.go @@ -42,6 +42,7 @@ type FunctionAppActiveSlotParameters struct { // The swap action should overwrite the Production slot's network configuration with the configuration from this slot. Defaults to true. Changing this forces a new resource to be created. // The swap action should overwrite the Production slot's network configuration with the configuration from this slot. Defaults to `true`. + // +kubebuilder:validation:Optional OverwriteNetworkConfig *bool `json:"overwriteNetworkConfig,omitempty" tf:"overwrite_network_config,omitempty"` // The ID of the Slot to swap with Production. diff --git a/apis/web/v1beta1/zz_functionappfunction_types.go b/apis/web/v1beta1/zz_functionappfunction_types.go index eab043338..75d430173 100755 --- a/apis/web/v1beta1/zz_functionappfunction_types.go +++ b/apis/web/v1beta1/zz_functionappfunction_types.go @@ -39,10 +39,12 @@ type FileParameters struct { // The content of the file. Changing this forces a new resource to be created. // The content of the file. + // +kubebuilder:validation:Optional Content *string `json:"content,omitempty" tf:"content,omitempty"` // The filename of the file to be uploaded. Changing this forces a new resource to be created. // The filename of the file to be uploaded. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` } @@ -137,13 +139,16 @@ type FunctionAppFunctionParameters struct { // The config for this Function in JSON format. // The config for this Function in JSON format. + // +kubebuilder:validation:Optional ConfigJSON *string `json:"configJson,omitempty" tf:"config_json,omitempty"` // Should this function be enabled. Defaults to true. // Should this function be enabled. Defaults to `true`. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // A file block as detailed below. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional File []FileParameters `json:"file,omitempty" tf:"file,omitempty"` // The ID of the Function App in which this function should reside. Changing this forces a new resource to be created. @@ -163,14 +168,17 @@ type FunctionAppFunctionParameters struct { // The language the Function is written in. Possible values are CSharp, Custom, Java, Javascript, Python, PowerShell, and TypeScript. // The language the Function is written in. + // +kubebuilder:validation:Optional Language *string `json:"language,omitempty" tf:"language,omitempty"` // The name of the function. Changing this forces a new resource to be created. // The name of the function. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The test data for the function. // The test data for the function. + // +kubebuilder:validation:Optional TestData *string `json:"testData,omitempty" tf:"test_data,omitempty"` } diff --git a/apis/web/v1beta1/zz_functionapphybridconnection_types.go b/apis/web/v1beta1/zz_functionapphybridconnection_types.go index e674c1c5c..d4cbb3217 100755 --- a/apis/web/v1beta1/zz_functionapphybridconnection_types.go +++ b/apis/web/v1beta1/zz_functionapphybridconnection_types.go @@ -89,10 +89,12 @@ type FunctionAppHybridConnectionParameters struct { // The hostname of the endpoint. // The hostname of the endpoint. + // +kubebuilder:validation:Optional HostName *string `json:"hostname,omitempty" tf:"hostname,omitempty"` // The port to use for the endpoint // The port to use for the endpoint + // +kubebuilder:validation:Optional Port *float64 `json:"port,omitempty" tf:"port,omitempty"` // The ID of the Relay Hybrid Connection to use. Changing this forces a new resource to be created. @@ -112,6 +114,7 @@ type FunctionAppHybridConnectionParameters struct { // The name of the Relay key with Send permission to use. Defaults to RootManageSharedAccessKey // The name of the Relay key with `Send` permission to use. Defaults to `RootManageSharedAccessKey` + // +kubebuilder:validation:Optional SendKeyName *string `json:"sendKeyName,omitempty" tf:"send_key_name,omitempty"` } diff --git a/apis/web/v1beta1/zz_functionappslot_types.go b/apis/web/v1beta1/zz_functionappslot_types.go index bb9544f4b..d9b748635 100755 --- a/apis/web/v1beta1/zz_functionappslot_types.go +++ b/apis/web/v1beta1/zz_functionappslot_types.go @@ -34,9 +34,11 @@ type AuthSettingsActiveDirectoryObservation struct { type AuthSettingsActiveDirectoryParameters struct { // Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. @@ -65,6 +67,7 @@ type AuthSettingsFacebookObservation struct { type AuthSettingsFacebookParameters struct { // The App ID of the Facebook app used for login + // +kubebuilder:validation:Optional AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The App Secret of the Facebook app used for Facebook login. @@ -72,6 +75,7 @@ type AuthSettingsFacebookParameters struct { AppSecretSecretRef v1.SecretKeySelector `json:"appSecretSecretRef" tf:"-"` // The OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. https://msdn.microsoft.com/en-us/library/dn631845.aspx + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -96,6 +100,7 @@ type AuthSettingsGoogleObservation struct { type AuthSettingsGoogleParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. @@ -103,6 +108,7 @@ type AuthSettingsGoogleParameters struct { ClientSecretSecretRef v1.SecretKeySelector `json:"clientSecretSecretRef" tf:"-"` // The OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. https://msdn.microsoft.com/en-us/library/dn631845.aspx + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -127,6 +133,7 @@ type AuthSettingsMicrosoftObservation struct { type AuthSettingsMicrosoftParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. @@ -134,6 +141,7 @@ type AuthSettingsMicrosoftParameters struct { ClientSecretSecretRef v1.SecretKeySelector `json:"clientSecretSecretRef" tf:"-"` // The OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. https://msdn.microsoft.com/en-us/library/dn631845.aspx + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -152,6 +160,7 @@ type AuthSettingsTwitterObservation struct { type AuthSettingsTwitterParameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + // +kubebuilder:validation:Optional ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The OAuth 1.0a consumer secret of the Twitter application used for sign-in. @@ -252,45 +261,59 @@ type FunctionAppSlotAuthSettingsObservation struct { type FunctionAppSlotAuthSettingsParameters struct { // An active_directory block as defined below. + // +kubebuilder:validation:Optional ActiveDirectory []AuthSettingsActiveDirectoryParameters `json:"activeDirectory,omitempty" tf:"active_directory,omitempty"` // login parameters to send to the OpenID Connect authorization endpoint when a user logs in. Each parameter must be in the form "key=value". + // +kubebuilder:validation:Optional AdditionalLoginParams map[string]*string `json:"additionalLoginParams,omitempty" tf:"additional_login_params,omitempty"` // External URLs that can be redirected to as part of logging in or logging out of the app. + // +kubebuilder:validation:Optional AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` // The default provider to use when multiple providers have been set up. Possible values are AzureActiveDirectory, Facebook, Google, MicrosoftAccount and Twitter. + // +kubebuilder:validation:Optional DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` // Is Authentication enabled? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // A facebook block as defined below. + // +kubebuilder:validation:Optional Facebook []AuthSettingsFacebookParameters `json:"facebook,omitempty" tf:"facebook,omitempty"` // A google block as defined below. + // +kubebuilder:validation:Optional Google []AuthSettingsGoogleParameters `json:"google,omitempty" tf:"google,omitempty"` // Issuer URI. When using Azure Active Directory, this value is the URI of the directory tenant, e.g. https://sts.windows.net/{tenant-guid}/. + // +kubebuilder:validation:Optional Issuer *string `json:"issuer,omitempty" tf:"issuer,omitempty"` // A microsoft block as defined below. + // +kubebuilder:validation:Optional Microsoft []AuthSettingsMicrosoftParameters `json:"microsoft,omitempty" tf:"microsoft,omitempty"` // The runtime version of the Authentication/Authorization module. + // +kubebuilder:validation:Optional RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72. + // +kubebuilder:validation:Optional TokenRefreshExtensionHours *float64 `json:"tokenRefreshExtensionHours,omitempty" tf:"token_refresh_extension_hours,omitempty"` // If enabled the module will durably store platform-specific security tokens that are obtained during login flows. Defaults to false. + // +kubebuilder:validation:Optional TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` // A twitter block as defined below. + // +kubebuilder:validation:Optional Twitter []AuthSettingsTwitterParameters `json:"twitter,omitempty" tf:"twitter,omitempty"` // The action to take when an unauthenticated client attempts to access the app. Possible values are AllowAnonymous and RedirectToLoginPage. + // +kubebuilder:validation:Optional UnauthenticatedClientAction *string `json:"unauthenticatedClientAction,omitempty" tf:"unauthenticated_client_action,omitempty"` } @@ -315,9 +338,11 @@ type FunctionAppSlotConnectionStringObservation struct { type FunctionAppSlotConnectionStringParameters struct { // The name of the Connection String. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The type of the Connection String. Possible values are APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, PostgreSQL, RedisCache, ServiceBus, SQLAzure and SQLServer. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // The value for the Connection String. @@ -352,9 +377,11 @@ type FunctionAppSlotIdentityObservation struct { type FunctionAppSlotIdentityParameters struct { // Specifies a list of user managed identity ids to be assigned. Required if type is UserAssigned. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the identity type of the Function App. Possible values are SystemAssigned (where Azure will generate a Service Principal for you), UserAssigned where you can specify the Service Principal IDs in the identity_ids field, and SystemAssigned, UserAssigned which assigns both a system managed identity as well as the specified user assigned identities. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -489,21 +516,27 @@ type FunctionAppSlotParameters struct { AppServicePlanIDSelector *v1.Selector `json:"appServicePlanIdSelector,omitempty" tf:"-"` // A key-value pair of App Settings. + // +kubebuilder:validation:Optional AppSettings map[string]*string `json:"appSettings,omitempty" tf:"app_settings,omitempty"` // An auth_settings block as defined below. + // +kubebuilder:validation:Optional AuthSettings []FunctionAppSlotAuthSettingsParameters `json:"authSettings,omitempty" tf:"auth_settings,omitempty"` // A connection_string block as defined below. + // +kubebuilder:validation:Optional ConnectionString []FunctionAppSlotConnectionStringParameters `json:"connectionString,omitempty" tf:"connection_string,omitempty"` // The amount of memory in gigabyte-seconds that your application is allowed to consume per day. Setting this value only affects function apps under the consumption plan. + // +kubebuilder:validation:Optional DailyMemoryTimeQuota *float64 `json:"dailyMemoryTimeQuota,omitempty" tf:"daily_memory_time_quota,omitempty"` // Should the built-in logging of the Function App be enabled? Defaults to true. + // +kubebuilder:validation:Optional EnableBuiltinLogging *bool `json:"enableBuiltinLogging,omitempty" tf:"enable_builtin_logging,omitempty"` // Is the Function App enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The name of the Function App within which to create the Function App Slot. Changing this forces a new resource to be created. @@ -521,15 +554,19 @@ type FunctionAppSlotParameters struct { FunctionAppNameSelector *v1.Selector `json:"functionAppNameSelector,omitempty" tf:"-"` // Can the Function App only be accessed via HTTPS? Defaults to false. + // +kubebuilder:validation:Optional HTTPSOnly *bool `json:"httpsOnly,omitempty" tf:"https_only,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []FunctionAppSlotIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // Specifies the supported Azure location where the resource exists. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // A string indicating the Operating System type for this function app. The only possible value is linux. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional OsType *string `json:"osType,omitempty" tf:"os_type,omitempty"` // The name of the resource group in which to create the Function App Slot. Changing this forces a new resource to be created. @@ -546,6 +583,7 @@ type FunctionAppSlotParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // A site_config object as defined below. + // +kubebuilder:validation:Optional SiteConfig []FunctionAppSlotSiteConfigParameters `json:"siteConfig,omitempty" tf:"site_config,omitempty"` // The access key which will be used to access the backend storage account for the Function App. @@ -566,9 +604,11 @@ type FunctionAppSlotParameters struct { StorageAccountNameSelector *v1.Selector `json:"storageAccountNameSelector,omitempty" tf:"-"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The runtime version associated with the Function App. Defaults to ~1. + // +kubebuilder:validation:Optional Version *string `json:"version,omitempty" tf:"version,omitempty"` } @@ -707,66 +747,87 @@ type FunctionAppSlotSiteConfigObservation struct { type FunctionAppSlotSiteConfigParameters struct { // Should the Function App be loaded at all times? Defaults to false. + // +kubebuilder:validation:Optional AlwaysOn *bool `json:"alwaysOn,omitempty" tf:"always_on,omitempty"` // The number of workers this function app can scale out to. Only applicable to apps on the Consumption and Premium plan. + // +kubebuilder:validation:Optional AppScaleLimit *float64 `json:"appScaleLimit,omitempty" tf:"app_scale_limit,omitempty"` // The name of the slot to automatically swap to during deployment + // +kubebuilder:validation:Optional AutoSwapSlotName *string `json:"autoSwapSlotName,omitempty" tf:"auto_swap_slot_name,omitempty"` // A cors block as defined below. + // +kubebuilder:validation:Optional Cors []SiteConfigCorsParameters `json:"cors,omitempty" tf:"cors,omitempty"` // The version of the .NET framework's CLR used in this function app. Possible values are v4.0 (including .NET Core 2.1 and 3.1), v5.0 and v6.0. For more information on which .NET Framework version to use based on the runtime version you're targeting - please see this table. Defaults to v4.0. + // +kubebuilder:validation:Optional DotnetFrameworkVersion *string `json:"dotnetFrameworkVersion,omitempty" tf:"dotnet_framework_version,omitempty"` // The number of minimum instances for this function app. Only applicable to apps on the Premium plan. + // +kubebuilder:validation:Optional ElasticInstanceMinimum *float64 `json:"elasticInstanceMinimum,omitempty" tf:"elastic_instance_minimum,omitempty"` // State of FTP / FTPS service for this function app. Possible values include: AllAllowed, FtpsOnly and Disabled. + // +kubebuilder:validation:Optional FtpsState *string `json:"ftpsState,omitempty" tf:"ftps_state,omitempty"` // Path which will be checked for this function app health. + // +kubebuilder:validation:Optional HealthCheckPath *string `json:"healthCheckPath,omitempty" tf:"health_check_path,omitempty"` // Specifies whether or not the HTTP2 protocol should be enabled. Defaults to false. + // +kubebuilder:validation:Optional Http2Enabled *bool `json:"http2Enabled,omitempty" tf:"http2_enabled,omitempty"` // A List of objects representing IP restrictions as defined below. + // +kubebuilder:validation:Optional IPRestriction []SiteConfigIPRestrictionParameters `json:"ipRestriction,omitempty" tf:"ip_restriction,omitempty"` // Java version hosted by the function app in Azure. Possible values are 1.8, 11 & 17 (In-Preview). + // +kubebuilder:validation:Optional JavaVersion *string `json:"javaVersion,omitempty" tf:"java_version,omitempty"` // Linux App Framework and version for the AppService, e.g. DOCKER|(golang:latest). + // +kubebuilder:validation:Optional LinuxFxVersion *string `json:"linuxFxVersion,omitempty" tf:"linux_fx_version,omitempty"` // The minimum supported TLS version for the function app. Possible values are 1.0, 1.1, and 1.2. Defaults to 1.2 for new function apps. + // +kubebuilder:validation:Optional MinTLSVersion *string `json:"minTlsVersion,omitempty" tf:"min_tls_version,omitempty"` // The number of pre-warmed instances for this function app. Only affects apps on the Premium plan. + // +kubebuilder:validation:Optional PreWarmedInstanceCount *float64 `json:"preWarmedInstanceCount,omitempty" tf:"pre_warmed_instance_count,omitempty"` // Should Runtime Scale Monitoring be enabled?. Only applicable to apps on the Premium plan. Defaults to false. + // +kubebuilder:validation:Optional RuntimeScaleMonitoringEnabled *bool `json:"runtimeScaleMonitoringEnabled,omitempty" tf:"runtime_scale_monitoring_enabled,omitempty"` // A List of objects representing IP restrictions as defined below. + // +kubebuilder:validation:Optional ScmIPRestriction []SiteConfigScmIPRestrictionParameters `json:"scmIpRestriction,omitempty" tf:"scm_ip_restriction,omitempty"` // The type of Source Control used by this function App. Valid values include: BitBucketGit, BitBucketHg, CodePlexGit, CodePlexHg, Dropbox, ExternalGit, ExternalHg, GitHub, LocalGit, None (default), OneDrive, Tfs, VSO, and VSTSRM. + // +kubebuilder:validation:Optional ScmType *string `json:"scmType,omitempty" tf:"scm_type,omitempty"` // IP security restrictions for scm to use main. Defaults to false. + // +kubebuilder:validation:Optional ScmUseMainIPRestriction *bool `json:"scmUseMainIpRestriction,omitempty" tf:"scm_use_main_ip_restriction,omitempty"` // Should the Function App run in 32 bit mode, rather than 64 bit mode? Defaults to true. + // +kubebuilder:validation:Optional Use32BitWorkerProcess *bool `json:"use32BitWorkerProcess,omitempty" tf:"use_32_bit_worker_process,omitempty"` // Is the Function App enabled? Defaults to true. + // +kubebuilder:validation:Optional VnetRouteAllEnabled *bool `json:"vnetRouteAllEnabled,omitempty" tf:"vnet_route_all_enabled,omitempty"` // Should WebSockets be enabled? + // +kubebuilder:validation:Optional WebsocketsEnabled *bool `json:"websocketsEnabled,omitempty" tf:"websockets_enabled,omitempty"` } @@ -818,15 +879,19 @@ type IPRestrictionHeadersObservation struct { type IPRestrictionHeadersParameters struct { // A list of allowed Azure FrontDoor IDs in UUID notation with a maximum of 8. + // +kubebuilder:validation:Optional XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` // A list to allow the Azure FrontDoor health probe header. Only allowed value is "1". + // +kubebuilder:validation:Optional XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` // A list of allowed 'X-Forwarded-For' IPs in CIDR notation with a maximum of 8 + // +kubebuilder:validation:Optional XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` // A list of allowed 'X-Forwarded-Host' domains with a maximum of 8. + // +kubebuilder:validation:Optional XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } @@ -851,9 +916,11 @@ type SiteConfigCorsObservation struct { type SiteConfigCorsParameters struct { // A list of origins which should be able to make cross-origin calls. * can be used to allow all calls. + // +kubebuilder:validation:Optional AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` // Are credentials supported? + // +kubebuilder:validation:Optional SupportCredentials *bool `json:"supportCredentials,omitempty" tf:"support_credentials,omitempty"` } @@ -905,21 +972,27 @@ type SiteConfigIPRestrictionObservation struct { type SiteConfigIPRestrictionParameters struct { // Allow or Deny access for this IP range. Defaults to Allow. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action"` // The headers for this specific scm_ip_restriction as defined below. + // +kubebuilder:validation:Optional Headers []IPRestrictionHeadersParameters `json:"headers,omitempty" tf:"headers"` // The IP Address used for this IP Restriction in CIDR notation. + // +kubebuilder:validation:Optional IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address"` // The name for this IP Restriction. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name"` // The priority for this IP Restriction. Restrictions are enforced in priority order. By default, priority is set to 65000 if not specified. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority"` // The Service Tag used for this IP Restriction. + // +kubebuilder:validation:Optional ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag"` // The Virtual Network Subnet ID used for this IP Restriction. @@ -970,15 +1043,19 @@ type SiteConfigScmIPRestrictionHeadersObservation struct { type SiteConfigScmIPRestrictionHeadersParameters struct { // A list of allowed Azure FrontDoor IDs in UUID notation with a maximum of 8. + // +kubebuilder:validation:Optional XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` // A list to allow the Azure FrontDoor health probe header. Only allowed value is "1". + // +kubebuilder:validation:Optional XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` // A list of allowed 'X-Forwarded-For' IPs in CIDR notation with a maximum of 8 + // +kubebuilder:validation:Optional XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` // A list of allowed 'X-Forwarded-Host' domains with a maximum of 8. + // +kubebuilder:validation:Optional XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } @@ -1030,21 +1107,27 @@ type SiteConfigScmIPRestrictionObservation struct { type SiteConfigScmIPRestrictionParameters struct { // Allow or Deny access for this IP range. Defaults to Allow. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action"` // The headers for this specific scm_ip_restriction as defined below. + // +kubebuilder:validation:Optional Headers []SiteConfigScmIPRestrictionHeadersParameters `json:"headers,omitempty" tf:"headers"` // The IP Address used for this IP Restriction in CIDR notation. + // +kubebuilder:validation:Optional IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address"` // The name for this IP Restriction. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name"` // The priority for this IP Restriction. Restrictions are enforced in priority order. By default, priority is set to 65000 if not specified. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority"` // The Service Tag used for this IP Restriction. + // +kubebuilder:validation:Optional ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag"` // The Virtual Network Subnet ID used for this IP Restriction. diff --git a/apis/web/v1beta1/zz_linuxfunctionapp_types.go b/apis/web/v1beta1/zz_linuxfunctionapp_types.go index c2bfb8059..1a64ea597 100755 --- a/apis/web/v1beta1/zz_linuxfunctionapp_types.go +++ b/apis/web/v1beta1/zz_linuxfunctionapp_types.go @@ -119,50 +119,62 @@ type ActiveDirectoryV2Parameters struct { // The list of allowed Applications for the Default Authorisation Policy. // The list of allowed Applications for the Default Authorisation Policy. + // +kubebuilder:validation:Optional AllowedApplications []*string `json:"allowedApplications,omitempty" tf:"allowed_applications,omitempty"` // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. // Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The list of allowed Group Names for the Default Authorisation Policy. // The list of allowed Group Names for the Default Authorisation Policy. + // +kubebuilder:validation:Optional AllowedGroups []*string `json:"allowedGroups,omitempty" tf:"allowed_groups,omitempty"` // The list of allowed Identities for the Default Authorisation Policy. // The list of allowed Identities for the Default Authorisation Policy. + // +kubebuilder:validation:Optional AllowedIdentities []*string `json:"allowedIdentities,omitempty" tf:"allowed_identities,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Active Directory. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The thumbprint of the certificate used for signing purposes. // The thumbprint of the certificate used for signing purposes. + // +kubebuilder:validation:Optional ClientSecretCertificateThumbprint *string `json:"clientSecretCertificateThumbprint,omitempty" tf:"client_secret_certificate_thumbprint,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The App Setting name that contains the client secret of the Client. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // A list of Allowed Client Applications in the JWT Claim. // A list of Allowed Client Applications in the JWT Claim. + // +kubebuilder:validation:Optional JwtAllowedClientApplications []*string `json:"jwtAllowedClientApplications,omitempty" tf:"jwt_allowed_client_applications,omitempty"` // A list of Allowed Groups in the JWT Claim. // A list of Allowed Groups in the JWT Claim. + // +kubebuilder:validation:Optional JwtAllowedGroups []*string `json:"jwtAllowedGroups,omitempty" tf:"jwt_allowed_groups,omitempty"` // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. + // +kubebuilder:validation:Optional LoginParameters map[string]*string `json:"loginParameters,omitempty" tf:"login_parameters,omitempty"` // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/ // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. `https://login.microsoftonline.com/v2.0/{tenant-guid}/`. + // +kubebuilder:validation:Optional TenantAuthEndpoint *string `json:"tenantAuthEndpoint,omitempty" tf:"tenant_auth_endpoint,omitempty"` // Should the www-authenticate provider should be omitted from the request? Defaults to false // Should the www-authenticate provider should be omitted from the request? Defaults to `false` + // +kubebuilder:validation:Optional WwwAuthenticationDisabled *bool `json:"wwwAuthenticationDisabled,omitempty" tf:"www_authentication_disabled,omitempty"` } @@ -192,10 +204,12 @@ type AppServiceLogsParameters struct { // The amount of disk space to use for logs. Valid values are between 25 and 100. Defaults to 35. // The amount of disk space to use for logs. Valid values are between `25` and `100`. + // +kubebuilder:validation:Optional DiskQuotaMb *float64 `json:"diskQuotaMb,omitempty" tf:"disk_quota_mb,omitempty"` // After how many days backups should be deleted. Defaults to 30. // The retention period for logs in days. Valid values are between `0` and `99999`. Defaults to `0` (never delete). + // +kubebuilder:validation:Optional RetentionPeriodDays *float64 `json:"retentionPeriodDays,omitempty" tf:"retention_period_days,omitempty"` } @@ -228,10 +242,12 @@ type AppleV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Apple web application. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Apple Login. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` } @@ -307,33 +323,41 @@ type ApplicationStackParameters struct { // One or more docker blocks as defined below. // A docker block + // +kubebuilder:validation:Optional Docker []DockerParameters `json:"docker,omitempty" tf:"docker,omitempty"` // The version of .NET to use. Possible values include 3.1, 6.0 and 7.0. // The version of .Net. Possible values are `3.1`, `6.0` and `7.0` + // +kubebuilder:validation:Optional DotnetVersion *string `json:"dotnetVersion,omitempty" tf:"dotnet_version,omitempty"` // The Version of Java to use. Supported versions include 8, 11 & 17. // The version of Java to use. Possible values are `8`, `11`, and `17` + // +kubebuilder:validation:Optional JavaVersion *string `json:"javaVersion,omitempty" tf:"java_version,omitempty"` // The version of Node to run. Possible values include 12, 14, 16 and 18. // The version of Node to use. Possible values include `12`, `14`, `16` and `18` + // +kubebuilder:validation:Optional NodeVersion *string `json:"nodeVersion,omitempty" tf:"node_version,omitempty"` // The version of PowerShell Core to run. Possible values are 7, and 7.2. // The version of PowerShell Core to use. Possibles values are `7`, and `7.2` + // +kubebuilder:validation:Optional PowershellCoreVersion *string `json:"powershellCoreVersion,omitempty" tf:"powershell_core_version,omitempty"` // The version of Python to run. Possible values are 3.10, 3.9, 3.8 and 3.7. // The version of Python to use. Possible values include `3.10`, `3.9`, `3.8`, and `3.7`. + // +kubebuilder:validation:Optional PythonVersion *string `json:"pythonVersion,omitempty" tf:"python_version,omitempty"` // Should the Linux Function App use a custom runtime? + // +kubebuilder:validation:Optional UseCustomRuntime *bool `json:"useCustomRuntime,omitempty" tf:"use_custom_runtime,omitempty"` // Should the DotNet process use an isolated runtime. Defaults to false. // Should the DotNet process use an isolated runtime. Defaults to `false`. + // +kubebuilder:validation:Optional UseDotnetIsolatedRuntime *bool `json:"useDotnetIsolatedRuntime,omitempty" tf:"use_dotnet_isolated_runtime,omitempty"` } @@ -502,81 +526,103 @@ type AuthSettingsV2Observation struct { type AuthSettingsV2Parameters struct { // An active_directory_v2 block as defined below. + // +kubebuilder:validation:Optional ActiveDirectoryV2 []ActiveDirectoryV2Parameters `json:"activeDirectoryV2,omitempty" tf:"active_directory_v2,omitempty"` // An apple_v2 block as defined below. + // +kubebuilder:validation:Optional AppleV2 []AppleV2Parameters `json:"appleV2,omitempty" tf:"apple_v2,omitempty"` // Should the AuthV2 Settings be enabled. Defaults to false. // Should the AuthV2 Settings be enabled. Defaults to `false` + // +kubebuilder:validation:Optional AuthEnabled *bool `json:"authEnabled,omitempty" tf:"auth_enabled,omitempty"` // An azure_static_web_app_v2 block as defined below. + // +kubebuilder:validation:Optional AzureStaticWebAppV2 []AzureStaticWebAppV2Parameters `json:"azureStaticWebAppV2,omitempty" tf:"azure_static_web_app_v2,omitempty"` // The path to the App Auth settings. // The path to the App Auth settings. **Note:** Relative Paths are evaluated from the Site Root directory. + // +kubebuilder:validation:Optional ConfigFilePath *string `json:"configFilePath,omitempty" tf:"config_file_path,omitempty"` // Zero or more custom_oidc_v2 blocks as defined below. + // +kubebuilder:validation:Optional CustomOidcV2 []CustomOidcV2Parameters `json:"customOidcV2,omitempty" tf:"custom_oidc_v2,omitempty"` // The Default Authentication Provider to use when more than one Authentication Provider is configured and the unauthenticated_action is set to RedirectToLoginPage. // The Default Authentication Provider to use when the `unauthenticated_action` is set to `RedirectToLoginPage`. + // +kubebuilder:validation:Optional DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` // The paths which should be excluded from the unauthenticated_action when it is set to RedirectToLoginPage. // The paths which should be excluded from the `unauthenticated_action` when it is set to `RedirectToLoginPage`. + // +kubebuilder:validation:Optional ExcludedPaths []*string `json:"excludedPaths,omitempty" tf:"excluded_paths,omitempty"` // A facebook_v2 block as defined below. + // +kubebuilder:validation:Optional FacebookV2 []FacebookV2Parameters `json:"facebookV2,omitempty" tf:"facebook_v2,omitempty"` // The convention used to determine the url of the request made. Possible values include ForwardProxyConventionNoProxy, ForwardProxyConventionStandard, ForwardProxyConventionCustom. Defaults to ForwardProxyConventionNoProxy. // The convention used to determine the url of the request made. Possible values include `ForwardProxyConventionNoProxy`, `ForwardProxyConventionStandard`, `ForwardProxyConventionCustom`. Defaults to `ForwardProxyConventionNoProxy` + // +kubebuilder:validation:Optional ForwardProxyConvention *string `json:"forwardProxyConvention,omitempty" tf:"forward_proxy_convention,omitempty"` // The name of the custom header containing the host of the request. // The name of the header containing the host of the request. + // +kubebuilder:validation:Optional ForwardProxyCustomHostHeaderName *string `json:"forwardProxyCustomHostHeaderName,omitempty" tf:"forward_proxy_custom_host_header_name,omitempty"` // The name of the custom header containing the scheme of the request. // The name of the header containing the scheme of the request. + // +kubebuilder:validation:Optional ForwardProxyCustomSchemeHeaderName *string `json:"forwardProxyCustomSchemeHeaderName,omitempty" tf:"forward_proxy_custom_scheme_header_name,omitempty"` // A github_v2 block as defined below. + // +kubebuilder:validation:Optional GithubV2 []GithubV2Parameters `json:"githubV2,omitempty" tf:"github_v2,omitempty"` // A google_v2 block as defined below. + // +kubebuilder:validation:Optional GoogleV2 []GoogleV2Parameters `json:"googleV2,omitempty" tf:"google_v2,omitempty"` // The prefix that should precede all the authentication and authorisation paths. Defaults to /.auth. // The prefix that should precede all the authentication and authorisation paths. Defaults to `/.auth` + // +kubebuilder:validation:Optional HTTPRouteAPIPrefix *string `json:"httpRouteApiPrefix,omitempty" tf:"http_route_api_prefix,omitempty"` // A login block as defined below. + // +kubebuilder:validation:Optional Login []LoginParameters `json:"login,omitempty" tf:"login,omitempty"` // A microsoft_v2 block as defined below. + // +kubebuilder:validation:Optional MicrosoftV2 []MicrosoftV2Parameters `json:"microsoftV2,omitempty" tf:"microsoft_v2,omitempty"` // Should the authentication flow be used for all requests. // Should the authentication flow be used for all requests. + // +kubebuilder:validation:Optional RequireAuthentication *bool `json:"requireAuthentication,omitempty" tf:"require_authentication,omitempty"` // Should HTTPS be required on connections? Defaults to true. // Should HTTPS be required on connections? Defaults to true. + // +kubebuilder:validation:Optional RequireHTTPS *bool `json:"requireHttps,omitempty" tf:"require_https,omitempty"` // The Runtime Version of the Authentication and Authorisation feature of this App. Defaults to ~1. // The Runtime Version of the Authentication and Authorisation feature of this App. Defaults to `~1` + // +kubebuilder:validation:Optional RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` // A twitter_v2 block as defined below. + // +kubebuilder:validation:Optional TwitterV2 []TwitterV2Parameters `json:"twitterV2,omitempty" tf:"twitter_v2,omitempty"` // The action to take for requests made without authentication. Possible values include RedirectToLoginPage, AllowAnonymous, Return401, and Return403. Defaults to RedirectToLoginPage. // The action to take for requests made without authentication. Possible values include `RedirectToLoginPage`, `AllowAnonymous`, `Return401`, and `Return403`. Defaults to `RedirectToLoginPage`. + // +kubebuilder:validation:Optional UnauthenticatedAction *string `json:"unauthenticatedAction,omitempty" tf:"unauthenticated_action,omitempty"` } @@ -598,6 +644,7 @@ type AzureStaticWebAppV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Static Web App Authentication. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` } @@ -633,13 +680,16 @@ type BackupParameters struct { // Should this backup job be enabled? Defaults to true. // Should this backup job be enabled? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The name which should be used for this Backup. // The name which should be used for this Backup. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A schedule block as defined below. + // +kubebuilder:validation:Optional Schedule []ScheduleParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` // The SAS URL to the container. @@ -722,22 +772,27 @@ type CustomOidcV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with this Custom OIDC. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The name which should be used for this Storage Account. // The name of the Custom OIDC Authentication Provider. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The name of the claim that contains the users name. // The name of the claim that contains the users name. + // +kubebuilder:validation:Optional NameClaimType *string `json:"nameClaimType,omitempty" tf:"name_claim_type,omitempty"` // The app setting name that contains the client_secret value used for the Custom OIDC Login. // The endpoint that contains all the configuration endpoints for this Custom OIDC provider. + // +kubebuilder:validation:Optional OpenIDConfigurationEndpoint *string `json:"openidConfigurationEndpoint,omitempty" tf:"openid_configuration_endpoint,omitempty"` // The list of the scopes that should be requested while authenticating. // The list of the scopes that should be requested while authenticating. + // +kubebuilder:validation:Optional Scopes []*string `json:"scopes,omitempty" tf:"scopes,omitempty"` } @@ -775,10 +830,12 @@ type DockerParameters struct { // The name of the Docker image to use. // The name of the Docker image to use. + // +kubebuilder:validation:Optional ImageName *string `json:"imageName,omitempty" tf:"image_name,omitempty"` // The image tag of the image to use. // The image tag of the image to use. + // +kubebuilder:validation:Optional ImageTag *string `json:"imageTag,omitempty" tf:"image_tag,omitempty"` // The password for the account to use to connect to the registry. @@ -788,6 +845,7 @@ type DockerParameters struct { // The URL of the docker registry. // The URL of the docker registry. + // +kubebuilder:validation:Optional RegistryURL *string `json:"registryUrl,omitempty" tf:"registry_url,omitempty"` // The username to use for connections to the registry. @@ -838,18 +896,22 @@ type FacebookV2Parameters struct { // The App ID of the Facebook app used for login. // The App ID of the Facebook app used for login. + // +kubebuilder:validation:Optional AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The app setting name that contains the app_secret value used for Facebook Login. // The app setting name that contains the `app_secret` value used for Facebook Login. + // +kubebuilder:validation:Optional AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` // The version of the Facebook API to be used while logging in. // The version of the Facebook API to be used while logging in. + // +kubebuilder:validation:Optional GraphAPIVersion *string `json:"graphApiVersion,omitempty" tf:"graph_api_version,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of scopes to be requested as part of Facebook Login authentication. + // +kubebuilder:validation:Optional LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } @@ -887,6 +949,7 @@ type GithubParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the GitHub app used for login. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. @@ -896,10 +959,12 @@ type GithubParameters struct { // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for GitHub Login. Cannot be specified with `client_secret`. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, wl.basic is used as the default scope. // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -937,14 +1002,17 @@ type GithubV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the GitHub app used for login. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for GitHub Login. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. + // +kubebuilder:validation:Optional LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } @@ -990,18 +1058,22 @@ type GoogleV2Parameters struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. // Specifies a list of Allowed Audiences that will be requested as part of Google Sign-In authentication. + // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Google web application. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Google Login. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of Login scopes that will be requested as part of Google Sign-In authentication. + // +kubebuilder:validation:Optional LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } @@ -1039,10 +1111,12 @@ type LinuxFunctionAppAuthSettingsActiveDirectoryParameters struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. // Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Active Directory. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. @@ -1052,6 +1126,7 @@ type LinuxFunctionAppAuthSettingsActiveDirectoryParameters struct { // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The App Setting name that contains the client secret of the Client. Cannot be used with `client_secret`. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` } @@ -1089,6 +1164,7 @@ type LinuxFunctionAppAuthSettingsFacebookParameters struct { // The App ID of the Facebook app used for login. // The App ID of the Facebook app used for login. + // +kubebuilder:validation:Optional AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The App Secret of the Facebook app used for Facebook login. Cannot be specified with app_secret_setting_name. @@ -1098,10 +1174,12 @@ type LinuxFunctionAppAuthSettingsFacebookParameters struct { // The app setting name that contains the app_secret value used for Facebook Login. // The app setting name that contains the `app_secret` value used for Facebook Login. Cannot be specified with `app_secret`. + // +kubebuilder:validation:Optional AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, wl.basic is used as the default scope. // Specifies a list of OAuth 2.0 scopes to be requested as part of Facebook Login authentication. + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -1139,6 +1217,7 @@ type LinuxFunctionAppAuthSettingsGoogleParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Google web application. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. @@ -1148,10 +1227,12 @@ type LinuxFunctionAppAuthSettingsGoogleParameters struct { // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Google Login. Cannot be specified with `client_secret`. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, wl.basic is used as the default scope. // Specifies a list of OAuth 2.0 scopes that will be requested as part of Google Sign-In authentication. If not specified, "openid", "profile", and "email" are used as default scopes. + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -1246,6 +1327,7 @@ type LinuxFunctionAppAuthSettingsMicrosoftParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OAuth 2.0 client ID that was created for the app used for authentication. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. @@ -1255,10 +1337,12 @@ type LinuxFunctionAppAuthSettingsMicrosoftParameters struct { // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with `client_secret`. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, wl.basic is used as the default scope. // The list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, `wl.basic` is used as the default scope. + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -1322,57 +1406,72 @@ type LinuxFunctionAppAuthSettingsObservation struct { type LinuxFunctionAppAuthSettingsParameters struct { // An active_directory block as defined above. + // +kubebuilder:validation:Optional ActiveDirectory []LinuxFunctionAppAuthSettingsActiveDirectoryParameters `json:"activeDirectory,omitempty" tf:"active_directory,omitempty"` // Specifies a map of login Parameters to send to the OpenID Connect authorization endpoint when a user logs in. // Specifies a map of Login Parameters to send to the OpenID Connect authorization endpoint when a user logs in. + // +kubebuilder:validation:Optional AdditionalLoginParameters map[string]*string `json:"additionalLoginParameters,omitempty" tf:"additional_login_parameters,omitempty"` // Specifies a list of External URLs that can be redirected to as part of logging in or logging out of the Linux Web App. // Specifies a list of External URLs that can be redirected to as part of logging in or logging out of the Windows Web App. + // +kubebuilder:validation:Optional AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` // The default authentication provider to use when multiple providers are configured. Possible values include: AzureActiveDirectory, Facebook, Google, MicrosoftAccount, Twitter, Github // The default authentication provider to use when multiple providers are configured. Possible values include: `AzureActiveDirectory`, `Facebook`, `Google`, `MicrosoftAccount`, `Twitter`, `Github`. + // +kubebuilder:validation:Optional DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` // Should the Authentication / Authorization feature be enabled for the Linux Web App? // Should the Authentication / Authorization feature be enabled? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // A facebook block as defined below. + // +kubebuilder:validation:Optional Facebook []LinuxFunctionAppAuthSettingsFacebookParameters `json:"facebook,omitempty" tf:"facebook,omitempty"` // A github block as defined below. + // +kubebuilder:validation:Optional Github []GithubParameters `json:"github,omitempty" tf:"github,omitempty"` // A google block as defined below. + // +kubebuilder:validation:Optional Google []LinuxFunctionAppAuthSettingsGoogleParameters `json:"google,omitempty" tf:"google,omitempty"` // The OpenID Connect Issuer URI that represents the entity which issues access tokens for this Linux Web App. // The OpenID Connect Issuer URI that represents the entity which issues access tokens. + // +kubebuilder:validation:Optional Issuer *string `json:"issuer,omitempty" tf:"issuer,omitempty"` // A microsoft block as defined below. + // +kubebuilder:validation:Optional Microsoft []LinuxFunctionAppAuthSettingsMicrosoftParameters `json:"microsoft,omitempty" tf:"microsoft,omitempty"` // The RuntimeVersion of the Authentication / Authorization feature in use for the Linux Web App. // The RuntimeVersion of the Authentication / Authorization feature in use. + // +kubebuilder:validation:Optional RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72 hours. // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to `72` hours. + // +kubebuilder:validation:Optional TokenRefreshExtensionHours *float64 `json:"tokenRefreshExtensionHours,omitempty" tf:"token_refresh_extension_hours,omitempty"` // Should the Linux Web App durably store platform-specific security tokens that are obtained during login flows? Defaults to false. // Should the Windows Web App durably store platform-specific security tokens that are obtained during login flows? Defaults to `false`. + // +kubebuilder:validation:Optional TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` // A twitter block as defined below. + // +kubebuilder:validation:Optional Twitter []LinuxFunctionAppAuthSettingsTwitterParameters `json:"twitter,omitempty" tf:"twitter,omitempty"` // The action to take when an unauthenticated client attempts to access the app. Possible values include: RedirectToLoginPage, AllowAnonymous. // The action to take when an unauthenticated client attempts to access the app. Possible values include: `RedirectToLoginPage`, `AllowAnonymous`. + // +kubebuilder:validation:Optional UnauthenticatedClientAction *string `json:"unauthenticatedClientAction,omitempty" tf:"unauthenticated_client_action,omitempty"` } @@ -1402,6 +1501,7 @@ type LinuxFunctionAppAuthSettingsTwitterParameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + // +kubebuilder:validation:Optional ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with consumer_secret_setting_name. @@ -1411,6 +1511,7 @@ type LinuxFunctionAppAuthSettingsTwitterParameters struct { // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret`. + // +kubebuilder:validation:Optional ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` } @@ -1440,10 +1541,12 @@ type LinuxFunctionAppConnectionStringParameters struct { // The name which should be used for this Connection. // The name which should be used for this Connection. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of database. Possible values include: MySQL, SQLServer, SQLAzure, Custom, NotificationHub, ServiceBus, EventHub, APIHub, DocDb, RedisCache, and PostgreSQL. // Type of database. Possible values include: `MySQL`, `SQLServer`, `SQLAzure`, `Custom`, `NotificationHub`, `ServiceBus`, `EventHub`, `APIHub`, `DocDb`, `RedisCache`, and `PostgreSQL`. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // The connection string value. @@ -1479,9 +1582,11 @@ type LinuxFunctionAppIdentityObservation struct { type LinuxFunctionAppIdentityParameters struct { // A list of User Assigned Managed Identity IDs to be assigned to this Linux Function App. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Linux Function App. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -1713,68 +1818,86 @@ type LinuxFunctionAppParameters struct { // A map of key-value pairs for App Settings and custom values. // A map of key-value pairs for [App Settings](https://docs.microsoft.com/en-us/azure/azure-functions/functions-app-settings) and custom values. + // +kubebuilder:validation:Optional AppSettings map[string]*string `json:"appSettings,omitempty" tf:"app_settings,omitempty"` // A auth_settings block as defined below. + // +kubebuilder:validation:Optional AuthSettings []LinuxFunctionAppAuthSettingsParameters `json:"authSettings,omitempty" tf:"auth_settings,omitempty"` // An auth_settings_v2 block as defined below. + // +kubebuilder:validation:Optional AuthSettingsV2 []AuthSettingsV2Parameters `json:"authSettingsV2,omitempty" tf:"auth_settings_v2,omitempty"` // A backup block as defined below. + // +kubebuilder:validation:Optional Backup []BackupParameters `json:"backup,omitempty" tf:"backup,omitempty"` // Should built in logging be enabled. Configures AzureWebJobsDashboard app setting based on the configured storage setting. Defaults to true. // Should built in logging be enabled. Configures `AzureWebJobsDashboard` app setting based on the configured storage setting + // +kubebuilder:validation:Optional BuiltinLoggingEnabled *bool `json:"builtinLoggingEnabled,omitempty" tf:"builtin_logging_enabled,omitempty"` // Should the function app use Client Certificates. // Should the function app use Client Certificates + // +kubebuilder:validation:Optional ClientCertificateEnabled *bool `json:"clientCertificateEnabled,omitempty" tf:"client_certificate_enabled,omitempty"` // Paths to exclude when using client certificates, separated by ; // Paths to exclude when using client certificates, separated by ; + // +kubebuilder:validation:Optional ClientCertificateExclusionPaths *string `json:"clientCertificateExclusionPaths,omitempty" tf:"client_certificate_exclusion_paths,omitempty"` // The mode of the Function App's client certificates requirement for incoming requests. Possible values are Required, Optional, and OptionalInteractiveUser. // The mode of the Function App's client certificates requirement for incoming requests. Possible values are `Required`, `Optional`, and `OptionalInteractiveUser` + // +kubebuilder:validation:Optional ClientCertificateMode *string `json:"clientCertificateMode,omitempty" tf:"client_certificate_mode,omitempty"` // One or more connection_string blocks as defined below. + // +kubebuilder:validation:Optional ConnectionString []LinuxFunctionAppConnectionStringParameters `json:"connectionString,omitempty" tf:"connection_string,omitempty"` // Should the settings for linking the Function App to storage be suppressed. // Force disable the content share settings. + // +kubebuilder:validation:Optional ContentShareForceDisabled *bool `json:"contentShareForceDisabled,omitempty" tf:"content_share_force_disabled,omitempty"` // The amount of memory in gigabyte-seconds that your application is allowed to consume per day. Setting this value only affects function apps under the consumption plan. Defaults to 0. // The amount of memory in gigabyte-seconds that your application is allowed to consume per day. Setting this value only affects function apps in Consumption Plans. + // +kubebuilder:validation:Optional DailyMemoryTimeQuota *float64 `json:"dailyMemoryTimeQuota,omitempty" tf:"daily_memory_time_quota,omitempty"` // Is the Function App enabled? Defaults to true. // Is the Linux Function App enabled. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The runtime version associated with the Function App. Defaults to ~4. // The runtime version associated with the Function App. + // +kubebuilder:validation:Optional FunctionsExtensionVersion *string `json:"functionsExtensionVersion,omitempty" tf:"functions_extension_version,omitempty"` // Can the Function App only be accessed via HTTPS? Defaults to false. // Can the Function App only be accessed via HTTPS? + // +kubebuilder:validation:Optional HTTPSOnly *bool `json:"httpsOnly,omitempty" tf:"https_only,omitempty"` // A identity block as defined below. + // +kubebuilder:validation:Optional Identity []LinuxFunctionAppIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // The User Assigned Identity ID used for accessing KeyVault secrets. The identity must be assigned to the application in the identity block. For more information see - Access vaults with a user-assigned identity // The User Assigned Identity to use for Key Vault access. + // +kubebuilder:validation:Optional KeyVaultReferenceIdentityID *string `json:"keyVaultReferenceIdentityId,omitempty" tf:"key_vault_reference_identity_id,omitempty"` // The Azure Region where the Linux Function App should exist. Changing this forces a new Linux Function App to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name which should be used for this Linux Function App. Changing this forces a new Linux Function App to be created. Limit the function name to 32 characters to avoid naming collisions. For more information about Function App naming rule and Host ID Collisions // Specifies the name of the Function App. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The name of the Resource Group where the Linux Function App should exist. Changing this forces a new Linux Function App to be created. @@ -1806,12 +1929,15 @@ type LinuxFunctionAppParameters struct { ServicePlanIDSelector *v1.Selector `json:"servicePlanIdSelector,omitempty" tf:"-"` // A site_config block as defined below. + // +kubebuilder:validation:Optional SiteConfig []LinuxFunctionAppSiteConfigParameters `json:"siteConfig,omitempty" tf:"site_config,omitempty"` // A sticky_settings block as defined below. + // +kubebuilder:validation:Optional StickySettings []StickySettingsParameters `json:"stickySettings,omitempty" tf:"sticky_settings,omitempty"` // One or more storage_account blocks as defined below. + // +kubebuilder:validation:Optional StorageAccount []StorageAccountParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` // The access key which will be used to access the backend storage account for the Function App. Conflicts with storage_uses_managed_identity. @@ -1835,13 +1961,16 @@ type LinuxFunctionAppParameters struct { // The Key Vault Secret ID, optionally including version, that contains the Connection String to connect to the storage account for this Function App. // The Key Vault Secret ID, including version, that contains the Connection String to connect to the storage account for this Function App. + // +kubebuilder:validation:Optional StorageKeyVaultSecretID *string `json:"storageKeyVaultSecretId,omitempty" tf:"storage_key_vault_secret_id,omitempty"` // Should the Function App use Managed Identity to access the storage account. Conflicts with storage_account_access_key. // Should the Function App use its Managed Identity to access storage? + // +kubebuilder:validation:Optional StorageUsesManagedIdentity *bool `json:"storageUsesManagedIdentity,omitempty" tf:"storage_uses_managed_identity,omitempty"` // A mapping of tags which should be assigned to the Linux Function App. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The subnet id which will be used by this Function App for regional virtual network integration. @@ -1860,6 +1989,7 @@ type LinuxFunctionAppParameters struct { // The local path and filename of the Zip packaged application to deploy to this Linux Function App. // The local path and filename of the Zip packaged application to deploy to this Linux Function App. **Note:** Using this value requires either `WEBSITE_RUN_FROM_PACKAGE=1` or `SCM_DO_BUILD_DURING_DEPLOYMENT=true` to be set on the App in `app_settings`. + // +kubebuilder:validation:Optional ZipDeployFile *string `json:"zipDeployFile,omitempty" tf:"zip_deploy_file,omitempty"` } @@ -1889,10 +2019,12 @@ type LinuxFunctionAppSiteConfigCorsParameters struct { // Specifies a list of origins that should be allowed to make cross-origin calls. // Specifies a list of origins that should be allowed to make cross-origin calls. + // +kubebuilder:validation:Optional AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` // Are credentials allowed in CORS requests? Defaults to false. // Are credentials allowed in CORS requests? Defaults to `false`. + // +kubebuilder:validation:Optional SupportCredentials *bool `json:"supportCredentials,omitempty" tf:"support_credentials,omitempty"` } @@ -1956,25 +2088,31 @@ type LinuxFunctionAppSiteConfigIPRestrictionParameters struct { // The action to take. Possible values are Allow or Deny. // The action to take. Possible values are `Allow` or `Deny`. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // A headers block as defined above. + // +kubebuilder:validation:Optional Headers []SiteConfigIPRestrictionHeadersParameters `json:"headers,omitempty" tf:"headers,omitempty"` // The CIDR notation of the IP or IP Range to match. For example: 10.0.0.0/24 or 192.168.10.1/32 // The CIDR notation of the IP or IP Range to match. For example: `10.0.0.0/24` or `192.168.10.1/32` or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22` + // +kubebuilder:validation:Optional IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` // The name which should be used for this Storage Account. // The name which should be used for this `ip_restriction`. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The priority value of this ip_restriction. Defaults to 65000. // The priority value of this `ip_restriction`. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // The Service Tag used for this IP Restriction. // The Service Tag used for this IP Restriction. + // +kubebuilder:validation:Optional ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag,omitempty"` // The subnet id which will be used by this Function App for regional virtual network integration. @@ -2251,25 +2389,31 @@ type LinuxFunctionAppSiteConfigParameters struct { // The URL of the API definition that describes this Linux Function App. // The URL of the API definition that describes this Linux Function App. + // +kubebuilder:validation:Optional APIDefinitionURL *string `json:"apiDefinitionUrl,omitempty" tf:"api_definition_url,omitempty"` // The ID of the API Management API for this Linux Function App. // The ID of the API Management API for this Linux Function App. + // +kubebuilder:validation:Optional APIManagementAPIID *string `json:"apiManagementApiId,omitempty" tf:"api_management_api_id,omitempty"` // If this Linux Web App is Always On enabled. Defaults to false. // If this Linux Web App is Always On enabled. Defaults to `false`. + // +kubebuilder:validation:Optional AlwaysOn *bool `json:"alwaysOn,omitempty" tf:"always_on,omitempty"` // The App command line to launch. // The program and any arguments used to launch this app via the command line. (Example `node myapp.js`). + // +kubebuilder:validation:Optional AppCommandLine *string `json:"appCommandLine,omitempty" tf:"app_command_line,omitempty"` // The number of workers this function app can scale out to. Only applicable to apps on the Consumption and Premium plan. // The number of workers this function app can scale out to. Only applicable to apps on the Consumption and Premium plan. + // +kubebuilder:validation:Optional AppScaleLimit *float64 `json:"appScaleLimit,omitempty" tf:"app_scale_limit,omitempty"` // An app_service_logs block as defined above. + // +kubebuilder:validation:Optional AppServiceLogs []AppServiceLogsParameters `json:"appServiceLogs,omitempty" tf:"app_service_logs,omitempty"` // The Connection String for linking the Linux Function App to Application Insights. @@ -2283,99 +2427,124 @@ type LinuxFunctionAppSiteConfigParameters struct { ApplicationInsightsKeySecretRef *v1.SecretKeySelector `json:"applicationInsightsKeySecretRef,omitempty" tf:"-"` // An application_stack block as defined above. + // +kubebuilder:validation:Optional ApplicationStack []ApplicationStackParameters `json:"applicationStack,omitempty" tf:"application_stack,omitempty"` // The Client ID of the Managed Service Identity to use for connections to the Azure Container Registry. // The Client ID of the Managed Service Identity to use for connections to the Azure Container Registry. + // +kubebuilder:validation:Optional ContainerRegistryManagedIdentityClientID *string `json:"containerRegistryManagedIdentityClientId,omitempty" tf:"container_registry_managed_identity_client_id,omitempty"` // Should connections for Azure Container Registry use Managed Identity. // Should connections for Azure Container Registry use Managed Identity. + // +kubebuilder:validation:Optional ContainerRegistryUseManagedIdentity *bool `json:"containerRegistryUseManagedIdentity,omitempty" tf:"container_registry_use_managed_identity,omitempty"` // A cors block as defined above. + // +kubebuilder:validation:Optional Cors []LinuxFunctionAppSiteConfigCorsParameters `json:"cors,omitempty" tf:"cors,omitempty"` // Specifies a list of Default Documents for the Linux Web App. // Specifies a list of Default Documents for the Linux Web App. + // +kubebuilder:validation:Optional DefaultDocuments []*string `json:"defaultDocuments,omitempty" tf:"default_documents,omitempty"` // The number of minimum instances for this Linux Function App. Only affects apps on Elastic Premium plans. // The number of minimum instances for this Linux Function App. Only affects apps on Elastic Premium plans. + // +kubebuilder:validation:Optional ElasticInstanceMinimum *float64 `json:"elasticInstanceMinimum,omitempty" tf:"elastic_instance_minimum,omitempty"` // State of FTP / FTPS service for this function app. Possible values include: AllAllowed, FtpsOnly and Disabled. Defaults to Disabled. // State of FTP / FTPS service for this function app. Possible values include: `AllAllowed`, `FtpsOnly` and `Disabled`. Defaults to `Disabled`. + // +kubebuilder:validation:Optional FtpsState *string `json:"ftpsState,omitempty" tf:"ftps_state,omitempty"` // The amount of time in minutes that a node can be unhealthy before being removed from the load balancer. Possible values are between 2 and 10. Only valid in conjunction with health_check_path. // The amount of time in minutes that a node is unhealthy before being removed from the load balancer. Possible values are between `2` and `10`. Defaults to `10`. Only valid in conjunction with `health_check_path` + // +kubebuilder:validation:Optional HealthCheckEvictionTimeInMin *float64 `json:"healthCheckEvictionTimeInMin,omitempty" tf:"health_check_eviction_time_in_min,omitempty"` // The path to be checked for this function app health. // The path to be checked for this function app health. + // +kubebuilder:validation:Optional HealthCheckPath *string `json:"healthCheckPath,omitempty" tf:"health_check_path,omitempty"` // Specifies if the HTTP2 protocol should be enabled. Defaults to false. // Specifies if the http2 protocol should be enabled. Defaults to `false`. + // +kubebuilder:validation:Optional Http2Enabled *bool `json:"http2Enabled,omitempty" tf:"http2_enabled,omitempty"` // One or more ip_restriction blocks as defined above. + // +kubebuilder:validation:Optional IPRestriction []LinuxFunctionAppSiteConfigIPRestrictionParameters `json:"ipRestriction,omitempty" tf:"ip_restriction,omitempty"` // The Site load balancing mode. Possible values include: WeightedRoundRobin, LeastRequests, LeastResponseTime, WeightedTotalTraffic, RequestHash, PerSiteRoundRobin. Defaults to LeastRequests if omitted. // The Site load balancing mode. Possible values include: `WeightedRoundRobin`, `LeastRequests`, `LeastResponseTime`, `WeightedTotalTraffic`, `RequestHash`, `PerSiteRoundRobin`. Defaults to `LeastRequests` if omitted. + // +kubebuilder:validation:Optional LoadBalancingMode *string `json:"loadBalancingMode,omitempty" tf:"load_balancing_mode,omitempty"` // Managed pipeline mode. Possible values include: Integrated, Classic. Defaults to Integrated. // The Managed Pipeline mode. Possible values include: `Integrated`, `Classic`. Defaults to `Integrated`. + // +kubebuilder:validation:Optional ManagedPipelineMode *string `json:"managedPipelineMode,omitempty" tf:"managed_pipeline_mode,omitempty"` // The configures the minimum version of TLS required for SSL requests. Possible values include: 1.0, 1.1, and 1.2. Defaults to 1.2. // The configures the minimum version of TLS required for SSL requests. Possible values include: `1.0`, `1.1`, and `1.2`. Defaults to `1.2`. + // +kubebuilder:validation:Optional MinimumTLSVersion *string `json:"minimumTlsVersion,omitempty" tf:"minimum_tls_version,omitempty"` // The number of pre-warmed instances for this function app. Only affects apps on an Elastic Premium plan. // The number of pre-warmed instances for this function app. Only affects apps on an Elastic Premium plan. + // +kubebuilder:validation:Optional PreWarmedInstanceCount *float64 `json:"preWarmedInstanceCount,omitempty" tf:"pre_warmed_instance_count,omitempty"` // Should Remote Debugging be enabled. Defaults to false. // Should Remote Debugging be enabled. Defaults to `false`. + // +kubebuilder:validation:Optional RemoteDebuggingEnabled *bool `json:"remoteDebuggingEnabled,omitempty" tf:"remote_debugging_enabled,omitempty"` // The Remote Debugging Version. Possible values include VS2017, VS2019, and VS2022. // The Remote Debugging Version. Possible values include `VS2017`, `VS2019`, and `VS2022“ + // +kubebuilder:validation:Optional RemoteDebuggingVersion *string `json:"remoteDebuggingVersion,omitempty" tf:"remote_debugging_version,omitempty"` // Should Scale Monitoring of the Functions Runtime be enabled? // Should Functions Runtime Scale Monitoring be enabled. + // +kubebuilder:validation:Optional RuntimeScaleMonitoringEnabled *bool `json:"runtimeScaleMonitoringEnabled,omitempty" tf:"runtime_scale_monitoring_enabled,omitempty"` // One or more scm_ip_restriction blocks as defined above. + // +kubebuilder:validation:Optional ScmIPRestriction []LinuxFunctionAppSiteConfigScmIPRestrictionParameters `json:"scmIpRestriction,omitempty" tf:"scm_ip_restriction,omitempty"` // Configures the minimum version of TLS required for SSL requests to the SCM site Possible values include: 1.0, 1.1, and 1.2. Defaults to 1.2. // Configures the minimum version of TLS required for SSL requests to the SCM site Possible values include: `1.0`, `1.1`, and `1.2`. Defaults to `1.2`. + // +kubebuilder:validation:Optional ScmMinimumTLSVersion *string `json:"scmMinimumTlsVersion,omitempty" tf:"scm_minimum_tls_version,omitempty"` // Should the Linux Function App ip_restriction configuration be used for the SCM also. // Should the Linux Function App `ip_restriction` configuration be used for the SCM also. + // +kubebuilder:validation:Optional ScmUseMainIPRestriction *bool `json:"scmUseMainIpRestriction,omitempty" tf:"scm_use_main_ip_restriction,omitempty"` // Should the Linux Web App use a 32-bit worker process. Defaults to true. // Should the Linux Web App use a 32-bit worker. + // +kubebuilder:validation:Optional Use32BitWorker *bool `json:"use32BitWorker,omitempty" tf:"use_32_bit_worker,omitempty"` // Should all outbound traffic to have NAT Gateways, Network Security Groups and User Defined Routes applied? Defaults to false. // Should all outbound traffic to have Virtual Network Security Groups and User Defined Routes applied? Defaults to `false`. + // +kubebuilder:validation:Optional VnetRouteAllEnabled *bool `json:"vnetRouteAllEnabled,omitempty" tf:"vnet_route_all_enabled,omitempty"` // Should Web Sockets be enabled. Defaults to false. // Should Web Sockets be enabled. Defaults to `false`. + // +kubebuilder:validation:Optional WebsocketsEnabled *bool `json:"websocketsEnabled,omitempty" tf:"websockets_enabled,omitempty"` // The number of Workers for this Linux Function App. // The number of Workers for this Linux Function App. + // +kubebuilder:validation:Optional WorkerCount *float64 `json:"workerCount,omitempty" tf:"worker_count,omitempty"` } @@ -2412,15 +2581,19 @@ type LinuxFunctionAppSiteConfigScmIPRestrictionHeadersObservation struct { type LinuxFunctionAppSiteConfigScmIPRestrictionHeadersParameters struct { // Specifies a list of Azure Front Door IDs. + // +kubebuilder:validation:Optional XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` // Specifies if a Front Door Health Probe should be expected. The only possible value is 1. + // +kubebuilder:validation:Optional XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` // Specifies a list of addresses for which matching should be applied. Omitting this value means allow any. + // +kubebuilder:validation:Optional XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` // Specifies a list of Hosts for which matching should be applied. + // +kubebuilder:validation:Optional XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } @@ -2484,25 +2657,31 @@ type LinuxFunctionAppSiteConfigScmIPRestrictionParameters struct { // The action to take. Possible values are Allow or Deny. // The action to take. Possible values are `Allow` or `Deny`. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // A headers block as defined above. + // +kubebuilder:validation:Optional Headers []LinuxFunctionAppSiteConfigScmIPRestrictionHeadersParameters `json:"headers,omitempty" tf:"headers,omitempty"` // The CIDR notation of the IP or IP Range to match. For example: 10.0.0.0/24 or 192.168.10.1/32 // The CIDR notation of the IP or IP Range to match. For example: `10.0.0.0/24` or `192.168.10.1/32` or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22` + // +kubebuilder:validation:Optional IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` // The name which should be used for this Storage Account. // The name which should be used for this `ip_restriction`. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The priority value of this ip_restriction. Defaults to 65000. // The priority value of this `ip_restriction`. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // The Service Tag used for this IP Restriction. // The Service Tag used for this IP Restriction. + // +kubebuilder:validation:Optional ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag,omitempty"` // The subnet id which will be used by this Function App for regional virtual network integration. @@ -2634,46 +2813,57 @@ type LoginParameters struct { // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. **Note:** URLs within the current domain are always implicitly allowed. + // +kubebuilder:validation:Optional AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` // The method by which cookies expire. Possible values include: FixedTime, and IdentityProviderDerived. Defaults to FixedTime. // The method by which cookies expire. Possible values include: `FixedTime`, and `IdentityProviderDerived`. Defaults to `FixedTime`. + // +kubebuilder:validation:Optional CookieExpirationConvention *string `json:"cookieExpirationConvention,omitempty" tf:"cookie_expiration_convention,omitempty"` // The time after the request is made when the session cookie should expire. Defaults to 08:00:00. // The time after the request is made when the session cookie should expire. Defaults to `08:00:00`. + // +kubebuilder:validation:Optional CookieExpirationTime *string `json:"cookieExpirationTime,omitempty" tf:"cookie_expiration_time,omitempty"` // The endpoint to which logout requests should be made. // The endpoint to which logout requests should be made. + // +kubebuilder:validation:Optional LogoutEndpoint *string `json:"logoutEndpoint,omitempty" tf:"logout_endpoint,omitempty"` // The time after the request is made when the nonce should expire. Defaults to 00:05:00. // The time after the request is made when the nonce should expire. Defaults to `00:05:00`. + // +kubebuilder:validation:Optional NonceExpirationTime *string `json:"nonceExpirationTime,omitempty" tf:"nonce_expiration_time,omitempty"` // Should the fragments from the request be preserved after the login request is made. Defaults to false. // Should the fragments from the request be preserved after the login request is made. Defaults to `false`. + // +kubebuilder:validation:Optional PreserveURLFragmentsForLogins *bool `json:"preserveUrlFragmentsForLogins,omitempty" tf:"preserve_url_fragments_for_logins,omitempty"` // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72 hours. // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to `72` hours. + // +kubebuilder:validation:Optional TokenRefreshExtensionTime *float64 `json:"tokenRefreshExtensionTime,omitempty" tf:"token_refresh_extension_time,omitempty"` // Should the Token Store configuration Enabled. Defaults to false // Should the Token Store configuration Enabled. Defaults to `false` + // +kubebuilder:validation:Optional TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` // The directory path in the App Filesystem in which the tokens will be stored. // The directory path in the App Filesystem in which the tokens will be stored. + // +kubebuilder:validation:Optional TokenStorePath *string `json:"tokenStorePath,omitempty" tf:"token_store_path,omitempty"` // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. + // +kubebuilder:validation:Optional TokenStoreSASSettingName *string `json:"tokenStoreSasSettingName,omitempty" tf:"token_store_sas_setting_name,omitempty"` // Should the nonce be validated while completing the login flow. Defaults to true. // Should the nonce be validated while completing the login flow. Defaults to `true`. + // +kubebuilder:validation:Optional ValidateNonce *bool `json:"validateNonce,omitempty" tf:"validate_nonce,omitempty"` } @@ -2719,18 +2909,22 @@ type MicrosoftV2Parameters struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. // The OAuth 2.0 client ID that was created for the app used for authentication. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // The list of Login scopes that will be requested as part of Microsoft Account authentication. + // +kubebuilder:validation:Optional LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } @@ -2787,22 +2981,27 @@ type ScheduleParameters struct { // How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and frequency_unit should be set to Day). // How often the backup should be executed (e.g. for weekly backup, this should be set to `7` and `frequency_unit` should be set to `Day`). + // +kubebuilder:validation:Optional FrequencyInterval *float64 `json:"frequencyInterval,omitempty" tf:"frequency_interval,omitempty"` // The unit of time for how often the backup should take place. Possible values include: Day and Hour. // The unit of time for how often the backup should take place. Possible values include: `Day` and `Hour`. + // +kubebuilder:validation:Optional FrequencyUnit *string `json:"frequencyUnit,omitempty" tf:"frequency_unit,omitempty"` // Should the service keep at least one backup, regardless of age of backup. Defaults to false. // Should the service keep at least one backup, regardless of age of backup. Defaults to `false`. + // +kubebuilder:validation:Optional KeepAtLeastOneBackup *bool `json:"keepAtLeastOneBackup,omitempty" tf:"keep_at_least_one_backup,omitempty"` // After how many days backups should be deleted. Defaults to 30. // After how many days backups should be deleted. + // +kubebuilder:validation:Optional RetentionPeriodDays *float64 `json:"retentionPeriodDays,omitempty" tf:"retention_period_days,omitempty"` // When the schedule should start working in RFC-3339 format. // When the schedule should start working in RFC-3339 format. + // +kubebuilder:validation:Optional StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` } @@ -2839,15 +3038,19 @@ type SiteConfigIPRestrictionHeadersObservation struct { type SiteConfigIPRestrictionHeadersParameters struct { // Specifies a list of Azure Front Door IDs. + // +kubebuilder:validation:Optional XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` // Specifies if a Front Door Health Probe should be expected. The only possible value is 1. + // +kubebuilder:validation:Optional XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` // Specifies a list of addresses for which matching should be applied. Omitting this value means allow any. + // +kubebuilder:validation:Optional XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` // Specifies a list of Hosts for which matching should be applied. + // +kubebuilder:validation:Optional XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } @@ -2872,9 +3075,11 @@ type StickySettingsObservation struct { type StickySettingsParameters struct { // A list of app_setting names that the Linux Function App will not swap between Slots when a swap operation is triggered. + // +kubebuilder:validation:Optional AppSettingNames []*string `json:"appSettingNames,omitempty" tf:"app_setting_names,omitempty"` // A list of connection_string names that the Linux Function App will not swap between Slots when a swap operation is triggered. + // +kubebuilder:validation:Optional ConnectionStringNames []*string `json:"connectionStringNames,omitempty" tf:"connection_string_names,omitempty"` } @@ -2921,18 +3126,23 @@ type StorageAccountParameters struct { AccessKeySecretRef v1.SecretKeySelector `json:"accessKeySecretRef" tf:"-"` // The Name of the Storage Account. + // +kubebuilder:validation:Optional AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` // The path at which to mount the storage share. + // +kubebuilder:validation:Optional MountPath *string `json:"mountPath,omitempty" tf:"mount_path,omitempty"` // The name which should be used for this Storage Account. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Name of the File Share or Container Name for Blob storage. + // +kubebuilder:validation:Optional ShareName *string `json:"shareName,omitempty" tf:"share_name,omitempty"` // The Azure Storage Type. Possible values include AzureFiles and AzureBlob. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -2962,10 +3172,12 @@ type TwitterV2Parameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + // +kubebuilder:validation:Optional ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. + // +kubebuilder:validation:Optional ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` } diff --git a/apis/web/v1beta1/zz_linuxfunctionappslot_types.go b/apis/web/v1beta1/zz_linuxfunctionappslot_types.go index 7a00a391a..dbf98a1ce 100755 --- a/apis/web/v1beta1/zz_linuxfunctionappslot_types.go +++ b/apis/web/v1beta1/zz_linuxfunctionappslot_types.go @@ -47,10 +47,12 @@ type ApplicationStackDockerParameters struct { // The name of the Docker image to use. // The name of the Docker image to use. + // +kubebuilder:validation:Optional ImageName *string `json:"imageName,omitempty" tf:"image_name,omitempty"` // The image tag of the image to use. // The image tag of the image to use. + // +kubebuilder:validation:Optional ImageTag *string `json:"imageTag,omitempty" tf:"image_tag,omitempty"` // The password for the account to use to connect to the registry. @@ -60,6 +62,7 @@ type ApplicationStackDockerParameters struct { // The URL of the docker registry. // The URL of the docker registry. + // +kubebuilder:validation:Optional RegistryURL *string `json:"registryUrl,omitempty" tf:"registry_url,omitempty"` // The username to use for connections to the registry. @@ -102,6 +105,7 @@ type AuthSettingsGithubParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the GitHub app used for login. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. @@ -111,10 +115,12 @@ type AuthSettingsGithubParameters struct { // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for GitHub Login. Cannot be specified with `client_secret`. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, wl.basic is used as the default scope. // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -224,50 +230,62 @@ type AuthSettingsV2ActiveDirectoryV2Parameters struct { // The list of allowed Applications for the Default Authorisation Policy. // The list of allowed Applications for the Default Authorisation Policy. + // +kubebuilder:validation:Optional AllowedApplications []*string `json:"allowedApplications,omitempty" tf:"allowed_applications,omitempty"` // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. // Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The list of allowed Group Names for the Default Authorisation Policy. // The list of allowed Group Names for the Default Authorisation Policy. + // +kubebuilder:validation:Optional AllowedGroups []*string `json:"allowedGroups,omitempty" tf:"allowed_groups,omitempty"` // The list of allowed Identities for the Default Authorisation Policy. // The list of allowed Identities for the Default Authorisation Policy. + // +kubebuilder:validation:Optional AllowedIdentities []*string `json:"allowedIdentities,omitempty" tf:"allowed_identities,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Active Directory. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The thumbprint of the certificate used for signing purposes. // The thumbprint of the certificate used for signing purposes. + // +kubebuilder:validation:Optional ClientSecretCertificateThumbprint *string `json:"clientSecretCertificateThumbprint,omitempty" tf:"client_secret_certificate_thumbprint,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The App Setting name that contains the client secret of the Client. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // A list of Allowed Client Applications in the JWT Claim. // A list of Allowed Client Applications in the JWT Claim. + // +kubebuilder:validation:Optional JwtAllowedClientApplications []*string `json:"jwtAllowedClientApplications,omitempty" tf:"jwt_allowed_client_applications,omitempty"` // A list of Allowed Groups in the JWT Claim. // A list of Allowed Groups in the JWT Claim. + // +kubebuilder:validation:Optional JwtAllowedGroups []*string `json:"jwtAllowedGroups,omitempty" tf:"jwt_allowed_groups,omitempty"` // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. + // +kubebuilder:validation:Optional LoginParameters map[string]*string `json:"loginParameters,omitempty" tf:"login_parameters,omitempty"` // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/ // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. `https://login.microsoftonline.com/v2.0/{tenant-guid}/`. + // +kubebuilder:validation:Optional TenantAuthEndpoint *string `json:"tenantAuthEndpoint,omitempty" tf:"tenant_auth_endpoint,omitempty"` // Should the www-authenticate provider should be omitted from the request? Defaults to false // Should the www-authenticate provider should be omitted from the request? Defaults to `false` + // +kubebuilder:validation:Optional WwwAuthenticationDisabled *bool `json:"wwwAuthenticationDisabled,omitempty" tf:"www_authentication_disabled,omitempty"` } @@ -300,10 +318,12 @@ type AuthSettingsV2AppleV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Apple web application. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Apple Login. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` } @@ -325,6 +345,7 @@ type AuthSettingsV2AzureStaticWebAppV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Static Web App Authentication. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` } @@ -402,22 +423,27 @@ type AuthSettingsV2CustomOidcV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with this Custom OIDC. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The name which should be used for this Storage Account. // The name of the Custom OIDC Authentication Provider. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The name of the claim that contains the users name. // The name of the claim that contains the users name. + // +kubebuilder:validation:Optional NameClaimType *string `json:"nameClaimType,omitempty" tf:"name_claim_type,omitempty"` // The app setting name that contains the client_secret value used for the Custom OIDC Login. // The endpoint that contains all the configuration endpoints for this Custom OIDC provider. + // +kubebuilder:validation:Optional OpenIDConfigurationEndpoint *string `json:"openidConfigurationEndpoint,omitempty" tf:"openid_configuration_endpoint,omitempty"` // The list of the scopes that should be requested while authenticating. // The list of the scopes that should be requested while authenticating. + // +kubebuilder:validation:Optional Scopes []*string `json:"scopes,omitempty" tf:"scopes,omitempty"` } @@ -463,18 +489,22 @@ type AuthSettingsV2FacebookV2Parameters struct { // The App ID of the Facebook app used for login. // The App ID of the Facebook app used for login. + // +kubebuilder:validation:Optional AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The app setting name that contains the app_secret value used for Facebook Login. // The app setting name that contains the `app_secret` value used for Facebook Login. + // +kubebuilder:validation:Optional AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` // The version of the Facebook API to be used while logging in. // The version of the Facebook API to be used while logging in. + // +kubebuilder:validation:Optional GraphAPIVersion *string `json:"graphApiVersion,omitempty" tf:"graph_api_version,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of scopes to be requested as part of Facebook Login authentication. + // +kubebuilder:validation:Optional LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } @@ -512,14 +542,17 @@ type AuthSettingsV2GithubV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the GitHub app used for login. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for GitHub Login. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. + // +kubebuilder:validation:Optional LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } @@ -565,18 +598,22 @@ type AuthSettingsV2GoogleV2Parameters struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. // Specifies a list of Allowed Audiences that will be requested as part of Google Sign-In authentication. + // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Google web application. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Google Login. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of Login scopes that will be requested as part of Google Sign-In authentication. + // +kubebuilder:validation:Optional LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } @@ -678,46 +715,57 @@ type AuthSettingsV2LoginParameters struct { // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. **Note:** URLs within the current domain are always implicitly allowed. + // +kubebuilder:validation:Optional AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` // The method by which cookies expire. Possible values include: FixedTime, and IdentityProviderDerived. Defaults to FixedTime. // The method by which cookies expire. Possible values include: `FixedTime`, and `IdentityProviderDerived`. Defaults to `FixedTime`. + // +kubebuilder:validation:Optional CookieExpirationConvention *string `json:"cookieExpirationConvention,omitempty" tf:"cookie_expiration_convention,omitempty"` // The time after the request is made when the session cookie should expire. Defaults to 08:00:00. // The time after the request is made when the session cookie should expire. Defaults to `08:00:00`. + // +kubebuilder:validation:Optional CookieExpirationTime *string `json:"cookieExpirationTime,omitempty" tf:"cookie_expiration_time,omitempty"` // The endpoint to which logout requests should be made. // The endpoint to which logout requests should be made. + // +kubebuilder:validation:Optional LogoutEndpoint *string `json:"logoutEndpoint,omitempty" tf:"logout_endpoint,omitempty"` // The time after the request is made when the nonce should expire. Defaults to 00:05:00. // The time after the request is made when the nonce should expire. Defaults to `00:05:00`. + // +kubebuilder:validation:Optional NonceExpirationTime *string `json:"nonceExpirationTime,omitempty" tf:"nonce_expiration_time,omitempty"` // Should the fragments from the request be preserved after the login request is made. Defaults to false. // Should the fragments from the request be preserved after the login request is made. Defaults to `false`. + // +kubebuilder:validation:Optional PreserveURLFragmentsForLogins *bool `json:"preserveUrlFragmentsForLogins,omitempty" tf:"preserve_url_fragments_for_logins,omitempty"` // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72 hours. // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to `72` hours. + // +kubebuilder:validation:Optional TokenRefreshExtensionTime *float64 `json:"tokenRefreshExtensionTime,omitempty" tf:"token_refresh_extension_time,omitempty"` // Should the Token Store configuration Enabled. Defaults to false // Should the Token Store configuration Enabled. Defaults to `false` + // +kubebuilder:validation:Optional TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` // The directory path in the App Filesystem in which the tokens will be stored. // The directory path in the App Filesystem in which the tokens will be stored. + // +kubebuilder:validation:Optional TokenStorePath *string `json:"tokenStorePath,omitempty" tf:"token_store_path,omitempty"` // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. + // +kubebuilder:validation:Optional TokenStoreSASSettingName *string `json:"tokenStoreSasSettingName,omitempty" tf:"token_store_sas_setting_name,omitempty"` // Should the nonce be validated while completing the login flow. Defaults to true. // Should the nonce be validated while completing the login flow. Defaults to `true`. + // +kubebuilder:validation:Optional ValidateNonce *bool `json:"validateNonce,omitempty" tf:"validate_nonce,omitempty"` } @@ -763,18 +811,22 @@ type AuthSettingsV2MicrosoftV2Parameters struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. // The OAuth 2.0 client ID that was created for the app used for authentication. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // The list of Login scopes that will be requested as part of Microsoft Account authentication. + // +kubebuilder:validation:Optional LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } @@ -804,10 +856,12 @@ type AuthSettingsV2TwitterV2Parameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + // +kubebuilder:validation:Optional ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. + // +kubebuilder:validation:Optional ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` } @@ -865,22 +919,27 @@ type BackupScheduleParameters struct { // How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and frequency_unit should be set to Day). // How often the backup should be executed (e.g. for weekly backup, this should be set to `7` and `frequency_unit` should be set to `Day`). + // +kubebuilder:validation:Optional FrequencyInterval *float64 `json:"frequencyInterval,omitempty" tf:"frequency_interval,omitempty"` // The unit of time for how often the backup should take place. Possible values include: Day and Hour. // The unit of time for how often the backup should take place. Possible values include: `Day` and `Hour`. + // +kubebuilder:validation:Optional FrequencyUnit *string `json:"frequencyUnit,omitempty" tf:"frequency_unit,omitempty"` // Should the service keep at least one backup, regardless of age of backup. Defaults to false. // Should the service keep at least one backup, regardless of age of backup. Defaults to `false`. + // +kubebuilder:validation:Optional KeepAtLeastOneBackup *bool `json:"keepAtLeastOneBackup,omitempty" tf:"keep_at_least_one_backup,omitempty"` // After how many days backups should be deleted. Defaults to 30. // After how many days backups should be deleted. + // +kubebuilder:validation:Optional RetentionPeriodDays *float64 `json:"retentionPeriodDays,omitempty" tf:"retention_period_days,omitempty"` // When the schedule should start working in RFC-3339 format. // When the schedule should start working in RFC-3339 format. + // +kubebuilder:validation:Optional StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` } @@ -918,10 +977,12 @@ type LinuxFunctionAppSlotAuthSettingsActiveDirectoryParameters struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. // Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Active Directory. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. @@ -931,6 +992,7 @@ type LinuxFunctionAppSlotAuthSettingsActiveDirectoryParameters struct { // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The App Setting name that contains the client secret of the Client. Cannot be used with `client_secret`. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` } @@ -968,6 +1030,7 @@ type LinuxFunctionAppSlotAuthSettingsFacebookParameters struct { // The App ID of the Facebook app used for login. // The App ID of the Facebook app used for login. + // +kubebuilder:validation:Optional AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The App Secret of the Facebook app used for Facebook login. Cannot be specified with app_secret_setting_name. @@ -977,10 +1040,12 @@ type LinuxFunctionAppSlotAuthSettingsFacebookParameters struct { // The app setting name that contains the app_secret value used for Facebook Login. // The app setting name that contains the `app_secret` value used for Facebook Login. Cannot be specified with `app_secret`. + // +kubebuilder:validation:Optional AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, wl.basic is used as the default scope. // Specifies a list of OAuth 2.0 scopes to be requested as part of Facebook Login authentication. + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -1018,6 +1083,7 @@ type LinuxFunctionAppSlotAuthSettingsGoogleParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Google web application. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. @@ -1027,10 +1093,12 @@ type LinuxFunctionAppSlotAuthSettingsGoogleParameters struct { // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Google Login. Cannot be specified with `client_secret`. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, wl.basic is used as the default scope. // Specifies a list of OAuth 2.0 scopes that will be requested as part of Google Sign-In authentication. If not specified, "openid", "profile", and "email" are used as default scopes. + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -1125,6 +1193,7 @@ type LinuxFunctionAppSlotAuthSettingsMicrosoftParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OAuth 2.0 client ID that was created for the app used for authentication. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. @@ -1134,10 +1203,12 @@ type LinuxFunctionAppSlotAuthSettingsMicrosoftParameters struct { // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with `client_secret`. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, wl.basic is used as the default scope. // The list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, `wl.basic` is used as the default scope. + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -1201,57 +1272,72 @@ type LinuxFunctionAppSlotAuthSettingsObservation struct { type LinuxFunctionAppSlotAuthSettingsParameters struct { // an active_directory block as detailed below. + // +kubebuilder:validation:Optional ActiveDirectory []LinuxFunctionAppSlotAuthSettingsActiveDirectoryParameters `json:"activeDirectory,omitempty" tf:"active_directory,omitempty"` // Specifies a map of login Parameters to send to the OpenID Connect authorization endpoint when a user logs in. // Specifies a map of Login Parameters to send to the OpenID Connect authorization endpoint when a user logs in. + // +kubebuilder:validation:Optional AdditionalLoginParameters map[string]*string `json:"additionalLoginParameters,omitempty" tf:"additional_login_parameters,omitempty"` // an allowed_external_redirect_urls block as detailed below. // Specifies a list of External URLs that can be redirected to as part of logging in or logging out of the Windows Web App. + // +kubebuilder:validation:Optional AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` // The default authentication provider to use when multiple providers are configured. Possible values include: AzureActiveDirectory, Facebook, Google, MicrosoftAccount, Twitter, Github. // The default authentication provider to use when multiple providers are configured. Possible values include: `AzureActiveDirectory`, `Facebook`, `Google`, `MicrosoftAccount`, `Twitter`, `Github`. + // +kubebuilder:validation:Optional DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` // Should the Authentication / Authorization feature be enabled? // Should the Authentication / Authorization feature be enabled? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // a facebook block as detailed below. + // +kubebuilder:validation:Optional Facebook []LinuxFunctionAppSlotAuthSettingsFacebookParameters `json:"facebook,omitempty" tf:"facebook,omitempty"` // a github block as detailed below. + // +kubebuilder:validation:Optional Github []AuthSettingsGithubParameters `json:"github,omitempty" tf:"github,omitempty"` // a google block as detailed below. + // +kubebuilder:validation:Optional Google []LinuxFunctionAppSlotAuthSettingsGoogleParameters `json:"google,omitempty" tf:"google,omitempty"` // The OpenID Connect Issuer URI that represents the entity which issues access tokens. // The OpenID Connect Issuer URI that represents the entity which issues access tokens. + // +kubebuilder:validation:Optional Issuer *string `json:"issuer,omitempty" tf:"issuer,omitempty"` // a microsoft block as detailed below. + // +kubebuilder:validation:Optional Microsoft []LinuxFunctionAppSlotAuthSettingsMicrosoftParameters `json:"microsoft,omitempty" tf:"microsoft,omitempty"` // The RuntimeVersion of the Authentication / Authorization feature in use. // The RuntimeVersion of the Authentication / Authorization feature in use. + // +kubebuilder:validation:Optional RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72 hours. // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to `72` hours. + // +kubebuilder:validation:Optional TokenRefreshExtensionHours *float64 `json:"tokenRefreshExtensionHours,omitempty" tf:"token_refresh_extension_hours,omitempty"` // Should the Linux Web App durably store platform-specific security tokens that are obtained during login flows? Defaults to false. // Should the Windows Web App durably store platform-specific security tokens that are obtained during login flows? Defaults to `false`. + // +kubebuilder:validation:Optional TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` // a twitter block as detailed below. + // +kubebuilder:validation:Optional Twitter []LinuxFunctionAppSlotAuthSettingsTwitterParameters `json:"twitter,omitempty" tf:"twitter,omitempty"` // The action to take when an unauthenticated client attempts to access the app. Possible values include: RedirectToLoginPage, AllowAnonymous. // The action to take when an unauthenticated client attempts to access the app. Possible values include: `RedirectToLoginPage`, `AllowAnonymous`. + // +kubebuilder:validation:Optional UnauthenticatedClientAction *string `json:"unauthenticatedClientAction,omitempty" tf:"unauthenticated_client_action,omitempty"` } @@ -1281,6 +1367,7 @@ type LinuxFunctionAppSlotAuthSettingsTwitterParameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + // +kubebuilder:validation:Optional ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with consumer_secret_setting_name. @@ -1290,6 +1377,7 @@ type LinuxFunctionAppSlotAuthSettingsTwitterParameters struct { // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret`. + // +kubebuilder:validation:Optional ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` } @@ -1458,81 +1546,103 @@ type LinuxFunctionAppSlotAuthSettingsV2Observation struct { type LinuxFunctionAppSlotAuthSettingsV2Parameters struct { // An active_directory_v2 block as defined below. + // +kubebuilder:validation:Optional ActiveDirectoryV2 []AuthSettingsV2ActiveDirectoryV2Parameters `json:"activeDirectoryV2,omitempty" tf:"active_directory_v2,omitempty"` // An apple_v2 block as defined below. + // +kubebuilder:validation:Optional AppleV2 []AuthSettingsV2AppleV2Parameters `json:"appleV2,omitempty" tf:"apple_v2,omitempty"` // Should the AuthV2 Settings be enabled. Defaults to false. // Should the AuthV2 Settings be enabled. Defaults to `false` + // +kubebuilder:validation:Optional AuthEnabled *bool `json:"authEnabled,omitempty" tf:"auth_enabled,omitempty"` // An azure_static_web_app_v2 block as defined below. + // +kubebuilder:validation:Optional AzureStaticWebAppV2 []AuthSettingsV2AzureStaticWebAppV2Parameters `json:"azureStaticWebAppV2,omitempty" tf:"azure_static_web_app_v2,omitempty"` // The path to the App Auth settings. // The path to the App Auth settings. **Note:** Relative Paths are evaluated from the Site Root directory. + // +kubebuilder:validation:Optional ConfigFilePath *string `json:"configFilePath,omitempty" tf:"config_file_path,omitempty"` // Zero or more custom_oidc_v2 blocks as defined below. + // +kubebuilder:validation:Optional CustomOidcV2 []AuthSettingsV2CustomOidcV2Parameters `json:"customOidcV2,omitempty" tf:"custom_oidc_v2,omitempty"` // The Default Authentication Provider to use when more than one Authentication Provider is configured and the unauthenticated_action is set to RedirectToLoginPage. // The Default Authentication Provider to use when the `unauthenticated_action` is set to `RedirectToLoginPage`. + // +kubebuilder:validation:Optional DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` // The paths which should be excluded from the unauthenticated_action when it is set to RedirectToLoginPage. // The paths which should be excluded from the `unauthenticated_action` when it is set to `RedirectToLoginPage`. + // +kubebuilder:validation:Optional ExcludedPaths []*string `json:"excludedPaths,omitempty" tf:"excluded_paths,omitempty"` // A facebook_v2 block as defined below. + // +kubebuilder:validation:Optional FacebookV2 []AuthSettingsV2FacebookV2Parameters `json:"facebookV2,omitempty" tf:"facebook_v2,omitempty"` // The convention used to determine the url of the request made. Possible values include ForwardProxyConventionNoProxy, ForwardProxyConventionStandard, ForwardProxyConventionCustom. Defaults to ForwardProxyConventionNoProxy. // The convention used to determine the url of the request made. Possible values include `ForwardProxyConventionNoProxy`, `ForwardProxyConventionStandard`, `ForwardProxyConventionCustom`. Defaults to `ForwardProxyConventionNoProxy` + // +kubebuilder:validation:Optional ForwardProxyConvention *string `json:"forwardProxyConvention,omitempty" tf:"forward_proxy_convention,omitempty"` // The name of the custom header containing the host of the request. // The name of the header containing the host of the request. + // +kubebuilder:validation:Optional ForwardProxyCustomHostHeaderName *string `json:"forwardProxyCustomHostHeaderName,omitempty" tf:"forward_proxy_custom_host_header_name,omitempty"` // The name of the custom header containing the scheme of the request. // The name of the header containing the scheme of the request. + // +kubebuilder:validation:Optional ForwardProxyCustomSchemeHeaderName *string `json:"forwardProxyCustomSchemeHeaderName,omitempty" tf:"forward_proxy_custom_scheme_header_name,omitempty"` // A github_v2 block as defined below. + // +kubebuilder:validation:Optional GithubV2 []AuthSettingsV2GithubV2Parameters `json:"githubV2,omitempty" tf:"github_v2,omitempty"` // A google_v2 block as defined below. + // +kubebuilder:validation:Optional GoogleV2 []AuthSettingsV2GoogleV2Parameters `json:"googleV2,omitempty" tf:"google_v2,omitempty"` // The prefix that should precede all the authentication and authorisation paths. Defaults to /.auth. // The prefix that should precede all the authentication and authorisation paths. Defaults to `/.auth` + // +kubebuilder:validation:Optional HTTPRouteAPIPrefix *string `json:"httpRouteApiPrefix,omitempty" tf:"http_route_api_prefix,omitempty"` // A login block as defined below. + // +kubebuilder:validation:Optional Login []AuthSettingsV2LoginParameters `json:"login,omitempty" tf:"login,omitempty"` // A microsoft_v2 block as defined below. + // +kubebuilder:validation:Optional MicrosoftV2 []AuthSettingsV2MicrosoftV2Parameters `json:"microsoftV2,omitempty" tf:"microsoft_v2,omitempty"` // Should the authentication flow be used for all requests. // Should the authentication flow be used for all requests. + // +kubebuilder:validation:Optional RequireAuthentication *bool `json:"requireAuthentication,omitempty" tf:"require_authentication,omitempty"` // Should HTTPS be required on connections? Defaults to true. // Should HTTPS be required on connections? Defaults to true. + // +kubebuilder:validation:Optional RequireHTTPS *bool `json:"requireHttps,omitempty" tf:"require_https,omitempty"` // The Runtime Version of the Authentication and Authorisation feature of this App. Defaults to ~1. // The Runtime Version of the Authentication and Authorisation feature of this App. Defaults to `~1` + // +kubebuilder:validation:Optional RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` // A twitter_v2 block as defined below. + // +kubebuilder:validation:Optional TwitterV2 []AuthSettingsV2TwitterV2Parameters `json:"twitterV2,omitempty" tf:"twitter_v2,omitempty"` // The action to take for requests made without authentication. Possible values include RedirectToLoginPage, AllowAnonymous, Return401, and Return403. Defaults to RedirectToLoginPage. // The action to take for requests made without authentication. Possible values include `RedirectToLoginPage`, `AllowAnonymous`, `Return401`, and `Return403`. Defaults to `RedirectToLoginPage`. + // +kubebuilder:validation:Optional UnauthenticatedAction *string `json:"unauthenticatedAction,omitempty" tf:"unauthenticated_action,omitempty"` } @@ -1568,13 +1678,16 @@ type LinuxFunctionAppSlotBackupParameters struct { // Should this backup job be enabled? Defaults to true. // Should this backup job be enabled? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The name which should be used for this Backup. // The name which should be used for this Backup. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // a schedule block as detailed below. + // +kubebuilder:validation:Optional Schedule []BackupScheduleParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` // The SAS URL to the container. @@ -1609,10 +1722,12 @@ type LinuxFunctionAppSlotConnectionStringParameters struct { // The name which should be used for this Connection. // The name which should be used for this Connection. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of database. Possible values include: APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, PostgreSQL, RedisCache, ServiceBus, SQLAzure, and SQLServer. // Type of database. Possible values include: `MySQL`, `SQLServer`, `SQLAzure`, `Custom`, `NotificationHub`, `ServiceBus`, `EventHub`, `APIHub`, `DocDb`, `RedisCache`, and `PostgreSQL`. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // The connection string value. @@ -1648,9 +1763,11 @@ type LinuxFunctionAppSlotIdentityObservation struct { type LinuxFunctionAppSlotIdentityParameters struct { // A list of User Assigned Managed Identity IDs to be assigned to this Linux Function App Slot. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Linux Function App Slot. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -1857,46 +1974,58 @@ type LinuxFunctionAppSlotParameters struct { // A map of key-value pairs for App Settings and custom values. // A map of key-value pairs for [App Settings](https://docs.microsoft.com/en-us/azure/azure-functions/functions-app-settings) and custom values. + // +kubebuilder:validation:Optional AppSettings map[string]*string `json:"appSettings,omitempty" tf:"app_settings,omitempty"` // an auth_settings block as detailed below. + // +kubebuilder:validation:Optional AuthSettings []LinuxFunctionAppSlotAuthSettingsParameters `json:"authSettings,omitempty" tf:"auth_settings,omitempty"` // an auth_settings_v2 block as detailed below. + // +kubebuilder:validation:Optional AuthSettingsV2 []LinuxFunctionAppSlotAuthSettingsV2Parameters `json:"authSettingsV2,omitempty" tf:"auth_settings_v2,omitempty"` // a backup block as detailed below. + // +kubebuilder:validation:Optional Backup []LinuxFunctionAppSlotBackupParameters `json:"backup,omitempty" tf:"backup,omitempty"` // Should built in logging be enabled. Configures AzureWebJobsDashboard app setting based on the configured storage setting. Defaults to true. // Should built in logging be enabled. Configures `AzureWebJobsDashboard` app setting based on the configured storage setting. + // +kubebuilder:validation:Optional BuiltinLoggingEnabled *bool `json:"builtinLoggingEnabled,omitempty" tf:"builtin_logging_enabled,omitempty"` // Should the Function App Slot use Client Certificates. // Should the Function App Slot use Client Certificates. + // +kubebuilder:validation:Optional ClientCertificateEnabled *bool `json:"clientCertificateEnabled,omitempty" tf:"client_certificate_enabled,omitempty"` // Paths to exclude when using client certificates, separated by ; // Paths to exclude when using client certificates, separated by ; + // +kubebuilder:validation:Optional ClientCertificateExclusionPaths *string `json:"clientCertificateExclusionPaths,omitempty" tf:"client_certificate_exclusion_paths,omitempty"` // The mode of the Function App Slot's client certificates requirement for incoming requests. Possible values are Required, Optional, and OptionalInteractiveUser. // The mode of the Function App Slot's client certificates requirement for incoming requests. Possible values are `Required`, `Optional`, and `OptionalInteractiveUser`. + // +kubebuilder:validation:Optional ClientCertificateMode *string `json:"clientCertificateMode,omitempty" tf:"client_certificate_mode,omitempty"` // a connection_string block as detailed below. + // +kubebuilder:validation:Optional ConnectionString []LinuxFunctionAppSlotConnectionStringParameters `json:"connectionString,omitempty" tf:"connection_string,omitempty"` // Force disable the content share settings. // Force disable the content share settings. + // +kubebuilder:validation:Optional ContentShareForceDisabled *bool `json:"contentShareForceDisabled,omitempty" tf:"content_share_force_disabled,omitempty"` // The amount of memory in gigabyte-seconds that your application is allowed to consume per day. Setting this value only affects function apps in Consumption Plans. Defaults to 0. // The amount of memory in gigabyte-seconds that your application is allowed to consume per day. Setting this value only affects function apps in Consumption Plans. + // +kubebuilder:validation:Optional DailyMemoryTimeQuota *float64 `json:"dailyMemoryTimeQuota,omitempty" tf:"daily_memory_time_quota,omitempty"` // Is the Linux Function App Slot enabled. Defaults to true. // Is the Linux Function App Slot enabled. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The ID of the Linux Function App this Slot is a member of. Changing this forces a new resource to be created. @@ -1916,26 +2045,33 @@ type LinuxFunctionAppSlotParameters struct { // The runtime version associated with the Function App Slot. Defaults to ~4. // The runtime version associated with the Function App Slot. + // +kubebuilder:validation:Optional FunctionsExtensionVersion *string `json:"functionsExtensionVersion,omitempty" tf:"functions_extension_version,omitempty"` // Can the Function App Slot only be accessed via HTTPS? // Can the Function App Slot only be accessed via HTTPS? + // +kubebuilder:validation:Optional HTTPSOnly *bool `json:"httpsOnly,omitempty" tf:"https_only,omitempty"` // An identity block as detailed below. + // +kubebuilder:validation:Optional Identity []LinuxFunctionAppSlotIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // The User Assigned Identity ID used for accessing KeyVault secrets. The identity must be assigned to the application in the identity block. For more information see - Access vaults with a user-assigned identity // The User Assigned Identity to use for Key Vault access. + // +kubebuilder:validation:Optional KeyVaultReferenceIdentityID *string `json:"keyVaultReferenceIdentityId,omitempty" tf:"key_vault_reference_identity_id,omitempty"` // The ID of the Service Plan in which to run this slot. If not specified the same Service Plan as the Linux Function App will be used. + // +kubebuilder:validation:Optional ServicePlanID *string `json:"servicePlanId,omitempty" tf:"service_plan_id,omitempty"` // a site_config block as detailed below. + // +kubebuilder:validation:Optional SiteConfig []LinuxFunctionAppSlotSiteConfigParameters `json:"siteConfig,omitempty" tf:"site_config,omitempty"` // One or more storage_account blocks as defined below. + // +kubebuilder:validation:Optional StorageAccount []LinuxFunctionAppSlotStorageAccountParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` // The access key which will be used to access the storage account for the Function App Slot. @@ -1959,13 +2095,16 @@ type LinuxFunctionAppSlotParameters struct { // The Key Vault Secret ID, optionally including version, that contains the Connection String to connect to the storage account for this Function App. // The Key Vault Secret ID, including version, that contains the Connection String to connect to the storage account for this Function App. + // +kubebuilder:validation:Optional StorageKeyVaultSecretID *string `json:"storageKeyVaultSecretId,omitempty" tf:"storage_key_vault_secret_id,omitempty"` // Should the Function App Slot use its Managed Identity to access storage. // Should the Function App Slot use its Managed Identity to access storage? + // +kubebuilder:validation:Optional StorageUsesManagedIdentity *bool `json:"storageUsesManagedIdentity,omitempty" tf:"storage_uses_managed_identity,omitempty"` // A mapping of tags which should be assigned to the Linux Function App. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The subnet id which will be used by this Function App Slot for regional virtual network integration. @@ -2009,10 +2148,12 @@ type LinuxFunctionAppSlotSiteConfigCorsParameters struct { // an allowed_origins block as detailed below. // Specifies a list of origins that should be allowed to make cross-origin calls. + // +kubebuilder:validation:Optional AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` // Are credentials allowed in CORS requests? Defaults to false. // Are credentials allowed in CORS requests? Defaults to `false`. + // +kubebuilder:validation:Optional SupportCredentials *bool `json:"supportCredentials,omitempty" tf:"support_credentials,omitempty"` } @@ -2049,15 +2190,19 @@ type LinuxFunctionAppSlotSiteConfigIPRestrictionHeadersObservation struct { type LinuxFunctionAppSlotSiteConfigIPRestrictionHeadersParameters struct { // Specifies a list of Azure Front Door IDs. + // +kubebuilder:validation:Optional XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` // Specifies if a Front Door Health Probe should be expected. The only possible value is 1. + // +kubebuilder:validation:Optional XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` // Specifies a list of addresses for which matching should be applied. Omitting this value means allow any. + // +kubebuilder:validation:Optional XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` // Specifies a list of Hosts for which matching should be applied. + // +kubebuilder:validation:Optional XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } @@ -2121,25 +2266,31 @@ type LinuxFunctionAppSlotSiteConfigIPRestrictionParameters struct { // The action to take. Possible values are Allow or Deny. // The action to take. Possible values are `Allow` or `Deny`. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // a headers block as detailed below. + // +kubebuilder:validation:Optional Headers []LinuxFunctionAppSlotSiteConfigIPRestrictionHeadersParameters `json:"headers,omitempty" tf:"headers,omitempty"` // The CIDR notation of the IP or IP Range to match. For example: 10.0.0.0/24 or 192.168.10.1/32 // The CIDR notation of the IP or IP Range to match. For example: `10.0.0.0/24` or `192.168.10.1/32` or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22` + // +kubebuilder:validation:Optional IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` // The name which should be used for this Storage Account. // The name which should be used for this `ip_restriction`. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The priority value of this ip_restriction. Defaults to 65000. // The priority value of this `ip_restriction`. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // The Service Tag used for this IP Restriction. // The Service Tag used for this IP Restriction. + // +kubebuilder:validation:Optional ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag,omitempty"` // The subnet id which will be used by this Function App Slot for regional virtual network integration. @@ -2424,25 +2575,31 @@ type LinuxFunctionAppSlotSiteConfigParameters struct { // The URL of the API definition that describes this Linux Function App. // The URL of the API definition that describes this Linux Function App. + // +kubebuilder:validation:Optional APIDefinitionURL *string `json:"apiDefinitionUrl,omitempty" tf:"api_definition_url,omitempty"` // The ID of the API Management API for this Linux Function App. // The ID of the API Management API for this Linux Function App. + // +kubebuilder:validation:Optional APIManagementAPIID *string `json:"apiManagementApiId,omitempty" tf:"api_management_api_id,omitempty"` // If this Linux Web App is Always On enabled. Defaults to false. // If this Linux Web App is Always On enabled. Defaults to `false`. + // +kubebuilder:validation:Optional AlwaysOn *bool `json:"alwaysOn,omitempty" tf:"always_on,omitempty"` // The program and any arguments used to launch this app via the command line. (Example node myapp.js). // The program and any arguments used to launch this app via the command line. (Example `node myapp.js`). + // +kubebuilder:validation:Optional AppCommandLine *string `json:"appCommandLine,omitempty" tf:"app_command_line,omitempty"` // The number of workers this function app can scale out to. Only applicable to apps on the Consumption and Premium plan. // The number of workers this function app can scale out to. Only applicable to apps on the Consumption and Premium plan. + // +kubebuilder:validation:Optional AppScaleLimit *float64 `json:"appScaleLimit,omitempty" tf:"app_scale_limit,omitempty"` // an app_service_logs block as detailed below. + // +kubebuilder:validation:Optional AppServiceLogs []SiteConfigAppServiceLogsParameters `json:"appServiceLogs,omitempty" tf:"app_service_logs,omitempty"` // The Connection String for linking the Linux Function App to Application Insights. @@ -2456,102 +2613,128 @@ type LinuxFunctionAppSlotSiteConfigParameters struct { ApplicationInsightsKeySecretRef *v1.SecretKeySelector `json:"applicationInsightsKeySecretRef,omitempty" tf:"-"` // an application_stack block as detailed below. + // +kubebuilder:validation:Optional ApplicationStack []SiteConfigApplicationStackParameters `json:"applicationStack,omitempty" tf:"application_stack,omitempty"` // The name of the slot to automatically swap with when this slot is successfully deployed. + // +kubebuilder:validation:Optional AutoSwapSlotName *string `json:"autoSwapSlotName,omitempty" tf:"auto_swap_slot_name,omitempty"` // The Client ID of the Managed Service Identity to use for connections to the Azure Container Registry. // The Client ID of the Managed Service Identity to use for connections to the Azure Container Registry. + // +kubebuilder:validation:Optional ContainerRegistryManagedIdentityClientID *string `json:"containerRegistryManagedIdentityClientId,omitempty" tf:"container_registry_managed_identity_client_id,omitempty"` // Should connections for Azure Container Registry use Managed Identity. // Should connections for Azure Container Registry use Managed Identity. + // +kubebuilder:validation:Optional ContainerRegistryUseManagedIdentity *bool `json:"containerRegistryUseManagedIdentity,omitempty" tf:"container_registry_use_managed_identity,omitempty"` // a cors block as detailed below. + // +kubebuilder:validation:Optional Cors []LinuxFunctionAppSlotSiteConfigCorsParameters `json:"cors,omitempty" tf:"cors,omitempty"` // a default_documents block as detailed below. // Specifies a list of Default Documents for the Linux Web App. + // +kubebuilder:validation:Optional DefaultDocuments []*string `json:"defaultDocuments,omitempty" tf:"default_documents,omitempty"` // The number of minimum instances for this Linux Function App. Only affects apps on Elastic Premium plans. // The number of minimum instances for this Linux Function App. Only affects apps on Elastic Premium plans. + // +kubebuilder:validation:Optional ElasticInstanceMinimum *float64 `json:"elasticInstanceMinimum,omitempty" tf:"elastic_instance_minimum,omitempty"` // State of FTP / FTPS service for this function app. Possible values include: AllAllowed, FtpsOnly and Disabled. Defaults to Disabled. // State of FTP / FTPS service for this function app. Possible values include: `AllAllowed`, `FtpsOnly` and `Disabled`. Defaults to `Disabled`. + // +kubebuilder:validation:Optional FtpsState *string `json:"ftpsState,omitempty" tf:"ftps_state,omitempty"` // The amount of time in minutes that a node is unhealthy before being removed from the load balancer. Possible values are between 2 and 10. Defaults to 10. Only valid in conjunction with health_check_path // The amount of time in minutes that a node is unhealthy before being removed from the load balancer. Possible values are between `2` and `10`. Defaults to `10`. Only valid in conjunction with `health_check_path` + // +kubebuilder:validation:Optional HealthCheckEvictionTimeInMin *float64 `json:"healthCheckEvictionTimeInMin,omitempty" tf:"health_check_eviction_time_in_min,omitempty"` // The path to be checked for this function app health. // The path to be checked for this function app health. + // +kubebuilder:validation:Optional HealthCheckPath *string `json:"healthCheckPath,omitempty" tf:"health_check_path,omitempty"` // Specifies if the HTTP2 protocol should be enabled. Defaults to false. // Specifies if the http2 protocol should be enabled. Defaults to `false`. + // +kubebuilder:validation:Optional Http2Enabled *bool `json:"http2Enabled,omitempty" tf:"http2_enabled,omitempty"` // an ip_restriction block as detailed below. + // +kubebuilder:validation:Optional IPRestriction []LinuxFunctionAppSlotSiteConfigIPRestrictionParameters `json:"ipRestriction,omitempty" tf:"ip_restriction,omitempty"` // The Site load balancing mode. Possible values include: WeightedRoundRobin, LeastRequests, LeastResponseTime, WeightedTotalTraffic, RequestHash, PerSiteRoundRobin. Defaults to LeastRequests if omitted. // The Site load balancing mode. Possible values include: `WeightedRoundRobin`, `LeastRequests`, `LeastResponseTime`, `WeightedTotalTraffic`, `RequestHash`, `PerSiteRoundRobin`. Defaults to `LeastRequests` if omitted. + // +kubebuilder:validation:Optional LoadBalancingMode *string `json:"loadBalancingMode,omitempty" tf:"load_balancing_mode,omitempty"` // The Managed Pipeline mode. Possible values include: Integrated, Classic. Defaults to Integrated. // The Managed Pipeline mode. Possible values include: `Integrated`, `Classic`. Defaults to `Integrated`. + // +kubebuilder:validation:Optional ManagedPipelineMode *string `json:"managedPipelineMode,omitempty" tf:"managed_pipeline_mode,omitempty"` // The configures the minimum version of TLS required for SSL requests. Possible values include: 1.0, 1.1, and 1.2. Defaults to 1.2. // The configures the minimum version of TLS required for SSL requests. Possible values include: `1.0`, `1.1`, and `1.2`. Defaults to `1.2`. + // +kubebuilder:validation:Optional MinimumTLSVersion *string `json:"minimumTlsVersion,omitempty" tf:"minimum_tls_version,omitempty"` // The number of pre-warmed instances for this function app. Only affects apps on an Elastic Premium plan. // The number of pre-warmed instances for this function app. Only affects apps on an Elastic Premium plan. + // +kubebuilder:validation:Optional PreWarmedInstanceCount *float64 `json:"preWarmedInstanceCount,omitempty" tf:"pre_warmed_instance_count,omitempty"` // Should Remote Debugging be enabled. Defaults to false. // Should Remote Debugging be enabled. Defaults to `false`. + // +kubebuilder:validation:Optional RemoteDebuggingEnabled *bool `json:"remoteDebuggingEnabled,omitempty" tf:"remote_debugging_enabled,omitempty"` // The Remote Debugging Version. Possible values include VS2017, VS2019, and VS2022 // The Remote Debugging Version. Possible values include `VS2017`, `VS2019`, and `VS2022` + // +kubebuilder:validation:Optional RemoteDebuggingVersion *string `json:"remoteDebuggingVersion,omitempty" tf:"remote_debugging_version,omitempty"` // Should Functions Runtime Scale Monitoring be enabled. // Should Functions Runtime Scale Monitoring be enabled. + // +kubebuilder:validation:Optional RuntimeScaleMonitoringEnabled *bool `json:"runtimeScaleMonitoringEnabled,omitempty" tf:"runtime_scale_monitoring_enabled,omitempty"` // a scm_ip_restriction block as detailed below. + // +kubebuilder:validation:Optional ScmIPRestriction []LinuxFunctionAppSlotSiteConfigScmIPRestrictionParameters `json:"scmIpRestriction,omitempty" tf:"scm_ip_restriction,omitempty"` // Configures the minimum version of TLS required for SSL requests to the SCM site Possible values include: 1.0, 1.1, and 1.2. Defaults to 1.2. // Configures the minimum version of TLS required for SSL requests to the SCM site Possible values include: `1.0`, `1.1`, and `1.2`. Defaults to `1.2`. + // +kubebuilder:validation:Optional ScmMinimumTLSVersion *string `json:"scmMinimumTlsVersion,omitempty" tf:"scm_minimum_tls_version,omitempty"` // Should the Linux Function App ip_restriction configuration be used for the SCM also. // Should the Linux Function App `ip_restriction` configuration be used for the SCM also. + // +kubebuilder:validation:Optional ScmUseMainIPRestriction *bool `json:"scmUseMainIpRestriction,omitempty" tf:"scm_use_main_ip_restriction,omitempty"` // Should the Linux Web App use a 32-bit worker. // Should the Linux Web App use a 32-bit worker. + // +kubebuilder:validation:Optional Use32BitWorker *bool `json:"use32BitWorker,omitempty" tf:"use_32_bit_worker,omitempty"` // Should all outbound traffic to have NAT Gateways, Network Security Groups and User Defined Routes applied? Defaults to false. // Should all outbound traffic to have Virtual Network Security Groups and User Defined Routes applied? Defaults to `false`. + // +kubebuilder:validation:Optional VnetRouteAllEnabled *bool `json:"vnetRouteAllEnabled,omitempty" tf:"vnet_route_all_enabled,omitempty"` // Should Web Sockets be enabled. Defaults to false. // Should Web Sockets be enabled. Defaults to `false`. + // +kubebuilder:validation:Optional WebsocketsEnabled *bool `json:"websocketsEnabled,omitempty" tf:"websockets_enabled,omitempty"` // The number of Workers for this Linux Function App. // The number of Workers for this Linux Function App. + // +kubebuilder:validation:Optional WorkerCount *float64 `json:"workerCount,omitempty" tf:"worker_count,omitempty"` } @@ -2588,15 +2771,19 @@ type LinuxFunctionAppSlotSiteConfigScmIPRestrictionHeadersObservation struct { type LinuxFunctionAppSlotSiteConfigScmIPRestrictionHeadersParameters struct { // Specifies a list of Azure Front Door IDs. + // +kubebuilder:validation:Optional XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` // Specifies if a Front Door Health Probe should be expected. The only possible value is 1. + // +kubebuilder:validation:Optional XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` // Specifies a list of addresses for which matching should be applied. Omitting this value means allow any. + // +kubebuilder:validation:Optional XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` // Specifies a list of Hosts for which matching should be applied. + // +kubebuilder:validation:Optional XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } @@ -2660,25 +2847,31 @@ type LinuxFunctionAppSlotSiteConfigScmIPRestrictionParameters struct { // The action to take. Possible values are Allow or Deny. // The action to take. Possible values are `Allow` or `Deny`. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // a headers block as detailed below. + // +kubebuilder:validation:Optional Headers []LinuxFunctionAppSlotSiteConfigScmIPRestrictionHeadersParameters `json:"headers,omitempty" tf:"headers,omitempty"` // The CIDR notation of the IP or IP Range to match. For example: 10.0.0.0/24 or 192.168.10.1/32 // The CIDR notation of the IP or IP Range to match. For example: `10.0.0.0/24` or `192.168.10.1/32` or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22` + // +kubebuilder:validation:Optional IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` // The name which should be used for this Storage Account. // The name which should be used for this `ip_restriction`. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The priority value of this ip_restriction. Defaults to 65000. // The priority value of this `ip_restriction`. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // The Service Tag used for this IP Restriction. // The Service Tag used for this IP Restriction. + // +kubebuilder:validation:Optional ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag,omitempty"` // The subnet id which will be used by this Function App Slot for regional virtual network integration. @@ -2755,18 +2948,23 @@ type LinuxFunctionAppSlotStorageAccountParameters struct { AccessKeySecretRef v1.SecretKeySelector `json:"accessKeySecretRef" tf:"-"` // The Name of the Storage Account. + // +kubebuilder:validation:Optional AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` // The path at which to mount the storage share. + // +kubebuilder:validation:Optional MountPath *string `json:"mountPath,omitempty" tf:"mount_path,omitempty"` // The name which should be used for this Storage Account. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Name of the File Share or Container Name for Blob storage. + // +kubebuilder:validation:Optional ShareName *string `json:"shareName,omitempty" tf:"share_name,omitempty"` // The Azure Storage Type. Possible values include AzureFiles and AzureBlob. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -2796,10 +2994,12 @@ type SiteConfigAppServiceLogsParameters struct { // The amount of disk space to use for logs. Valid values are between 25 and 100. Defaults to 35. // The amount of disk space to use for logs. Valid values are between `25` and `100`. + // +kubebuilder:validation:Optional DiskQuotaMb *float64 `json:"diskQuotaMb,omitempty" tf:"disk_quota_mb,omitempty"` // After how many days backups should be deleted. Defaults to 30. // The retention period for logs in days. Valid values are between `0` and `99999`. Defaults to `0` (never delete). + // +kubebuilder:validation:Optional RetentionPeriodDays *float64 `json:"retentionPeriodDays,omitempty" tf:"retention_period_days,omitempty"` } @@ -2875,33 +3075,41 @@ type SiteConfigApplicationStackParameters struct { // a docker block as detailed below. // A docker block + // +kubebuilder:validation:Optional Docker []ApplicationStackDockerParameters `json:"docker,omitempty" tf:"docker,omitempty"` // The version of .Net. Possible values are 3.1, 6.0 and 7.0. // The version of .Net. Possible values are `3.1`, `6.0` and `7.0` + // +kubebuilder:validation:Optional DotnetVersion *string `json:"dotnetVersion,omitempty" tf:"dotnet_version,omitempty"` // The version of Java to use. Possible values are 8, 11 & 17 (In-Preview). // The version of Java to use. Possible values are `8`, `11`, and `17` + // +kubebuilder:validation:Optional JavaVersion *string `json:"javaVersion,omitempty" tf:"java_version,omitempty"` // The version of Node to use. Possible values include 12, 14, 16 and 18 // The version of Node to use. Possible values include `12`, `14`, `16` and `18` + // +kubebuilder:validation:Optional NodeVersion *string `json:"nodeVersion,omitempty" tf:"node_version,omitempty"` // The version of PowerShell Core to use. Possibles values are 7 , and 7.2. // The version of PowerShell Core to use. Possibles values are `7`, and `7.2` + // +kubebuilder:validation:Optional PowershellCoreVersion *string `json:"powershellCoreVersion,omitempty" tf:"powershell_core_version,omitempty"` // The version of Python to use. Possible values are 3.10, 3.9, 3.8 and 3.7. // The version of Python to use. Possible values include `3.10`, `3.9`, `3.8`, and `3.7`. + // +kubebuilder:validation:Optional PythonVersion *string `json:"pythonVersion,omitempty" tf:"python_version,omitempty"` // Should the Linux Function App use a custom runtime? + // +kubebuilder:validation:Optional UseCustomRuntime *bool `json:"useCustomRuntime,omitempty" tf:"use_custom_runtime,omitempty"` // Should the DotNet process use an isolated runtime. Defaults to false. // Should the DotNet process use an isolated runtime. Defaults to `false`. + // +kubebuilder:validation:Optional UseDotnetIsolatedRuntime *bool `json:"useDotnetIsolatedRuntime,omitempty" tf:"use_dotnet_isolated_runtime,omitempty"` } diff --git a/apis/web/v1beta1/zz_linuxwebapp_types.go b/apis/web/v1beta1/zz_linuxwebapp_types.go index bbd178ac4..4fd3e8246 100755 --- a/apis/web/v1beta1/zz_linuxwebapp_types.go +++ b/apis/web/v1beta1/zz_linuxwebapp_types.go @@ -34,9 +34,11 @@ type ActionObservation struct { type ActionParameters struct { // Predefined action to be taken to an Auto Heal trigger. Possible values include: Recycle. + // +kubebuilder:validation:Optional ActionType *string `json:"actionType,omitempty" tf:"action_type,omitempty"` // The minimum amount of time in hh:mm:ss the Linux Web App must have been running before the defined action will be run in the event of a trigger. + // +kubebuilder:validation:Optional MinimumProcessExecutionTime *string `json:"minimumProcessExecutionTime,omitempty" tf:"minimum_process_execution_time,omitempty"` } @@ -61,9 +63,11 @@ type ApplicationLogsObservation struct { type ApplicationLogsParameters struct { // A azure_blob_storage_http block as defined below. + // +kubebuilder:validation:Optional AzureBlobStorage []AzureBlobStorageParameters `json:"azureBlobStorage,omitempty" tf:"azure_blob_storage,omitempty"` // Log level. Possible values include: Verbose, Information, Warning, and Error. + // +kubebuilder:validation:Optional FileSystemLevel *string `json:"fileSystemLevel,omitempty" tf:"file_system_level,omitempty"` } @@ -88,9 +92,11 @@ type AutoHealSettingObservation struct { type AutoHealSettingParameters struct { // The action to take. Possible values are Allow or Deny. + // +kubebuilder:validation:Optional Action []ActionParameters `json:"action,omitempty" tf:"action,omitempty"` // A trigger block as defined below. + // +kubebuilder:validation:Optional Trigger []TriggerParameters `json:"trigger,omitempty" tf:"trigger,omitempty"` } @@ -121,12 +127,15 @@ type AzureBlobStorageObservation struct { type AzureBlobStorageParameters struct { // The level at which to log. Possible values include Error, Warning, Information, Verbose and Off. NOTE: this field is not available for http_logs + // +kubebuilder:validation:Optional Level *string `json:"level,omitempty" tf:"level,omitempty"` // The retention period in days. A value of 0 means no retention. + // +kubebuilder:validation:Optional RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` // SAS url to an Azure blob container with read/write/list/delete permissions. + // +kubebuilder:validation:Optional SASURL *string `json:"sasUrl,omitempty" tf:"sas_url,omitempty"` } @@ -151,9 +160,11 @@ type FileSystemObservation struct { type FileSystemParameters struct { // The retention period in days. A value of 0 means no retention. + // +kubebuilder:validation:Optional RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` // The maximum size in megabytes that log files can use. + // +kubebuilder:validation:Optional RetentionInMb *float64 `json:"retentionInMb,omitempty" tf:"retention_in_mb,omitempty"` } @@ -172,6 +183,7 @@ type HTTPLogsAzureBlobStorageObservation struct { type HTTPLogsAzureBlobStorageParameters struct { // The retention period in days. A value of 0 means no retention. + // +kubebuilder:validation:Optional RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` // SAS url to an Azure blob container with read/write/list/delete permissions. @@ -200,9 +212,11 @@ type HTTPLogsObservation struct { type HTTPLogsParameters struct { // A azure_blob_storage_http block as defined below. + // +kubebuilder:validation:Optional AzureBlobStorage []HTTPLogsAzureBlobStorageParameters `json:"azureBlobStorage,omitempty" tf:"azure_blob_storage,omitempty"` // A file_system block as defined above. + // +kubebuilder:validation:Optional FileSystem []FileSystemParameters `json:"fileSystem,omitempty" tf:"file_system,omitempty"` } @@ -240,10 +254,12 @@ type LinuxWebAppAuthSettingsActiveDirectoryParameters struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. // Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Active Directory. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. @@ -253,6 +269,7 @@ type LinuxWebAppAuthSettingsActiveDirectoryParameters struct { // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The App Setting name that contains the client secret of the Client. Cannot be used with `client_secret`. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` } @@ -290,6 +307,7 @@ type LinuxWebAppAuthSettingsFacebookParameters struct { // The App ID of the Facebook app used for login. // The App ID of the Facebook app used for login. + // +kubebuilder:validation:Optional AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The App Secret of the Facebook app used for Facebook login. Cannot be specified with app_secret_setting_name. @@ -299,10 +317,12 @@ type LinuxWebAppAuthSettingsFacebookParameters struct { // The app setting name that contains the app_secret value used for Facebook Login. // The app setting name that contains the `app_secret` value used for Facebook Login. Cannot be specified with `app_secret`. + // +kubebuilder:validation:Optional AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. // Specifies a list of OAuth 2.0 scopes to be requested as part of Facebook Login authentication. + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -340,6 +360,7 @@ type LinuxWebAppAuthSettingsGithubParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the GitHub app used for login. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. @@ -349,10 +370,12 @@ type LinuxWebAppAuthSettingsGithubParameters struct { // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for GitHub Login. Cannot be specified with `client_secret`. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -390,6 +413,7 @@ type LinuxWebAppAuthSettingsGoogleParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Google web application. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. @@ -399,10 +423,12 @@ type LinuxWebAppAuthSettingsGoogleParameters struct { // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Google Login. Cannot be specified with `client_secret`. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. // Specifies a list of OAuth 2.0 scopes that will be requested as part of Google Sign-In authentication. If not specified, "openid", "profile", and "email" are used as default scopes. + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -497,6 +523,7 @@ type LinuxWebAppAuthSettingsMicrosoftParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OAuth 2.0 client ID that was created for the app used for authentication. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. @@ -506,10 +533,12 @@ type LinuxWebAppAuthSettingsMicrosoftParameters struct { // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with `client_secret`. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. // The list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, `wl.basic` is used as the default scope. + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -573,57 +602,72 @@ type LinuxWebAppAuthSettingsObservation struct { type LinuxWebAppAuthSettingsParameters struct { // An active_directory block as defined above. + // +kubebuilder:validation:Optional ActiveDirectory []LinuxWebAppAuthSettingsActiveDirectoryParameters `json:"activeDirectory,omitempty" tf:"active_directory,omitempty"` // Specifies a map of login Parameters to send to the OpenID Connect authorization endpoint when a user logs in. // Specifies a map of Login Parameters to send to the OpenID Connect authorization endpoint when a user logs in. + // +kubebuilder:validation:Optional AdditionalLoginParameters map[string]*string `json:"additionalLoginParameters,omitempty" tf:"additional_login_parameters,omitempty"` // Specifies a list of External URLs that can be redirected to as part of logging in or logging out of the Linux Web App. // Specifies a list of External URLs that can be redirected to as part of logging in or logging out of the Windows Web App. + // +kubebuilder:validation:Optional AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` // The default authentication provider to use when multiple providers are configured. Possible values include: BuiltInAuthenticationProviderAzureActiveDirectory, BuiltInAuthenticationProviderFacebook, BuiltInAuthenticationProviderGoogle, BuiltInAuthenticationProviderMicrosoftAccount, BuiltInAuthenticationProviderTwitter, BuiltInAuthenticationProviderGithub // The default authentication provider to use when multiple providers are configured. Possible values include: `AzureActiveDirectory`, `Facebook`, `Google`, `MicrosoftAccount`, `Twitter`, `Github`. + // +kubebuilder:validation:Optional DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` // Should the Authentication / Authorization feature be enabled for the Linux Web App? // Should the Authentication / Authorization feature be enabled? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // A facebook block as defined below. + // +kubebuilder:validation:Optional Facebook []LinuxWebAppAuthSettingsFacebookParameters `json:"facebook,omitempty" tf:"facebook,omitempty"` // A github block as defined below. + // +kubebuilder:validation:Optional Github []LinuxWebAppAuthSettingsGithubParameters `json:"github,omitempty" tf:"github,omitempty"` // A google block as defined below. + // +kubebuilder:validation:Optional Google []LinuxWebAppAuthSettingsGoogleParameters `json:"google,omitempty" tf:"google,omitempty"` // The OpenID Connect Issuer URI that represents the entity that issues access tokens for this Linux Web App. // The OpenID Connect Issuer URI that represents the entity which issues access tokens. + // +kubebuilder:validation:Optional Issuer *string `json:"issuer,omitempty" tf:"issuer,omitempty"` // A microsoft block as defined below. + // +kubebuilder:validation:Optional Microsoft []LinuxWebAppAuthSettingsMicrosoftParameters `json:"microsoft,omitempty" tf:"microsoft,omitempty"` // The RuntimeVersion of the Authentication / Authorization feature in use for the Linux Web App. // The RuntimeVersion of the Authentication / Authorization feature in use. + // +kubebuilder:validation:Optional RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72 hours. // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to `72` hours. + // +kubebuilder:validation:Optional TokenRefreshExtensionHours *float64 `json:"tokenRefreshExtensionHours,omitempty" tf:"token_refresh_extension_hours,omitempty"` // Should the Linux Web App durably store platform-specific security tokens that are obtained during login flows? Defaults to false. // Should the Windows Web App durably store platform-specific security tokens that are obtained during login flows? Defaults to `false`. + // +kubebuilder:validation:Optional TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` // A twitter block as defined below. + // +kubebuilder:validation:Optional Twitter []LinuxWebAppAuthSettingsTwitterParameters `json:"twitter,omitempty" tf:"twitter,omitempty"` // The action to take when an unauthenticated client attempts to access the app. Possible values include: RedirectToLoginPage, AllowAnonymous. // The action to take when an unauthenticated client attempts to access the app. Possible values include: `RedirectToLoginPage`, `AllowAnonymous`. + // +kubebuilder:validation:Optional UnauthenticatedClientAction *string `json:"unauthenticatedClientAction,omitempty" tf:"unauthenticated_client_action,omitempty"` } @@ -653,6 +697,7 @@ type LinuxWebAppAuthSettingsTwitterParameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + // +kubebuilder:validation:Optional ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with consumer_secret_setting_name. @@ -662,6 +707,7 @@ type LinuxWebAppAuthSettingsTwitterParameters struct { // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret`. + // +kubebuilder:validation:Optional ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` } @@ -771,50 +817,62 @@ type LinuxWebAppAuthSettingsV2ActiveDirectoryV2Parameters struct { // The list of allowed Applications for the Default Authorisation Policy. // The list of allowed Applications for the Default Authorisation Policy. + // +kubebuilder:validation:Optional AllowedApplications []*string `json:"allowedApplications,omitempty" tf:"allowed_applications,omitempty"` // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. // Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The list of allowed Group Names for the Default Authorisation Policy. // The list of allowed Group Names for the Default Authorisation Policy. + // +kubebuilder:validation:Optional AllowedGroups []*string `json:"allowedGroups,omitempty" tf:"allowed_groups,omitempty"` // The list of allowed Identities for the Default Authorisation Policy. // The list of allowed Identities for the Default Authorisation Policy. + // +kubebuilder:validation:Optional AllowedIdentities []*string `json:"allowedIdentities,omitempty" tf:"allowed_identities,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Active Directory. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The thumbprint of the certificate used for signing purposes. // The thumbprint of the certificate used for signing purposes. + // +kubebuilder:validation:Optional ClientSecretCertificateThumbprint *string `json:"clientSecretCertificateThumbprint,omitempty" tf:"client_secret_certificate_thumbprint,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The App Setting name that contains the client secret of the Client. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // A list of Allowed Client Applications in the JWT Claim. // A list of Allowed Client Applications in the JWT Claim. + // +kubebuilder:validation:Optional JwtAllowedClientApplications []*string `json:"jwtAllowedClientApplications,omitempty" tf:"jwt_allowed_client_applications,omitempty"` // A list of Allowed Groups in the JWT Claim. // A list of Allowed Groups in the JWT Claim. + // +kubebuilder:validation:Optional JwtAllowedGroups []*string `json:"jwtAllowedGroups,omitempty" tf:"jwt_allowed_groups,omitempty"` // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. + // +kubebuilder:validation:Optional LoginParameters map[string]*string `json:"loginParameters,omitempty" tf:"login_parameters,omitempty"` // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/ // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. `https://login.microsoftonline.com/v2.0/{tenant-guid}/`. + // +kubebuilder:validation:Optional TenantAuthEndpoint *string `json:"tenantAuthEndpoint,omitempty" tf:"tenant_auth_endpoint,omitempty"` // Should the www-authenticate provider should be omitted from the request? Defaults to false // Should the www-authenticate provider should be omitted from the request? Defaults to `false` + // +kubebuilder:validation:Optional WwwAuthenticationDisabled *bool `json:"wwwAuthenticationDisabled,omitempty" tf:"www_authentication_disabled,omitempty"` } @@ -847,10 +905,12 @@ type LinuxWebAppAuthSettingsV2AppleV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Apple web application. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Apple Login. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` } @@ -872,6 +932,7 @@ type LinuxWebAppAuthSettingsV2AzureStaticWebAppV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Static Web App Authentication. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` } @@ -949,22 +1010,27 @@ type LinuxWebAppAuthSettingsV2CustomOidcV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with this Custom OIDC. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The name which should be used for this Storage Account. // The name of the Custom OIDC Authentication Provider. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The name of the claim that contains the users name. // The name of the claim that contains the users name. + // +kubebuilder:validation:Optional NameClaimType *string `json:"nameClaimType,omitempty" tf:"name_claim_type,omitempty"` // Specifies the endpoint used for OpenID Connect Discovery. For example https://example.com/.well-known/openid-configuration. // The endpoint that contains all the configuration endpoints for this Custom OIDC provider. + // +kubebuilder:validation:Optional OpenIDConfigurationEndpoint *string `json:"openidConfigurationEndpoint,omitempty" tf:"openid_configuration_endpoint,omitempty"` // The list of the scopes that should be requested while authenticating. // The list of the scopes that should be requested while authenticating. + // +kubebuilder:validation:Optional Scopes []*string `json:"scopes,omitempty" tf:"scopes,omitempty"` } @@ -1010,18 +1076,22 @@ type LinuxWebAppAuthSettingsV2FacebookV2Parameters struct { // The App ID of the Facebook app used for login. // The App ID of the Facebook app used for login. + // +kubebuilder:validation:Optional AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The app setting name that contains the app_secret value used for Facebook Login. // The app setting name that contains the `app_secret` value used for Facebook Login. + // +kubebuilder:validation:Optional AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` // The version of the Facebook API to be used while logging in. // The version of the Facebook API to be used while logging in. + // +kubebuilder:validation:Optional GraphAPIVersion *string `json:"graphApiVersion,omitempty" tf:"graph_api_version,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of scopes to be requested as part of Facebook Login authentication. + // +kubebuilder:validation:Optional LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } @@ -1059,14 +1129,17 @@ type LinuxWebAppAuthSettingsV2GithubV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the GitHub app used for login. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for GitHub Login. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. + // +kubebuilder:validation:Optional LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } @@ -1112,18 +1185,22 @@ type LinuxWebAppAuthSettingsV2GoogleV2Parameters struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. // Specifies a list of Allowed Audiences that will be requested as part of Google Sign-In authentication. + // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Google web application. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Google Login. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of Login scopes that will be requested as part of Google Sign-In authentication. + // +kubebuilder:validation:Optional LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } @@ -1306,46 +1383,57 @@ type LinuxWebAppAuthSettingsV2LoginParameters struct { // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. **Note:** URLs within the current domain are always implicitly allowed. + // +kubebuilder:validation:Optional AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` // The method by which cookies expire. Possible values include: FixedTime, and IdentityProviderDerived. Defaults to FixedTime. // The method by which cookies expire. Possible values include: `FixedTime`, and `IdentityProviderDerived`. Defaults to `FixedTime`. + // +kubebuilder:validation:Optional CookieExpirationConvention *string `json:"cookieExpirationConvention,omitempty" tf:"cookie_expiration_convention,omitempty"` // The time after the request is made when the session cookie should expire. Defaults to 08:00:00. // The time after the request is made when the session cookie should expire. Defaults to `08:00:00`. + // +kubebuilder:validation:Optional CookieExpirationTime *string `json:"cookieExpirationTime,omitempty" tf:"cookie_expiration_time,omitempty"` // The endpoint to which logout requests should be made. // The endpoint to which logout requests should be made. + // +kubebuilder:validation:Optional LogoutEndpoint *string `json:"logoutEndpoint,omitempty" tf:"logout_endpoint,omitempty"` // The time after the request is made when the nonce should expire. Defaults to 00:05:00. // The time after the request is made when the nonce should expire. Defaults to `00:05:00`. + // +kubebuilder:validation:Optional NonceExpirationTime *string `json:"nonceExpirationTime,omitempty" tf:"nonce_expiration_time,omitempty"` // Should the fragments from the request be preserved after the login request is made. Defaults to false. // Should the fragments from the request be preserved after the login request is made. Defaults to `false`. + // +kubebuilder:validation:Optional PreserveURLFragmentsForLogins *bool `json:"preserveUrlFragmentsForLogins,omitempty" tf:"preserve_url_fragments_for_logins,omitempty"` // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72 hours. // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to `72` hours. + // +kubebuilder:validation:Optional TokenRefreshExtensionTime *float64 `json:"tokenRefreshExtensionTime,omitempty" tf:"token_refresh_extension_time,omitempty"` // Should the Token Store configuration Enabled. Defaults to false // Should the Token Store configuration Enabled. Defaults to `false` + // +kubebuilder:validation:Optional TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` // The directory path in the App Filesystem in which the tokens will be stored. // The directory path in the App Filesystem in which the tokens will be stored. + // +kubebuilder:validation:Optional TokenStorePath *string `json:"tokenStorePath,omitempty" tf:"token_store_path,omitempty"` // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. + // +kubebuilder:validation:Optional TokenStoreSASSettingName *string `json:"tokenStoreSasSettingName,omitempty" tf:"token_store_sas_setting_name,omitempty"` // Should the nonce be validated while completing the login flow. Defaults to true. // Should the nonce be validated while completing the login flow. Defaults to `true`. + // +kubebuilder:validation:Optional ValidateNonce *bool `json:"validateNonce,omitempty" tf:"validate_nonce,omitempty"` } @@ -1391,18 +1479,22 @@ type LinuxWebAppAuthSettingsV2MicrosoftV2Parameters struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. // The OAuth 2.0 client ID that was created for the app used for authentication. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // The list of Login scopes that will be requested as part of Microsoft Account authentication. + // +kubebuilder:validation:Optional LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } @@ -1490,81 +1582,103 @@ type LinuxWebAppAuthSettingsV2Observation struct { type LinuxWebAppAuthSettingsV2Parameters struct { // An active_directory_v2 block as defined below. + // +kubebuilder:validation:Optional ActiveDirectoryV2 []LinuxWebAppAuthSettingsV2ActiveDirectoryV2Parameters `json:"activeDirectoryV2,omitempty" tf:"active_directory_v2,omitempty"` // An apple_v2 block as defined below. + // +kubebuilder:validation:Optional AppleV2 []LinuxWebAppAuthSettingsV2AppleV2Parameters `json:"appleV2,omitempty" tf:"apple_v2,omitempty"` // Should the AuthV2 Settings be enabled. Defaults to false. // Should the AuthV2 Settings be enabled. Defaults to `false` + // +kubebuilder:validation:Optional AuthEnabled *bool `json:"authEnabled,omitempty" tf:"auth_enabled,omitempty"` // An azure_static_web_app_v2 block as defined below. + // +kubebuilder:validation:Optional AzureStaticWebAppV2 []LinuxWebAppAuthSettingsV2AzureStaticWebAppV2Parameters `json:"azureStaticWebAppV2,omitempty" tf:"azure_static_web_app_v2,omitempty"` // The path to the App Auth settings. // The path to the App Auth settings. **Note:** Relative Paths are evaluated from the Site Root directory. + // +kubebuilder:validation:Optional ConfigFilePath *string `json:"configFilePath,omitempty" tf:"config_file_path,omitempty"` // Zero or more custom_oidc_v2 blocks as defined below. + // +kubebuilder:validation:Optional CustomOidcV2 []LinuxWebAppAuthSettingsV2CustomOidcV2Parameters `json:"customOidcV2,omitempty" tf:"custom_oidc_v2,omitempty"` // The Default Authentication Provider to use when more than one Authentication Provider is configured and the unauthenticated_action is set to RedirectToLoginPage. // The Default Authentication Provider to use when the `unauthenticated_action` is set to `RedirectToLoginPage`. + // +kubebuilder:validation:Optional DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` // The paths which should be excluded from the unauthenticated_action when it is set to RedirectToLoginPage. // The paths which should be excluded from the `unauthenticated_action` when it is set to `RedirectToLoginPage`. + // +kubebuilder:validation:Optional ExcludedPaths []*string `json:"excludedPaths,omitempty" tf:"excluded_paths,omitempty"` // A facebook_v2 block as defined below. + // +kubebuilder:validation:Optional FacebookV2 []LinuxWebAppAuthSettingsV2FacebookV2Parameters `json:"facebookV2,omitempty" tf:"facebook_v2,omitempty"` // The convention used to determine the url of the request made. Possible values include ForwardProxyConventionNoProxy, ForwardProxyConventionStandard, ForwardProxyConventionCustom. Defaults to ForwardProxyConventionNoProxy. // The convention used to determine the url of the request made. Possible values include `ForwardProxyConventionNoProxy`, `ForwardProxyConventionStandard`, `ForwardProxyConventionCustom`. Defaults to `ForwardProxyConventionNoProxy` + // +kubebuilder:validation:Optional ForwardProxyConvention *string `json:"forwardProxyConvention,omitempty" tf:"forward_proxy_convention,omitempty"` // The name of the custom header containing the host of the request. // The name of the header containing the host of the request. + // +kubebuilder:validation:Optional ForwardProxyCustomHostHeaderName *string `json:"forwardProxyCustomHostHeaderName,omitempty" tf:"forward_proxy_custom_host_header_name,omitempty"` // The name of the custom header containing the scheme of the request. // The name of the header containing the scheme of the request. + // +kubebuilder:validation:Optional ForwardProxyCustomSchemeHeaderName *string `json:"forwardProxyCustomSchemeHeaderName,omitempty" tf:"forward_proxy_custom_scheme_header_name,omitempty"` // A github_v2 block as defined below. + // +kubebuilder:validation:Optional GithubV2 []LinuxWebAppAuthSettingsV2GithubV2Parameters `json:"githubV2,omitempty" tf:"github_v2,omitempty"` // A google_v2 block as defined below. + // +kubebuilder:validation:Optional GoogleV2 []LinuxWebAppAuthSettingsV2GoogleV2Parameters `json:"googleV2,omitempty" tf:"google_v2,omitempty"` // The prefix that should precede all the authentication and authorisation paths. Defaults to /.auth. // The prefix that should precede all the authentication and authorisation paths. Defaults to `/.auth` + // +kubebuilder:validation:Optional HTTPRouteAPIPrefix *string `json:"httpRouteApiPrefix,omitempty" tf:"http_route_api_prefix,omitempty"` // A login block as defined below. + // +kubebuilder:validation:Optional Login []LinuxWebAppAuthSettingsV2LoginParameters `json:"login,omitempty" tf:"login,omitempty"` // A microsoft_v2 block as defined below. + // +kubebuilder:validation:Optional MicrosoftV2 []LinuxWebAppAuthSettingsV2MicrosoftV2Parameters `json:"microsoftV2,omitempty" tf:"microsoft_v2,omitempty"` // Should the authentication flow be used for all requests. // Should the authentication flow be used for all requests. + // +kubebuilder:validation:Optional RequireAuthentication *bool `json:"requireAuthentication,omitempty" tf:"require_authentication,omitempty"` // Should HTTPS be required on connections? Defaults to true. // Should HTTPS be required on connections? Defaults to true. + // +kubebuilder:validation:Optional RequireHTTPS *bool `json:"requireHttps,omitempty" tf:"require_https,omitempty"` // The Runtime Version of the Authentication and Authorisation feature of this App. Defaults to ~1. // The Runtime Version of the Authentication and Authorisation feature of this App. Defaults to `~1` + // +kubebuilder:validation:Optional RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` // A twitter_v2 block as defined below. + // +kubebuilder:validation:Optional TwitterV2 []LinuxWebAppAuthSettingsV2TwitterV2Parameters `json:"twitterV2,omitempty" tf:"twitter_v2,omitempty"` // The action to take for requests made without authentication. Possible values include RedirectToLoginPage, AllowAnonymous, Return401, and Return403. Defaults to RedirectToLoginPage. // The action to take for requests made without authentication. Possible values include `RedirectToLoginPage`, `AllowAnonymous`, `Return401`, and `Return403`. Defaults to `RedirectToLoginPage`. + // +kubebuilder:validation:Optional UnauthenticatedAction *string `json:"unauthenticatedAction,omitempty" tf:"unauthenticated_action,omitempty"` } @@ -1594,10 +1708,12 @@ type LinuxWebAppAuthSettingsV2TwitterV2Parameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + // +kubebuilder:validation:Optional ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. + // +kubebuilder:validation:Optional ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` } @@ -1633,13 +1749,16 @@ type LinuxWebAppBackupParameters struct { // Should this backup job be enabled? Defaults to true. // Should this backup job be enabled? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The name which should be used for this Backup. // The name which should be used for this Backup. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A schedule block as defined below. + // +kubebuilder:validation:Optional Schedule []LinuxWebAppBackupScheduleParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` // The SAS URL to the container. @@ -1701,22 +1820,27 @@ type LinuxWebAppBackupScheduleParameters struct { // How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and frequency_unit should be set to Day). // How often the backup should be executed (e.g. for weekly backup, this should be set to `7` and `frequency_unit` should be set to `Day`). + // +kubebuilder:validation:Optional FrequencyInterval *float64 `json:"frequencyInterval,omitempty" tf:"frequency_interval,omitempty"` // The unit of time for how often the backup should take place. Possible values include: Day, Hour // The unit of time for how often the backup should take place. Possible values include: `Day` and `Hour`. + // +kubebuilder:validation:Optional FrequencyUnit *string `json:"frequencyUnit,omitempty" tf:"frequency_unit,omitempty"` // Should the service keep at least one backup, regardless of the age of backup? Defaults to false. // Should the service keep at least one backup, regardless of age of backup. Defaults to `false`. + // +kubebuilder:validation:Optional KeepAtLeastOneBackup *bool `json:"keepAtLeastOneBackup,omitempty" tf:"keep_at_least_one_backup,omitempty"` // After how many days backups should be deleted. Defaults to 30. // After how many days backups should be deleted. + // +kubebuilder:validation:Optional RetentionPeriodDays *float64 `json:"retentionPeriodDays,omitempty" tf:"retention_period_days,omitempty"` // When the schedule should start working in RFC-3339 format. // When the schedule should start working in RFC-3339 format. + // +kubebuilder:validation:Optional StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` } @@ -1746,10 +1870,12 @@ type LinuxWebAppConnectionStringParameters struct { // The name of the Connection String. // The name which should be used for this Connection. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of database. Possible values include: MySQL, SQLServer, SQLAzure, Custom, NotificationHub, ServiceBus, EventHub, APIHub, DocDb, RedisCache, and PostgreSQL. // Type of database. Possible values include: `MySQL`, `SQLServer`, `SQLAzure`, `Custom`, `NotificationHub`, `ServiceBus`, `EventHub`, `APIHub`, `DocDb`, `RedisCache`, and `PostgreSQL`. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // The connection string value. @@ -1785,9 +1911,11 @@ type LinuxWebAppIdentityObservation struct { type LinuxWebAppIdentityParameters struct { // A list of User Assigned Managed Identity IDs to be assigned to this Linux Web App. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Linux Web App. Possible values are SystemAssigned, UserAssigned, and SystemAssigned, UserAssigned (to enable both). + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -1957,49 +2085,64 @@ type LinuxWebAppObservation struct { type LinuxWebAppParameters struct { // A map of key-value pairs of App Settings. + // +kubebuilder:validation:Optional AppSettings map[string]*string `json:"appSettings,omitempty" tf:"app_settings,omitempty"` // A auth_settings block as defined below. + // +kubebuilder:validation:Optional AuthSettings []LinuxWebAppAuthSettingsParameters `json:"authSettings,omitempty" tf:"auth_settings,omitempty"` // An auth_settings_v2 block as defined below. + // +kubebuilder:validation:Optional AuthSettingsV2 []LinuxWebAppAuthSettingsV2Parameters `json:"authSettingsV2,omitempty" tf:"auth_settings_v2,omitempty"` // A backup block as defined below. + // +kubebuilder:validation:Optional Backup []LinuxWebAppBackupParameters `json:"backup,omitempty" tf:"backup,omitempty"` // Should Client Affinity be enabled? + // +kubebuilder:validation:Optional ClientAffinityEnabled *bool `json:"clientAffinityEnabled,omitempty" tf:"client_affinity_enabled,omitempty"` // Should Client Certificates be enabled? + // +kubebuilder:validation:Optional ClientCertificateEnabled *bool `json:"clientCertificateEnabled,omitempty" tf:"client_certificate_enabled,omitempty"` // Paths to exclude when using client certificates, separated by ; // Paths to exclude when using client certificates, separated by ; + // +kubebuilder:validation:Optional ClientCertificateExclusionPaths *string `json:"clientCertificateExclusionPaths,omitempty" tf:"client_certificate_exclusion_paths,omitempty"` // The Client Certificate mode. Possible values are Required, Optional, and OptionalInteractiveUser. This property has no effect when client_certificate_enabled is false + // +kubebuilder:validation:Optional ClientCertificateMode *string `json:"clientCertificateMode,omitempty" tf:"client_certificate_mode,omitempty"` // One or more connection_string blocks as defined below. + // +kubebuilder:validation:Optional ConnectionString []LinuxWebAppConnectionStringParameters `json:"connectionString,omitempty" tf:"connection_string,omitempty"` // Should the Linux Web App be enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Should the Linux Web App require HTTPS connections. + // +kubebuilder:validation:Optional HTTPSOnly *bool `json:"httpsOnly,omitempty" tf:"https_only,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []LinuxWebAppIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // The User Assigned Identity ID used for accessing KeyVault secrets. The identity must be assigned to the application in the identity block. For more information see - Access vaults with a user-assigned identity. + // +kubebuilder:validation:Optional KeyVaultReferenceIdentityID *string `json:"keyVaultReferenceIdentityId,omitempty" tf:"key_vault_reference_identity_id,omitempty"` // The Azure Region where the Linux Web App should exist. Changing this forces a new Linux Web App to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // A logs block as defined below. + // +kubebuilder:validation:Optional Logs []LogsParameters `json:"logs,omitempty" tf:"logs,omitempty"` // The name of the Resource Group where the Linux Web App should exist. Changing this forces a new Linux Web App to be created. @@ -2030,15 +2173,19 @@ type LinuxWebAppParameters struct { ServicePlanIDSelector *v1.Selector `json:"servicePlanIdSelector,omitempty" tf:"-"` // A site_config block as defined below. + // +kubebuilder:validation:Optional SiteConfig []LinuxWebAppSiteConfigParameters `json:"siteConfig,omitempty" tf:"site_config,omitempty"` // A sticky_settings block as defined below. + // +kubebuilder:validation:Optional StickySettings []LinuxWebAppStickySettingsParameters `json:"stickySettings,omitempty" tf:"sticky_settings,omitempty"` // One or more storage_account blocks as defined below. + // +kubebuilder:validation:Optional StorageAccount []LinuxWebAppStorageAccountParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` // A mapping of tags which should be assigned to the Linux Web App. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The subnet id which will be used by this Web App for regional virtual network integration. @@ -2057,6 +2204,7 @@ type LinuxWebAppParameters struct { // The local path and filename of the Zip packaged application to deploy to this Linux Web App. // The local path and filename of the Zip packaged application to deploy to this Linux Web App. **Note:** Using this value requires either `WEBSITE_RUN_FROM_PACKAGE=1` or `SCM_DO_BUILD_DURING_DEPLOYMENT=true` to be set on the App in `app_settings`. + // +kubebuilder:validation:Optional ZipDeployFile *string `json:"zipDeployFile,omitempty" tf:"zip_deploy_file,omitempty"` } @@ -2135,36 +2283,47 @@ type LinuxWebAppSiteConfigApplicationStackObservation struct { type LinuxWebAppSiteConfigApplicationStackParameters struct { // The Docker image reference, including repository host as needed. + // +kubebuilder:validation:Optional DockerImage *string `json:"dockerImage,omitempty" tf:"docker_image,omitempty"` // The image Tag to use. e.g. latest. + // +kubebuilder:validation:Optional DockerImageTag *string `json:"dockerImageTag,omitempty" tf:"docker_image_tag,omitempty"` // The version of .NET to use. Possible values include 3.1, 5.0, 6.0 and 7.0. + // +kubebuilder:validation:Optional DotnetVersion *string `json:"dotnetVersion,omitempty" tf:"dotnet_version,omitempty"` // The version of Go to use. Possible values include 1.18, and 1.19. + // +kubebuilder:validation:Optional GoVersion *string `json:"goVersion,omitempty" tf:"go_version,omitempty"` // The Java server type. Possible values include JAVA, TOMCAT, and JBOSSEAP. + // +kubebuilder:validation:Optional JavaServer *string `json:"javaServer,omitempty" tf:"java_server,omitempty"` // The Version of the java_server to use. + // +kubebuilder:validation:Optional JavaServerVersion *string `json:"javaServerVersion,omitempty" tf:"java_server_version,omitempty"` // The Version of Java to use. Possible values include 8, 11, and 17. + // +kubebuilder:validation:Optional JavaVersion *string `json:"javaVersion,omitempty" tf:"java_version,omitempty"` // The version of Node to run. Possible values include 12-lts, 14-lts, 16-lts, and 18-lts. This property conflicts with java_version. + // +kubebuilder:validation:Optional NodeVersion *string `json:"nodeVersion,omitempty" tf:"node_version,omitempty"` // The version of PHP to run. Possible values are 8.0, 8.1 and 8.2. + // +kubebuilder:validation:Optional PHPVersion *string `json:"phpVersion,omitempty" tf:"php_version,omitempty"` // The version of Python to run. Possible values include 3.7, 3.8, 3.9, 3.10 and 3.11. + // +kubebuilder:validation:Optional PythonVersion *string `json:"pythonVersion,omitempty" tf:"python_version,omitempty"` // Te version of Ruby to run. Possible values include 2.6 and 2.7. + // +kubebuilder:validation:Optional RubyVersion *string `json:"rubyVersion,omitempty" tf:"ruby_version,omitempty"` } @@ -2194,10 +2353,12 @@ type LinuxWebAppSiteConfigCorsParameters struct { // Specifies a list of origins that should be allowed to make cross-origin calls. // Specifies a list of origins that should be allowed to make cross-origin calls. + // +kubebuilder:validation:Optional AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` // Whether CORS requests with credentials are allowed. Defaults to false // Are credentials allowed in CORS requests? Defaults to `false`. + // +kubebuilder:validation:Optional SupportCredentials *bool `json:"supportCredentials,omitempty" tf:"support_credentials,omitempty"` } @@ -2234,15 +2395,19 @@ type LinuxWebAppSiteConfigIPRestrictionHeadersObservation struct { type LinuxWebAppSiteConfigIPRestrictionHeadersParameters struct { // Specifies a list of Azure Front Door IDs. + // +kubebuilder:validation:Optional XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` // Specifies if a Front Door Health Probe should be expected. The only possible value is 1. + // +kubebuilder:validation:Optional XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` // Specifies a list of addresses for which matching should be applied. Omitting this value means allow any. + // +kubebuilder:validation:Optional XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` // Specifies a list of Hosts for which matching should be applied. + // +kubebuilder:validation:Optional XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } @@ -2306,25 +2471,31 @@ type LinuxWebAppSiteConfigIPRestrictionParameters struct { // The action to take. Possible values are Allow or Deny. // The action to take. Possible values are `Allow` or `Deny`. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // A headers block as defined above. + // +kubebuilder:validation:Optional Headers []LinuxWebAppSiteConfigIPRestrictionHeadersParameters `json:"headers,omitempty" tf:"headers,omitempty"` // The CIDR notation of the IP or IP Range to match. For example: 10.0.0.0/24 or 192.168.10.1/32 // The CIDR notation of the IP or IP Range to match. For example: `10.0.0.0/24` or `192.168.10.1/32` or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22` + // +kubebuilder:validation:Optional IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` // The name which should be used for this Storage Account. // The name which should be used for this `ip_restriction`. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The priority value of this ip_restriction. Defaults to 65000. // The priority value of this `ip_restriction`. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // The Service Tag used for this IP Restriction. // The Service Tag used for this IP Restriction. + // +kubebuilder:validation:Optional ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag,omitempty"` // The subnet id which will be used by this Web App for regional virtual network integration. @@ -2537,92 +2708,121 @@ type LinuxWebAppSiteConfigObservation struct { type LinuxWebAppSiteConfigParameters struct { // The URL to the API Definition for this Linux Web App. + // +kubebuilder:validation:Optional APIDefinitionURL *string `json:"apiDefinitionUrl,omitempty" tf:"api_definition_url,omitempty"` // The API Management API ID this Linux Web App is associated with. + // +kubebuilder:validation:Optional APIManagementAPIID *string `json:"apiManagementApiId,omitempty" tf:"api_management_api_id,omitempty"` // If this Linux Web App is Always On enabled. Defaults to true. + // +kubebuilder:validation:Optional AlwaysOn *bool `json:"alwaysOn,omitempty" tf:"always_on,omitempty"` // The App command line to launch. + // +kubebuilder:validation:Optional AppCommandLine *string `json:"appCommandLine,omitempty" tf:"app_command_line,omitempty"` // A application_stack block as defined above. + // +kubebuilder:validation:Optional ApplicationStack []LinuxWebAppSiteConfigApplicationStackParameters `json:"applicationStack,omitempty" tf:"application_stack,omitempty"` // Should Auto heal rules be enabled? Required with auto_heal_setting. + // +kubebuilder:validation:Optional AutoHealEnabled *bool `json:"autoHealEnabled,omitempty" tf:"auto_heal_enabled,omitempty"` // A auto_heal_setting block as defined above. Required with auto_heal. + // +kubebuilder:validation:Optional AutoHealSetting []AutoHealSettingParameters `json:"autoHealSetting,omitempty" tf:"auto_heal_setting,omitempty"` // The Client ID of the Managed Service Identity to use for connections to the Azure Container Registry. + // +kubebuilder:validation:Optional ContainerRegistryManagedIdentityClientID *string `json:"containerRegistryManagedIdentityClientId,omitempty" tf:"container_registry_managed_identity_client_id,omitempty"` // Should connections for Azure Container Registry use Managed Identity. + // +kubebuilder:validation:Optional ContainerRegistryUseManagedIdentity *bool `json:"containerRegistryUseManagedIdentity,omitempty" tf:"container_registry_use_managed_identity,omitempty"` // A cors block as defined above. + // +kubebuilder:validation:Optional Cors []LinuxWebAppSiteConfigCorsParameters `json:"cors,omitempty" tf:"cors,omitempty"` // Specifies a list of Default Documents for the Linux Web App. + // +kubebuilder:validation:Optional DefaultDocuments []*string `json:"defaultDocuments,omitempty" tf:"default_documents,omitempty"` // The State of FTP / FTPS service. Possible values include AllAllowed, FtpsOnly, and Disabled. + // +kubebuilder:validation:Optional FtpsState *string `json:"ftpsState,omitempty" tf:"ftps_state,omitempty"` // The amount of time in minutes that a node can be unhealthy before being removed from the load balancer. Possible values are between 2 and 10. Only valid in conjunction with health_check_path. // The amount of time in minutes that a node is unhealthy before being removed from the load balancer. Possible values are between `2` and `10`. Defaults to `10`. Only valid in conjunction with `health_check_path` + // +kubebuilder:validation:Optional HealthCheckEvictionTimeInMin *float64 `json:"healthCheckEvictionTimeInMin,omitempty" tf:"health_check_eviction_time_in_min,omitempty"` // The path to the Health Check. + // +kubebuilder:validation:Optional HealthCheckPath *string `json:"healthCheckPath,omitempty" tf:"health_check_path,omitempty"` // Should the HTTP2 be enabled? + // +kubebuilder:validation:Optional Http2Enabled *bool `json:"http2Enabled,omitempty" tf:"http2_enabled,omitempty"` // One or more ip_restriction blocks as defined above. + // +kubebuilder:validation:Optional IPRestriction []LinuxWebAppSiteConfigIPRestrictionParameters `json:"ipRestriction,omitempty" tf:"ip_restriction,omitempty"` // The Site load balancing. Possible values include: WeightedRoundRobin, LeastRequests, LeastResponseTime, WeightedTotalTraffic, RequestHash, PerSiteRoundRobin. Defaults to LeastRequests if omitted. + // +kubebuilder:validation:Optional LoadBalancingMode *string `json:"loadBalancingMode,omitempty" tf:"load_balancing_mode,omitempty"` // Use Local MySQL. Defaults to false. + // +kubebuilder:validation:Optional LocalMySQLEnabled *bool `json:"localMysqlEnabled,omitempty" tf:"local_mysql_enabled,omitempty"` // Managed pipeline mode. Possible values include Integrated, and Classic. + // +kubebuilder:validation:Optional ManagedPipelineMode *string `json:"managedPipelineMode,omitempty" tf:"managed_pipeline_mode,omitempty"` // The configures the minimum version of TLS required for SSL requests. Possible values include: 1.0, 1.1, and 1.2. Defaults to 1.2. + // +kubebuilder:validation:Optional MinimumTLSVersion *string `json:"minimumTlsVersion,omitempty" tf:"minimum_tls_version,omitempty"` // Should Remote Debugging be enabled? Defaults to false. + // +kubebuilder:validation:Optional RemoteDebuggingEnabled *bool `json:"remoteDebuggingEnabled,omitempty" tf:"remote_debugging_enabled,omitempty"` // The Remote Debugging Version. Possible values include VS2017 and VS2019 + // +kubebuilder:validation:Optional RemoteDebuggingVersion *string `json:"remoteDebuggingVersion,omitempty" tf:"remote_debugging_version,omitempty"` // One or more scm_ip_restriction blocks as defined above. + // +kubebuilder:validation:Optional ScmIPRestriction []LinuxWebAppSiteConfigScmIPRestrictionParameters `json:"scmIpRestriction,omitempty" tf:"scm_ip_restriction,omitempty"` // The configures the minimum version of TLS required for SSL requests to the SCM site Possible values include: 1.0, 1.1, and 1.2. Defaults to 1.2. + // +kubebuilder:validation:Optional ScmMinimumTLSVersion *string `json:"scmMinimumTlsVersion,omitempty" tf:"scm_minimum_tls_version,omitempty"` // Should the Linux Web App ip_restriction configuration be used for the SCM also. + // +kubebuilder:validation:Optional ScmUseMainIPRestriction *bool `json:"scmUseMainIpRestriction,omitempty" tf:"scm_use_main_ip_restriction,omitempty"` // Should the Linux Web App use a 32-bit worker? Defaults to true. + // +kubebuilder:validation:Optional Use32BitWorker *bool `json:"use32BitWorker,omitempty" tf:"use_32_bit_worker,omitempty"` // Should all outbound traffic have NAT Gateways, Network Security Groups and User Defined Routes applied? Defaults to false. // Should all outbound traffic to have Virtual Network Security Groups and User Defined Routes applied? Defaults to `false`. + // +kubebuilder:validation:Optional VnetRouteAllEnabled *bool `json:"vnetRouteAllEnabled,omitempty" tf:"vnet_route_all_enabled,omitempty"` // Should Web Sockets be enabled? Defaults to false. + // +kubebuilder:validation:Optional WebsocketsEnabled *bool `json:"websocketsEnabled,omitempty" tf:"websockets_enabled,omitempty"` // The number of Workers for this Linux App Service. + // +kubebuilder:validation:Optional WorkerCount *float64 `json:"workerCount,omitempty" tf:"worker_count,omitempty"` } @@ -2659,15 +2859,19 @@ type LinuxWebAppSiteConfigScmIPRestrictionHeadersObservation struct { type LinuxWebAppSiteConfigScmIPRestrictionHeadersParameters struct { // Specifies a list of Azure Front Door IDs. + // +kubebuilder:validation:Optional XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` // Specifies if a Front Door Health Probe should be expected. The only possible value is 1. + // +kubebuilder:validation:Optional XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` // Specifies a list of addresses for which matching should be applied. Omitting this value means allow any. + // +kubebuilder:validation:Optional XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` // Specifies a list of Hosts for which matching should be applied. + // +kubebuilder:validation:Optional XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } @@ -2731,25 +2935,31 @@ type LinuxWebAppSiteConfigScmIPRestrictionParameters struct { // The action to take. Possible values are Allow or Deny. // The action to take. Possible values are `Allow` or `Deny`. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // A headers block as defined above. + // +kubebuilder:validation:Optional Headers []LinuxWebAppSiteConfigScmIPRestrictionHeadersParameters `json:"headers,omitempty" tf:"headers,omitempty"` // The CIDR notation of the IP or IP Range to match. For example: 10.0.0.0/24 or 192.168.10.1/32 // The CIDR notation of the IP or IP Range to match. For example: `10.0.0.0/24` or `192.168.10.1/32` or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22` + // +kubebuilder:validation:Optional IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` // The name which should be used for this Storage Account. // The name which should be used for this `ip_restriction`. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The priority value of this ip_restriction. Defaults to 65000. // The priority value of this `ip_restriction`. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // The Service Tag used for this IP Restriction. // The Service Tag used for this IP Restriction. + // +kubebuilder:validation:Optional ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag,omitempty"` // The subnet id which will be used by this Web App for regional virtual network integration. @@ -2804,9 +3014,11 @@ type LinuxWebAppStickySettingsObservation struct { type LinuxWebAppStickySettingsParameters struct { // A list of app_setting names that the Linux Web App will not swap between Slots when a swap operation is triggered. + // +kubebuilder:validation:Optional AppSettingNames []*string `json:"appSettingNames,omitempty" tf:"app_setting_names,omitempty"` // A list of connection_string names that the Linux Web App will not swap between Slots when a swap operation is triggered. + // +kubebuilder:validation:Optional ConnectionStringNames []*string `json:"connectionStringNames,omitempty" tf:"connection_string_names,omitempty"` } @@ -2853,18 +3065,23 @@ type LinuxWebAppStorageAccountParameters struct { AccessKeySecretRef v1.SecretKeySelector `json:"accessKeySecretRef" tf:"-"` // The Name of the Storage Account. + // +kubebuilder:validation:Optional AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` // The path at which to mount the storage share. + // +kubebuilder:validation:Optional MountPath *string `json:"mountPath,omitempty" tf:"mount_path,omitempty"` // The name which should be used for this Storage Account. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Name of the File Share or Container Name for Blob storage. + // +kubebuilder:validation:Optional ShareName *string `json:"shareName,omitempty" tf:"share_name,omitempty"` // The Azure Storage Type. Possible values include AzureFiles and AzureBlob + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -2901,15 +3118,19 @@ type LogsObservation struct { type LogsParameters struct { // A application_logs block as defined above. + // +kubebuilder:validation:Optional ApplicationLogs []ApplicationLogsParameters `json:"applicationLogs,omitempty" tf:"application_logs,omitempty"` // Should detailed error messages be enabled? + // +kubebuilder:validation:Optional DetailedErrorMessages *bool `json:"detailedErrorMessages,omitempty" tf:"detailed_error_messages,omitempty"` // Should the failed request tracing be enabled? + // +kubebuilder:validation:Optional FailedRequestTracing *bool `json:"failedRequestTracing,omitempty" tf:"failed_request_tracing,omitempty"` // An http_logs block as defined above. + // +kubebuilder:validation:Optional HTTPLogs []HTTPLogsParameters `json:"httpLogs,omitempty" tf:"http_logs,omitempty"` } @@ -2934,9 +3155,11 @@ type RequestsObservation struct { type RequestsParameters struct { // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. + // +kubebuilder:validation:Optional Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The time interval in the form hh:mm:ss. + // +kubebuilder:validation:Optional Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` } @@ -2973,15 +3196,19 @@ type SlowRequestObservation struct { type SlowRequestParameters struct { // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. + // +kubebuilder:validation:Optional Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The time interval in the form hh:mm:ss. + // +kubebuilder:validation:Optional Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` // The path to which this rule status code applies. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` // The threshold of time passed to qualify as a Slow Request in hh:mm:ss. + // +kubebuilder:validation:Optional TimeTaken *string `json:"timeTaken,omitempty" tf:"time_taken,omitempty"` } @@ -3030,21 +3257,27 @@ type StatusCodeObservation struct { type StatusCodeParameters struct { // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. + // +kubebuilder:validation:Optional Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The time interval in the form hh:mm:ss. + // +kubebuilder:validation:Optional Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` // The path to which this rule status code applies. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` // The status code for this rule, accepts single status codes and status code ranges. e.g. 500 or 400-499. Possible values are integers between 101 and 599 + // +kubebuilder:validation:Optional StatusCodeRange *string `json:"statusCodeRange,omitempty" tf:"status_code_range,omitempty"` // The Request Sub Status of the Status Code. + // +kubebuilder:validation:Optional SubStatus *float64 `json:"subStatus,omitempty" tf:"sub_status,omitempty"` // The Win32 Status Code of the Request. + // +kubebuilder:validation:Optional Win32Status *string `json:"win32Status,omitempty" tf:"win32_status,omitempty"` } @@ -3075,12 +3308,15 @@ type TriggerObservation struct { type TriggerParameters struct { // A requests block as defined above. + // +kubebuilder:validation:Optional Requests []RequestsParameters `json:"requests,omitempty" tf:"requests,omitempty"` // One or more slow_request blocks as defined above. + // +kubebuilder:validation:Optional SlowRequest []SlowRequestParameters `json:"slowRequest,omitempty" tf:"slow_request,omitempty"` // One or more status_code blocks as defined above. + // +kubebuilder:validation:Optional StatusCode []StatusCodeParameters `json:"statusCode,omitempty" tf:"status_code,omitempty"` } diff --git a/apis/web/v1beta1/zz_linuxwebappslot_types.go b/apis/web/v1beta1/zz_linuxwebappslot_types.go index 2e3fe375c..db9ff91de 100755 --- a/apis/web/v1beta1/zz_linuxwebappslot_types.go +++ b/apis/web/v1beta1/zz_linuxwebappslot_types.go @@ -40,12 +40,15 @@ type ApplicationLogsAzureBlobStorageObservation struct { type ApplicationLogsAzureBlobStorageParameters struct { // The level at which to log. Possible values include Error, Warning, Information, Verbose and Off. NOTE: this field is not available for http_logs + // +kubebuilder:validation:Optional Level *string `json:"level,omitempty" tf:"level,omitempty"` // The retention period in days. A values of 0 means no retention. + // +kubebuilder:validation:Optional RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` // SAS url to an Azure blob container with read/write/list/delete permissions. + // +kubebuilder:validation:Optional SASURL *string `json:"sasUrl,omitempty" tf:"sas_url,omitempty"` } @@ -70,9 +73,11 @@ type AutoHealSettingActionObservation struct { type AutoHealSettingActionParameters struct { // Predefined action to be taken to an Auto Heal trigger. Possible values include: Recycle. + // +kubebuilder:validation:Optional ActionType *string `json:"actionType,omitempty" tf:"action_type,omitempty"` // The minimum amount of time in hh:mm:ss the Linux Web App must have been running before the defined action will be run in the event of a trigger. + // +kubebuilder:validation:Optional MinimumProcessExecutionTime *string `json:"minimumProcessExecutionTime,omitempty" tf:"minimum_process_execution_time,omitempty"` } @@ -103,12 +108,15 @@ type AutoHealSettingTriggerObservation struct { type AutoHealSettingTriggerParameters struct { // A requests block as defined above. + // +kubebuilder:validation:Optional Requests []TriggerRequestsParameters `json:"requests,omitempty" tf:"requests,omitempty"` // One or more slow_request blocks as defined above. + // +kubebuilder:validation:Optional SlowRequest []TriggerSlowRequestParameters `json:"slowRequest,omitempty" tf:"slow_request,omitempty"` // One or more status_code blocks as defined above. + // +kubebuilder:validation:Optional StatusCode []TriggerStatusCodeParameters `json:"statusCode,omitempty" tf:"status_code,omitempty"` } @@ -133,9 +141,11 @@ type HTTPLogsFileSystemObservation struct { type HTTPLogsFileSystemParameters struct { // The retention period in days. A values of 0 means no retention. + // +kubebuilder:validation:Optional RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` // The maximum size in megabytes that log files can use. + // +kubebuilder:validation:Optional RetentionInMb *float64 `json:"retentionInMb,omitempty" tf:"retention_in_mb,omitempty"` } @@ -173,10 +183,12 @@ type LinuxWebAppSlotAuthSettingsActiveDirectoryParameters struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. // Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Active Directory. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. @@ -186,6 +198,7 @@ type LinuxWebAppSlotAuthSettingsActiveDirectoryParameters struct { // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The App Setting name that contains the client secret of the Client. Cannot be used with `client_secret`. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` } @@ -223,6 +236,7 @@ type LinuxWebAppSlotAuthSettingsFacebookParameters struct { // The App ID of the Facebook app used for login. // The App ID of the Facebook app used for login. + // +kubebuilder:validation:Optional AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The App Secret of the Facebook app used for Facebook login. Cannot be specified with app_secret_setting_name. @@ -232,10 +246,12 @@ type LinuxWebAppSlotAuthSettingsFacebookParameters struct { // The app setting name that contains the app_secret value used for Facebook Login. // The app setting name that contains the `app_secret` value used for Facebook Login. Cannot be specified with `app_secret`. + // +kubebuilder:validation:Optional AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. // Specifies a list of OAuth 2.0 scopes to be requested as part of Facebook Login authentication. + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -273,6 +289,7 @@ type LinuxWebAppSlotAuthSettingsGithubParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the GitHub app used for login. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. @@ -282,10 +299,12 @@ type LinuxWebAppSlotAuthSettingsGithubParameters struct { // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for GitHub Login. Cannot be specified with `client_secret`. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -323,6 +342,7 @@ type LinuxWebAppSlotAuthSettingsGoogleParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Google web application. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. @@ -332,10 +352,12 @@ type LinuxWebAppSlotAuthSettingsGoogleParameters struct { // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Google Login. Cannot be specified with `client_secret`. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. // Specifies a list of OAuth 2.0 scopes that will be requested as part of Google Sign-In authentication. If not specified, "openid", "profile", and "email" are used as default scopes. + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -430,6 +452,7 @@ type LinuxWebAppSlotAuthSettingsMicrosoftParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OAuth 2.0 client ID that was created for the app used for authentication. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. @@ -439,10 +462,12 @@ type LinuxWebAppSlotAuthSettingsMicrosoftParameters struct { // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with `client_secret`. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. // The list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, `wl.basic` is used as the default scope. + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -506,57 +531,72 @@ type LinuxWebAppSlotAuthSettingsObservation struct { type LinuxWebAppSlotAuthSettingsParameters struct { // An active_directory block as defined above. + // +kubebuilder:validation:Optional ActiveDirectory []LinuxWebAppSlotAuthSettingsActiveDirectoryParameters `json:"activeDirectory,omitempty" tf:"active_directory,omitempty"` // Specifies a map of login Parameters to send to the OpenID Connect authorization endpoint when a user logs in. // Specifies a map of Login Parameters to send to the OpenID Connect authorization endpoint when a user logs in. + // +kubebuilder:validation:Optional AdditionalLoginParameters map[string]*string `json:"additionalLoginParameters,omitempty" tf:"additional_login_parameters,omitempty"` // Specifies a list of External URLs that can be redirected to as part of logging in or logging out of the Linux Web App. // Specifies a list of External URLs that can be redirected to as part of logging in or logging out of the Windows Web App. + // +kubebuilder:validation:Optional AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` // The default authentication provider to use when multiple providers are configured. Possible values include: BuiltInAuthenticationProviderAzureActiveDirectory, BuiltInAuthenticationProviderFacebook, BuiltInAuthenticationProviderGoogle, BuiltInAuthenticationProviderMicrosoftAccount, BuiltInAuthenticationProviderTwitter, BuiltInAuthenticationProviderGithub // The default authentication provider to use when multiple providers are configured. Possible values include: `AzureActiveDirectory`, `Facebook`, `Google`, `MicrosoftAccount`, `Twitter`, `Github`. + // +kubebuilder:validation:Optional DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` // Should the Authentication / Authorization feature be enabled for the Linux Web App? // Should the Authentication / Authorization feature be enabled? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // A facebook block as defined below. + // +kubebuilder:validation:Optional Facebook []LinuxWebAppSlotAuthSettingsFacebookParameters `json:"facebook,omitempty" tf:"facebook,omitempty"` // A github block as defined below. + // +kubebuilder:validation:Optional Github []LinuxWebAppSlotAuthSettingsGithubParameters `json:"github,omitempty" tf:"github,omitempty"` // A google block as defined below. + // +kubebuilder:validation:Optional Google []LinuxWebAppSlotAuthSettingsGoogleParameters `json:"google,omitempty" tf:"google,omitempty"` // The OpenID Connect Issuer URI that represents the entity that issues access tokens for this Linux Web App. // The OpenID Connect Issuer URI that represents the entity which issues access tokens. + // +kubebuilder:validation:Optional Issuer *string `json:"issuer,omitempty" tf:"issuer,omitempty"` // A microsoft block as defined below. + // +kubebuilder:validation:Optional Microsoft []LinuxWebAppSlotAuthSettingsMicrosoftParameters `json:"microsoft,omitempty" tf:"microsoft,omitempty"` // The RuntimeVersion of the Authentication / Authorization feature in use for the Linux Web App. // The RuntimeVersion of the Authentication / Authorization feature in use. + // +kubebuilder:validation:Optional RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72 hours. // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to `72` hours. + // +kubebuilder:validation:Optional TokenRefreshExtensionHours *float64 `json:"tokenRefreshExtensionHours,omitempty" tf:"token_refresh_extension_hours,omitempty"` // Should the Linux Web App durably store platform-specific security tokens that are obtained during login flows? Defaults to false. // Should the Windows Web App durably store platform-specific security tokens that are obtained during login flows? Defaults to `false`. + // +kubebuilder:validation:Optional TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` // A twitter block as defined below. + // +kubebuilder:validation:Optional Twitter []LinuxWebAppSlotAuthSettingsTwitterParameters `json:"twitter,omitempty" tf:"twitter,omitempty"` // The action to take when an unauthenticated client attempts to access the app. Possible values include: RedirectToLoginPage, AllowAnonymous. // The action to take when an unauthenticated client attempts to access the app. Possible values include: `RedirectToLoginPage`, `AllowAnonymous`. + // +kubebuilder:validation:Optional UnauthenticatedClientAction *string `json:"unauthenticatedClientAction,omitempty" tf:"unauthenticated_client_action,omitempty"` } @@ -586,6 +626,7 @@ type LinuxWebAppSlotAuthSettingsTwitterParameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + // +kubebuilder:validation:Optional ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with consumer_secret_setting_name. @@ -595,6 +636,7 @@ type LinuxWebAppSlotAuthSettingsTwitterParameters struct { // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret`. + // +kubebuilder:validation:Optional ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` } @@ -704,50 +746,62 @@ type LinuxWebAppSlotAuthSettingsV2ActiveDirectoryV2Parameters struct { // The list of allowed Applications for the Default Authorisation Policy. // The list of allowed Applications for the Default Authorisation Policy. + // +kubebuilder:validation:Optional AllowedApplications []*string `json:"allowedApplications,omitempty" tf:"allowed_applications,omitempty"` // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. // Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The list of allowed Group Names for the Default Authorisation Policy. // The list of allowed Group Names for the Default Authorisation Policy. + // +kubebuilder:validation:Optional AllowedGroups []*string `json:"allowedGroups,omitempty" tf:"allowed_groups,omitempty"` // The list of allowed Identities for the Default Authorisation Policy. // The list of allowed Identities for the Default Authorisation Policy. + // +kubebuilder:validation:Optional AllowedIdentities []*string `json:"allowedIdentities,omitempty" tf:"allowed_identities,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Active Directory. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The thumbprint of the certificate used for signing purposes. // The thumbprint of the certificate used for signing purposes. + // +kubebuilder:validation:Optional ClientSecretCertificateThumbprint *string `json:"clientSecretCertificateThumbprint,omitempty" tf:"client_secret_certificate_thumbprint,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The App Setting name that contains the client secret of the Client. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // A list of Allowed Client Applications in the JWT Claim. // A list of Allowed Client Applications in the JWT Claim. + // +kubebuilder:validation:Optional JwtAllowedClientApplications []*string `json:"jwtAllowedClientApplications,omitempty" tf:"jwt_allowed_client_applications,omitempty"` // A list of Allowed Groups in the JWT Claim. // A list of Allowed Groups in the JWT Claim. + // +kubebuilder:validation:Optional JwtAllowedGroups []*string `json:"jwtAllowedGroups,omitempty" tf:"jwt_allowed_groups,omitempty"` // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. + // +kubebuilder:validation:Optional LoginParameters map[string]*string `json:"loginParameters,omitempty" tf:"login_parameters,omitempty"` // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/ // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. `https://login.microsoftonline.com/v2.0/{tenant-guid}/`. + // +kubebuilder:validation:Optional TenantAuthEndpoint *string `json:"tenantAuthEndpoint,omitempty" tf:"tenant_auth_endpoint,omitempty"` // Should the www-authenticate provider should be omitted from the request? Defaults to false // Should the www-authenticate provider should be omitted from the request? Defaults to `false` + // +kubebuilder:validation:Optional WwwAuthenticationDisabled *bool `json:"wwwAuthenticationDisabled,omitempty" tf:"www_authentication_disabled,omitempty"` } @@ -780,10 +834,12 @@ type LinuxWebAppSlotAuthSettingsV2AppleV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Apple web application. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Apple Login. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` } @@ -805,6 +861,7 @@ type LinuxWebAppSlotAuthSettingsV2AzureStaticWebAppV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Static Web App Authentication. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` } @@ -882,22 +939,27 @@ type LinuxWebAppSlotAuthSettingsV2CustomOidcV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with this Custom OIDC. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The name which should be used for this Storage Account. // The name of the Custom OIDC Authentication Provider. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The name of the claim that contains the users name. // The name of the claim that contains the users name. + // +kubebuilder:validation:Optional NameClaimType *string `json:"nameClaimType,omitempty" tf:"name_claim_type,omitempty"` // The app setting name that contains the client_secret value used for the Custom OIDC Login. // The endpoint that contains all the configuration endpoints for this Custom OIDC provider. + // +kubebuilder:validation:Optional OpenIDConfigurationEndpoint *string `json:"openidConfigurationEndpoint,omitempty" tf:"openid_configuration_endpoint,omitempty"` // The list of the scopes that should be requested while authenticating. // The list of the scopes that should be requested while authenticating. + // +kubebuilder:validation:Optional Scopes []*string `json:"scopes,omitempty" tf:"scopes,omitempty"` } @@ -943,18 +1005,22 @@ type LinuxWebAppSlotAuthSettingsV2FacebookV2Parameters struct { // The App ID of the Facebook app used for login. // The App ID of the Facebook app used for login. + // +kubebuilder:validation:Optional AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The app setting name that contains the app_secret value used for Facebook Login. // The app setting name that contains the `app_secret` value used for Facebook Login. + // +kubebuilder:validation:Optional AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` // The version of the Facebook API to be used while logging in. // The version of the Facebook API to be used while logging in. + // +kubebuilder:validation:Optional GraphAPIVersion *string `json:"graphApiVersion,omitempty" tf:"graph_api_version,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of scopes to be requested as part of Facebook Login authentication. + // +kubebuilder:validation:Optional LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } @@ -992,14 +1058,17 @@ type LinuxWebAppSlotAuthSettingsV2GithubV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the GitHub app used for login. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for GitHub Login. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. + // +kubebuilder:validation:Optional LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } @@ -1045,18 +1114,22 @@ type LinuxWebAppSlotAuthSettingsV2GoogleV2Parameters struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. // Specifies a list of Allowed Audiences that will be requested as part of Google Sign-In authentication. + // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Google web application. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Google Login. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of Login scopes that will be requested as part of Google Sign-In authentication. + // +kubebuilder:validation:Optional LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } @@ -1239,46 +1312,57 @@ type LinuxWebAppSlotAuthSettingsV2LoginParameters struct { // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. **Note:** URLs within the current domain are always implicitly allowed. + // +kubebuilder:validation:Optional AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` // The method by which cookies expire. Possible values include: FixedTime, and IdentityProviderDerived. Defaults to FixedTime. // The method by which cookies expire. Possible values include: `FixedTime`, and `IdentityProviderDerived`. Defaults to `FixedTime`. + // +kubebuilder:validation:Optional CookieExpirationConvention *string `json:"cookieExpirationConvention,omitempty" tf:"cookie_expiration_convention,omitempty"` // The time after the request is made when the session cookie should expire. Defaults to 08:00:00. // The time after the request is made when the session cookie should expire. Defaults to `08:00:00`. + // +kubebuilder:validation:Optional CookieExpirationTime *string `json:"cookieExpirationTime,omitempty" tf:"cookie_expiration_time,omitempty"` // The endpoint to which logout requests should be made. // The endpoint to which logout requests should be made. + // +kubebuilder:validation:Optional LogoutEndpoint *string `json:"logoutEndpoint,omitempty" tf:"logout_endpoint,omitempty"` // The time after the request is made when the nonce should expire. Defaults to 00:05:00. // The time after the request is made when the nonce should expire. Defaults to `00:05:00`. + // +kubebuilder:validation:Optional NonceExpirationTime *string `json:"nonceExpirationTime,omitempty" tf:"nonce_expiration_time,omitempty"` // Should the fragments from the request be preserved after the login request is made. Defaults to false. // Should the fragments from the request be preserved after the login request is made. Defaults to `false`. + // +kubebuilder:validation:Optional PreserveURLFragmentsForLogins *bool `json:"preserveUrlFragmentsForLogins,omitempty" tf:"preserve_url_fragments_for_logins,omitempty"` // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72 hours. // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to `72` hours. + // +kubebuilder:validation:Optional TokenRefreshExtensionTime *float64 `json:"tokenRefreshExtensionTime,omitempty" tf:"token_refresh_extension_time,omitempty"` // Should the Token Store configuration Enabled. Defaults to false // Should the Token Store configuration Enabled. Defaults to `false` + // +kubebuilder:validation:Optional TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` // The directory path in the App Filesystem in which the tokens will be stored. // The directory path in the App Filesystem in which the tokens will be stored. + // +kubebuilder:validation:Optional TokenStorePath *string `json:"tokenStorePath,omitempty" tf:"token_store_path,omitempty"` // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. + // +kubebuilder:validation:Optional TokenStoreSASSettingName *string `json:"tokenStoreSasSettingName,omitempty" tf:"token_store_sas_setting_name,omitempty"` // Should the nonce be validated while completing the login flow. Defaults to true. // Should the nonce be validated while completing the login flow. Defaults to `true`. + // +kubebuilder:validation:Optional ValidateNonce *bool `json:"validateNonce,omitempty" tf:"validate_nonce,omitempty"` } @@ -1324,18 +1408,22 @@ type LinuxWebAppSlotAuthSettingsV2MicrosoftV2Parameters struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. // The OAuth 2.0 client ID that was created for the app used for authentication. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // The list of Login scopes that will be requested as part of Microsoft Account authentication. + // +kubebuilder:validation:Optional LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } @@ -1423,81 +1511,103 @@ type LinuxWebAppSlotAuthSettingsV2Observation struct { type LinuxWebAppSlotAuthSettingsV2Parameters struct { // An active_directory_v2 block as defined below. + // +kubebuilder:validation:Optional ActiveDirectoryV2 []LinuxWebAppSlotAuthSettingsV2ActiveDirectoryV2Parameters `json:"activeDirectoryV2,omitempty" tf:"active_directory_v2,omitempty"` // An apple_v2 block as defined below. + // +kubebuilder:validation:Optional AppleV2 []LinuxWebAppSlotAuthSettingsV2AppleV2Parameters `json:"appleV2,omitempty" tf:"apple_v2,omitempty"` // Should the AuthV2 Settings be enabled. Defaults to false. // Should the AuthV2 Settings be enabled. Defaults to `false` + // +kubebuilder:validation:Optional AuthEnabled *bool `json:"authEnabled,omitempty" tf:"auth_enabled,omitempty"` // An azure_static_web_app_v2 block as defined below. + // +kubebuilder:validation:Optional AzureStaticWebAppV2 []LinuxWebAppSlotAuthSettingsV2AzureStaticWebAppV2Parameters `json:"azureStaticWebAppV2,omitempty" tf:"azure_static_web_app_v2,omitempty"` // The path to the App Auth settings. // The path to the App Auth settings. **Note:** Relative Paths are evaluated from the Site Root directory. + // +kubebuilder:validation:Optional ConfigFilePath *string `json:"configFilePath,omitempty" tf:"config_file_path,omitempty"` // Zero or more custom_oidc_v2 blocks as defined below. + // +kubebuilder:validation:Optional CustomOidcV2 []LinuxWebAppSlotAuthSettingsV2CustomOidcV2Parameters `json:"customOidcV2,omitempty" tf:"custom_oidc_v2,omitempty"` // The Default Authentication Provider to use when more than one Authentication Provider is configured and the unauthenticated_action is set to RedirectToLoginPage. // The Default Authentication Provider to use when the `unauthenticated_action` is set to `RedirectToLoginPage`. + // +kubebuilder:validation:Optional DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` // The paths which should be excluded from the unauthenticated_action when it is set to RedirectToLoginPage. // The paths which should be excluded from the `unauthenticated_action` when it is set to `RedirectToLoginPage`. + // +kubebuilder:validation:Optional ExcludedPaths []*string `json:"excludedPaths,omitempty" tf:"excluded_paths,omitempty"` // A facebook_v2 block as defined below. + // +kubebuilder:validation:Optional FacebookV2 []LinuxWebAppSlotAuthSettingsV2FacebookV2Parameters `json:"facebookV2,omitempty" tf:"facebook_v2,omitempty"` // The convention used to determine the url of the request made. Possible values include ForwardProxyConventionNoProxy, ForwardProxyConventionStandard, ForwardProxyConventionCustom. Defaults to ForwardProxyConventionNoProxy. // The convention used to determine the url of the request made. Possible values include `ForwardProxyConventionNoProxy`, `ForwardProxyConventionStandard`, `ForwardProxyConventionCustom`. Defaults to `ForwardProxyConventionNoProxy` + // +kubebuilder:validation:Optional ForwardProxyConvention *string `json:"forwardProxyConvention,omitempty" tf:"forward_proxy_convention,omitempty"` // The name of the custom header containing the host of the request. // The name of the header containing the host of the request. + // +kubebuilder:validation:Optional ForwardProxyCustomHostHeaderName *string `json:"forwardProxyCustomHostHeaderName,omitempty" tf:"forward_proxy_custom_host_header_name,omitempty"` // The name of the custom header containing the scheme of the request. // The name of the header containing the scheme of the request. + // +kubebuilder:validation:Optional ForwardProxyCustomSchemeHeaderName *string `json:"forwardProxyCustomSchemeHeaderName,omitempty" tf:"forward_proxy_custom_scheme_header_name,omitempty"` // A github_v2 block as defined below. + // +kubebuilder:validation:Optional GithubV2 []LinuxWebAppSlotAuthSettingsV2GithubV2Parameters `json:"githubV2,omitempty" tf:"github_v2,omitempty"` // A google_v2 block as defined below. + // +kubebuilder:validation:Optional GoogleV2 []LinuxWebAppSlotAuthSettingsV2GoogleV2Parameters `json:"googleV2,omitempty" tf:"google_v2,omitempty"` // The prefix that should precede all the authentication and authorisation paths. Defaults to /.auth. // The prefix that should precede all the authentication and authorisation paths. Defaults to `/.auth` + // +kubebuilder:validation:Optional HTTPRouteAPIPrefix *string `json:"httpRouteApiPrefix,omitempty" tf:"http_route_api_prefix,omitempty"` // A login block as defined below. + // +kubebuilder:validation:Optional Login []LinuxWebAppSlotAuthSettingsV2LoginParameters `json:"login,omitempty" tf:"login,omitempty"` // A microsoft_v2 block as defined below. + // +kubebuilder:validation:Optional MicrosoftV2 []LinuxWebAppSlotAuthSettingsV2MicrosoftV2Parameters `json:"microsoftV2,omitempty" tf:"microsoft_v2,omitempty"` // Should the authentication flow be used for all requests. // Should the authentication flow be used for all requests. + // +kubebuilder:validation:Optional RequireAuthentication *bool `json:"requireAuthentication,omitempty" tf:"require_authentication,omitempty"` // Should HTTPS be required on connections? Defaults to true. // Should HTTPS be required on connections? Defaults to true. + // +kubebuilder:validation:Optional RequireHTTPS *bool `json:"requireHttps,omitempty" tf:"require_https,omitempty"` // The Runtime Version of the Authentication and Authorisation feature of this App. Defaults to ~1. // The Runtime Version of the Authentication and Authorisation feature of this App. Defaults to `~1` + // +kubebuilder:validation:Optional RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` // A twitter_v2 block as defined below. + // +kubebuilder:validation:Optional TwitterV2 []LinuxWebAppSlotAuthSettingsV2TwitterV2Parameters `json:"twitterV2,omitempty" tf:"twitter_v2,omitempty"` // The action to take for requests made without authentication. Possible values include RedirectToLoginPage, AllowAnonymous, Return401, and Return403. Defaults to RedirectToLoginPage. // The action to take for requests made without authentication. Possible values include `RedirectToLoginPage`, `AllowAnonymous`, `Return401`, and `Return403`. Defaults to `RedirectToLoginPage`. + // +kubebuilder:validation:Optional UnauthenticatedAction *string `json:"unauthenticatedAction,omitempty" tf:"unauthenticated_action,omitempty"` } @@ -1527,10 +1637,12 @@ type LinuxWebAppSlotAuthSettingsV2TwitterV2Parameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + // +kubebuilder:validation:Optional ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. + // +kubebuilder:validation:Optional ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` } @@ -1566,13 +1678,16 @@ type LinuxWebAppSlotBackupParameters struct { // Should this backup job be enabled? Defaults to true. // Should this backup job be enabled? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The name which should be used for this Backup. // The name which should be used for this Backup. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // An schedule block as defined below. + // +kubebuilder:validation:Optional Schedule []LinuxWebAppSlotBackupScheduleParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` // The SAS URL to the container. @@ -1634,22 +1749,27 @@ type LinuxWebAppSlotBackupScheduleParameters struct { // How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and frequency_unit should be set to Day). // How often the backup should be executed (e.g. for weekly backup, this should be set to `7` and `frequency_unit` should be set to `Day`). + // +kubebuilder:validation:Optional FrequencyInterval *float64 `json:"frequencyInterval,omitempty" tf:"frequency_interval,omitempty"` // The unit of time for how often the backup should take place. Possible values include: Day, Hour // The unit of time for how often the backup should take place. Possible values include: `Day` and `Hour`. + // +kubebuilder:validation:Optional FrequencyUnit *string `json:"frequencyUnit,omitempty" tf:"frequency_unit,omitempty"` // Should the service keep at least one backup, regardless of the age of backup? Defaults to false. // Should the service keep at least one backup, regardless of age of backup. Defaults to `false`. + // +kubebuilder:validation:Optional KeepAtLeastOneBackup *bool `json:"keepAtLeastOneBackup,omitempty" tf:"keep_at_least_one_backup,omitempty"` // After how many days backups should be deleted. Defaults to 30. // After how many days backups should be deleted. + // +kubebuilder:validation:Optional RetentionPeriodDays *float64 `json:"retentionPeriodDays,omitempty" tf:"retention_period_days,omitempty"` // When the schedule should start working in RFC-3339 format. // When the schedule should start working in RFC-3339 format. + // +kubebuilder:validation:Optional StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` } @@ -1679,10 +1799,12 @@ type LinuxWebAppSlotConnectionStringParameters struct { // The name of the Connection String. // The name which should be used for this Connection. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of database. Possible values include APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, PostgreSQL, RedisCache, ServiceBus, SQLAzure, and SQLServer. // Type of database. Possible values include: `MySQL`, `SQLServer`, `SQLAzure`, `Custom`, `NotificationHub`, `ServiceBus`, `EventHub`, `APIHub`, `DocDb`, `RedisCache`, and `PostgreSQL`. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // The connection string value. @@ -1718,9 +1840,11 @@ type LinuxWebAppSlotIdentityObservation struct { type LinuxWebAppSlotIdentityParameters struct { // A list of User Assigned Managed Identity IDs to be assigned to this Linux Web App Slot. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Linux Web App Slot. Possible values are SystemAssigned, UserAssigned and SystemAssigned, UserAssigned (to enable both). + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -1822,15 +1946,19 @@ type LinuxWebAppSlotLogsObservation struct { type LinuxWebAppSlotLogsParameters struct { // A application_logs block as defined above. + // +kubebuilder:validation:Optional ApplicationLogs []LogsApplicationLogsParameters `json:"applicationLogs,omitempty" tf:"application_logs,omitempty"` // Should detailed error messages be enabled? + // +kubebuilder:validation:Optional DetailedErrorMessages *bool `json:"detailedErrorMessages,omitempty" tf:"detailed_error_messages,omitempty"` // Should the failed request tracing be enabled? + // +kubebuilder:validation:Optional FailedRequestTracing *bool `json:"failedRequestTracing,omitempty" tf:"failed_request_tracing,omitempty"` // An http_logs block as defined above. + // +kubebuilder:validation:Optional HTTPLogs []LogsHTTPLogsParameters `json:"httpLogs,omitempty" tf:"http_logs,omitempty"` } @@ -1949,61 +2077,80 @@ type LinuxWebAppSlotParameters struct { AppServiceIDSelector *v1.Selector `json:"appServiceIdSelector,omitempty" tf:"-"` // A map of key-value pairs of App Settings. + // +kubebuilder:validation:Optional AppSettings map[string]*string `json:"appSettings,omitempty" tf:"app_settings,omitempty"` // An auth_settings block as defined below. + // +kubebuilder:validation:Optional AuthSettings []LinuxWebAppSlotAuthSettingsParameters `json:"authSettings,omitempty" tf:"auth_settings,omitempty"` // An auth_settings_v2 block as defined below. + // +kubebuilder:validation:Optional AuthSettingsV2 []LinuxWebAppSlotAuthSettingsV2Parameters `json:"authSettingsV2,omitempty" tf:"auth_settings_v2,omitempty"` // A backup block as defined below. + // +kubebuilder:validation:Optional Backup []LinuxWebAppSlotBackupParameters `json:"backup,omitempty" tf:"backup,omitempty"` // Should Client Affinity be enabled? + // +kubebuilder:validation:Optional ClientAffinityEnabled *bool `json:"clientAffinityEnabled,omitempty" tf:"client_affinity_enabled,omitempty"` // Should Client Certificates be enabled? + // +kubebuilder:validation:Optional ClientCertificateEnabled *bool `json:"clientCertificateEnabled,omitempty" tf:"client_certificate_enabled,omitempty"` // Paths to exclude when using client certificates, separated by ; // Paths to exclude when using client certificates, separated by ; + // +kubebuilder:validation:Optional ClientCertificateExclusionPaths *string `json:"clientCertificateExclusionPaths,omitempty" tf:"client_certificate_exclusion_paths,omitempty"` // The Client Certificate mode. Possible values are Required, Optional, and OptionalInteractiveUser. This property has no effect when client_cert_enabled is false + // +kubebuilder:validation:Optional ClientCertificateMode *string `json:"clientCertificateMode,omitempty" tf:"client_certificate_mode,omitempty"` // One or more connection_string blocks as defined below. + // +kubebuilder:validation:Optional ConnectionString []LinuxWebAppSlotConnectionStringParameters `json:"connectionString,omitempty" tf:"connection_string,omitempty"` // Should the Linux Web App be enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Should the Linux Web App require HTTPS connections. + // +kubebuilder:validation:Optional HTTPSOnly *bool `json:"httpsOnly,omitempty" tf:"https_only,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []LinuxWebAppSlotIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // The User Assigned Identity ID used for accessing KeyVault secrets. The identity must be assigned to the application in the identity block. For more information see - Access vaults with a user-assigned identity. + // +kubebuilder:validation:Optional KeyVaultReferenceIdentityID *string `json:"keyVaultReferenceIdentityId,omitempty" tf:"key_vault_reference_identity_id,omitempty"` // A logs block as defined below. + // +kubebuilder:validation:Optional Logs []LinuxWebAppSlotLogsParameters `json:"logs,omitempty" tf:"logs,omitempty"` // The name which should be used for this Linux Web App Slot. Changing this forces a new Linux Web App Slot to be created. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The ID of the Service Plan in which to run this slot. If not specified the same Service Plan as the Linux Web App will be used. + // +kubebuilder:validation:Optional ServicePlanID *string `json:"servicePlanId,omitempty" tf:"service_plan_id,omitempty"` // A site_config block as defined below. + // +kubebuilder:validation:Optional SiteConfig []LinuxWebAppSlotSiteConfigParameters `json:"siteConfig,omitempty" tf:"site_config,omitempty"` // One or more storage_account blocks as defined below. + // +kubebuilder:validation:Optional StorageAccount []LinuxWebAppSlotStorageAccountParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` // A mapping of tags that should be assigned to the Linux Web App. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The subnet id which will be used by this Web App Slot for regional virtual network integration. @@ -2022,6 +2169,7 @@ type LinuxWebAppSlotParameters struct { // The local path and filename of the Zip packaged application to deploy to this Linux Web App. // The local path and filename of the Zip packaged application to deploy to this Windows Web App. **Note:** Using this value requires `WEBSITE_RUN_FROM_PACKAGE=1` on the App in `app_settings`. + // +kubebuilder:validation:Optional ZipDeployFile *string `json:"zipDeployFile,omitempty" tf:"zip_deploy_file,omitempty"` } @@ -2100,36 +2248,47 @@ type LinuxWebAppSlotSiteConfigApplicationStackObservation struct { type LinuxWebAppSlotSiteConfigApplicationStackParameters struct { // The Docker image reference, including repository host as needed. + // +kubebuilder:validation:Optional DockerImage *string `json:"dockerImage,omitempty" tf:"docker_image,omitempty"` // The image Tag to use. e.g. latest. + // +kubebuilder:validation:Optional DockerImageTag *string `json:"dockerImageTag,omitempty" tf:"docker_image_tag,omitempty"` // The version of .NET to use. Possible values include 3.1, 5.0, 6.0 and 7.0. + // +kubebuilder:validation:Optional DotnetVersion *string `json:"dotnetVersion,omitempty" tf:"dotnet_version,omitempty"` // The version of Go to use. Possible values include 1.18, and 1.19. + // +kubebuilder:validation:Optional GoVersion *string `json:"goVersion,omitempty" tf:"go_version,omitempty"` // The Java server type. Possible values include JAVA, TOMCAT, and JBOSSEAP. + // +kubebuilder:validation:Optional JavaServer *string `json:"javaServer,omitempty" tf:"java_server,omitempty"` // The Version of the java_server to use. + // +kubebuilder:validation:Optional JavaServerVersion *string `json:"javaServerVersion,omitempty" tf:"java_server_version,omitempty"` // The Version of Java to use. Possible values include 8, 11, and 17. + // +kubebuilder:validation:Optional JavaVersion *string `json:"javaVersion,omitempty" tf:"java_version,omitempty"` // The version of Node to run. Possible values include 12-lts, 14-lts, 16-lts, and 18-lts. This property conflicts with java_version. + // +kubebuilder:validation:Optional NodeVersion *string `json:"nodeVersion,omitempty" tf:"node_version,omitempty"` // The version of PHP to run. Possible values are 8.0, 8.1 and 8.2. + // +kubebuilder:validation:Optional PHPVersion *string `json:"phpVersion,omitempty" tf:"php_version,omitempty"` // The version of Python to run. Possible values include 3.7, 3.8, 3.9, 3.10 and 3.11. + // +kubebuilder:validation:Optional PythonVersion *string `json:"pythonVersion,omitempty" tf:"python_version,omitempty"` // Te version of Ruby to run. Possible values include 2.6 and 2.7. + // +kubebuilder:validation:Optional RubyVersion *string `json:"rubyVersion,omitempty" tf:"ruby_version,omitempty"` } @@ -2159,10 +2318,12 @@ type LinuxWebAppSlotSiteConfigCorsParameters struct { // Specifies a list of origins that should be allowed to make cross-origin calls. // Specifies a list of origins that should be allowed to make cross-origin calls. + // +kubebuilder:validation:Optional AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` // Whether CORS requests with credentials are allowed. Defaults to false // Are credentials allowed in CORS requests? Defaults to `false`. + // +kubebuilder:validation:Optional SupportCredentials *bool `json:"supportCredentials,omitempty" tf:"support_credentials,omitempty"` } @@ -2199,15 +2360,19 @@ type LinuxWebAppSlotSiteConfigIPRestrictionHeadersObservation struct { type LinuxWebAppSlotSiteConfigIPRestrictionHeadersParameters struct { // Specifies a list of Azure Front Door IDs. + // +kubebuilder:validation:Optional XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` // Specifies if a Front Door Health Probe should be expected. The only possible value is 1. + // +kubebuilder:validation:Optional XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` // Specifies a list of addresses for which matching should be applied. Omitting this value means allow any. + // +kubebuilder:validation:Optional XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` // Specifies a list of Hosts for which matching should be applied. + // +kubebuilder:validation:Optional XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } @@ -2271,25 +2436,31 @@ type LinuxWebAppSlotSiteConfigIPRestrictionParameters struct { // The action to take. Possible values are Allow or Deny. // The action to take. Possible values are `Allow` or `Deny`. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // A headers block as defined above. + // +kubebuilder:validation:Optional Headers []LinuxWebAppSlotSiteConfigIPRestrictionHeadersParameters `json:"headers,omitempty" tf:"headers,omitempty"` // The CIDR notation of the IP or IP Range to match. For example: 10.0.0.0/24 or 192.168.10.1/32 // The CIDR notation of the IP or IP Range to match. For example: `10.0.0.0/24` or `192.168.10.1/32` or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22` + // +kubebuilder:validation:Optional IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` // The name which should be used for this Storage Account. // The name which should be used for this `ip_restriction`. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The priority value of this ip_restriction. Defaults to 65000. // The priority value of this `ip_restriction`. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // The Service Tag used for this IP Restriction. // The Service Tag used for this IP Restriction. + // +kubebuilder:validation:Optional ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag,omitempty"` // The subnet id which will be used by this Web App Slot for regional virtual network integration. @@ -2508,95 +2679,125 @@ type LinuxWebAppSlotSiteConfigObservation struct { type LinuxWebAppSlotSiteConfigParameters struct { // The URL to the API Definition for this Linux Web App Slot. + // +kubebuilder:validation:Optional APIDefinitionURL *string `json:"apiDefinitionUrl,omitempty" tf:"api_definition_url,omitempty"` // The API Management API ID this Linux Web App Slot is associated with. + // +kubebuilder:validation:Optional APIManagementAPIID *string `json:"apiManagementApiId,omitempty" tf:"api_management_api_id,omitempty"` // If this Linux Web App is Always On enabled. Defaults to true. + // +kubebuilder:validation:Optional AlwaysOn *bool `json:"alwaysOn,omitempty" tf:"always_on,omitempty"` // The App command line to launch. + // +kubebuilder:validation:Optional AppCommandLine *string `json:"appCommandLine,omitempty" tf:"app_command_line,omitempty"` // A application_stack block as defined above. + // +kubebuilder:validation:Optional ApplicationStack []LinuxWebAppSlotSiteConfigApplicationStackParameters `json:"applicationStack,omitempty" tf:"application_stack,omitempty"` // Should Auto heal rules be enabled? Required with auto_heal_setting. + // +kubebuilder:validation:Optional AutoHealEnabled *bool `json:"autoHealEnabled,omitempty" tf:"auto_heal_enabled,omitempty"` // A auto_heal_setting block as defined above. Required with auto_heal. + // +kubebuilder:validation:Optional AutoHealSetting []SiteConfigAutoHealSettingParameters `json:"autoHealSetting,omitempty" tf:"auto_heal_setting,omitempty"` // The Linux Web App Slot Name to automatically swap to when deployment to that slot is successfully completed. + // +kubebuilder:validation:Optional AutoSwapSlotName *string `json:"autoSwapSlotName,omitempty" tf:"auto_swap_slot_name,omitempty"` // The Client ID of the Managed Service Identity to use for connections to the Azure Container Registry. + // +kubebuilder:validation:Optional ContainerRegistryManagedIdentityClientID *string `json:"containerRegistryManagedIdentityClientId,omitempty" tf:"container_registry_managed_identity_client_id,omitempty"` // Should connections for Azure Container Registry use Managed Identity. + // +kubebuilder:validation:Optional ContainerRegistryUseManagedIdentity *bool `json:"containerRegistryUseManagedIdentity,omitempty" tf:"container_registry_use_managed_identity,omitempty"` // A cors block as defined above. + // +kubebuilder:validation:Optional Cors []LinuxWebAppSlotSiteConfigCorsParameters `json:"cors,omitempty" tf:"cors,omitempty"` // Specifies a list of Default Documents for the Linux Web App. + // +kubebuilder:validation:Optional DefaultDocuments []*string `json:"defaultDocuments,omitempty" tf:"default_documents,omitempty"` // The State of FTP / FTPS service. Possible values include AllAllowed, FtpsOnly, and Disabled. + // +kubebuilder:validation:Optional FtpsState *string `json:"ftpsState,omitempty" tf:"ftps_state,omitempty"` // The amount of time in minutes that a node can be unhealthy before being removed from the load balancer. Possible values are between 2 and 10. Only valid in conjunction with health_check_path. // The amount of time in minutes that a node is unhealthy before being removed from the load balancer. Possible values are between `2` and `10`. Defaults to `10`. Only valid in conjunction with `health_check_path` + // +kubebuilder:validation:Optional HealthCheckEvictionTimeInMin *float64 `json:"healthCheckEvictionTimeInMin,omitempty" tf:"health_check_eviction_time_in_min,omitempty"` // The path to the Health Check. + // +kubebuilder:validation:Optional HealthCheckPath *string `json:"healthCheckPath,omitempty" tf:"health_check_path,omitempty"` // Should the HTTP2 be enabled? + // +kubebuilder:validation:Optional Http2Enabled *bool `json:"http2Enabled,omitempty" tf:"http2_enabled,omitempty"` // One or more ip_restriction blocks as defined above. + // +kubebuilder:validation:Optional IPRestriction []LinuxWebAppSlotSiteConfigIPRestrictionParameters `json:"ipRestriction,omitempty" tf:"ip_restriction,omitempty"` // The Site load balancing. Possible values include: WeightedRoundRobin, LeastRequests, LeastResponseTime, WeightedTotalTraffic, RequestHash, PerSiteRoundRobin. Defaults to LeastRequests if omitted. + // +kubebuilder:validation:Optional LoadBalancingMode *string `json:"loadBalancingMode,omitempty" tf:"load_balancing_mode,omitempty"` // Use Local MySQL. Defaults to false. + // +kubebuilder:validation:Optional LocalMySQLEnabled *bool `json:"localMysqlEnabled,omitempty" tf:"local_mysql_enabled,omitempty"` // Managed pipeline mode. Possible values include: Integrated, Classic. + // +kubebuilder:validation:Optional ManagedPipelineMode *string `json:"managedPipelineMode,omitempty" tf:"managed_pipeline_mode,omitempty"` // The configures the minimum version of TLS required for SSL requests. Possible values include: 1.0, 1.1, and 1.2. Defaults to 1.2. + // +kubebuilder:validation:Optional MinimumTLSVersion *string `json:"minimumTlsVersion,omitempty" tf:"minimum_tls_version,omitempty"` // Should Remote Debugging be enabled? Defaults to false. + // +kubebuilder:validation:Optional RemoteDebuggingEnabled *bool `json:"remoteDebuggingEnabled,omitempty" tf:"remote_debugging_enabled,omitempty"` // The Remote Debugging Version. Possible values include VS2017 and VS2019 + // +kubebuilder:validation:Optional RemoteDebuggingVersion *string `json:"remoteDebuggingVersion,omitempty" tf:"remote_debugging_version,omitempty"` // One or more scm_ip_restriction blocks as defined above. + // +kubebuilder:validation:Optional ScmIPRestriction []LinuxWebAppSlotSiteConfigScmIPRestrictionParameters `json:"scmIpRestriction,omitempty" tf:"scm_ip_restriction,omitempty"` // The configures the minimum version of TLS required for SSL requests to the SCM site Possible values include: 1.0, 1.1, and 1.2. Defaults to 1.2. + // +kubebuilder:validation:Optional ScmMinimumTLSVersion *string `json:"scmMinimumTlsVersion,omitempty" tf:"scm_minimum_tls_version,omitempty"` // Should the Linux Web App ip_restriction configuration be used for the SCM also. + // +kubebuilder:validation:Optional ScmUseMainIPRestriction *bool `json:"scmUseMainIpRestriction,omitempty" tf:"scm_use_main_ip_restriction,omitempty"` // Should the Linux Web App use a 32-bit worker? Defaults to true. + // +kubebuilder:validation:Optional Use32BitWorker *bool `json:"use32BitWorker,omitempty" tf:"use_32_bit_worker,omitempty"` // Should all outbound traffic have NAT Gateways, Network Security Groups and User Defined Routes applied? Defaults to false. // Should all outbound traffic to have Virtual Network Security Groups and User Defined Routes applied? Defaults to `false`. + // +kubebuilder:validation:Optional VnetRouteAllEnabled *bool `json:"vnetRouteAllEnabled,omitempty" tf:"vnet_route_all_enabled,omitempty"` // Should Web Sockets be enabled? Defaults to false. + // +kubebuilder:validation:Optional WebsocketsEnabled *bool `json:"websocketsEnabled,omitempty" tf:"websockets_enabled,omitempty"` // The number of Workers for this Linux App Service Slot. + // +kubebuilder:validation:Optional WorkerCount *float64 `json:"workerCount,omitempty" tf:"worker_count,omitempty"` } @@ -2633,15 +2834,19 @@ type LinuxWebAppSlotSiteConfigScmIPRestrictionHeadersObservation struct { type LinuxWebAppSlotSiteConfigScmIPRestrictionHeadersParameters struct { // Specifies a list of Azure Front Door IDs. + // +kubebuilder:validation:Optional XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` // Specifies if a Front Door Health Probe should be expected. The only possible value is 1. + // +kubebuilder:validation:Optional XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` // Specifies a list of addresses for which matching should be applied. Omitting this value means allow any. + // +kubebuilder:validation:Optional XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` // Specifies a list of Hosts for which matching should be applied. + // +kubebuilder:validation:Optional XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } @@ -2705,25 +2910,31 @@ type LinuxWebAppSlotSiteConfigScmIPRestrictionParameters struct { // The action to take. Possible values are Allow or Deny. // The action to take. Possible values are `Allow` or `Deny`. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // A headers block as defined above. + // +kubebuilder:validation:Optional Headers []LinuxWebAppSlotSiteConfigScmIPRestrictionHeadersParameters `json:"headers,omitempty" tf:"headers,omitempty"` // The CIDR notation of the IP or IP Range to match. For example: 10.0.0.0/24 or 192.168.10.1/32 // The CIDR notation of the IP or IP Range to match. For example: `10.0.0.0/24` or `192.168.10.1/32` or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22` + // +kubebuilder:validation:Optional IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` // The name which should be used for this Storage Account. // The name which should be used for this `ip_restriction`. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The priority value of this ip_restriction. Defaults to 65000. // The priority value of this `ip_restriction`. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // The Service Tag used for this IP Restriction. // The Service Tag used for this IP Restriction. + // +kubebuilder:validation:Optional ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag,omitempty"` // The subnet id which will be used by this Web App Slot for regional virtual network integration. @@ -2800,18 +3011,23 @@ type LinuxWebAppSlotStorageAccountParameters struct { AccessKeySecretRef v1.SecretKeySelector `json:"accessKeySecretRef" tf:"-"` // The Name of the Storage Account. + // +kubebuilder:validation:Optional AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` // The path at which to mount the storage share. + // +kubebuilder:validation:Optional MountPath *string `json:"mountPath,omitempty" tf:"mount_path,omitempty"` // The name which should be used for this Storage Account. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Name of the File Share or Container Name for Blob storage. + // +kubebuilder:validation:Optional ShareName *string `json:"shareName,omitempty" tf:"share_name,omitempty"` // The Azure Storage Type. Possible values include AzureFiles and AzureBlob + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -2836,9 +3052,11 @@ type LogsApplicationLogsObservation struct { type LogsApplicationLogsParameters struct { // A azure_blob_storage_http block as defined above. + // +kubebuilder:validation:Optional AzureBlobStorage []ApplicationLogsAzureBlobStorageParameters `json:"azureBlobStorage,omitempty" tf:"azure_blob_storage,omitempty"` // Log level. Possible values include Verbose, Information, Warning, and Error. + // +kubebuilder:validation:Optional FileSystemLevel *string `json:"fileSystemLevel,omitempty" tf:"file_system_level,omitempty"` } @@ -2857,6 +3075,7 @@ type LogsHTTPLogsAzureBlobStorageObservation struct { type LogsHTTPLogsAzureBlobStorageParameters struct { // The retention period in days. A values of 0 means no retention. + // +kubebuilder:validation:Optional RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` // SAS url to an Azure blob container with read/write/list/delete permissions. @@ -2885,9 +3104,11 @@ type LogsHTTPLogsObservation struct { type LogsHTTPLogsParameters struct { // A azure_blob_storage_http block as defined above. + // +kubebuilder:validation:Optional AzureBlobStorage []LogsHTTPLogsAzureBlobStorageParameters `json:"azureBlobStorage,omitempty" tf:"azure_blob_storage,omitempty"` // A file_system block as defined above. + // +kubebuilder:validation:Optional FileSystem []HTTPLogsFileSystemParameters `json:"fileSystem,omitempty" tf:"file_system,omitempty"` } @@ -2912,9 +3133,11 @@ type SiteConfigAutoHealSettingObservation struct { type SiteConfigAutoHealSettingParameters struct { // The action to take. Possible values are Allow or Deny. + // +kubebuilder:validation:Optional Action []AutoHealSettingActionParameters `json:"action,omitempty" tf:"action,omitempty"` // A trigger block as defined below. + // +kubebuilder:validation:Optional Trigger []AutoHealSettingTriggerParameters `json:"trigger,omitempty" tf:"trigger,omitempty"` } @@ -2939,9 +3162,11 @@ type TriggerRequestsObservation struct { type TriggerRequestsParameters struct { // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. + // +kubebuilder:validation:Optional Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The time interval in the form hh:mm:ss. + // +kubebuilder:validation:Optional Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` } @@ -2978,15 +3203,19 @@ type TriggerSlowRequestObservation struct { type TriggerSlowRequestParameters struct { // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. + // +kubebuilder:validation:Optional Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The time interval in the form hh:mm:ss. + // +kubebuilder:validation:Optional Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` // The path to which this rule status code applies. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` // The threshold of time passed to qualify as a Slow Request in hh:mm:ss. + // +kubebuilder:validation:Optional TimeTaken *string `json:"timeTaken,omitempty" tf:"time_taken,omitempty"` } @@ -3035,21 +3264,27 @@ type TriggerStatusCodeObservation struct { type TriggerStatusCodeParameters struct { // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. + // +kubebuilder:validation:Optional Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The time interval in the form hh:mm:ss. + // +kubebuilder:validation:Optional Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` // The path to which this rule status code applies. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` // The status code for this rule, accepts single status codes and status code ranges. e.g. 500 or 400-499. Possible values are integers between 101 and 599 + // +kubebuilder:validation:Optional StatusCodeRange *string `json:"statusCodeRange,omitempty" tf:"status_code_range,omitempty"` // The Request Sub Status of the Status Code. + // +kubebuilder:validation:Optional SubStatus *float64 `json:"subStatus,omitempty" tf:"sub_status,omitempty"` // The Win32 Status Code of the Request. + // +kubebuilder:validation:Optional Win32Status *string `json:"win32Status,omitempty" tf:"win32_status,omitempty"` } diff --git a/apis/web/v1beta1/zz_serviceplan_types.go b/apis/web/v1beta1/zz_serviceplan_types.go index ae199e033..d4d80902b 100755 --- a/apis/web/v1beta1/zz_serviceplan_types.go +++ b/apis/web/v1beta1/zz_serviceplan_types.go @@ -88,18 +88,23 @@ type ServicePlanObservation struct { type ServicePlanParameters struct { // The ID of the App Service Environment to create this Service Plan in. + // +kubebuilder:validation:Optional AppServiceEnvironmentID *string `json:"appServiceEnvironmentId,omitempty" tf:"app_service_environment_id,omitempty"` // The Azure Region where the Service Plan should exist. Changing this forces a new AppService to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The maximum number of workers to use in an Elastic SKU Plan. Cannot be set unless using an Elastic SKU. + // +kubebuilder:validation:Optional MaximumElasticWorkerCount *float64 `json:"maximumElasticWorkerCount,omitempty" tf:"maximum_elastic_worker_count,omitempty"` // The O/S type for the App Services to be hosted in this plan. Possible values include Windows, Linux, and WindowsContainer. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional OsType *string `json:"osType,omitempty" tf:"os_type,omitempty"` // Should Per Site Scaling be enabled. Defaults to false. + // +kubebuilder:validation:Optional PerSiteScalingEnabled *bool `json:"perSiteScalingEnabled,omitempty" tf:"per_site_scaling_enabled,omitempty"` // The name of the Resource Group where the AppService should exist. Changing this forces a new AppService to be created. @@ -116,15 +121,19 @@ type ServicePlanParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // The SKU for the plan. Possible values include B1, B2, B3, D1, F1, I1, I2, I3, I1v2, I2v2, I3v2, I4v2, I5v2, I6v2, P1v2, P2v2, P3v2, P1v3, P2v3, P3v3, P1mv3, P2mv3, P3mv3, P4mv3, P5mv3, S1, S2, S3, SHARED, EP1, EP2, EP3, WS1, WS2, WS3, and Y1. + // +kubebuilder:validation:Optional SkuName *string `json:"skuName,omitempty" tf:"sku_name,omitempty"` // A mapping of tags which should be assigned to the AppService. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The number of Workers (instances) to be allocated. + // +kubebuilder:validation:Optional WorkerCount *float64 `json:"workerCount,omitempty" tf:"worker_count,omitempty"` // Should the Service Plan balance across Availability Zones in the region. Changing this forces a new resource to be created. + // +kubebuilder:validation:Optional ZoneBalancingEnabled *bool `json:"zoneBalancingEnabled,omitempty" tf:"zone_balancing_enabled,omitempty"` } diff --git a/apis/web/v1beta1/zz_sourcecontroltoken_types.go b/apis/web/v1beta1/zz_sourcecontroltoken_types.go index 3ec1ab024..d4e69024e 100755 --- a/apis/web/v1beta1/zz_sourcecontroltoken_types.go +++ b/apis/web/v1beta1/zz_sourcecontroltoken_types.go @@ -39,6 +39,7 @@ type SourceControlTokenParameters struct { TokenSecretSecretRef *v1.SecretKeySelector `json:"tokenSecretSecretRef,omitempty" tf:"-"` // The Token type. Possible values include Bitbucket, Dropbox, Github, and OneDrive. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/web/v1beta1/zz_staticsite_types.go b/apis/web/v1beta1/zz_staticsite_types.go index b41bad76f..c4e4628d9 100755 --- a/apis/web/v1beta1/zz_staticsite_types.go +++ b/apis/web/v1beta1/zz_staticsite_types.go @@ -40,9 +40,11 @@ type StaticSiteIdentityObservation struct { type StaticSiteIdentityParameters struct { // A list of Managed Identity IDs which should be assigned to this Static Site resource. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // The Type of Managed Identity assigned to this Static Site resource. Possible values are SystemAssigned, UserAssigned and SystemAssigned, UserAssigned. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -94,9 +96,11 @@ type StaticSiteObservation struct { type StaticSiteParameters struct { // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []StaticSiteIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // The Azure Region where the Static Web App should exist. Changing this forces a new Static Web App to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the Resource Group where the Static Web App should exist. Changing this forces a new Static Web App to be created. @@ -113,12 +117,15 @@ type StaticSiteParameters struct { ResourceGroupNameSelector *v1.Selector `json:"resourceGroupNameSelector,omitempty" tf:"-"` // Specifies the SKU size of the Static Web App. Possible values are Free or Standard. Defaults to Free. + // +kubebuilder:validation:Optional SkuSize *string `json:"skuSize,omitempty" tf:"sku_size,omitempty"` // Specifies the SKU tier of the Static Web App. Possible values are Free or Standard. Defaults to Free. + // +kubebuilder:validation:Optional SkuTier *string `json:"skuTier,omitempty" tf:"sku_tier,omitempty"` // A mapping of tags to assign to the resource. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` } diff --git a/apis/web/v1beta1/zz_windowsfunctionapp_types.go b/apis/web/v1beta1/zz_windowsfunctionapp_types.go index 9924c6b26..2c5acc3c7 100755 --- a/apis/web/v1beta1/zz_windowsfunctionapp_types.go +++ b/apis/web/v1beta1/zz_windowsfunctionapp_types.go @@ -47,10 +47,12 @@ type WindowsFunctionAppAuthSettingsActiveDirectoryParameters struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. // Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Active Directory. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. @@ -60,6 +62,7 @@ type WindowsFunctionAppAuthSettingsActiveDirectoryParameters struct { // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The App Setting name that contains the client secret of the Client. Cannot be used with `client_secret`. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` } @@ -97,6 +100,7 @@ type WindowsFunctionAppAuthSettingsFacebookParameters struct { // The App ID of the Facebook app used for login. // The App ID of the Facebook app used for login. + // +kubebuilder:validation:Optional AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The App Secret of the Facebook app used for Facebook login. Cannot be specified with app_secret_setting_name. @@ -106,10 +110,12 @@ type WindowsFunctionAppAuthSettingsFacebookParameters struct { // The app setting name that contains the app_secret value used for Facebook Login. // The app setting name that contains the `app_secret` value used for Facebook Login. Cannot be specified with `app_secret`. + // +kubebuilder:validation:Optional AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, wl.basic is used as the default scope. // Specifies a list of OAuth 2.0 scopes to be requested as part of Facebook Login authentication. + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -147,6 +153,7 @@ type WindowsFunctionAppAuthSettingsGithubParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the GitHub app used for login. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. @@ -156,10 +163,12 @@ type WindowsFunctionAppAuthSettingsGithubParameters struct { // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for GitHub Login. Cannot be specified with `client_secret`. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, wl.basic is used as the default scope. // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -197,6 +206,7 @@ type WindowsFunctionAppAuthSettingsGoogleParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Google web application. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. @@ -206,10 +216,12 @@ type WindowsFunctionAppAuthSettingsGoogleParameters struct { // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Google Login. Cannot be specified with `client_secret`. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, wl.basic is used as the default scope. // Specifies a list of OAuth 2.0 scopes that will be requested as part of Google Sign-In authentication. If not specified, "openid", "profile", and "email" are used as default scopes. + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -304,6 +316,7 @@ type WindowsFunctionAppAuthSettingsMicrosoftParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OAuth 2.0 client ID that was created for the app used for authentication. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. @@ -313,10 +326,12 @@ type WindowsFunctionAppAuthSettingsMicrosoftParameters struct { // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with `client_secret`. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, wl.basic is used as the default scope. // The list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, `wl.basic` is used as the default scope. + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -380,57 +395,72 @@ type WindowsFunctionAppAuthSettingsObservation struct { type WindowsFunctionAppAuthSettingsParameters struct { // An active_directory block as defined above. + // +kubebuilder:validation:Optional ActiveDirectory []WindowsFunctionAppAuthSettingsActiveDirectoryParameters `json:"activeDirectory,omitempty" tf:"active_directory,omitempty"` // Specifies a map of login Parameters to send to the OpenID Connect authorization endpoint when a user logs in. // Specifies a map of Login Parameters to send to the OpenID Connect authorization endpoint when a user logs in. + // +kubebuilder:validation:Optional AdditionalLoginParameters map[string]*string `json:"additionalLoginParameters,omitempty" tf:"additional_login_parameters,omitempty"` // Specifies a list of External URLs that can be redirected to as part of logging in or logging out of the Windows Function App. // Specifies a list of External URLs that can be redirected to as part of logging in or logging out of the Windows Web App. + // +kubebuilder:validation:Optional AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` // The default authentication provider to use when multiple providers are configured. Possible values include: AzureActiveDirectory, Facebook, Google, MicrosoftAccount, Twitter, Github // The default authentication provider to use when multiple providers are configured. Possible values include: `AzureActiveDirectory`, `Facebook`, `Google`, `MicrosoftAccount`, `Twitter`, `Github`. + // +kubebuilder:validation:Optional DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` // Should the Authentication / Authorization feature be enabled for the Windows Function App? // Should the Authentication / Authorization feature be enabled? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // A facebook block as defined below. + // +kubebuilder:validation:Optional Facebook []WindowsFunctionAppAuthSettingsFacebookParameters `json:"facebook,omitempty" tf:"facebook,omitempty"` // A github block as defined below. + // +kubebuilder:validation:Optional Github []WindowsFunctionAppAuthSettingsGithubParameters `json:"github,omitempty" tf:"github,omitempty"` // A google block as defined below. + // +kubebuilder:validation:Optional Google []WindowsFunctionAppAuthSettingsGoogleParameters `json:"google,omitempty" tf:"google,omitempty"` // The OpenID Connect Issuer URI that represents the entity which issues access tokens for this Windows Function App. // The OpenID Connect Issuer URI that represents the entity which issues access tokens. + // +kubebuilder:validation:Optional Issuer *string `json:"issuer,omitempty" tf:"issuer,omitempty"` // A microsoft block as defined below. + // +kubebuilder:validation:Optional Microsoft []WindowsFunctionAppAuthSettingsMicrosoftParameters `json:"microsoft,omitempty" tf:"microsoft,omitempty"` // The Runtime Version of the Authentication / Authorization feature in use for the Windows Function App. // The RuntimeVersion of the Authentication / Authorization feature in use. + // +kubebuilder:validation:Optional RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72 hours. // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to `72` hours. + // +kubebuilder:validation:Optional TokenRefreshExtensionHours *float64 `json:"tokenRefreshExtensionHours,omitempty" tf:"token_refresh_extension_hours,omitempty"` // Should the Windows Function App durably store platform-specific security tokens that are obtained during login flows? Defaults to false. // Should the Windows Web App durably store platform-specific security tokens that are obtained during login flows? Defaults to `false`. + // +kubebuilder:validation:Optional TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` // A twitter block as defined below. + // +kubebuilder:validation:Optional Twitter []WindowsFunctionAppAuthSettingsTwitterParameters `json:"twitter,omitempty" tf:"twitter,omitempty"` // The action to take when an unauthenticated client attempts to access the app. Possible values include: RedirectToLoginPage, AllowAnonymous. // The action to take when an unauthenticated client attempts to access the app. Possible values include: `RedirectToLoginPage`, `AllowAnonymous`. + // +kubebuilder:validation:Optional UnauthenticatedClientAction *string `json:"unauthenticatedClientAction,omitempty" tf:"unauthenticated_client_action,omitempty"` } @@ -460,6 +490,7 @@ type WindowsFunctionAppAuthSettingsTwitterParameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + // +kubebuilder:validation:Optional ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with consumer_secret_setting_name. @@ -469,6 +500,7 @@ type WindowsFunctionAppAuthSettingsTwitterParameters struct { // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret`. + // +kubebuilder:validation:Optional ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` } @@ -578,50 +610,62 @@ type WindowsFunctionAppAuthSettingsV2ActiveDirectoryV2Parameters struct { // The list of allowed Applications for the Default Authorisation Policy. // The list of allowed Applications for the Default Authorisation Policy. + // +kubebuilder:validation:Optional AllowedApplications []*string `json:"allowedApplications,omitempty" tf:"allowed_applications,omitempty"` // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. // Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The list of allowed Group Names for the Default Authorisation Policy. // The list of allowed Group Names for the Default Authorisation Policy. + // +kubebuilder:validation:Optional AllowedGroups []*string `json:"allowedGroups,omitempty" tf:"allowed_groups,omitempty"` // The list of allowed Identities for the Default Authorisation Policy. // The list of allowed Identities for the Default Authorisation Policy. + // +kubebuilder:validation:Optional AllowedIdentities []*string `json:"allowedIdentities,omitempty" tf:"allowed_identities,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Active Directory. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The thumbprint of the certificate used for signing purposes. // The thumbprint of the certificate used for signing purposes. + // +kubebuilder:validation:Optional ClientSecretCertificateThumbprint *string `json:"clientSecretCertificateThumbprint,omitempty" tf:"client_secret_certificate_thumbprint,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The App Setting name that contains the client secret of the Client. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // A list of Allowed Client Applications in the JWT Claim. // A list of Allowed Client Applications in the JWT Claim. + // +kubebuilder:validation:Optional JwtAllowedClientApplications []*string `json:"jwtAllowedClientApplications,omitempty" tf:"jwt_allowed_client_applications,omitempty"` // A list of Allowed Groups in the JWT Claim. // A list of Allowed Groups in the JWT Claim. + // +kubebuilder:validation:Optional JwtAllowedGroups []*string `json:"jwtAllowedGroups,omitempty" tf:"jwt_allowed_groups,omitempty"` // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. + // +kubebuilder:validation:Optional LoginParameters map[string]*string `json:"loginParameters,omitempty" tf:"login_parameters,omitempty"` // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/ // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. `https://login.microsoftonline.com/v2.0/{tenant-guid}/`. + // +kubebuilder:validation:Optional TenantAuthEndpoint *string `json:"tenantAuthEndpoint,omitempty" tf:"tenant_auth_endpoint,omitempty"` // Should the www-authenticate provider should be omitted from the request? Defaults to false // Should the www-authenticate provider should be omitted from the request? Defaults to `false` + // +kubebuilder:validation:Optional WwwAuthenticationDisabled *bool `json:"wwwAuthenticationDisabled,omitempty" tf:"www_authentication_disabled,omitempty"` } @@ -654,10 +698,12 @@ type WindowsFunctionAppAuthSettingsV2AppleV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Apple web application. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Apple Login. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` } @@ -679,6 +725,7 @@ type WindowsFunctionAppAuthSettingsV2AzureStaticWebAppV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Static Web App Authentication. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` } @@ -756,22 +803,27 @@ type WindowsFunctionAppAuthSettingsV2CustomOidcV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with this Custom OIDC. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The name which should be used for this Storage Account. // The name of the Custom OIDC Authentication Provider. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The name of the claim that contains the users name. // The name of the claim that contains the users name. + // +kubebuilder:validation:Optional NameClaimType *string `json:"nameClaimType,omitempty" tf:"name_claim_type,omitempty"` // The app setting name that contains the client_secret value used for the Custom OIDC Login. // The endpoint that contains all the configuration endpoints for this Custom OIDC provider. + // +kubebuilder:validation:Optional OpenIDConfigurationEndpoint *string `json:"openidConfigurationEndpoint,omitempty" tf:"openid_configuration_endpoint,omitempty"` // The list of the scopes that should be requested while authenticating. // The list of the scopes that should be requested while authenticating. + // +kubebuilder:validation:Optional Scopes []*string `json:"scopes,omitempty" tf:"scopes,omitempty"` } @@ -817,18 +869,22 @@ type WindowsFunctionAppAuthSettingsV2FacebookV2Parameters struct { // The App ID of the Facebook app used for login. // The App ID of the Facebook app used for login. + // +kubebuilder:validation:Optional AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The app setting name that contains the app_secret value used for Facebook Login. // The app setting name that contains the `app_secret` value used for Facebook Login. + // +kubebuilder:validation:Optional AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` // The version of the Facebook API to be used while logging in. // The version of the Facebook API to be used while logging in. + // +kubebuilder:validation:Optional GraphAPIVersion *string `json:"graphApiVersion,omitempty" tf:"graph_api_version,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of scopes to be requested as part of Facebook Login authentication. + // +kubebuilder:validation:Optional LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } @@ -866,14 +922,17 @@ type WindowsFunctionAppAuthSettingsV2GithubV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the GitHub app used for login. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for GitHub Login. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. + // +kubebuilder:validation:Optional LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } @@ -919,18 +978,22 @@ type WindowsFunctionAppAuthSettingsV2GoogleV2Parameters struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. // Specifies a list of Allowed Audiences that will be requested as part of Google Sign-In authentication. + // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Google web application. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Google Login. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of Login scopes that will be requested as part of Google Sign-In authentication. + // +kubebuilder:validation:Optional LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } @@ -1113,46 +1176,57 @@ type WindowsFunctionAppAuthSettingsV2LoginParameters struct { // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. **Note:** URLs within the current domain are always implicitly allowed. + // +kubebuilder:validation:Optional AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` // The method by which cookies expire. Possible values include: FixedTime, and IdentityProviderDerived. Defaults to FixedTime. // The method by which cookies expire. Possible values include: `FixedTime`, and `IdentityProviderDerived`. Defaults to `FixedTime`. + // +kubebuilder:validation:Optional CookieExpirationConvention *string `json:"cookieExpirationConvention,omitempty" tf:"cookie_expiration_convention,omitempty"` // The time after the request is made when the session cookie should expire. Defaults to 08:00:00. // The time after the request is made when the session cookie should expire. Defaults to `08:00:00`. + // +kubebuilder:validation:Optional CookieExpirationTime *string `json:"cookieExpirationTime,omitempty" tf:"cookie_expiration_time,omitempty"` // The endpoint to which logout requests should be made. // The endpoint to which logout requests should be made. + // +kubebuilder:validation:Optional LogoutEndpoint *string `json:"logoutEndpoint,omitempty" tf:"logout_endpoint,omitempty"` // The time after the request is made when the nonce should expire. Defaults to 00:05:00. // The time after the request is made when the nonce should expire. Defaults to `00:05:00`. + // +kubebuilder:validation:Optional NonceExpirationTime *string `json:"nonceExpirationTime,omitempty" tf:"nonce_expiration_time,omitempty"` // Should the fragments from the request be preserved after the login request is made. Defaults to false. // Should the fragments from the request be preserved after the login request is made. Defaults to `false`. + // +kubebuilder:validation:Optional PreserveURLFragmentsForLogins *bool `json:"preserveUrlFragmentsForLogins,omitempty" tf:"preserve_url_fragments_for_logins,omitempty"` // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72 hours. // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to `72` hours. + // +kubebuilder:validation:Optional TokenRefreshExtensionTime *float64 `json:"tokenRefreshExtensionTime,omitempty" tf:"token_refresh_extension_time,omitempty"` // Should the Token Store configuration Enabled. Defaults to false // Should the Token Store configuration Enabled. Defaults to `false` + // +kubebuilder:validation:Optional TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` // The directory path in the App Filesystem in which the tokens will be stored. // The directory path in the App Filesystem in which the tokens will be stored. + // +kubebuilder:validation:Optional TokenStorePath *string `json:"tokenStorePath,omitempty" tf:"token_store_path,omitempty"` // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. + // +kubebuilder:validation:Optional TokenStoreSASSettingName *string `json:"tokenStoreSasSettingName,omitempty" tf:"token_store_sas_setting_name,omitempty"` // Should the nonce be validated while completing the login flow. Defaults to true. // Should the nonce be validated while completing the login flow. Defaults to `true`. + // +kubebuilder:validation:Optional ValidateNonce *bool `json:"validateNonce,omitempty" tf:"validate_nonce,omitempty"` } @@ -1198,18 +1272,22 @@ type WindowsFunctionAppAuthSettingsV2MicrosoftV2Parameters struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. // The OAuth 2.0 client ID that was created for the app used for authentication. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // The list of Login scopes that will be requested as part of Microsoft Account authentication. + // +kubebuilder:validation:Optional LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } @@ -1297,81 +1375,103 @@ type WindowsFunctionAppAuthSettingsV2Observation struct { type WindowsFunctionAppAuthSettingsV2Parameters struct { // An active_directory_v2 block as defined below. + // +kubebuilder:validation:Optional ActiveDirectoryV2 []WindowsFunctionAppAuthSettingsV2ActiveDirectoryV2Parameters `json:"activeDirectoryV2,omitempty" tf:"active_directory_v2,omitempty"` // An apple_v2 block as defined below. + // +kubebuilder:validation:Optional AppleV2 []WindowsFunctionAppAuthSettingsV2AppleV2Parameters `json:"appleV2,omitempty" tf:"apple_v2,omitempty"` // Should the AuthV2 Settings be enabled. Defaults to false. // Should the AuthV2 Settings be enabled. Defaults to `false` + // +kubebuilder:validation:Optional AuthEnabled *bool `json:"authEnabled,omitempty" tf:"auth_enabled,omitempty"` // An azure_static_web_app_v2 block as defined below. + // +kubebuilder:validation:Optional AzureStaticWebAppV2 []WindowsFunctionAppAuthSettingsV2AzureStaticWebAppV2Parameters `json:"azureStaticWebAppV2,omitempty" tf:"azure_static_web_app_v2,omitempty"` // The path to the App Auth settings. // The path to the App Auth settings. **Note:** Relative Paths are evaluated from the Site Root directory. + // +kubebuilder:validation:Optional ConfigFilePath *string `json:"configFilePath,omitempty" tf:"config_file_path,omitempty"` // Zero or more custom_oidc_v2 blocks as defined below. + // +kubebuilder:validation:Optional CustomOidcV2 []WindowsFunctionAppAuthSettingsV2CustomOidcV2Parameters `json:"customOidcV2,omitempty" tf:"custom_oidc_v2,omitempty"` // The Default Authentication Provider to use when more than one Authentication Provider is configured and the unauthenticated_action is set to RedirectToLoginPage. // The Default Authentication Provider to use when the `unauthenticated_action` is set to `RedirectToLoginPage`. + // +kubebuilder:validation:Optional DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` // The paths which should be excluded from the unauthenticated_action when it is set to RedirectToLoginPage. // The paths which should be excluded from the `unauthenticated_action` when it is set to `RedirectToLoginPage`. + // +kubebuilder:validation:Optional ExcludedPaths []*string `json:"excludedPaths,omitempty" tf:"excluded_paths,omitempty"` // A facebook_v2 block as defined below. + // +kubebuilder:validation:Optional FacebookV2 []WindowsFunctionAppAuthSettingsV2FacebookV2Parameters `json:"facebookV2,omitempty" tf:"facebook_v2,omitempty"` // The convention used to determine the url of the request made. Possible values include ForwardProxyConventionNoProxy, ForwardProxyConventionStandard, ForwardProxyConventionCustom. Defaults to ForwardProxyConventionNoProxy. // The convention used to determine the url of the request made. Possible values include `ForwardProxyConventionNoProxy`, `ForwardProxyConventionStandard`, `ForwardProxyConventionCustom`. Defaults to `ForwardProxyConventionNoProxy` + // +kubebuilder:validation:Optional ForwardProxyConvention *string `json:"forwardProxyConvention,omitempty" tf:"forward_proxy_convention,omitempty"` // The name of the custom header containing the host of the request. // The name of the header containing the host of the request. + // +kubebuilder:validation:Optional ForwardProxyCustomHostHeaderName *string `json:"forwardProxyCustomHostHeaderName,omitempty" tf:"forward_proxy_custom_host_header_name,omitempty"` // The name of the custom header containing the scheme of the request. // The name of the header containing the scheme of the request. + // +kubebuilder:validation:Optional ForwardProxyCustomSchemeHeaderName *string `json:"forwardProxyCustomSchemeHeaderName,omitempty" tf:"forward_proxy_custom_scheme_header_name,omitempty"` // A github_v2 block as defined below. + // +kubebuilder:validation:Optional GithubV2 []WindowsFunctionAppAuthSettingsV2GithubV2Parameters `json:"githubV2,omitempty" tf:"github_v2,omitempty"` // A google_v2 block as defined below. + // +kubebuilder:validation:Optional GoogleV2 []WindowsFunctionAppAuthSettingsV2GoogleV2Parameters `json:"googleV2,omitempty" tf:"google_v2,omitempty"` // The prefix that should precede all the authentication and authorisation paths. Defaults to /.auth. // The prefix that should precede all the authentication and authorisation paths. Defaults to `/.auth` + // +kubebuilder:validation:Optional HTTPRouteAPIPrefix *string `json:"httpRouteApiPrefix,omitempty" tf:"http_route_api_prefix,omitempty"` // A login block as defined below. + // +kubebuilder:validation:Optional Login []WindowsFunctionAppAuthSettingsV2LoginParameters `json:"login,omitempty" tf:"login,omitempty"` // A microsoft_v2 block as defined below. + // +kubebuilder:validation:Optional MicrosoftV2 []WindowsFunctionAppAuthSettingsV2MicrosoftV2Parameters `json:"microsoftV2,omitempty" tf:"microsoft_v2,omitempty"` // Should the authentication flow be used for all requests. // Should the authentication flow be used for all requests. + // +kubebuilder:validation:Optional RequireAuthentication *bool `json:"requireAuthentication,omitempty" tf:"require_authentication,omitempty"` // Should HTTPS be required on connections? Defaults to true. // Should HTTPS be required on connections? Defaults to true. + // +kubebuilder:validation:Optional RequireHTTPS *bool `json:"requireHttps,omitempty" tf:"require_https,omitempty"` // The Runtime Version of the Authentication and Authorisation feature of this App. Defaults to ~1. // The Runtime Version of the Authentication and Authorisation feature of this App. Defaults to `~1` + // +kubebuilder:validation:Optional RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` // A twitter_v2 block as defined below. + // +kubebuilder:validation:Optional TwitterV2 []WindowsFunctionAppAuthSettingsV2TwitterV2Parameters `json:"twitterV2,omitempty" tf:"twitter_v2,omitempty"` // The action to take for requests made without authentication. Possible values include RedirectToLoginPage, AllowAnonymous, Return401, and Return403. Defaults to RedirectToLoginPage. // The action to take for requests made without authentication. Possible values include `RedirectToLoginPage`, `AllowAnonymous`, `Return401`, and `Return403`. Defaults to `RedirectToLoginPage`. + // +kubebuilder:validation:Optional UnauthenticatedAction *string `json:"unauthenticatedAction,omitempty" tf:"unauthenticated_action,omitempty"` } @@ -1401,10 +1501,12 @@ type WindowsFunctionAppAuthSettingsV2TwitterV2Parameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + // +kubebuilder:validation:Optional ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. + // +kubebuilder:validation:Optional ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` } @@ -1440,13 +1542,16 @@ type WindowsFunctionAppBackupParameters struct { // Should this backup job be enabled? Defaults to true. // Should this backup job be enabled? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The name which should be used for this Backup. // The name which should be used for this Backup. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A schedule block as defined below. + // +kubebuilder:validation:Optional Schedule []WindowsFunctionAppBackupScheduleParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` // The SAS URL to the container. @@ -1508,22 +1613,27 @@ type WindowsFunctionAppBackupScheduleParameters struct { // How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and frequency_unit should be set to Day). // How often the backup should be executed (e.g. for weekly backup, this should be set to `7` and `frequency_unit` should be set to `Day`). + // +kubebuilder:validation:Optional FrequencyInterval *float64 `json:"frequencyInterval,omitempty" tf:"frequency_interval,omitempty"` // The unit of time for how often the backup should take place. Possible values include: Day and Hour. // The unit of time for how often the backup should take place. Possible values include: `Day` and `Hour`. + // +kubebuilder:validation:Optional FrequencyUnit *string `json:"frequencyUnit,omitempty" tf:"frequency_unit,omitempty"` // Should the service keep at least one backup, regardless of age of backup. Defaults to false. // Should the service keep at least one backup, regardless of age of backup. Defaults to `false`. + // +kubebuilder:validation:Optional KeepAtLeastOneBackup *bool `json:"keepAtLeastOneBackup,omitempty" tf:"keep_at_least_one_backup,omitempty"` // After how many days backups should be deleted. Defaults to 30. // After how many days backups should be deleted. + // +kubebuilder:validation:Optional RetentionPeriodDays *float64 `json:"retentionPeriodDays,omitempty" tf:"retention_period_days,omitempty"` // When the schedule should start working in RFC-3339 format. // When the schedule should start working in RFC-3339 format. + // +kubebuilder:validation:Optional StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` } @@ -1553,10 +1663,12 @@ type WindowsFunctionAppConnectionStringParameters struct { // The name which should be used for this Connection. // The name which should be used for this Connection. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of database. Possible values include: APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, PostgreSQL, RedisCache, ServiceBus, SQLAzure, and SQLServer. // Type of database. Possible values include: `MySQL`, `SQLServer`, `SQLAzure`, `Custom`, `NotificationHub`, `ServiceBus`, `EventHub`, `APIHub`, `DocDb`, `RedisCache`, and `PostgreSQL`. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // The connection string value. @@ -1592,9 +1704,11 @@ type WindowsFunctionAppIdentityObservation struct { type WindowsFunctionAppIdentityParameters struct { // A list of User Assigned Managed Identity IDs to be assigned to this Windows Function App. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Windows Function App. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -1818,64 +1932,81 @@ type WindowsFunctionAppParameters struct { // A map of key-value pairs for App Settings and custom values. // A map of key-value pairs for [App Settings](https://docs.microsoft.com/en-us/azure/azure-functions/functions-app-settings) and custom values. + // +kubebuilder:validation:Optional AppSettings map[string]*string `json:"appSettings,omitempty" tf:"app_settings,omitempty"` // A auth_settings block as defined below. + // +kubebuilder:validation:Optional AuthSettings []WindowsFunctionAppAuthSettingsParameters `json:"authSettings,omitempty" tf:"auth_settings,omitempty"` // A auth_settings_v2 block as defined below. + // +kubebuilder:validation:Optional AuthSettingsV2 []WindowsFunctionAppAuthSettingsV2Parameters `json:"authSettingsV2,omitempty" tf:"auth_settings_v2,omitempty"` // A backup block as defined below. + // +kubebuilder:validation:Optional Backup []WindowsFunctionAppBackupParameters `json:"backup,omitempty" tf:"backup,omitempty"` // Should built in logging be enabled. Configures AzureWebJobsDashboard app setting based on the configured storage setting. Defaults to true. // Should built in logging be enabled. Configures `AzureWebJobsDashboard` app setting based on the configured storage setting + // +kubebuilder:validation:Optional BuiltinLoggingEnabled *bool `json:"builtinLoggingEnabled,omitempty" tf:"builtin_logging_enabled,omitempty"` // Should the function app use Client Certificates. // Should the function app use Client Certificates + // +kubebuilder:validation:Optional ClientCertificateEnabled *bool `json:"clientCertificateEnabled,omitempty" tf:"client_certificate_enabled,omitempty"` // Paths to exclude when using client certificates, separated by ; // Paths to exclude when using client certificates, separated by ; + // +kubebuilder:validation:Optional ClientCertificateExclusionPaths *string `json:"clientCertificateExclusionPaths,omitempty" tf:"client_certificate_exclusion_paths,omitempty"` // The mode of the Function App's client certificates requirement for incoming requests. Possible values are Required, Optional, and OptionalInteractiveUser. // The mode of the Function App's client certificates requirement for incoming requests. Possible values are `Required`, `Optional`, and `OptionalInteractiveUser` + // +kubebuilder:validation:Optional ClientCertificateMode *string `json:"clientCertificateMode,omitempty" tf:"client_certificate_mode,omitempty"` // One or more connection_string blocks as defined below. + // +kubebuilder:validation:Optional ConnectionString []WindowsFunctionAppConnectionStringParameters `json:"connectionString,omitempty" tf:"connection_string,omitempty"` // Should Content Share Settings be disabled. Defaults to false. // Force disable the content share settings. + // +kubebuilder:validation:Optional ContentShareForceDisabled *bool `json:"contentShareForceDisabled,omitempty" tf:"content_share_force_disabled,omitempty"` // The amount of memory in gigabyte-seconds that your application is allowed to consume per day. Setting this value only affects function apps under the consumption plan. Defaults to 0. // The amount of memory in gigabyte-seconds that your application is allowed to consume per day. Setting this value only affects function apps in Consumption Plans. + // +kubebuilder:validation:Optional DailyMemoryTimeQuota *float64 `json:"dailyMemoryTimeQuota,omitempty" tf:"daily_memory_time_quota,omitempty"` // Is the Function App enabled? Defaults to true. // Is the Windows Function App enabled. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The runtime version associated with the Function App. Defaults to ~4. // The runtime version associated with the Function App. + // +kubebuilder:validation:Optional FunctionsExtensionVersion *string `json:"functionsExtensionVersion,omitempty" tf:"functions_extension_version,omitempty"` // Can the Function App only be accessed via HTTPS? Defaults to false. // Can the Function App only be accessed via HTTPS? + // +kubebuilder:validation:Optional HTTPSOnly *bool `json:"httpsOnly,omitempty" tf:"https_only,omitempty"` // A identity block as defined below. + // +kubebuilder:validation:Optional Identity []WindowsFunctionAppIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // The User Assigned Identity ID used for accessing KeyVault secrets. The identity must be assigned to the application in the identity block. For more information see - Access vaults with a user-assigned identity // The User Assigned Identity to use for Key Vault access. + // +kubebuilder:validation:Optional KeyVaultReferenceIdentityID *string `json:"keyVaultReferenceIdentityId,omitempty" tf:"key_vault_reference_identity_id,omitempty"` // The Azure Region where the Windows Function App should exist. Changing this forces a new Windows Function App to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // The name of the Resource Group where the Windows Function App should exist. Changing this forces a new Windows Function App to be created. @@ -1907,12 +2038,15 @@ type WindowsFunctionAppParameters struct { ServicePlanIDSelector *v1.Selector `json:"servicePlanIdSelector,omitempty" tf:"-"` // A site_config block as defined below. + // +kubebuilder:validation:Optional SiteConfig []WindowsFunctionAppSiteConfigParameters `json:"siteConfig,omitempty" tf:"site_config,omitempty"` // A sticky_settings block as defined below. + // +kubebuilder:validation:Optional StickySettings []WindowsFunctionAppStickySettingsParameters `json:"stickySettings,omitempty" tf:"sticky_settings,omitempty"` // One or more storage_account blocks as defined below. + // +kubebuilder:validation:Optional StorageAccount []WindowsFunctionAppStorageAccountParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` // The access key which will be used to access the backend storage account for the Function App. Conflicts with storage_uses_managed_identity. @@ -1936,13 +2070,16 @@ type WindowsFunctionAppParameters struct { // The Key Vault Secret ID, optionally including version, that contains the Connection String to connect to the storage account for this Function App. // The Key Vault Secret ID, including version, that contains the Connection String to connect to the storage account for this Function App. + // +kubebuilder:validation:Optional StorageKeyVaultSecretID *string `json:"storageKeyVaultSecretId,omitempty" tf:"storage_key_vault_secret_id,omitempty"` // Should the Function App use Managed Identity to access the storage account. Conflicts with storage_account_access_key. // Should the Function App use its Managed Identity to access storage? + // +kubebuilder:validation:Optional StorageUsesManagedIdentity *bool `json:"storageUsesManagedIdentity,omitempty" tf:"storage_uses_managed_identity,omitempty"` // A mapping of tags which should be assigned to the Windows Function App. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The subnet id which will be used by this Function App for regional virtual network integration. @@ -1961,6 +2098,7 @@ type WindowsFunctionAppParameters struct { // The local path and filename of the Zip packaged application to deploy to this Windows Function App. // The local path and filename of the Zip packaged application to deploy to this Windows Function App. **Note:** Using this value requires `WEBSITE_RUN_FROM_PACKAGE=1` to be set on the App in `app_settings`. + // +kubebuilder:validation:Optional ZipDeployFile *string `json:"zipDeployFile,omitempty" tf:"zip_deploy_file,omitempty"` } @@ -1990,10 +2128,12 @@ type WindowsFunctionAppSiteConfigAppServiceLogsParameters struct { // The amount of disk space to use for logs. Valid values are between 25 and 100. Defaults to 35. // The amount of disk space to use for logs. Valid values are between `25` and `100`. + // +kubebuilder:validation:Optional DiskQuotaMb *float64 `json:"diskQuotaMb,omitempty" tf:"disk_quota_mb,omitempty"` // After how many days backups should be deleted. Defaults to 30. // The retention period for logs in days. Valid values are between `0` and `99999`. Defaults to `0` (never delete). + // +kubebuilder:validation:Optional RetentionPeriodDays *float64 `json:"retentionPeriodDays,omitempty" tf:"retention_period_days,omitempty"` } @@ -2055,26 +2195,32 @@ type WindowsFunctionAppSiteConfigApplicationStackParameters struct { // The version of .NET to use. Possible values include v3.0, v4.0 v6.0 and v7.0. // The version of .Net. Possible values are `v3.0`, `v4.0`, `v6.0` and `v7.0` + // +kubebuilder:validation:Optional DotnetVersion *string `json:"dotnetVersion,omitempty" tf:"dotnet_version,omitempty"` // The Version of Java to use. Supported versions include 1.8, 11 & 17 (In-Preview). // The version of Java to use. Possible values are `1.8`, `11` and `17` + // +kubebuilder:validation:Optional JavaVersion *string `json:"javaVersion,omitempty" tf:"java_version,omitempty"` // The version of Node to run. Possible values include ~12, ~14, ~16 and ~18. // The version of Node to use. Possible values include `12`, `14`, `16` and `18` + // +kubebuilder:validation:Optional NodeVersion *string `json:"nodeVersion,omitempty" tf:"node_version,omitempty"` // The version of PowerShell Core to run. Possible values are 7, and 7.2. // The PowerShell Core version to use. Possible values are `7`, and `7.2` + // +kubebuilder:validation:Optional PowershellCoreVersion *string `json:"powershellCoreVersion,omitempty" tf:"powershell_core_version,omitempty"` // Should the Windows Function App use a custom runtime? // Does the Function App use a custom Application Stack? + // +kubebuilder:validation:Optional UseCustomRuntime *bool `json:"useCustomRuntime,omitempty" tf:"use_custom_runtime,omitempty"` // Should the DotNet process use an isolated runtime. Defaults to false. // Should the DotNet process use an isolated runtime. Defaults to `false`. + // +kubebuilder:validation:Optional UseDotnetIsolatedRuntime *bool `json:"useDotnetIsolatedRuntime,omitempty" tf:"use_dotnet_isolated_runtime,omitempty"` } @@ -2104,10 +2250,12 @@ type WindowsFunctionAppSiteConfigCorsParameters struct { // Specifies a list of origins that should be allowed to make cross-origin calls. // Specifies a list of origins that should be allowed to make cross-origin calls. + // +kubebuilder:validation:Optional AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` // Are credentials allowed in CORS requests? Defaults to false. // Are credentials allowed in CORS requests? Defaults to `false`. + // +kubebuilder:validation:Optional SupportCredentials *bool `json:"supportCredentials,omitempty" tf:"support_credentials,omitempty"` } @@ -2144,15 +2292,19 @@ type WindowsFunctionAppSiteConfigIPRestrictionHeadersObservation struct { type WindowsFunctionAppSiteConfigIPRestrictionHeadersParameters struct { // Specifies a list of Azure Front Door IDs. + // +kubebuilder:validation:Optional XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` // Specifies if a Front Door Health Probe should be expected. The only possible value is 1. + // +kubebuilder:validation:Optional XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` // Specifies a list of addresses for which matching should be applied. Omitting this value means allow any. + // +kubebuilder:validation:Optional XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` // Specifies a list of Hosts for which matching should be applied. + // +kubebuilder:validation:Optional XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } @@ -2216,25 +2368,31 @@ type WindowsFunctionAppSiteConfigIPRestrictionParameters struct { // The action to take. Possible values are Allow or Deny. // The action to take. Possible values are `Allow` or `Deny`. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // A headers block as defined above. + // +kubebuilder:validation:Optional Headers []WindowsFunctionAppSiteConfigIPRestrictionHeadersParameters `json:"headers,omitempty" tf:"headers,omitempty"` // The CIDR notation of the IP or IP Range to match. For example: 10.0.0.0/24 or 192.168.10.1/32 // The CIDR notation of the IP or IP Range to match. For example: `10.0.0.0/24` or `192.168.10.1/32` or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22` + // +kubebuilder:validation:Optional IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` // The name which should be used for this Storage Account. // The name which should be used for this `ip_restriction`. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The priority value of this ip_restriction. Defaults to 65000. // The priority value of this `ip_restriction`. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // The Service Tag used for this IP Restriction. // The Service Tag used for this IP Restriction. + // +kubebuilder:validation:Optional ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag,omitempty"` // The subnet id which will be used by this Function App for regional virtual network integration. @@ -2495,25 +2653,31 @@ type WindowsFunctionAppSiteConfigParameters struct { // The URL of the API definition that describes this Windows Function App. // The URL of the API definition that describes this Windows Function App. + // +kubebuilder:validation:Optional APIDefinitionURL *string `json:"apiDefinitionUrl,omitempty" tf:"api_definition_url,omitempty"` // The ID of the API Management API for this Windows Function App. // The ID of the API Management API for this Windows Function App. + // +kubebuilder:validation:Optional APIManagementAPIID *string `json:"apiManagementApiId,omitempty" tf:"api_management_api_id,omitempty"` // If this Windows Function App is Always On enabled. Defaults to false. // If this Windows Web App is Always On enabled. Defaults to `false`. + // +kubebuilder:validation:Optional AlwaysOn *bool `json:"alwaysOn,omitempty" tf:"always_on,omitempty"` // The App command line to launch. // The program and any arguments used to launch this app via the command line. (Example `node myapp.js`). + // +kubebuilder:validation:Optional AppCommandLine *string `json:"appCommandLine,omitempty" tf:"app_command_line,omitempty"` // The number of workers this function app can scale out to. Only applicable to apps on the Consumption and Premium plan. // The number of workers this function app can scale out to. Only applicable to apps on the Consumption and Premium plan. + // +kubebuilder:validation:Optional AppScaleLimit *float64 `json:"appScaleLimit,omitempty" tf:"app_scale_limit,omitempty"` // An app_service_logs block as defined above. + // +kubebuilder:validation:Optional AppServiceLogs []WindowsFunctionAppSiteConfigAppServiceLogsParameters `json:"appServiceLogs,omitempty" tf:"app_service_logs,omitempty"` // The Connection String for linking the Windows Function App to Application Insights. @@ -2527,91 +2691,114 @@ type WindowsFunctionAppSiteConfigParameters struct { ApplicationInsightsKeySecretRef *v1.SecretKeySelector `json:"applicationInsightsKeySecretRef,omitempty" tf:"-"` // An application_stack block as defined above. + // +kubebuilder:validation:Optional ApplicationStack []WindowsFunctionAppSiteConfigApplicationStackParameters `json:"applicationStack,omitempty" tf:"application_stack,omitempty"` // A cors block as defined above. + // +kubebuilder:validation:Optional Cors []WindowsFunctionAppSiteConfigCorsParameters `json:"cors,omitempty" tf:"cors,omitempty"` // Specifies a list of Default Documents for the Windows Function App. // Specifies a list of Default Documents for the Windows Web App. + // +kubebuilder:validation:Optional DefaultDocuments []*string `json:"defaultDocuments,omitempty" tf:"default_documents,omitempty"` // The number of minimum instances for this Windows Function App. Only affects apps on Elastic Premium plans. // The number of minimum instances for this Windows Function App. Only affects apps on Elastic Premium plans. + // +kubebuilder:validation:Optional ElasticInstanceMinimum *float64 `json:"elasticInstanceMinimum,omitempty" tf:"elastic_instance_minimum,omitempty"` // State of FTP / FTPS service for this Windows Function App. Possible values include: AllAllowed, FtpsOnly and Disabled. Defaults to Disabled. // State of FTP / FTPS service for this function app. Possible values include: `AllAllowed`, `FtpsOnly` and `Disabled`. Defaults to `Disabled`. + // +kubebuilder:validation:Optional FtpsState *string `json:"ftpsState,omitempty" tf:"ftps_state,omitempty"` // The amount of time in minutes that a node can be unhealthy before being removed from the load balancer. Possible values are between 2 and 10. Only valid in conjunction with health_check_path. // The amount of time in minutes that a node is unhealthy before being removed from the load balancer. Possible values are between `2` and `10`. Defaults to `10`. Only valid in conjunction with `health_check_path` + // +kubebuilder:validation:Optional HealthCheckEvictionTimeInMin *float64 `json:"healthCheckEvictionTimeInMin,omitempty" tf:"health_check_eviction_time_in_min,omitempty"` // The path to be checked for this Windows Function App health. // The path to be checked for this function app health. + // +kubebuilder:validation:Optional HealthCheckPath *string `json:"healthCheckPath,omitempty" tf:"health_check_path,omitempty"` // Specifies if the HTTP2 protocol should be enabled. Defaults to false. // Specifies if the http2 protocol should be enabled. Defaults to `false`. + // +kubebuilder:validation:Optional Http2Enabled *bool `json:"http2Enabled,omitempty" tf:"http2_enabled,omitempty"` // One or more ip_restriction blocks as defined above. + // +kubebuilder:validation:Optional IPRestriction []WindowsFunctionAppSiteConfigIPRestrictionParameters `json:"ipRestriction,omitempty" tf:"ip_restriction,omitempty"` // The Site load balancing mode. Possible values include: WeightedRoundRobin, LeastRequests, LeastResponseTime, WeightedTotalTraffic, RequestHash, PerSiteRoundRobin. Defaults to LeastRequests if omitted. // The Site load balancing mode. Possible values include: `WeightedRoundRobin`, `LeastRequests`, `LeastResponseTime`, `WeightedTotalTraffic`, `RequestHash`, `PerSiteRoundRobin`. Defaults to `LeastRequests` if omitted. + // +kubebuilder:validation:Optional LoadBalancingMode *string `json:"loadBalancingMode,omitempty" tf:"load_balancing_mode,omitempty"` // Managed pipeline mode. Possible values include: Integrated, Classic. Defaults to Integrated. // The Managed Pipeline mode. Possible values include: `Integrated`, `Classic`. Defaults to `Integrated`. + // +kubebuilder:validation:Optional ManagedPipelineMode *string `json:"managedPipelineMode,omitempty" tf:"managed_pipeline_mode,omitempty"` // Configures the minimum version of TLS required for SSL requests. Possible values include: 1.0, 1.1, and 1.2. Defaults to 1.2. // The configures the minimum version of TLS required for SSL requests. Possible values include: `1.0`, `1.1`, and `1.2`. Defaults to `1.2`. + // +kubebuilder:validation:Optional MinimumTLSVersion *string `json:"minimumTlsVersion,omitempty" tf:"minimum_tls_version,omitempty"` // The number of pre-warmed instances for this Windows Function App. Only affects apps on an Elastic Premium plan. // The number of pre-warmed instances for this function app. Only affects apps on an Elastic Premium plan. + // +kubebuilder:validation:Optional PreWarmedInstanceCount *float64 `json:"preWarmedInstanceCount,omitempty" tf:"pre_warmed_instance_count,omitempty"` // Should Remote Debugging be enabled. Defaults to false. // Should Remote Debugging be enabled. Defaults to `false`. + // +kubebuilder:validation:Optional RemoteDebuggingEnabled *bool `json:"remoteDebuggingEnabled,omitempty" tf:"remote_debugging_enabled,omitempty"` // The Remote Debugging Version. Possible values include VS2017, VS2019, and VS2022. // The Remote Debugging Version. Possible values include `VS2017`, `VS2019`, and `VS2022` + // +kubebuilder:validation:Optional RemoteDebuggingVersion *string `json:"remoteDebuggingVersion,omitempty" tf:"remote_debugging_version,omitempty"` // Should Scale Monitoring of the Functions Runtime be enabled? // Should Functions Runtime Scale Monitoring be enabled. + // +kubebuilder:validation:Optional RuntimeScaleMonitoringEnabled *bool `json:"runtimeScaleMonitoringEnabled,omitempty" tf:"runtime_scale_monitoring_enabled,omitempty"` // One or more scm_ip_restriction blocks as defined above. + // +kubebuilder:validation:Optional ScmIPRestriction []WindowsFunctionAppSiteConfigScmIPRestrictionParameters `json:"scmIpRestriction,omitempty" tf:"scm_ip_restriction,omitempty"` // Configures the minimum version of TLS required for SSL requests to the SCM site. Possible values include: 1.0, 1.1, and 1.2. Defaults to 1.2. // Configures the minimum version of TLS required for SSL requests to the SCM site Possible values include: `1.0`, `1.1`, and `1.2`. Defaults to `1.2`. + // +kubebuilder:validation:Optional ScmMinimumTLSVersion *string `json:"scmMinimumTlsVersion,omitempty" tf:"scm_minimum_tls_version,omitempty"` // Should the Windows Function App ip_restriction configuration be used for the SCM also. // Should the Windows Function App `ip_restriction` configuration be used for the SCM also. + // +kubebuilder:validation:Optional ScmUseMainIPRestriction *bool `json:"scmUseMainIpRestriction,omitempty" tf:"scm_use_main_ip_restriction,omitempty"` // Should the Windows Function App use a 32-bit worker process. Defaults to true. // Should the Windows Web App use a 32-bit worker. + // +kubebuilder:validation:Optional Use32BitWorker *bool `json:"use32BitWorker,omitempty" tf:"use_32_bit_worker,omitempty"` // Should all outbound traffic to have NAT Gateways, Network Security Groups and User Defined Routes applied? Defaults to false. // Should all outbound traffic to have Virtual Network Security Groups and User Defined Routes applied? Defaults to `false`. + // +kubebuilder:validation:Optional VnetRouteAllEnabled *bool `json:"vnetRouteAllEnabled,omitempty" tf:"vnet_route_all_enabled,omitempty"` // Should Web Sockets be enabled. Defaults to false. // Should Web Sockets be enabled. Defaults to `false`. + // +kubebuilder:validation:Optional WebsocketsEnabled *bool `json:"websocketsEnabled,omitempty" tf:"websockets_enabled,omitempty"` // The number of Workers for this Windows Function App. // The number of Workers for this Windows Function App. + // +kubebuilder:validation:Optional WorkerCount *float64 `json:"workerCount,omitempty" tf:"worker_count,omitempty"` } @@ -2648,15 +2835,19 @@ type WindowsFunctionAppSiteConfigScmIPRestrictionHeadersObservation struct { type WindowsFunctionAppSiteConfigScmIPRestrictionHeadersParameters struct { // Specifies a list of Azure Front Door IDs. + // +kubebuilder:validation:Optional XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` // Specifies if a Front Door Health Probe should be expected. The only possible value is 1. + // +kubebuilder:validation:Optional XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` // Specifies a list of addresses for which matching should be applied. Omitting this value means allow any. + // +kubebuilder:validation:Optional XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` // Specifies a list of Hosts for which matching should be applied. + // +kubebuilder:validation:Optional XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } @@ -2720,25 +2911,31 @@ type WindowsFunctionAppSiteConfigScmIPRestrictionParameters struct { // The action to take. Possible values are Allow or Deny. // The action to take. Possible values are `Allow` or `Deny`. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // A headers block as defined above. + // +kubebuilder:validation:Optional Headers []WindowsFunctionAppSiteConfigScmIPRestrictionHeadersParameters `json:"headers,omitempty" tf:"headers,omitempty"` // The CIDR notation of the IP or IP Range to match. For example: 10.0.0.0/24 or 192.168.10.1/32 // The CIDR notation of the IP or IP Range to match. For example: `10.0.0.0/24` or `192.168.10.1/32` or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22` + // +kubebuilder:validation:Optional IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` // The name which should be used for this Storage Account. // The name which should be used for this `ip_restriction`. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The priority value of this ip_restriction. Defaults to 65000. // The priority value of this `ip_restriction`. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // The Service Tag used for this IP Restriction. // The Service Tag used for this IP Restriction. + // +kubebuilder:validation:Optional ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag,omitempty"` // The subnet id which will be used by this Function App for regional virtual network integration. @@ -2793,9 +2990,11 @@ type WindowsFunctionAppStickySettingsObservation struct { type WindowsFunctionAppStickySettingsParameters struct { // A list of app_setting names that the Windows Function App will not swap between Slots when a swap operation is triggered. + // +kubebuilder:validation:Optional AppSettingNames []*string `json:"appSettingNames,omitempty" tf:"app_setting_names,omitempty"` // A list of connection_string names that the Windows Function App will not swap between Slots when a swap operation is triggered. + // +kubebuilder:validation:Optional ConnectionStringNames []*string `json:"connectionStringNames,omitempty" tf:"connection_string_names,omitempty"` } @@ -2842,18 +3041,23 @@ type WindowsFunctionAppStorageAccountParameters struct { AccessKeySecretRef v1.SecretKeySelector `json:"accessKeySecretRef" tf:"-"` // The Name of the Storage Account. + // +kubebuilder:validation:Optional AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` // The path at which to mount the storage share. + // +kubebuilder:validation:Optional MountPath *string `json:"mountPath,omitempty" tf:"mount_path,omitempty"` // The name which should be used for this Storage Account. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Name of the File Share or Container Name for Blob storage. + // +kubebuilder:validation:Optional ShareName *string `json:"shareName,omitempty" tf:"share_name,omitempty"` // The Azure Storage Type. Possible values include AzureFiles. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/web/v1beta1/zz_windowsfunctionappslot_types.go b/apis/web/v1beta1/zz_windowsfunctionappslot_types.go index 1c70d03ae..b370ff88d 100755 --- a/apis/web/v1beta1/zz_windowsfunctionappslot_types.go +++ b/apis/web/v1beta1/zz_windowsfunctionappslot_types.go @@ -47,10 +47,12 @@ type WindowsFunctionAppSlotAuthSettingsActiveDirectoryParameters struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. // Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Active Directory. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. @@ -60,6 +62,7 @@ type WindowsFunctionAppSlotAuthSettingsActiveDirectoryParameters struct { // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The App Setting name that contains the client secret of the Client. Cannot be used with `client_secret`. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` } @@ -97,6 +100,7 @@ type WindowsFunctionAppSlotAuthSettingsFacebookParameters struct { // The App ID of the Facebook app used for login. // The App ID of the Facebook app used for login. + // +kubebuilder:validation:Optional AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The App Secret of the Facebook app used for Facebook login. Cannot be specified with app_secret_setting_name. @@ -106,10 +110,12 @@ type WindowsFunctionAppSlotAuthSettingsFacebookParameters struct { // The app setting name that contains the app_secret value used for Facebook Login. // The app setting name that contains the `app_secret` value used for Facebook Login. Cannot be specified with `app_secret`. + // +kubebuilder:validation:Optional AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, wl.basic is used as the default scope. // Specifies a list of OAuth 2.0 scopes to be requested as part of Facebook Login authentication. + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -147,6 +153,7 @@ type WindowsFunctionAppSlotAuthSettingsGithubParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the GitHub app used for login. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. @@ -156,10 +163,12 @@ type WindowsFunctionAppSlotAuthSettingsGithubParameters struct { // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for GitHub Login. Cannot be specified with `client_secret`. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, wl.basic is used as the default scope. // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -197,6 +206,7 @@ type WindowsFunctionAppSlotAuthSettingsGoogleParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Google web application. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. @@ -206,10 +216,12 @@ type WindowsFunctionAppSlotAuthSettingsGoogleParameters struct { // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Google Login. Cannot be specified with `client_secret`. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, wl.basic is used as the default scope. // Specifies a list of OAuth 2.0 scopes that will be requested as part of Google Sign-In authentication. If not specified, "openid", "profile", and "email" are used as default scopes. + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -304,6 +316,7 @@ type WindowsFunctionAppSlotAuthSettingsMicrosoftParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OAuth 2.0 client ID that was created for the app used for authentication. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. @@ -313,10 +326,12 @@ type WindowsFunctionAppSlotAuthSettingsMicrosoftParameters struct { // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with `client_secret`. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, wl.basic is used as the default scope. // The list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, `wl.basic` is used as the default scope. + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -380,57 +395,72 @@ type WindowsFunctionAppSlotAuthSettingsObservation struct { type WindowsFunctionAppSlotAuthSettingsParameters struct { // an active_directory block as detailed below. + // +kubebuilder:validation:Optional ActiveDirectory []WindowsFunctionAppSlotAuthSettingsActiveDirectoryParameters `json:"activeDirectory,omitempty" tf:"active_directory,omitempty"` // Specifies a map of login Parameters to send to the OpenID Connect authorization endpoint when a user logs in. // Specifies a map of Login Parameters to send to the OpenID Connect authorization endpoint when a user logs in. + // +kubebuilder:validation:Optional AdditionalLoginParameters map[string]*string `json:"additionalLoginParameters,omitempty" tf:"additional_login_parameters,omitempty"` // an allowed_external_redirect_urls block as detailed below. // Specifies a list of External URLs that can be redirected to as part of logging in or logging out of the Windows Web App. + // +kubebuilder:validation:Optional AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` // The default authentication provider to use when multiple providers are configured. Possible values include: AzureActiveDirectory, Facebook, Google, MicrosoftAccount, Twitter, Github. // The default authentication provider to use when multiple providers are configured. Possible values include: `AzureActiveDirectory`, `Facebook`, `Google`, `MicrosoftAccount`, `Twitter`, `Github`. + // +kubebuilder:validation:Optional DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` // Should the Authentication / Authorization feature be enabled? // Should the Authentication / Authorization feature be enabled? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // a facebook block as detailed below. + // +kubebuilder:validation:Optional Facebook []WindowsFunctionAppSlotAuthSettingsFacebookParameters `json:"facebook,omitempty" tf:"facebook,omitempty"` // a github block as detailed below. + // +kubebuilder:validation:Optional Github []WindowsFunctionAppSlotAuthSettingsGithubParameters `json:"github,omitempty" tf:"github,omitempty"` // a google block as detailed below. + // +kubebuilder:validation:Optional Google []WindowsFunctionAppSlotAuthSettingsGoogleParameters `json:"google,omitempty" tf:"google,omitempty"` // The OpenID Connect Issuer URI that represents the entity which issues access tokens. // The OpenID Connect Issuer URI that represents the entity which issues access tokens. + // +kubebuilder:validation:Optional Issuer *string `json:"issuer,omitempty" tf:"issuer,omitempty"` // a microsoft block as detailed below. + // +kubebuilder:validation:Optional Microsoft []WindowsFunctionAppSlotAuthSettingsMicrosoftParameters `json:"microsoft,omitempty" tf:"microsoft,omitempty"` // The RuntimeVersion of the Authentication / Authorization feature in use. // The RuntimeVersion of the Authentication / Authorization feature in use. + // +kubebuilder:validation:Optional RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72 hours. // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to `72` hours. + // +kubebuilder:validation:Optional TokenRefreshExtensionHours *float64 `json:"tokenRefreshExtensionHours,omitempty" tf:"token_refresh_extension_hours,omitempty"` // Should the Windows Web App durably store platform-specific security tokens that are obtained during login flows? Defaults to false. // Should the Windows Web App durably store platform-specific security tokens that are obtained during login flows? Defaults to `false`. + // +kubebuilder:validation:Optional TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` // a twitter block as detailed below. + // +kubebuilder:validation:Optional Twitter []WindowsFunctionAppSlotAuthSettingsTwitterParameters `json:"twitter,omitempty" tf:"twitter,omitempty"` // The action to take when an unauthenticated client attempts to access the app. Possible values include: RedirectToLoginPage, AllowAnonymous. // The action to take when an unauthenticated client attempts to access the app. Possible values include: `RedirectToLoginPage`, `AllowAnonymous`. + // +kubebuilder:validation:Optional UnauthenticatedClientAction *string `json:"unauthenticatedClientAction,omitempty" tf:"unauthenticated_client_action,omitempty"` } @@ -460,6 +490,7 @@ type WindowsFunctionAppSlotAuthSettingsTwitterParameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + // +kubebuilder:validation:Optional ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with consumer_secret_setting_name. @@ -469,6 +500,7 @@ type WindowsFunctionAppSlotAuthSettingsTwitterParameters struct { // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret`. + // +kubebuilder:validation:Optional ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` } @@ -578,50 +610,62 @@ type WindowsFunctionAppSlotAuthSettingsV2ActiveDirectoryV2Parameters struct { // The list of allowed Applications for the Default Authorisation Policy. // The list of allowed Applications for the Default Authorisation Policy. + // +kubebuilder:validation:Optional AllowedApplications []*string `json:"allowedApplications,omitempty" tf:"allowed_applications,omitempty"` // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. // Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The list of allowed Group Names for the Default Authorisation Policy. // The list of allowed Group Names for the Default Authorisation Policy. + // +kubebuilder:validation:Optional AllowedGroups []*string `json:"allowedGroups,omitempty" tf:"allowed_groups,omitempty"` // The list of allowed Identities for the Default Authorisation Policy. // The list of allowed Identities for the Default Authorisation Policy. + // +kubebuilder:validation:Optional AllowedIdentities []*string `json:"allowedIdentities,omitempty" tf:"allowed_identities,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Active Directory. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The thumbprint of the certificate used for signing purposes. // The thumbprint of the certificate used for signing purposes. + // +kubebuilder:validation:Optional ClientSecretCertificateThumbprint *string `json:"clientSecretCertificateThumbprint,omitempty" tf:"client_secret_certificate_thumbprint,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The App Setting name that contains the client secret of the Client. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // A list of Allowed Client Applications in the JWT Claim. // A list of Allowed Client Applications in the JWT Claim. + // +kubebuilder:validation:Optional JwtAllowedClientApplications []*string `json:"jwtAllowedClientApplications,omitempty" tf:"jwt_allowed_client_applications,omitempty"` // A list of Allowed Groups in the JWT Claim. // A list of Allowed Groups in the JWT Claim. + // +kubebuilder:validation:Optional JwtAllowedGroups []*string `json:"jwtAllowedGroups,omitempty" tf:"jwt_allowed_groups,omitempty"` // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. + // +kubebuilder:validation:Optional LoginParameters map[string]*string `json:"loginParameters,omitempty" tf:"login_parameters,omitempty"` // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/ // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. `https://login.microsoftonline.com/v2.0/{tenant-guid}/`. + // +kubebuilder:validation:Optional TenantAuthEndpoint *string `json:"tenantAuthEndpoint,omitempty" tf:"tenant_auth_endpoint,omitempty"` // Should the www-authenticate provider should be omitted from the request? Defaults to false // Should the www-authenticate provider should be omitted from the request? Defaults to `false` + // +kubebuilder:validation:Optional WwwAuthenticationDisabled *bool `json:"wwwAuthenticationDisabled,omitempty" tf:"www_authentication_disabled,omitempty"` } @@ -654,10 +698,12 @@ type WindowsFunctionAppSlotAuthSettingsV2AppleV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Apple web application. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Apple Login. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` } @@ -679,6 +725,7 @@ type WindowsFunctionAppSlotAuthSettingsV2AzureStaticWebAppV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Static Web App Authentication. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` } @@ -756,22 +803,27 @@ type WindowsFunctionAppSlotAuthSettingsV2CustomOidcV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with this Custom OIDC. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The name which should be used for this Storage Account. // The name of the Custom OIDC Authentication Provider. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The name of the claim that contains the users name. // The name of the claim that contains the users name. + // +kubebuilder:validation:Optional NameClaimType *string `json:"nameClaimType,omitempty" tf:"name_claim_type,omitempty"` // The app setting name that contains the client_secret value used for the Custom OIDC Login. // The endpoint that contains all the configuration endpoints for this Custom OIDC provider. + // +kubebuilder:validation:Optional OpenIDConfigurationEndpoint *string `json:"openidConfigurationEndpoint,omitempty" tf:"openid_configuration_endpoint,omitempty"` // The list of the scopes that should be requested while authenticating. // The list of the scopes that should be requested while authenticating. + // +kubebuilder:validation:Optional Scopes []*string `json:"scopes,omitempty" tf:"scopes,omitempty"` } @@ -817,18 +869,22 @@ type WindowsFunctionAppSlotAuthSettingsV2FacebookV2Parameters struct { // The App ID of the Facebook app used for login. // The App ID of the Facebook app used for login. + // +kubebuilder:validation:Optional AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The app setting name that contains the app_secret value used for Facebook Login. // The app setting name that contains the `app_secret` value used for Facebook Login. + // +kubebuilder:validation:Optional AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` // The version of the Facebook API to be used while logging in. // The version of the Facebook API to be used while logging in. + // +kubebuilder:validation:Optional GraphAPIVersion *string `json:"graphApiVersion,omitempty" tf:"graph_api_version,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of scopes to be requested as part of Facebook Login authentication. + // +kubebuilder:validation:Optional LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } @@ -866,14 +922,17 @@ type WindowsFunctionAppSlotAuthSettingsV2GithubV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the GitHub app used for login. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for GitHub Login. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. + // +kubebuilder:validation:Optional LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } @@ -919,18 +978,22 @@ type WindowsFunctionAppSlotAuthSettingsV2GoogleV2Parameters struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. // Specifies a list of Allowed Audiences that will be requested as part of Google Sign-In authentication. + // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Google web application. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Google Login. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of Login scopes that will be requested as part of Google Sign-In authentication. + // +kubebuilder:validation:Optional LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } @@ -1113,46 +1176,57 @@ type WindowsFunctionAppSlotAuthSettingsV2LoginParameters struct { // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. **Note:** URLs within the current domain are always implicitly allowed. + // +kubebuilder:validation:Optional AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` // The method by which cookies expire. Possible values include: FixedTime, and IdentityProviderDerived. Defaults to FixedTime. // The method by which cookies expire. Possible values include: `FixedTime`, and `IdentityProviderDerived`. Defaults to `FixedTime`. + // +kubebuilder:validation:Optional CookieExpirationConvention *string `json:"cookieExpirationConvention,omitempty" tf:"cookie_expiration_convention,omitempty"` // The time after the request is made when the session cookie should expire. Defaults to 08:00:00. // The time after the request is made when the session cookie should expire. Defaults to `08:00:00`. + // +kubebuilder:validation:Optional CookieExpirationTime *string `json:"cookieExpirationTime,omitempty" tf:"cookie_expiration_time,omitempty"` // The endpoint to which logout requests should be made. // The endpoint to which logout requests should be made. + // +kubebuilder:validation:Optional LogoutEndpoint *string `json:"logoutEndpoint,omitempty" tf:"logout_endpoint,omitempty"` // The time after the request is made when the nonce should expire. Defaults to 00:05:00. // The time after the request is made when the nonce should expire. Defaults to `00:05:00`. + // +kubebuilder:validation:Optional NonceExpirationTime *string `json:"nonceExpirationTime,omitempty" tf:"nonce_expiration_time,omitempty"` // Should the fragments from the request be preserved after the login request is made. Defaults to false. // Should the fragments from the request be preserved after the login request is made. Defaults to `false`. + // +kubebuilder:validation:Optional PreserveURLFragmentsForLogins *bool `json:"preserveUrlFragmentsForLogins,omitempty" tf:"preserve_url_fragments_for_logins,omitempty"` // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72 hours. // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to `72` hours. + // +kubebuilder:validation:Optional TokenRefreshExtensionTime *float64 `json:"tokenRefreshExtensionTime,omitempty" tf:"token_refresh_extension_time,omitempty"` // Should the Token Store configuration Enabled. Defaults to false // Should the Token Store configuration Enabled. Defaults to `false` + // +kubebuilder:validation:Optional TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` // The directory path in the App Filesystem in which the tokens will be stored. // The directory path in the App Filesystem in which the tokens will be stored. + // +kubebuilder:validation:Optional TokenStorePath *string `json:"tokenStorePath,omitempty" tf:"token_store_path,omitempty"` // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. + // +kubebuilder:validation:Optional TokenStoreSASSettingName *string `json:"tokenStoreSasSettingName,omitempty" tf:"token_store_sas_setting_name,omitempty"` // Should the nonce be validated while completing the login flow. Defaults to true. // Should the nonce be validated while completing the login flow. Defaults to `true`. + // +kubebuilder:validation:Optional ValidateNonce *bool `json:"validateNonce,omitempty" tf:"validate_nonce,omitempty"` } @@ -1198,18 +1272,22 @@ type WindowsFunctionAppSlotAuthSettingsV2MicrosoftV2Parameters struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. // The OAuth 2.0 client ID that was created for the app used for authentication. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // The list of Login scopes that will be requested as part of Microsoft Account authentication. + // +kubebuilder:validation:Optional LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } @@ -1297,81 +1375,103 @@ type WindowsFunctionAppSlotAuthSettingsV2Observation struct { type WindowsFunctionAppSlotAuthSettingsV2Parameters struct { // An active_directory_v2 block as defined below. + // +kubebuilder:validation:Optional ActiveDirectoryV2 []WindowsFunctionAppSlotAuthSettingsV2ActiveDirectoryV2Parameters `json:"activeDirectoryV2,omitempty" tf:"active_directory_v2,omitempty"` // An apple_v2 block as defined below. + // +kubebuilder:validation:Optional AppleV2 []WindowsFunctionAppSlotAuthSettingsV2AppleV2Parameters `json:"appleV2,omitempty" tf:"apple_v2,omitempty"` // Should the AuthV2 Settings be enabled. Defaults to false. // Should the AuthV2 Settings be enabled. Defaults to `false` + // +kubebuilder:validation:Optional AuthEnabled *bool `json:"authEnabled,omitempty" tf:"auth_enabled,omitempty"` // An azure_static_web_app_v2 block as defined below. + // +kubebuilder:validation:Optional AzureStaticWebAppV2 []WindowsFunctionAppSlotAuthSettingsV2AzureStaticWebAppV2Parameters `json:"azureStaticWebAppV2,omitempty" tf:"azure_static_web_app_v2,omitempty"` // The path to the App Auth settings. // The path to the App Auth settings. **Note:** Relative Paths are evaluated from the Site Root directory. + // +kubebuilder:validation:Optional ConfigFilePath *string `json:"configFilePath,omitempty" tf:"config_file_path,omitempty"` // Zero or more custom_oidc_v2 blocks as defined below. + // +kubebuilder:validation:Optional CustomOidcV2 []WindowsFunctionAppSlotAuthSettingsV2CustomOidcV2Parameters `json:"customOidcV2,omitempty" tf:"custom_oidc_v2,omitempty"` // The Default Authentication Provider to use when more than one Authentication Provider is configured and the unauthenticated_action is set to RedirectToLoginPage. // The Default Authentication Provider to use when the `unauthenticated_action` is set to `RedirectToLoginPage`. + // +kubebuilder:validation:Optional DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` // The paths which should be excluded from the unauthenticated_action when it is set to RedirectToLoginPage. // The paths which should be excluded from the `unauthenticated_action` when it is set to `RedirectToLoginPage`. + // +kubebuilder:validation:Optional ExcludedPaths []*string `json:"excludedPaths,omitempty" tf:"excluded_paths,omitempty"` // A facebook_v2 block as defined below. + // +kubebuilder:validation:Optional FacebookV2 []WindowsFunctionAppSlotAuthSettingsV2FacebookV2Parameters `json:"facebookV2,omitempty" tf:"facebook_v2,omitempty"` // The convention used to determine the url of the request made. Possible values include ForwardProxyConventionNoProxy, ForwardProxyConventionStandard, ForwardProxyConventionCustom. Defaults to ForwardProxyConventionNoProxy. // The convention used to determine the url of the request made. Possible values include `ForwardProxyConventionNoProxy`, `ForwardProxyConventionStandard`, `ForwardProxyConventionCustom`. Defaults to `ForwardProxyConventionNoProxy` + // +kubebuilder:validation:Optional ForwardProxyConvention *string `json:"forwardProxyConvention,omitempty" tf:"forward_proxy_convention,omitempty"` // The name of the custom header containing the host of the request. // The name of the header containing the host of the request. + // +kubebuilder:validation:Optional ForwardProxyCustomHostHeaderName *string `json:"forwardProxyCustomHostHeaderName,omitempty" tf:"forward_proxy_custom_host_header_name,omitempty"` // The name of the custom header containing the scheme of the request. // The name of the header containing the scheme of the request. + // +kubebuilder:validation:Optional ForwardProxyCustomSchemeHeaderName *string `json:"forwardProxyCustomSchemeHeaderName,omitempty" tf:"forward_proxy_custom_scheme_header_name,omitempty"` // A github_v2 block as defined below. + // +kubebuilder:validation:Optional GithubV2 []WindowsFunctionAppSlotAuthSettingsV2GithubV2Parameters `json:"githubV2,omitempty" tf:"github_v2,omitempty"` // A google_v2 block as defined below. + // +kubebuilder:validation:Optional GoogleV2 []WindowsFunctionAppSlotAuthSettingsV2GoogleV2Parameters `json:"googleV2,omitempty" tf:"google_v2,omitempty"` // The prefix that should precede all the authentication and authorisation paths. Defaults to /.auth. // The prefix that should precede all the authentication and authorisation paths. Defaults to `/.auth` + // +kubebuilder:validation:Optional HTTPRouteAPIPrefix *string `json:"httpRouteApiPrefix,omitempty" tf:"http_route_api_prefix,omitempty"` // A login block as defined below. + // +kubebuilder:validation:Optional Login []WindowsFunctionAppSlotAuthSettingsV2LoginParameters `json:"login,omitempty" tf:"login,omitempty"` // A microsoft_v2 block as defined below. + // +kubebuilder:validation:Optional MicrosoftV2 []WindowsFunctionAppSlotAuthSettingsV2MicrosoftV2Parameters `json:"microsoftV2,omitempty" tf:"microsoft_v2,omitempty"` // Should the authentication flow be used for all requests. // Should the authentication flow be used for all requests. + // +kubebuilder:validation:Optional RequireAuthentication *bool `json:"requireAuthentication,omitempty" tf:"require_authentication,omitempty"` // Should HTTPS be required on connections? Defaults to true. // Should HTTPS be required on connections? Defaults to true. + // +kubebuilder:validation:Optional RequireHTTPS *bool `json:"requireHttps,omitempty" tf:"require_https,omitempty"` // The Runtime Version of the Authentication and Authorisation feature of this App. Defaults to ~1. // The Runtime Version of the Authentication and Authorisation feature of this App. Defaults to `~1` + // +kubebuilder:validation:Optional RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` // A twitter_v2 block as defined below. + // +kubebuilder:validation:Optional TwitterV2 []WindowsFunctionAppSlotAuthSettingsV2TwitterV2Parameters `json:"twitterV2,omitempty" tf:"twitter_v2,omitempty"` // The action to take for requests made without authentication. Possible values include RedirectToLoginPage, AllowAnonymous, Return401, and Return403. Defaults to RedirectToLoginPage. // The action to take for requests made without authentication. Possible values include `RedirectToLoginPage`, `AllowAnonymous`, `Return401`, and `Return403`. Defaults to `RedirectToLoginPage`. + // +kubebuilder:validation:Optional UnauthenticatedAction *string `json:"unauthenticatedAction,omitempty" tf:"unauthenticated_action,omitempty"` } @@ -1401,10 +1501,12 @@ type WindowsFunctionAppSlotAuthSettingsV2TwitterV2Parameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + // +kubebuilder:validation:Optional ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. + // +kubebuilder:validation:Optional ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` } @@ -1440,13 +1542,16 @@ type WindowsFunctionAppSlotBackupParameters struct { // Should this backup job be enabled? Defaults to true. // Should this backup job be enabled? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The name which should be used for this Backup. // The name which should be used for this Backup. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // a schedule block as detailed below. + // +kubebuilder:validation:Optional Schedule []WindowsFunctionAppSlotBackupScheduleParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` // The SAS URL to the container. @@ -1509,22 +1614,27 @@ type WindowsFunctionAppSlotBackupScheduleParameters struct { // How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and frequency_unit should be set to Day). // How often the backup should be executed (e.g. for weekly backup, this should be set to `7` and `frequency_unit` should be set to `Day`). + // +kubebuilder:validation:Optional FrequencyInterval *float64 `json:"frequencyInterval,omitempty" tf:"frequency_interval,omitempty"` // The unit of time for how often the backup should take place. Possible values include: Day and Hour. // The unit of time for how often the backup should take place. Possible values include: `Day` and `Hour`. + // +kubebuilder:validation:Optional FrequencyUnit *string `json:"frequencyUnit,omitempty" tf:"frequency_unit,omitempty"` // Should the service keep at least one backup, regardless of age of backup. Defaults to false. // Should the service keep at least one backup, regardless of age of backup. Defaults to `false`. + // +kubebuilder:validation:Optional KeepAtLeastOneBackup *bool `json:"keepAtLeastOneBackup,omitempty" tf:"keep_at_least_one_backup,omitempty"` // After how many days backups should be deleted. Defaults to 30. // After how many days backups should be deleted. + // +kubebuilder:validation:Optional RetentionPeriodDays *float64 `json:"retentionPeriodDays,omitempty" tf:"retention_period_days,omitempty"` // When the schedule should start working in RFC-3339 format. // When the schedule should start working in RFC-3339 format. + // +kubebuilder:validation:Optional StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` } @@ -1554,10 +1664,12 @@ type WindowsFunctionAppSlotConnectionStringParameters struct { // The name which should be used for this Connection. // The name which should be used for this Connection. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of database. Possible values include: APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, PostgreSQL, RedisCache, ServiceBus, SQLAzure, and SQLServer. // Type of database. Possible values include: `MySQL`, `SQLServer`, `SQLAzure`, `Custom`, `NotificationHub`, `ServiceBus`, `EventHub`, `APIHub`, `DocDb`, `RedisCache`, and `PostgreSQL`. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // The connection string value. @@ -1593,9 +1705,11 @@ type WindowsFunctionAppSlotIdentityObservation struct { type WindowsFunctionAppSlotIdentityParameters struct { // A list of User Assigned Managed Identity IDs to be assigned to this Windows Function App Slot. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Windows Function App Slot. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -1808,46 +1922,58 @@ type WindowsFunctionAppSlotParameters struct { // A map of key-value pairs for App Settings and custom values. // A map of key-value pairs for [App Settings](https://docs.microsoft.com/en-us/azure/azure-functions/functions-app-settings) and custom values. + // +kubebuilder:validation:Optional AppSettings map[string]*string `json:"appSettings,omitempty" tf:"app_settings,omitempty"` // an auth_settings block as detailed below. + // +kubebuilder:validation:Optional AuthSettings []WindowsFunctionAppSlotAuthSettingsParameters `json:"authSettings,omitempty" tf:"auth_settings,omitempty"` // an auth_settings_v2 block as detailed below. + // +kubebuilder:validation:Optional AuthSettingsV2 []WindowsFunctionAppSlotAuthSettingsV2Parameters `json:"authSettingsV2,omitempty" tf:"auth_settings_v2,omitempty"` // a backup block as detailed below. + // +kubebuilder:validation:Optional Backup []WindowsFunctionAppSlotBackupParameters `json:"backup,omitempty" tf:"backup,omitempty"` // Should built-in logging be enabled. Configures AzureWebJobsDashboard app setting based on the configured storage setting. Defaults to true. // Should built in logging be enabled. Configures `AzureWebJobsDashboard` app setting based on the configured storage setting. + // +kubebuilder:validation:Optional BuiltinLoggingEnabled *bool `json:"builtinLoggingEnabled,omitempty" tf:"builtin_logging_enabled,omitempty"` // Should the Function App Slot use Client Certificates. // Should the Function App Slot use Client Certificates. + // +kubebuilder:validation:Optional ClientCertificateEnabled *bool `json:"clientCertificateEnabled,omitempty" tf:"client_certificate_enabled,omitempty"` // Paths to exclude when using client certificates, separated by ; // Paths to exclude when using client certificates, separated by ; + // +kubebuilder:validation:Optional ClientCertificateExclusionPaths *string `json:"clientCertificateExclusionPaths,omitempty" tf:"client_certificate_exclusion_paths,omitempty"` // The mode of the Function App Slot's client certificates requirement for incoming requests. Possible values are Required, Optional, and OptionalInteractiveUser. // The mode of the Function App Slot's client certificates requirement for incoming requests. Possible values are `Required`, `Optional`, and `OptionalInteractiveUser`. + // +kubebuilder:validation:Optional ClientCertificateMode *string `json:"clientCertificateMode,omitempty" tf:"client_certificate_mode,omitempty"` // a connection_string block as detailed below. + // +kubebuilder:validation:Optional ConnectionString []WindowsFunctionAppSlotConnectionStringParameters `json:"connectionString,omitempty" tf:"connection_string,omitempty"` // Force disable the content share settings. // Force disable the content share settings. + // +kubebuilder:validation:Optional ContentShareForceDisabled *bool `json:"contentShareForceDisabled,omitempty" tf:"content_share_force_disabled,omitempty"` // The amount of memory in gigabyte-seconds that your application is allowed to consume per day. Setting this value only affects function apps in Consumption Plans. Defaults to 0. // The amount of memory in gigabyte-seconds that your application is allowed to consume per day. Setting this value only affects function apps in Consumption Plans. + // +kubebuilder:validation:Optional DailyMemoryTimeQuota *float64 `json:"dailyMemoryTimeQuota,omitempty" tf:"daily_memory_time_quota,omitempty"` // Is the Windows Function App Slot enabled. Defaults to true. // Is the Windows Function App Slot enabled. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The name of the Windows Function App this Slot is a member of. Changing this forces a new resource to be created. @@ -1867,26 +1993,33 @@ type WindowsFunctionAppSlotParameters struct { // The runtime version associated with the Function App Slot. Defaults to ~4. // The runtime version associated with the Function App Slot. + // +kubebuilder:validation:Optional FunctionsExtensionVersion *string `json:"functionsExtensionVersion,omitempty" tf:"functions_extension_version,omitempty"` // Can the Function App Slot only be accessed via HTTPS? // Can the Function App Slot only be accessed via HTTPS? + // +kubebuilder:validation:Optional HTTPSOnly *bool `json:"httpsOnly,omitempty" tf:"https_only,omitempty"` // an identity block as detailed below. + // +kubebuilder:validation:Optional Identity []WindowsFunctionAppSlotIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // The User Assigned Identity ID used for accessing KeyVault secrets. The identity must be assigned to the application in the identity block. For more information see - Access vaults with a user-assigned identity // The User Assigned Identity to use for Key Vault access. + // +kubebuilder:validation:Optional KeyVaultReferenceIdentityID *string `json:"keyVaultReferenceIdentityId,omitempty" tf:"key_vault_reference_identity_id,omitempty"` // The ID of the Service Plan in which to run this slot. If not specified the same Service Plan as the Windows Function App will be used. + // +kubebuilder:validation:Optional ServicePlanID *string `json:"servicePlanId,omitempty" tf:"service_plan_id,omitempty"` // a site_config block as detailed below. + // +kubebuilder:validation:Optional SiteConfig []WindowsFunctionAppSlotSiteConfigParameters `json:"siteConfig,omitempty" tf:"site_config,omitempty"` // One or more storage_account blocks as defined below. + // +kubebuilder:validation:Optional StorageAccount []WindowsFunctionAppSlotStorageAccountParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` // The access key which will be used to access the storage account for the Function App Slot. @@ -1910,13 +2043,16 @@ type WindowsFunctionAppSlotParameters struct { // The Key Vault Secret ID, optionally including version, that contains the Connection String to connect to the storage account for this Function App Slot. // The Key Vault Secret ID, including version, that contains the Connection String to connect to the storage account for this Function App. + // +kubebuilder:validation:Optional StorageKeyVaultSecretID *string `json:"storageKeyVaultSecretId,omitempty" tf:"storage_key_vault_secret_id,omitempty"` // Should the Function App Slot use its Managed Identity to access storage. // Should the Function App Slot use its Managed Identity to access storage? + // +kubebuilder:validation:Optional StorageUsesManagedIdentity *bool `json:"storageUsesManagedIdentity,omitempty" tf:"storage_uses_managed_identity,omitempty"` // A mapping of tags which should be assigned to the Windows Function App Slot. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The subnet id which will be used by this Function App Slot for regional virtual network integration. @@ -1960,10 +2096,12 @@ type WindowsFunctionAppSlotSiteConfigAppServiceLogsParameters struct { // The amount of disk space to use for logs. Valid values are between 25 and 100. Defaults to 35. // The amount of disk space to use for logs. Valid values are between `25` and `100`. + // +kubebuilder:validation:Optional DiskQuotaMb *float64 `json:"diskQuotaMb,omitempty" tf:"disk_quota_mb,omitempty"` // After how many days backups should be deleted. Defaults to 30. // The retention period for logs in days. Valid values are between `0` and `99999`. Defaults to `0` (never delete). + // +kubebuilder:validation:Optional RetentionPeriodDays *float64 `json:"retentionPeriodDays,omitempty" tf:"retention_period_days,omitempty"` } @@ -2025,26 +2163,32 @@ type WindowsFunctionAppSlotSiteConfigApplicationStackParameters struct { // The version of .Net. Possible values are v3.0, v4.0, v6.0 and v7.0. Defaults to v4.0. // The version of .Net. Possible values are `v3.0`, `v4.0`, `v6.0` and `v7.0` + // +kubebuilder:validation:Optional DotnetVersion *string `json:"dotnetVersion,omitempty" tf:"dotnet_version,omitempty"` // The version of Java to use. Possible values are 1.8, 11 and 17 (In-Preview). // The version of Java to use. Possible values are `1.8`, `11` and `17` + // +kubebuilder:validation:Optional JavaVersion *string `json:"javaVersion,omitempty" tf:"java_version,omitempty"` // The version of Node to use. Possible values are ~12, ~14, ~16 and ~18. // The version of Node to use. Possible values include `12`, `14`, `16` and `18` + // +kubebuilder:validation:Optional NodeVersion *string `json:"nodeVersion,omitempty" tf:"node_version,omitempty"` // The PowerShell Core version to use. Possible values are 7, and 7.2. // The PowerShell Core version to use. Possible values are `7`, and `7.2` + // +kubebuilder:validation:Optional PowershellCoreVersion *string `json:"powershellCoreVersion,omitempty" tf:"powershell_core_version,omitempty"` // Does the Function App use a custom Application Stack? // Does the Function App use a custom Application Stack? + // +kubebuilder:validation:Optional UseCustomRuntime *bool `json:"useCustomRuntime,omitempty" tf:"use_custom_runtime,omitempty"` // Should the DotNet process use an isolated runtime. Defaults to false. // Should the DotNet process use an isolated runtime. Defaults to `false`. + // +kubebuilder:validation:Optional UseDotnetIsolatedRuntime *bool `json:"useDotnetIsolatedRuntime,omitempty" tf:"use_dotnet_isolated_runtime,omitempty"` } @@ -2074,10 +2218,12 @@ type WindowsFunctionAppSlotSiteConfigCorsParameters struct { // an allowed_origins block as detailed below. // Specifies a list of origins that should be allowed to make cross-origin calls. + // +kubebuilder:validation:Optional AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` // Are credentials allowed in CORS requests? Defaults to false. // Are credentials allowed in CORS requests? Defaults to `false`. + // +kubebuilder:validation:Optional SupportCredentials *bool `json:"supportCredentials,omitempty" tf:"support_credentials,omitempty"` } @@ -2114,15 +2260,19 @@ type WindowsFunctionAppSlotSiteConfigIPRestrictionHeadersObservation struct { type WindowsFunctionAppSlotSiteConfigIPRestrictionHeadersParameters struct { // Specifies a list of Azure Front Door IDs. + // +kubebuilder:validation:Optional XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` // Specifies if a Front Door Health Probe should be expected. The only possible value is 1. + // +kubebuilder:validation:Optional XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` // Specifies a list of addresses for which matching should be applied. Omitting this value means allow any. + // +kubebuilder:validation:Optional XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` // Specifies a list of Hosts for which matching should be applied. + // +kubebuilder:validation:Optional XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } @@ -2186,25 +2336,31 @@ type WindowsFunctionAppSlotSiteConfigIPRestrictionParameters struct { // The action to take. Possible values are Allow or Deny. // The action to take. Possible values are `Allow` or `Deny`. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // a headers block as detailed below. + // +kubebuilder:validation:Optional Headers []WindowsFunctionAppSlotSiteConfigIPRestrictionHeadersParameters `json:"headers,omitempty" tf:"headers,omitempty"` // The CIDR notation of the IP or IP Range to match. For example: 10.0.0.0/24 or 192.168.10.1/32 // The CIDR notation of the IP or IP Range to match. For example: `10.0.0.0/24` or `192.168.10.1/32` or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22` + // +kubebuilder:validation:Optional IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` // The name which should be used for this Storage Account. // The name which should be used for this `ip_restriction`. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The priority value of this ip_restriction. Defaults to 65000. // The priority value of this `ip_restriction`. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // The Service Tag used for this IP Restriction. // The Service Tag used for this IP Restriction. + // +kubebuilder:validation:Optional ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag,omitempty"` // The subnet id which will be used by this Function App Slot for regional virtual network integration. @@ -2473,25 +2629,31 @@ type WindowsFunctionAppSlotSiteConfigParameters struct { // The URL of the API definition that describes this Windows Function App. // The URL of the API definition that describes this Windows Function App. + // +kubebuilder:validation:Optional APIDefinitionURL *string `json:"apiDefinitionUrl,omitempty" tf:"api_definition_url,omitempty"` // The ID of the API Management API for this Windows Function App. // The ID of the API Management API for this Windows Function App. + // +kubebuilder:validation:Optional APIManagementAPIID *string `json:"apiManagementApiId,omitempty" tf:"api_management_api_id,omitempty"` // If this Windows Web App is Always On enabled. Defaults to false. // If this Windows Web App is Always On enabled. Defaults to `false`. + // +kubebuilder:validation:Optional AlwaysOn *bool `json:"alwaysOn,omitempty" tf:"always_on,omitempty"` // The program and any arguments used to launch this app via the command line. (Example node myapp.js). // The program and any arguments used to launch this app via the command line. (Example `node myapp.js`). + // +kubebuilder:validation:Optional AppCommandLine *string `json:"appCommandLine,omitempty" tf:"app_command_line,omitempty"` // The number of workers this function app can scale out to. Only applicable to apps on the Consumption and Premium plan. // The number of workers this function app can scale out to. Only applicable to apps on the Consumption and Premium plan. + // +kubebuilder:validation:Optional AppScaleLimit *float64 `json:"appScaleLimit,omitempty" tf:"app_scale_limit,omitempty"` // an app_service_logs block as detailed below. + // +kubebuilder:validation:Optional AppServiceLogs []WindowsFunctionAppSlotSiteConfigAppServiceLogsParameters `json:"appServiceLogs,omitempty" tf:"app_service_logs,omitempty"` // The Connection String for linking the Windows Function App to Application Insights. @@ -2505,94 +2667,118 @@ type WindowsFunctionAppSlotSiteConfigParameters struct { ApplicationInsightsKeySecretRef *v1.SecretKeySelector `json:"applicationInsightsKeySecretRef,omitempty" tf:"-"` // an application_stack block as detailed below. + // +kubebuilder:validation:Optional ApplicationStack []WindowsFunctionAppSlotSiteConfigApplicationStackParameters `json:"applicationStack,omitempty" tf:"application_stack,omitempty"` // The name of the slot to automatically swap with when this slot is successfully deployed. + // +kubebuilder:validation:Optional AutoSwapSlotName *string `json:"autoSwapSlotName,omitempty" tf:"auto_swap_slot_name,omitempty"` // a cors block as detailed below. + // +kubebuilder:validation:Optional Cors []WindowsFunctionAppSlotSiteConfigCorsParameters `json:"cors,omitempty" tf:"cors,omitempty"` // a default_documents block as detailed below. // Specifies a list of Default Documents for the Windows Web App. + // +kubebuilder:validation:Optional DefaultDocuments []*string `json:"defaultDocuments,omitempty" tf:"default_documents,omitempty"` // The number of minimum instances for this Windows Function App. Only affects apps on Elastic Premium plans. // The number of minimum instances for this Windows Function App. Only affects apps on Elastic Premium plans. + // +kubebuilder:validation:Optional ElasticInstanceMinimum *float64 `json:"elasticInstanceMinimum,omitempty" tf:"elastic_instance_minimum,omitempty"` // State of FTP / FTPS service for this function app. Possible values include: AllAllowed, FtpsOnly and Disabled. Defaults to Disabled. // State of FTP / FTPS service for this function app. Possible values include: `AllAllowed`, `FtpsOnly` and `Disabled`. Defaults to `Disabled`. + // +kubebuilder:validation:Optional FtpsState *string `json:"ftpsState,omitempty" tf:"ftps_state,omitempty"` // The amount of time in minutes that a node is unhealthy before being removed from the load balancer. Possible values are between 2 and 10. Defaults to 10. Only valid in conjunction with health_check_path // The amount of time in minutes that a node is unhealthy before being removed from the load balancer. Possible values are between `2` and `10`. Defaults to `10`. Only valid in conjunction with `health_check_path` + // +kubebuilder:validation:Optional HealthCheckEvictionTimeInMin *float64 `json:"healthCheckEvictionTimeInMin,omitempty" tf:"health_check_eviction_time_in_min,omitempty"` // The path to be checked for this function app health. // The path to be checked for this function app health. + // +kubebuilder:validation:Optional HealthCheckPath *string `json:"healthCheckPath,omitempty" tf:"health_check_path,omitempty"` // Specifies if the HTTP2 protocol should be enabled. Defaults to false. // Specifies if the http2 protocol should be enabled. Defaults to `false`. + // +kubebuilder:validation:Optional Http2Enabled *bool `json:"http2Enabled,omitempty" tf:"http2_enabled,omitempty"` // an ip_restriction block as detailed below. + // +kubebuilder:validation:Optional IPRestriction []WindowsFunctionAppSlotSiteConfigIPRestrictionParameters `json:"ipRestriction,omitempty" tf:"ip_restriction,omitempty"` // The Site load balancing mode. Possible values include: WeightedRoundRobin, LeastRequests, LeastResponseTime, WeightedTotalTraffic, RequestHash, PerSiteRoundRobin. Defaults to LeastRequests if omitted. // The Site load balancing mode. Possible values include: `WeightedRoundRobin`, `LeastRequests`, `LeastResponseTime`, `WeightedTotalTraffic`, `RequestHash`, `PerSiteRoundRobin`. Defaults to `LeastRequests` if omitted. + // +kubebuilder:validation:Optional LoadBalancingMode *string `json:"loadBalancingMode,omitempty" tf:"load_balancing_mode,omitempty"` // The Managed Pipeline mode. Possible values include: Integrated, Classic. Defaults to Integrated. // The Managed Pipeline mode. Possible values include: `Integrated`, `Classic`. Defaults to `Integrated`. + // +kubebuilder:validation:Optional ManagedPipelineMode *string `json:"managedPipelineMode,omitempty" tf:"managed_pipeline_mode,omitempty"` // The configures the minimum version of TLS required for SSL requests. Possible values include: 1.0, 1.1, and 1.2. Defaults to 1.2. // The configures the minimum version of TLS required for SSL requests. Possible values include: `1.0`, `1.1`, and `1.2`. Defaults to `1.2`. + // +kubebuilder:validation:Optional MinimumTLSVersion *string `json:"minimumTlsVersion,omitempty" tf:"minimum_tls_version,omitempty"` // The number of pre-warmed instances for this function app. Only affects apps on an Elastic Premium plan. // The number of pre-warmed instances for this function app. Only affects apps on an Elastic Premium plan. + // +kubebuilder:validation:Optional PreWarmedInstanceCount *float64 `json:"preWarmedInstanceCount,omitempty" tf:"pre_warmed_instance_count,omitempty"` // Should Remote Debugging be enabled. Defaults to false. // Should Remote Debugging be enabled. Defaults to `false`. + // +kubebuilder:validation:Optional RemoteDebuggingEnabled *bool `json:"remoteDebuggingEnabled,omitempty" tf:"remote_debugging_enabled,omitempty"` // The Remote Debugging Version. Possible values include VS2017, VS2019, and VS2022 // The Remote Debugging Version. Possible values include `VS2017`, `VS2019`, and `VS2022` + // +kubebuilder:validation:Optional RemoteDebuggingVersion *string `json:"remoteDebuggingVersion,omitempty" tf:"remote_debugging_version,omitempty"` // Should Scale Monitoring of the Functions Runtime be enabled? // Should Functions Runtime Scale Monitoring be enabled. + // +kubebuilder:validation:Optional RuntimeScaleMonitoringEnabled *bool `json:"runtimeScaleMonitoringEnabled,omitempty" tf:"runtime_scale_monitoring_enabled,omitempty"` // a scm_ip_restriction block as detailed below. + // +kubebuilder:validation:Optional ScmIPRestriction []WindowsFunctionAppSlotSiteConfigScmIPRestrictionParameters `json:"scmIpRestriction,omitempty" tf:"scm_ip_restriction,omitempty"` // Configures the minimum version of TLS required for SSL requests to the SCM site Possible values include: 1.0, 1.1, and 1.2. Defaults to 1.2. // Configures the minimum version of TLS required for SSL requests to the SCM site Possible values include: `1.0`, `1.1`, and `1.2`. Defaults to `1.2`. + // +kubebuilder:validation:Optional ScmMinimumTLSVersion *string `json:"scmMinimumTlsVersion,omitempty" tf:"scm_minimum_tls_version,omitempty"` // Should the Windows Function App ip_restriction configuration be used for the SCM also. // Should the Windows Function App `ip_restriction` configuration be used for the SCM also. + // +kubebuilder:validation:Optional ScmUseMainIPRestriction *bool `json:"scmUseMainIpRestriction,omitempty" tf:"scm_use_main_ip_restriction,omitempty"` // Should the Windows Web App use a 32-bit worker. Defaults to true. // Should the Windows Web App use a 32-bit worker. + // +kubebuilder:validation:Optional Use32BitWorker *bool `json:"use32BitWorker,omitempty" tf:"use_32_bit_worker,omitempty"` // Should all outbound traffic to have NAT Gateways, Network Security Groups and User Defined Routes applied? Defaults to false. // Should all outbound traffic to have Virtual Network Security Groups and User Defined Routes applied? Defaults to `false`. + // +kubebuilder:validation:Optional VnetRouteAllEnabled *bool `json:"vnetRouteAllEnabled,omitempty" tf:"vnet_route_all_enabled,omitempty"` // Should Web Sockets be enabled. Defaults to false. // Should Web Sockets be enabled. Defaults to `false`. + // +kubebuilder:validation:Optional WebsocketsEnabled *bool `json:"websocketsEnabled,omitempty" tf:"websockets_enabled,omitempty"` // The number of Workers for this Windows Function App. // The number of Workers for this Windows Function App. + // +kubebuilder:validation:Optional WorkerCount *float64 `json:"workerCount,omitempty" tf:"worker_count,omitempty"` } @@ -2629,15 +2815,19 @@ type WindowsFunctionAppSlotSiteConfigScmIPRestrictionHeadersObservation struct { type WindowsFunctionAppSlotSiteConfigScmIPRestrictionHeadersParameters struct { // Specifies a list of Azure Front Door IDs. + // +kubebuilder:validation:Optional XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` // Specifies if a Front Door Health Probe should be expected. The only possible value is 1. + // +kubebuilder:validation:Optional XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` // Specifies a list of addresses for which matching should be applied. Omitting this value means allow any. + // +kubebuilder:validation:Optional XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` // Specifies a list of Hosts for which matching should be applied. + // +kubebuilder:validation:Optional XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } @@ -2701,25 +2891,31 @@ type WindowsFunctionAppSlotSiteConfigScmIPRestrictionParameters struct { // The action to take. Possible values are Allow or Deny. // The action to take. Possible values are `Allow` or `Deny`. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // a headers block as detailed below. + // +kubebuilder:validation:Optional Headers []WindowsFunctionAppSlotSiteConfigScmIPRestrictionHeadersParameters `json:"headers,omitempty" tf:"headers,omitempty"` // The CIDR notation of the IP or IP Range to match. For example: 10.0.0.0/24 or 192.168.10.1/32 // The CIDR notation of the IP or IP Range to match. For example: `10.0.0.0/24` or `192.168.10.1/32` or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22` + // +kubebuilder:validation:Optional IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` // The name which should be used for this Storage Account. // The name which should be used for this `ip_restriction`. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The priority value of this ip_restriction. Defaults to 65000. // The priority value of this `ip_restriction`. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // The Service Tag used for this IP Restriction. // The Service Tag used for this IP Restriction. + // +kubebuilder:validation:Optional ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag,omitempty"` // The subnet id which will be used by this Function App Slot for regional virtual network integration. @@ -2796,18 +2992,23 @@ type WindowsFunctionAppSlotStorageAccountParameters struct { AccessKeySecretRef v1.SecretKeySelector `json:"accessKeySecretRef" tf:"-"` // The Name of the Storage Account. + // +kubebuilder:validation:Optional AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` // The path at which to mount the storage share. + // +kubebuilder:validation:Optional MountPath *string `json:"mountPath,omitempty" tf:"mount_path,omitempty"` // The name which should be used for this Storage Account. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Name of the File Share or Container Name for Blob storage. + // +kubebuilder:validation:Optional ShareName *string `json:"shareName,omitempty" tf:"share_name,omitempty"` // The Azure Storage Type. Possible values include AzureFiles. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/web/v1beta1/zz_windowswebapp_types.go b/apis/web/v1beta1/zz_windowswebapp_types.go index a378a865a..eaf3850af 100755 --- a/apis/web/v1beta1/zz_windowswebapp_types.go +++ b/apis/web/v1beta1/zz_windowswebapp_types.go @@ -34,9 +34,11 @@ type AutoHealSettingTriggerRequestsObservation struct { type AutoHealSettingTriggerRequestsParameters struct { // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. + // +kubebuilder:validation:Optional Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The time interval in the form hh:mm:ss. + // +kubebuilder:validation:Optional Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` } @@ -73,15 +75,19 @@ type AutoHealSettingTriggerSlowRequestObservation struct { type AutoHealSettingTriggerSlowRequestParameters struct { // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. + // +kubebuilder:validation:Optional Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The time interval in the form hh:mm:ss. + // +kubebuilder:validation:Optional Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` // The path to which this rule status code applies. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` // The threshold of time passed to qualify as a Slow Request in hh:mm:ss. + // +kubebuilder:validation:Optional TimeTaken *string `json:"timeTaken,omitempty" tf:"time_taken,omitempty"` } @@ -130,21 +136,27 @@ type AutoHealSettingTriggerStatusCodeObservation struct { type AutoHealSettingTriggerStatusCodeParameters struct { // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. + // +kubebuilder:validation:Optional Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The time interval in the form hh:mm:ss. + // +kubebuilder:validation:Optional Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` // The path to which this rule status code applies. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` // The status code for this rule, accepts single status codes and status code ranges. e.g. 500 or 400-499. Possible values are integers between 101 and 599 + // +kubebuilder:validation:Optional StatusCodeRange *string `json:"statusCodeRange,omitempty" tf:"status_code_range,omitempty"` // The Request Sub Status of the Status Code. + // +kubebuilder:validation:Optional SubStatus *float64 `json:"subStatus,omitempty" tf:"sub_status,omitempty"` // The Win32 Status Code of the Request. + // +kubebuilder:validation:Optional Win32Status *string `json:"win32Status,omitempty" tf:"win32_status,omitempty"` } @@ -169,9 +181,11 @@ type CustomActionObservation struct { type CustomActionParameters struct { // The executable to run for the custom_action. + // +kubebuilder:validation:Optional Executable *string `json:"executable,omitempty" tf:"executable,omitempty"` // The parameters to pass to the specified executable. + // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` } @@ -202,12 +216,15 @@ type LogsApplicationLogsAzureBlobStorageObservation struct { type LogsApplicationLogsAzureBlobStorageParameters struct { // The level at which to log. Possible values include Error, Warning, Information, Verbose and Off. NOTE: this field is not available for http_logs + // +kubebuilder:validation:Optional Level *string `json:"level,omitempty" tf:"level,omitempty"` // The retention period in days. A values of 0 means no retention. + // +kubebuilder:validation:Optional RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` // SAS url to an Azure blob container with read/write/list/delete permissions. + // +kubebuilder:validation:Optional SASURL *string `json:"sasUrl,omitempty" tf:"sas_url,omitempty"` } @@ -232,9 +249,11 @@ type LogsHTTPLogsFileSystemObservation struct { type LogsHTTPLogsFileSystemParameters struct { // The retention period in days. A values of 0 means no retention. + // +kubebuilder:validation:Optional RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` // The maximum size in megabytes that log files can use. + // +kubebuilder:validation:Optional RetentionInMb *float64 `json:"retentionInMb,omitempty" tf:"retention_in_mb,omitempty"` } @@ -265,12 +284,15 @@ type SiteConfigAutoHealSettingActionObservation struct { type SiteConfigAutoHealSettingActionParameters struct { // Predefined action to be taken to an Auto Heal trigger. Possible values include: Recycle, LogEvent, and CustomAction. + // +kubebuilder:validation:Optional ActionType *string `json:"actionType,omitempty" tf:"action_type,omitempty"` // A custom_action block as defined below. + // +kubebuilder:validation:Optional CustomAction []CustomActionParameters `json:"customAction,omitempty" tf:"custom_action,omitempty"` // The minimum amount of time in hh:mm:ss the Windows Web App must have been running before the defined action will be run in the event of a trigger. + // +kubebuilder:validation:Optional MinimumProcessExecutionTime *string `json:"minimumProcessExecutionTime,omitempty" tf:"minimum_process_execution_time,omitempty"` } @@ -307,15 +329,19 @@ type SiteConfigAutoHealSettingTriggerObservation struct { type SiteConfigAutoHealSettingTriggerParameters struct { // The amount of Private Memory to be consumed for this rule to trigger. Possible values are between 102400 and 13631488. + // +kubebuilder:validation:Optional PrivateMemoryKb *float64 `json:"privateMemoryKb,omitempty" tf:"private_memory_kb,omitempty"` // A requests block as defined above. + // +kubebuilder:validation:Optional Requests []AutoHealSettingTriggerRequestsParameters `json:"requests,omitempty" tf:"requests,omitempty"` // One or more slow_request blocks as defined above. + // +kubebuilder:validation:Optional SlowRequest []AutoHealSettingTriggerSlowRequestParameters `json:"slowRequest,omitempty" tf:"slow_request,omitempty"` // One or more status_code blocks as defined above. + // +kubebuilder:validation:Optional StatusCode []AutoHealSettingTriggerStatusCodeParameters `json:"statusCode,omitempty" tf:"status_code,omitempty"` } @@ -352,15 +378,19 @@ type VirtualApplicationObservation struct { type VirtualApplicationParameters struct { // The physical path for the Virtual Application. + // +kubebuilder:validation:Optional PhysicalPath *string `json:"physicalPath,omitempty" tf:"physical_path,omitempty"` // Should pre-loading be enabled. + // +kubebuilder:validation:Optional Preload *bool `json:"preload,omitempty" tf:"preload,omitempty"` // One or more virtual_directory blocks as defined below. + // +kubebuilder:validation:Optional VirtualDirectory []VirtualDirectoryParameters `json:"virtualDirectory,omitempty" tf:"virtual_directory,omitempty"` // The Virtual Path for the Virtual Application. + // +kubebuilder:validation:Optional VirtualPath *string `json:"virtualPath,omitempty" tf:"virtual_path,omitempty"` } @@ -385,9 +415,11 @@ type VirtualDirectoryObservation struct { type VirtualDirectoryParameters struct { // The physical path for the Virtual Application. + // +kubebuilder:validation:Optional PhysicalPath *string `json:"physicalPath,omitempty" tf:"physical_path,omitempty"` // The Virtual Path for the Virtual Application. + // +kubebuilder:validation:Optional VirtualPath *string `json:"virtualPath,omitempty" tf:"virtual_path,omitempty"` } @@ -425,10 +457,12 @@ type WindowsWebAppAuthSettingsActiveDirectoryParameters struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. // Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Active Directory. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. @@ -438,6 +472,7 @@ type WindowsWebAppAuthSettingsActiveDirectoryParameters struct { // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The App Setting name that contains the client secret of the Client. Cannot be used with `client_secret`. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` } @@ -475,6 +510,7 @@ type WindowsWebAppAuthSettingsFacebookParameters struct { // The App ID of the Facebook app used for login. // The App ID of the Facebook app used for login. + // +kubebuilder:validation:Optional AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The App Secret of the Facebook app used for Facebook login. Cannot be specified with app_secret_setting_name. @@ -484,10 +520,12 @@ type WindowsWebAppAuthSettingsFacebookParameters struct { // The app setting name that contains the app_secret value used for Facebook Login. // The app setting name that contains the `app_secret` value used for Facebook Login. Cannot be specified with `app_secret`. + // +kubebuilder:validation:Optional AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. // Specifies a list of OAuth 2.0 scopes to be requested as part of Facebook Login authentication. + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -525,6 +563,7 @@ type WindowsWebAppAuthSettingsGithubParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the GitHub app used for login. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. @@ -534,10 +573,12 @@ type WindowsWebAppAuthSettingsGithubParameters struct { // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for GitHub Login. Cannot be specified with `client_secret`. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -575,6 +616,7 @@ type WindowsWebAppAuthSettingsGoogleParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Google web application. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. @@ -584,10 +626,12 @@ type WindowsWebAppAuthSettingsGoogleParameters struct { // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Google Login. Cannot be specified with `client_secret`. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. // Specifies a list of OAuth 2.0 scopes that will be requested as part of Google Sign-In authentication. If not specified, "openid", "profile", and "email" are used as default scopes. + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -682,6 +726,7 @@ type WindowsWebAppAuthSettingsMicrosoftParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OAuth 2.0 client ID that was created for the app used for authentication. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. @@ -691,10 +736,12 @@ type WindowsWebAppAuthSettingsMicrosoftParameters struct { // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with `client_secret`. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. // The list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, `wl.basic` is used as the default scope. + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -758,57 +805,72 @@ type WindowsWebAppAuthSettingsObservation struct { type WindowsWebAppAuthSettingsParameters struct { // An active_directory block as defined above. + // +kubebuilder:validation:Optional ActiveDirectory []WindowsWebAppAuthSettingsActiveDirectoryParameters `json:"activeDirectory,omitempty" tf:"active_directory,omitempty"` // Specifies a map of login Parameters to send to the OpenID Connect authorization endpoint when a user logs in. // Specifies a map of Login Parameters to send to the OpenID Connect authorization endpoint when a user logs in. + // +kubebuilder:validation:Optional AdditionalLoginParameters map[string]*string `json:"additionalLoginParameters,omitempty" tf:"additional_login_parameters,omitempty"` // Specifies a list of External URLs that can be redirected to as part of logging in or logging out of the Windows Web App. // Specifies a list of External URLs that can be redirected to as part of logging in or logging out of the Windows Web App. + // +kubebuilder:validation:Optional AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` // The default authentication provider to use when multiple providers are configured. Possible values include: AzureActiveDirectory, Facebook, Google, MicrosoftAccount, Twitter, Github // The default authentication provider to use when multiple providers are configured. Possible values include: `AzureActiveDirectory`, `Facebook`, `Google`, `MicrosoftAccount`, `Twitter`, `Github`. + // +kubebuilder:validation:Optional DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` // Should the Authentication / Authorization feature is enabled for the Windows Web App be enabled? // Should the Authentication / Authorization feature be enabled? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // A facebook block as defined below. + // +kubebuilder:validation:Optional Facebook []WindowsWebAppAuthSettingsFacebookParameters `json:"facebook,omitempty" tf:"facebook,omitempty"` // A github block as defined below. + // +kubebuilder:validation:Optional Github []WindowsWebAppAuthSettingsGithubParameters `json:"github,omitempty" tf:"github,omitempty"` // A google block as defined below. + // +kubebuilder:validation:Optional Google []WindowsWebAppAuthSettingsGoogleParameters `json:"google,omitempty" tf:"google,omitempty"` // The OpenID Connect Issuer URI that represents the entity which issues access tokens for this Windows Web App. // The OpenID Connect Issuer URI that represents the entity which issues access tokens. + // +kubebuilder:validation:Optional Issuer *string `json:"issuer,omitempty" tf:"issuer,omitempty"` // A microsoft block as defined below. + // +kubebuilder:validation:Optional Microsoft []WindowsWebAppAuthSettingsMicrosoftParameters `json:"microsoft,omitempty" tf:"microsoft,omitempty"` // The RuntimeVersion of the Authentication / Authorization feature in use for the Windows Web App. // The RuntimeVersion of the Authentication / Authorization feature in use. + // +kubebuilder:validation:Optional RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72 hours. // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to `72` hours. + // +kubebuilder:validation:Optional TokenRefreshExtensionHours *float64 `json:"tokenRefreshExtensionHours,omitempty" tf:"token_refresh_extension_hours,omitempty"` // Should the Windows Web App durably store platform-specific security tokens that are obtained during login flows? Defaults to false. // Should the Windows Web App durably store platform-specific security tokens that are obtained during login flows? Defaults to `false`. + // +kubebuilder:validation:Optional TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` // A twitter block as defined below. + // +kubebuilder:validation:Optional Twitter []WindowsWebAppAuthSettingsTwitterParameters `json:"twitter,omitempty" tf:"twitter,omitempty"` // The action to take when an unauthenticated client attempts to access the app. Possible values include: RedirectToLoginPage, AllowAnonymous. // The action to take when an unauthenticated client attempts to access the app. Possible values include: `RedirectToLoginPage`, `AllowAnonymous`. + // +kubebuilder:validation:Optional UnauthenticatedClientAction *string `json:"unauthenticatedClientAction,omitempty" tf:"unauthenticated_client_action,omitempty"` } @@ -838,6 +900,7 @@ type WindowsWebAppAuthSettingsTwitterParameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + // +kubebuilder:validation:Optional ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with consumer_secret_setting_name. @@ -847,6 +910,7 @@ type WindowsWebAppAuthSettingsTwitterParameters struct { // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret`. + // +kubebuilder:validation:Optional ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` } @@ -956,50 +1020,62 @@ type WindowsWebAppAuthSettingsV2ActiveDirectoryV2Parameters struct { // The list of allowed Applications for the Default Authorisation Policy. // The list of allowed Applications for the Default Authorisation Policy. + // +kubebuilder:validation:Optional AllowedApplications []*string `json:"allowedApplications,omitempty" tf:"allowed_applications,omitempty"` // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. // Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The list of allowed Group Names for the Default Authorisation Policy. // The list of allowed Group Names for the Default Authorisation Policy. + // +kubebuilder:validation:Optional AllowedGroups []*string `json:"allowedGroups,omitempty" tf:"allowed_groups,omitempty"` // The list of allowed Identities for the Default Authorisation Policy. // The list of allowed Identities for the Default Authorisation Policy. + // +kubebuilder:validation:Optional AllowedIdentities []*string `json:"allowedIdentities,omitempty" tf:"allowed_identities,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Active Directory. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The thumbprint of the certificate used for signing purposes. // The thumbprint of the certificate used for signing purposes. + // +kubebuilder:validation:Optional ClientSecretCertificateThumbprint *string `json:"clientSecretCertificateThumbprint,omitempty" tf:"client_secret_certificate_thumbprint,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The App Setting name that contains the client secret of the Client. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // A list of Allowed Client Applications in the JWT Claim. // A list of Allowed Client Applications in the JWT Claim. + // +kubebuilder:validation:Optional JwtAllowedClientApplications []*string `json:"jwtAllowedClientApplications,omitempty" tf:"jwt_allowed_client_applications,omitempty"` // A list of Allowed Groups in the JWT Claim. // A list of Allowed Groups in the JWT Claim. + // +kubebuilder:validation:Optional JwtAllowedGroups []*string `json:"jwtAllowedGroups,omitempty" tf:"jwt_allowed_groups,omitempty"` // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. + // +kubebuilder:validation:Optional LoginParameters map[string]*string `json:"loginParameters,omitempty" tf:"login_parameters,omitempty"` // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/ // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. `https://login.microsoftonline.com/v2.0/{tenant-guid}/`. + // +kubebuilder:validation:Optional TenantAuthEndpoint *string `json:"tenantAuthEndpoint,omitempty" tf:"tenant_auth_endpoint,omitempty"` // Should the www-authenticate provider should be omitted from the request? Defaults to false // Should the www-authenticate provider should be omitted from the request? Defaults to `false` + // +kubebuilder:validation:Optional WwwAuthenticationDisabled *bool `json:"wwwAuthenticationDisabled,omitempty" tf:"www_authentication_disabled,omitempty"` } @@ -1032,10 +1108,12 @@ type WindowsWebAppAuthSettingsV2AppleV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Apple web application. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Apple Login. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` } @@ -1057,6 +1135,7 @@ type WindowsWebAppAuthSettingsV2AzureStaticWebAppV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Static Web App Authentication. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` } @@ -1134,22 +1213,27 @@ type WindowsWebAppAuthSettingsV2CustomOidcV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with this Custom OIDC. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The name which should be used for this TODO. // The name of the Custom OIDC Authentication Provider. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The name of the claim that contains the users name. // The name of the claim that contains the users name. + // +kubebuilder:validation:Optional NameClaimType *string `json:"nameClaimType,omitempty" tf:"name_claim_type,omitempty"` // The app setting name that contains the client_secret value used for the Custom OIDC Login. // The endpoint that contains all the configuration endpoints for this Custom OIDC provider. + // +kubebuilder:validation:Optional OpenIDConfigurationEndpoint *string `json:"openidConfigurationEndpoint,omitempty" tf:"openid_configuration_endpoint,omitempty"` // The list of the scopes that should be requested while authenticating. // The list of the scopes that should be requested while authenticating. + // +kubebuilder:validation:Optional Scopes []*string `json:"scopes,omitempty" tf:"scopes,omitempty"` } @@ -1195,18 +1279,22 @@ type WindowsWebAppAuthSettingsV2FacebookV2Parameters struct { // The App ID of the Facebook app used for login. // The App ID of the Facebook app used for login. + // +kubebuilder:validation:Optional AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The app setting name that contains the app_secret value used for Facebook Login. // The app setting name that contains the `app_secret` value used for Facebook Login. + // +kubebuilder:validation:Optional AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` // The version of the Facebook API to be used while logging in. // The version of the Facebook API to be used while logging in. + // +kubebuilder:validation:Optional GraphAPIVersion *string `json:"graphApiVersion,omitempty" tf:"graph_api_version,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of scopes to be requested as part of Facebook Login authentication. + // +kubebuilder:validation:Optional LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } @@ -1244,14 +1332,17 @@ type WindowsWebAppAuthSettingsV2GithubV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the GitHub app used for login. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for GitHub Login. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. + // +kubebuilder:validation:Optional LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } @@ -1297,18 +1388,22 @@ type WindowsWebAppAuthSettingsV2GoogleV2Parameters struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. // Specifies a list of Allowed Audiences that will be requested as part of Google Sign-In authentication. + // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Google web application. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Google Login. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of Login scopes that will be requested as part of Google Sign-In authentication. + // +kubebuilder:validation:Optional LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } @@ -1491,46 +1586,57 @@ type WindowsWebAppAuthSettingsV2LoginParameters struct { // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. **Note:** URLs within the current domain are always implicitly allowed. + // +kubebuilder:validation:Optional AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` // The method by which cookies expire. Possible values include: FixedTime, and IdentityProviderDerived. Defaults to FixedTime. // The method by which cookies expire. Possible values include: `FixedTime`, and `IdentityProviderDerived`. Defaults to `FixedTime`. + // +kubebuilder:validation:Optional CookieExpirationConvention *string `json:"cookieExpirationConvention,omitempty" tf:"cookie_expiration_convention,omitempty"` // The time after the request is made when the session cookie should expire. Defaults to 08:00:00. // The time after the request is made when the session cookie should expire. Defaults to `08:00:00`. + // +kubebuilder:validation:Optional CookieExpirationTime *string `json:"cookieExpirationTime,omitempty" tf:"cookie_expiration_time,omitempty"` // The endpoint to which logout requests should be made. // The endpoint to which logout requests should be made. + // +kubebuilder:validation:Optional LogoutEndpoint *string `json:"logoutEndpoint,omitempty" tf:"logout_endpoint,omitempty"` // The time after the request is made when the nonce should expire. Defaults to 00:05:00. // The time after the request is made when the nonce should expire. Defaults to `00:05:00`. + // +kubebuilder:validation:Optional NonceExpirationTime *string `json:"nonceExpirationTime,omitempty" tf:"nonce_expiration_time,omitempty"` // Should the fragments from the request be preserved after the login request is made. Defaults to false. // Should the fragments from the request be preserved after the login request is made. Defaults to `false`. + // +kubebuilder:validation:Optional PreserveURLFragmentsForLogins *bool `json:"preserveUrlFragmentsForLogins,omitempty" tf:"preserve_url_fragments_for_logins,omitempty"` // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72 hours. // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to `72` hours. + // +kubebuilder:validation:Optional TokenRefreshExtensionTime *float64 `json:"tokenRefreshExtensionTime,omitempty" tf:"token_refresh_extension_time,omitempty"` // Should the Token Store configuration Enabled. Defaults to false // Should the Token Store configuration Enabled. Defaults to `false` + // +kubebuilder:validation:Optional TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` // The directory path in the App Filesystem in which the tokens will be stored. // The directory path in the App Filesystem in which the tokens will be stored. + // +kubebuilder:validation:Optional TokenStorePath *string `json:"tokenStorePath,omitempty" tf:"token_store_path,omitempty"` // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. + // +kubebuilder:validation:Optional TokenStoreSASSettingName *string `json:"tokenStoreSasSettingName,omitempty" tf:"token_store_sas_setting_name,omitempty"` // Should the nonce be validated while completing the login flow. Defaults to true. // Should the nonce be validated while completing the login flow. Defaults to `true`. + // +kubebuilder:validation:Optional ValidateNonce *bool `json:"validateNonce,omitempty" tf:"validate_nonce,omitempty"` } @@ -1576,18 +1682,22 @@ type WindowsWebAppAuthSettingsV2MicrosoftV2Parameters struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. // The OAuth 2.0 client ID that was created for the app used for authentication. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // The list of Login scopes that will be requested as part of Microsoft Account authentication. + // +kubebuilder:validation:Optional LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } @@ -1675,81 +1785,103 @@ type WindowsWebAppAuthSettingsV2Observation struct { type WindowsWebAppAuthSettingsV2Parameters struct { // An active_directory_v2 block as defined below. + // +kubebuilder:validation:Optional ActiveDirectoryV2 []WindowsWebAppAuthSettingsV2ActiveDirectoryV2Parameters `json:"activeDirectoryV2,omitempty" tf:"active_directory_v2,omitempty"` // An apple_v2 block as defined below. + // +kubebuilder:validation:Optional AppleV2 []WindowsWebAppAuthSettingsV2AppleV2Parameters `json:"appleV2,omitempty" tf:"apple_v2,omitempty"` // Should the AuthV2 Settings be enabled. Defaults to false. // Should the AuthV2 Settings be enabled. Defaults to `false` + // +kubebuilder:validation:Optional AuthEnabled *bool `json:"authEnabled,omitempty" tf:"auth_enabled,omitempty"` // An azure_static_web_app_v2 block as defined below. + // +kubebuilder:validation:Optional AzureStaticWebAppV2 []WindowsWebAppAuthSettingsV2AzureStaticWebAppV2Parameters `json:"azureStaticWebAppV2,omitempty" tf:"azure_static_web_app_v2,omitempty"` // The path to the App Auth settings. // The path to the App Auth settings. **Note:** Relative Paths are evaluated from the Site Root directory. + // +kubebuilder:validation:Optional ConfigFilePath *string `json:"configFilePath,omitempty" tf:"config_file_path,omitempty"` // Zero or more custom_oidc_v2 blocks as defined below. + // +kubebuilder:validation:Optional CustomOidcV2 []WindowsWebAppAuthSettingsV2CustomOidcV2Parameters `json:"customOidcV2,omitempty" tf:"custom_oidc_v2,omitempty"` // The Default Authentication Provider to use when more than one Authentication Provider is configured and the unauthenticated_action is set to RedirectToLoginPage. // The Default Authentication Provider to use when the `unauthenticated_action` is set to `RedirectToLoginPage`. + // +kubebuilder:validation:Optional DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` // The paths which should be excluded from the unauthenticated_action when it is set to RedirectToLoginPage. // The paths which should be excluded from the `unauthenticated_action` when it is set to `RedirectToLoginPage`. + // +kubebuilder:validation:Optional ExcludedPaths []*string `json:"excludedPaths,omitempty" tf:"excluded_paths,omitempty"` // A facebook_v2 block as defined below. + // +kubebuilder:validation:Optional FacebookV2 []WindowsWebAppAuthSettingsV2FacebookV2Parameters `json:"facebookV2,omitempty" tf:"facebook_v2,omitempty"` // The convention used to determine the url of the request made. Possible values include ForwardProxyConventionNoProxy, ForwardProxyConventionStandard, ForwardProxyConventionCustom. Defaults to ForwardProxyConventionNoProxy. // The convention used to determine the url of the request made. Possible values include `ForwardProxyConventionNoProxy`, `ForwardProxyConventionStandard`, `ForwardProxyConventionCustom`. Defaults to `ForwardProxyConventionNoProxy` + // +kubebuilder:validation:Optional ForwardProxyConvention *string `json:"forwardProxyConvention,omitempty" tf:"forward_proxy_convention,omitempty"` // The name of the custom header containing the host of the request. // The name of the header containing the host of the request. + // +kubebuilder:validation:Optional ForwardProxyCustomHostHeaderName *string `json:"forwardProxyCustomHostHeaderName,omitempty" tf:"forward_proxy_custom_host_header_name,omitempty"` // The name of the custom header containing the scheme of the request. // The name of the header containing the scheme of the request. + // +kubebuilder:validation:Optional ForwardProxyCustomSchemeHeaderName *string `json:"forwardProxyCustomSchemeHeaderName,omitempty" tf:"forward_proxy_custom_scheme_header_name,omitempty"` // A github_v2 block as defined below. + // +kubebuilder:validation:Optional GithubV2 []WindowsWebAppAuthSettingsV2GithubV2Parameters `json:"githubV2,omitempty" tf:"github_v2,omitempty"` // A google_v2 block as defined below. + // +kubebuilder:validation:Optional GoogleV2 []WindowsWebAppAuthSettingsV2GoogleV2Parameters `json:"googleV2,omitempty" tf:"google_v2,omitempty"` // The prefix that should precede all the authentication and authorisation paths. Defaults to /.auth. // The prefix that should precede all the authentication and authorisation paths. Defaults to `/.auth` + // +kubebuilder:validation:Optional HTTPRouteAPIPrefix *string `json:"httpRouteApiPrefix,omitempty" tf:"http_route_api_prefix,omitempty"` // A login block as defined below. + // +kubebuilder:validation:Optional Login []WindowsWebAppAuthSettingsV2LoginParameters `json:"login,omitempty" tf:"login,omitempty"` // A microsoft_v2 block as defined below. + // +kubebuilder:validation:Optional MicrosoftV2 []WindowsWebAppAuthSettingsV2MicrosoftV2Parameters `json:"microsoftV2,omitempty" tf:"microsoft_v2,omitempty"` // Should the authentication flow be used for all requests. // Should the authentication flow be used for all requests. + // +kubebuilder:validation:Optional RequireAuthentication *bool `json:"requireAuthentication,omitempty" tf:"require_authentication,omitempty"` // Should HTTPS be required on connections? Defaults to true. // Should HTTPS be required on connections? Defaults to true. + // +kubebuilder:validation:Optional RequireHTTPS *bool `json:"requireHttps,omitempty" tf:"require_https,omitempty"` // The Runtime Version of the Authentication and Authorisation feature of this App. Defaults to ~1. // The Runtime Version of the Authentication and Authorisation feature of this App. Defaults to `~1` + // +kubebuilder:validation:Optional RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` // A twitter_v2 block as defined below. + // +kubebuilder:validation:Optional TwitterV2 []WindowsWebAppAuthSettingsV2TwitterV2Parameters `json:"twitterV2,omitempty" tf:"twitter_v2,omitempty"` // The action to take for requests made without authentication. Possible values include RedirectToLoginPage, AllowAnonymous, Return401, and Return403. Defaults to RedirectToLoginPage. // The action to take for requests made without authentication. Possible values include `RedirectToLoginPage`, `AllowAnonymous`, `Return401`, and `Return403`. Defaults to `RedirectToLoginPage`. + // +kubebuilder:validation:Optional UnauthenticatedAction *string `json:"unauthenticatedAction,omitempty" tf:"unauthenticated_action,omitempty"` } @@ -1779,10 +1911,12 @@ type WindowsWebAppAuthSettingsV2TwitterV2Parameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + // +kubebuilder:validation:Optional ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. + // +kubebuilder:validation:Optional ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` } @@ -1818,13 +1952,16 @@ type WindowsWebAppBackupParameters struct { // Should this backup job be enabled? Defaults to true. // Should this backup job be enabled? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The name which should be used for this Backup. // The name which should be used for this Backup. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A schedule block as defined below. + // +kubebuilder:validation:Optional Schedule []WindowsWebAppBackupScheduleParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` // The SAS URL to the container. @@ -1886,22 +2023,27 @@ type WindowsWebAppBackupScheduleParameters struct { // How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and frequency_unit should be set to Day). // How often the backup should be executed (e.g. for weekly backup, this should be set to `7` and `frequency_unit` should be set to `Day`). + // +kubebuilder:validation:Optional FrequencyInterval *float64 `json:"frequencyInterval,omitempty" tf:"frequency_interval,omitempty"` // The unit of time for how often the backup should take place. Possible values include: Day, Hour // The unit of time for how often the backup should take place. Possible values include: `Day` and `Hour`. + // +kubebuilder:validation:Optional FrequencyUnit *string `json:"frequencyUnit,omitempty" tf:"frequency_unit,omitempty"` // Should the service keep at least one backup, regardless of age of backup. Defaults to false. // Should the service keep at least one backup, regardless of age of backup. Defaults to `false`. + // +kubebuilder:validation:Optional KeepAtLeastOneBackup *bool `json:"keepAtLeastOneBackup,omitempty" tf:"keep_at_least_one_backup,omitempty"` // After how many days backups should be deleted. Defaults to 30. // After how many days backups should be deleted. + // +kubebuilder:validation:Optional RetentionPeriodDays *float64 `json:"retentionPeriodDays,omitempty" tf:"retention_period_days,omitempty"` // When the schedule should start working in RFC-3339 format. // When the schedule should start working in RFC-3339 format. + // +kubebuilder:validation:Optional StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` } @@ -1931,10 +2073,12 @@ type WindowsWebAppConnectionStringParameters struct { // The name of the Connection String. // The name which should be used for this Connection. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of database. Possible values include: APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, PostgreSQL, RedisCache, ServiceBus, SQLAzure, and SQLServer. // Type of database. Possible values include: `MySQL`, `SQLServer`, `SQLAzure`, `Custom`, `NotificationHub`, `ServiceBus`, `EventHub`, `APIHub`, `DocDb`, `RedisCache`, and `PostgreSQL`. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // The connection string value. @@ -1970,9 +2114,11 @@ type WindowsWebAppIdentityObservation struct { type WindowsWebAppIdentityParameters struct { // A list of User Assigned Managed Identity IDs to be assigned to this Windows Web App. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Windows Web App. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -2062,9 +2208,11 @@ type WindowsWebAppLogsApplicationLogsObservation struct { type WindowsWebAppLogsApplicationLogsParameters struct { // A azure_blob_storage_http block as defined above. + // +kubebuilder:validation:Optional AzureBlobStorage []LogsApplicationLogsAzureBlobStorageParameters `json:"azureBlobStorage,omitempty" tf:"azure_blob_storage,omitempty"` // Log level. Possible values include: Verbose, Information, Warning, and Error. + // +kubebuilder:validation:Optional FileSystemLevel *string `json:"fileSystemLevel,omitempty" tf:"file_system_level,omitempty"` } @@ -2083,6 +2231,7 @@ type WindowsWebAppLogsHTTPLogsAzureBlobStorageObservation struct { type WindowsWebAppLogsHTTPLogsAzureBlobStorageParameters struct { // The retention period in days. A values of 0 means no retention. + // +kubebuilder:validation:Optional RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` // SAS url to an Azure blob container with read/write/list/delete permissions. @@ -2111,9 +2260,11 @@ type WindowsWebAppLogsHTTPLogsObservation struct { type WindowsWebAppLogsHTTPLogsParameters struct { // A azure_blob_storage_http block as defined above. + // +kubebuilder:validation:Optional AzureBlobStorage []WindowsWebAppLogsHTTPLogsAzureBlobStorageParameters `json:"azureBlobStorage,omitempty" tf:"azure_blob_storage,omitempty"` // A file_system block as defined above. + // +kubebuilder:validation:Optional FileSystem []LogsHTTPLogsFileSystemParameters `json:"fileSystem,omitempty" tf:"file_system,omitempty"` } @@ -2150,15 +2301,19 @@ type WindowsWebAppLogsObservation struct { type WindowsWebAppLogsParameters struct { // A application_logs block as defined above. + // +kubebuilder:validation:Optional ApplicationLogs []WindowsWebAppLogsApplicationLogsParameters `json:"applicationLogs,omitempty" tf:"application_logs,omitempty"` // Should detailed error messages be enabled. + // +kubebuilder:validation:Optional DetailedErrorMessages *bool `json:"detailedErrorMessages,omitempty" tf:"detailed_error_messages,omitempty"` // Should tracing be enabled for failed requests. + // +kubebuilder:validation:Optional FailedRequestTracing *bool `json:"failedRequestTracing,omitempty" tf:"failed_request_tracing,omitempty"` // A http_logs block as defined above. + // +kubebuilder:validation:Optional HTTPLogs []WindowsWebAppLogsHTTPLogsParameters `json:"httpLogs,omitempty" tf:"http_logs,omitempty"` } @@ -2263,49 +2418,64 @@ type WindowsWebAppObservation struct { type WindowsWebAppParameters struct { // A map of key-value pairs of App Settings. + // +kubebuilder:validation:Optional AppSettings map[string]*string `json:"appSettings,omitempty" tf:"app_settings,omitempty"` // An auth_settings block as defined below. + // +kubebuilder:validation:Optional AuthSettings []WindowsWebAppAuthSettingsParameters `json:"authSettings,omitempty" tf:"auth_settings,omitempty"` // An auth_settings_v2 block as defined below. + // +kubebuilder:validation:Optional AuthSettingsV2 []WindowsWebAppAuthSettingsV2Parameters `json:"authSettingsV2,omitempty" tf:"auth_settings_v2,omitempty"` // A backup block as defined below. + // +kubebuilder:validation:Optional Backup []WindowsWebAppBackupParameters `json:"backup,omitempty" tf:"backup,omitempty"` // Should Client Affinity be enabled? + // +kubebuilder:validation:Optional ClientAffinityEnabled *bool `json:"clientAffinityEnabled,omitempty" tf:"client_affinity_enabled,omitempty"` // Should Client Certificates be enabled? + // +kubebuilder:validation:Optional ClientCertificateEnabled *bool `json:"clientCertificateEnabled,omitempty" tf:"client_certificate_enabled,omitempty"` // Paths to exclude when using client certificates, separated by ; // Paths to exclude when using client certificates, separated by ; + // +kubebuilder:validation:Optional ClientCertificateExclusionPaths *string `json:"clientCertificateExclusionPaths,omitempty" tf:"client_certificate_exclusion_paths,omitempty"` // The Client Certificate mode. Possible values are Required, Optional, and OptionalInteractiveUser. This property has no effect when client_cert_enabled is false + // +kubebuilder:validation:Optional ClientCertificateMode *string `json:"clientCertificateMode,omitempty" tf:"client_certificate_mode,omitempty"` // One or more connection_string blocks as defined below. + // +kubebuilder:validation:Optional ConnectionString []WindowsWebAppConnectionStringParameters `json:"connectionString,omitempty" tf:"connection_string,omitempty"` // Should the Windows Web App be enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Should the Windows Web App require HTTPS connections. + // +kubebuilder:validation:Optional HTTPSOnly *bool `json:"httpsOnly,omitempty" tf:"https_only,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []WindowsWebAppIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // The User Assigned Identity ID used for accessing KeyVault secrets. The identity must be assigned to the application in the identity block. For more information see - Access vaults with a user-assigned identity + // +kubebuilder:validation:Optional KeyVaultReferenceIdentityID *string `json:"keyVaultReferenceIdentityId,omitempty" tf:"key_vault_reference_identity_id,omitempty"` // The Azure Region where the Windows Web App should exist. Changing this forces a new Windows Web App to be created. + // +kubebuilder:validation:Optional Location *string `json:"location,omitempty" tf:"location,omitempty"` // A logs block as defined below. + // +kubebuilder:validation:Optional Logs []WindowsWebAppLogsParameters `json:"logs,omitempty" tf:"logs,omitempty"` // The name of the Resource Group where the Windows Web App should exist. Changing this forces a new Windows Web App to be created. @@ -2336,15 +2506,19 @@ type WindowsWebAppParameters struct { ServicePlanIDSelector *v1.Selector `json:"servicePlanIdSelector,omitempty" tf:"-"` // A site_config block as defined below. + // +kubebuilder:validation:Optional SiteConfig []WindowsWebAppSiteConfigParameters `json:"siteConfig,omitempty" tf:"site_config,omitempty"` // A sticky_settings block as defined below. + // +kubebuilder:validation:Optional StickySettings []WindowsWebAppStickySettingsParameters `json:"stickySettings,omitempty" tf:"sticky_settings,omitempty"` // One or more storage_account blocks as defined below. + // +kubebuilder:validation:Optional StorageAccount []WindowsWebAppStorageAccountParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` // A mapping of tags which should be assigned to the Windows Web App. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The subnet id which will be used by this Web App for regional virtual network integration. @@ -2363,6 +2537,7 @@ type WindowsWebAppParameters struct { // The local path and filename of the Zip packaged application to deploy to this Windows Web App. // The local path and filename of the Zip packaged application to deploy to this Windows Web App. **Note:** Using this value requires either `WEBSITE_RUN_FROM_PACKAGE=1` or `SCM_DO_BUILD_DURING_DEPLOYMENT=true` to be set on the App in `app_settings`. + // +kubebuilder:validation:Optional ZipDeployFile *string `json:"zipDeployFile,omitempty" tf:"zip_deploy_file,omitempty"` } @@ -2463,47 +2638,62 @@ type WindowsWebAppSiteConfigApplicationStackObservation struct { type WindowsWebAppSiteConfigApplicationStackParameters struct { // The Application Stack for the Windows Web App. Possible values include dotnet, dotnetcore, node, python, php, and java. + // +kubebuilder:validation:Optional CurrentStack *string `json:"currentStack,omitempty" tf:"current_stack,omitempty"` // The name of the Docker Container. For example azure-app-service/samples/aspnethelloworld + // +kubebuilder:validation:Optional DockerContainerName *string `json:"dockerContainerName,omitempty" tf:"docker_container_name,omitempty"` // The registry Host on which the specified Docker Container can be located. For example mcr.microsoft.com + // +kubebuilder:validation:Optional DockerContainerRegistry *string `json:"dockerContainerRegistry,omitempty" tf:"docker_container_registry,omitempty"` // The Image Tag of the specified Docker Container to use. For example latest + // +kubebuilder:validation:Optional DockerContainerTag *string `json:"dockerContainerTag,omitempty" tf:"docker_container_tag,omitempty"` // The version of .NET to use when current_stack is set to dotnetcore. Possible values include v4.0. // The version of DotNetCore to use. + // +kubebuilder:validation:Optional DotnetCoreVersion *string `json:"dotnetCoreVersion,omitempty" tf:"dotnet_core_version,omitempty"` // The version of .NET to use when current_stack is set to dotnet. Possible values include v2.0,v3.0, v4.0, v5.0, v6.0 and v7.0. + // +kubebuilder:validation:Optional DotnetVersion *string `json:"dotnetVersion,omitempty" tf:"dotnet_version,omitempty"` + // +kubebuilder:validation:Optional JavaContainer *string `json:"javaContainer,omitempty" tf:"java_container,omitempty"` + // +kubebuilder:validation:Optional JavaContainerVersion *string `json:"javaContainerVersion,omitempty" tf:"java_container_version,omitempty"` // Should the Java Embedded Server (Java SE) be used to run the app. // Should the application use the embedded web server for the version of Java in use. + // +kubebuilder:validation:Optional JavaEmbeddedServerEnabled *bool `json:"javaEmbeddedServerEnabled,omitempty" tf:"java_embedded_server_enabled,omitempty"` // The version of Java to use when current_stack is set to java. + // +kubebuilder:validation:Optional JavaVersion *string `json:"javaVersion,omitempty" tf:"java_version,omitempty"` // The version of node to use when current_stack is set to node. Possible values are ~12, ~14, ~16, and ~18. + // +kubebuilder:validation:Optional NodeVersion *string `json:"nodeVersion,omitempty" tf:"node_version,omitempty"` // The version of PHP to use when current_stack is set to php. Possible values are 7.1, 7.4 and Off. + // +kubebuilder:validation:Optional PHPVersion *string `json:"phpVersion,omitempty" tf:"php_version,omitempty"` // Specifies whether this is a Python app. Defaults to false. + // +kubebuilder:validation:Optional Python *bool `json:"python,omitempty" tf:"python,omitempty"` + // +kubebuilder:validation:Optional PythonVersion *string `json:"pythonVersion,omitempty" tf:"python_version,omitempty"` // The version of Tomcat the Java App should use. Conflicts with java_embedded_server_enabled + // +kubebuilder:validation:Optional TomcatVersion *string `json:"tomcatVersion,omitempty" tf:"tomcat_version,omitempty"` } @@ -2528,9 +2718,11 @@ type WindowsWebAppSiteConfigAutoHealSettingObservation struct { type WindowsWebAppSiteConfigAutoHealSettingParameters struct { // The action to take. Possible values are Allow or Deny. + // +kubebuilder:validation:Optional Action []SiteConfigAutoHealSettingActionParameters `json:"action,omitempty" tf:"action,omitempty"` // A trigger block as defined below. + // +kubebuilder:validation:Optional Trigger []SiteConfigAutoHealSettingTriggerParameters `json:"trigger,omitempty" tf:"trigger,omitempty"` } @@ -2560,10 +2752,12 @@ type WindowsWebAppSiteConfigCorsParameters struct { // Specifies a list of origins that should be allowed to make cross-origin calls. // Specifies a list of origins that should be allowed to make cross-origin calls. + // +kubebuilder:validation:Optional AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` // Whether CORS requests with credentials are allowed. Defaults to false // Are credentials allowed in CORS requests? Defaults to `false`. + // +kubebuilder:validation:Optional SupportCredentials *bool `json:"supportCredentials,omitempty" tf:"support_credentials,omitempty"` } @@ -2600,15 +2794,19 @@ type WindowsWebAppSiteConfigIPRestrictionHeadersObservation struct { type WindowsWebAppSiteConfigIPRestrictionHeadersParameters struct { // Specifies a list of Azure Front Door IDs. + // +kubebuilder:validation:Optional XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` // Specifies if a Front Door Health Probe should be expected. The only possible value is 1. + // +kubebuilder:validation:Optional XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` // Specifies a list of addresses for which matching should be applied. Omitting this value means allow any. + // +kubebuilder:validation:Optional XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` // Specifies a list of Hosts for which matching should be applied. + // +kubebuilder:validation:Optional XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } @@ -2672,25 +2870,31 @@ type WindowsWebAppSiteConfigIPRestrictionParameters struct { // The action to take. Possible values are Allow or Deny. // The action to take. Possible values are `Allow` or `Deny`. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // A headers block as defined above. + // +kubebuilder:validation:Optional Headers []WindowsWebAppSiteConfigIPRestrictionHeadersParameters `json:"headers,omitempty" tf:"headers,omitempty"` // The CIDR notation of the IP or IP Range to match. For example: 10.0.0.0/24 or 192.168.10.1/32 // The CIDR notation of the IP or IP Range to match. For example: `10.0.0.0/24` or `192.168.10.1/32` or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22` + // +kubebuilder:validation:Optional IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` // The name which should be used for this TODO. // The name which should be used for this `ip_restriction`. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The priority value of this ip_restriction. Defaults to 65000. // The priority value of this `ip_restriction`. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // The Service Tag used for this IP Restriction. // The Service Tag used for this IP Restriction. + // +kubebuilder:validation:Optional ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag,omitempty"` // The subnet id which will be used by this Web App for regional virtual network integration. @@ -2911,95 +3115,125 @@ type WindowsWebAppSiteConfigObservation struct { type WindowsWebAppSiteConfigParameters struct { // The URL to the API Definition for this Windows Web App. + // +kubebuilder:validation:Optional APIDefinitionURL *string `json:"apiDefinitionUrl,omitempty" tf:"api_definition_url,omitempty"` // The API Management API ID this Windows Web App Slot is associated with. + // +kubebuilder:validation:Optional APIManagementAPIID *string `json:"apiManagementApiId,omitempty" tf:"api_management_api_id,omitempty"` // If this Windows Web App is Always On enabled. Defaults to true. + // +kubebuilder:validation:Optional AlwaysOn *bool `json:"alwaysOn,omitempty" tf:"always_on,omitempty"` // The App command line to launch. + // +kubebuilder:validation:Optional AppCommandLine *string `json:"appCommandLine,omitempty" tf:"app_command_line,omitempty"` // A application_stack block as defined above. + // +kubebuilder:validation:Optional ApplicationStack []WindowsWebAppSiteConfigApplicationStackParameters `json:"applicationStack,omitempty" tf:"application_stack,omitempty"` // Should Auto heal rules be enabled. Required with auto_heal_setting. + // +kubebuilder:validation:Optional AutoHealEnabled *bool `json:"autoHealEnabled,omitempty" tf:"auto_heal_enabled,omitempty"` // A auto_heal_setting block as defined above. Required with auto_heal. + // +kubebuilder:validation:Optional AutoHealSetting []WindowsWebAppSiteConfigAutoHealSettingParameters `json:"autoHealSetting,omitempty" tf:"auto_heal_setting,omitempty"` // The Client ID of the Managed Service Identity to use for connections to the Azure Container Registry. + // +kubebuilder:validation:Optional ContainerRegistryManagedIdentityClientID *string `json:"containerRegistryManagedIdentityClientId,omitempty" tf:"container_registry_managed_identity_client_id,omitempty"` // Should connections for Azure Container Registry use Managed Identity. + // +kubebuilder:validation:Optional ContainerRegistryUseManagedIdentity *bool `json:"containerRegistryUseManagedIdentity,omitempty" tf:"container_registry_use_managed_identity,omitempty"` // A cors block as defined above. + // +kubebuilder:validation:Optional Cors []WindowsWebAppSiteConfigCorsParameters `json:"cors,omitempty" tf:"cors,omitempty"` // Specifies a list of Default Documents for the Windows Web App. + // +kubebuilder:validation:Optional DefaultDocuments []*string `json:"defaultDocuments,omitempty" tf:"default_documents,omitempty"` // The State of FTP / FTPS service. Possible values include: AllAllowed, FtpsOnly, Disabled. + // +kubebuilder:validation:Optional FtpsState *string `json:"ftpsState,omitempty" tf:"ftps_state,omitempty"` // The amount of time in minutes that a node can be unhealthy before being removed from the load balancer. Possible values are between 2 and 10. Only valid in conjunction with health_check_path. // The amount of time in minutes that a node is unhealthy before being removed from the load balancer. Possible values are between `2` and `10`. Defaults to `10`. Only valid in conjunction with `health_check_path` + // +kubebuilder:validation:Optional HealthCheckEvictionTimeInMin *float64 `json:"healthCheckEvictionTimeInMin,omitempty" tf:"health_check_eviction_time_in_min,omitempty"` // The path to the Health Check. + // +kubebuilder:validation:Optional HealthCheckPath *string `json:"healthCheckPath,omitempty" tf:"health_check_path,omitempty"` // Should the HTTP2 be enabled? + // +kubebuilder:validation:Optional Http2Enabled *bool `json:"http2Enabled,omitempty" tf:"http2_enabled,omitempty"` // One or more ip_restriction blocks as defined above. + // +kubebuilder:validation:Optional IPRestriction []WindowsWebAppSiteConfigIPRestrictionParameters `json:"ipRestriction,omitempty" tf:"ip_restriction,omitempty"` // The Site load balancing. Possible values include: WeightedRoundRobin, LeastRequests, LeastResponseTime, WeightedTotalTraffic, RequestHash, PerSiteRoundRobin. Defaults to LeastRequests if omitted. + // +kubebuilder:validation:Optional LoadBalancingMode *string `json:"loadBalancingMode,omitempty" tf:"load_balancing_mode,omitempty"` // Use Local MySQL. Defaults to false. + // +kubebuilder:validation:Optional LocalMySQLEnabled *bool `json:"localMysqlEnabled,omitempty" tf:"local_mysql_enabled,omitempty"` // Managed pipeline mode. Possible values include: Integrated, Classic. + // +kubebuilder:validation:Optional ManagedPipelineMode *string `json:"managedPipelineMode,omitempty" tf:"managed_pipeline_mode,omitempty"` // The configures the minimum version of TLS required for SSL requests. Possible values include: 1.0, 1.1, and 1.2. Defaults to 1.2. + // +kubebuilder:validation:Optional MinimumTLSVersion *string `json:"minimumTlsVersion,omitempty" tf:"minimum_tls_version,omitempty"` // Should Remote Debugging be enabled. Defaults to false. + // +kubebuilder:validation:Optional RemoteDebuggingEnabled *bool `json:"remoteDebuggingEnabled,omitempty" tf:"remote_debugging_enabled,omitempty"` // The Remote Debugging Version. Possible values include VS2017 and VS2019 + // +kubebuilder:validation:Optional RemoteDebuggingVersion *string `json:"remoteDebuggingVersion,omitempty" tf:"remote_debugging_version,omitempty"` // One or more scm_ip_restriction blocks as defined above. + // +kubebuilder:validation:Optional ScmIPRestriction []WindowsWebAppSiteConfigScmIPRestrictionParameters `json:"scmIpRestriction,omitempty" tf:"scm_ip_restriction,omitempty"` // The configures the minimum version of TLS required for SSL requests to the SCM site Possible values include: 1.0, 1.1, and 1.2. Defaults to 1.2. + // +kubebuilder:validation:Optional ScmMinimumTLSVersion *string `json:"scmMinimumTlsVersion,omitempty" tf:"scm_minimum_tls_version,omitempty"` // Should the Windows Web App ip_restriction configuration be used for the SCM also. + // +kubebuilder:validation:Optional ScmUseMainIPRestriction *bool `json:"scmUseMainIpRestriction,omitempty" tf:"scm_use_main_ip_restriction,omitempty"` // Should the Windows Web App use a 32-bit worker. Defaults to true. + // +kubebuilder:validation:Optional Use32BitWorker *bool `json:"use32BitWorker,omitempty" tf:"use_32_bit_worker,omitempty"` // One or more virtual_application blocks as defined below. + // +kubebuilder:validation:Optional VirtualApplication []VirtualApplicationParameters `json:"virtualApplication,omitempty" tf:"virtual_application,omitempty"` // Should all outbound traffic to have NAT Gateways, Network Security Groups and User Defined Routes applied? Defaults to false. // Should all outbound traffic to have Virtual Network Security Groups and User Defined Routes applied? Defaults to `false`. + // +kubebuilder:validation:Optional VnetRouteAllEnabled *bool `json:"vnetRouteAllEnabled,omitempty" tf:"vnet_route_all_enabled,omitempty"` // Should Web Sockets be enabled. Defaults to false. + // +kubebuilder:validation:Optional WebsocketsEnabled *bool `json:"websocketsEnabled,omitempty" tf:"websockets_enabled,omitempty"` // The number of Workers for this Windows App Service. + // +kubebuilder:validation:Optional WorkerCount *float64 `json:"workerCount,omitempty" tf:"worker_count,omitempty"` } @@ -3036,15 +3270,19 @@ type WindowsWebAppSiteConfigScmIPRestrictionHeadersObservation struct { type WindowsWebAppSiteConfigScmIPRestrictionHeadersParameters struct { // Specifies a list of Azure Front Door IDs. + // +kubebuilder:validation:Optional XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` // Specifies if a Front Door Health Probe should be expected. The only possible value is 1. + // +kubebuilder:validation:Optional XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` // Specifies a list of addresses for which matching should be applied. Omitting this value means allow any. + // +kubebuilder:validation:Optional XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` // Specifies a list of Hosts for which matching should be applied. + // +kubebuilder:validation:Optional XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } @@ -3108,25 +3346,31 @@ type WindowsWebAppSiteConfigScmIPRestrictionParameters struct { // The action to take. Possible values are Allow or Deny. // The action to take. Possible values are `Allow` or `Deny`. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // A headers block as defined above. + // +kubebuilder:validation:Optional Headers []WindowsWebAppSiteConfigScmIPRestrictionHeadersParameters `json:"headers,omitempty" tf:"headers,omitempty"` // The CIDR notation of the IP or IP Range to match. For example: 10.0.0.0/24 or 192.168.10.1/32 // The CIDR notation of the IP or IP Range to match. For example: `10.0.0.0/24` or `192.168.10.1/32` or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22` + // +kubebuilder:validation:Optional IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` // The name which should be used for this TODO. // The name which should be used for this `ip_restriction`. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The priority value of this ip_restriction. Defaults to 65000. // The priority value of this `ip_restriction`. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // The Service Tag used for this IP Restriction. // The Service Tag used for this IP Restriction. + // +kubebuilder:validation:Optional ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag,omitempty"` // The subnet id which will be used by this Web App for regional virtual network integration. @@ -3181,9 +3425,11 @@ type WindowsWebAppStickySettingsObservation struct { type WindowsWebAppStickySettingsParameters struct { // A list of app_setting names that the Windows Web App will not swap between Slots when a swap operation is triggered. + // +kubebuilder:validation:Optional AppSettingNames []*string `json:"appSettingNames,omitempty" tf:"app_setting_names,omitempty"` // A list of connection_string names that the Windows Web App will not swap between Slots when a swap operation is triggered. + // +kubebuilder:validation:Optional ConnectionStringNames []*string `json:"connectionStringNames,omitempty" tf:"connection_string_names,omitempty"` } @@ -3230,18 +3476,23 @@ type WindowsWebAppStorageAccountParameters struct { AccessKeySecretRef v1.SecretKeySelector `json:"accessKeySecretRef" tf:"-"` // The Name of the Storage Account. + // +kubebuilder:validation:Optional AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` // The path at which to mount the storage share. + // +kubebuilder:validation:Optional MountPath *string `json:"mountPath,omitempty" tf:"mount_path,omitempty"` // The name which should be used for this TODO. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Name of the File Share or Container Name for Blob storage. + // +kubebuilder:validation:Optional ShareName *string `json:"shareName,omitempty" tf:"share_name,omitempty"` // The Azure Storage Type. Possible values include AzureFiles and AzureBlob + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/apis/web/v1beta1/zz_windowswebappslot_types.go b/apis/web/v1beta1/zz_windowswebappslot_types.go index 452720d4b..ba4237e75 100755 --- a/apis/web/v1beta1/zz_windowswebappslot_types.go +++ b/apis/web/v1beta1/zz_windowswebappslot_types.go @@ -34,9 +34,11 @@ type ActionCustomActionObservation struct { type ActionCustomActionParameters struct { // The executable to run for the custom_action. + // +kubebuilder:validation:Optional Executable *string `json:"executable,omitempty" tf:"executable,omitempty"` // The parameters to pass to the specified executable. + // +kubebuilder:validation:Optional Parameters *string `json:"parameters,omitempty" tf:"parameters,omitempty"` } @@ -61,9 +63,11 @@ type SiteConfigAutoHealSettingTriggerRequestsObservation struct { type SiteConfigAutoHealSettingTriggerRequestsParameters struct { // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. + // +kubebuilder:validation:Optional Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The time interval in the form hh:mm:ss. + // +kubebuilder:validation:Optional Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` } @@ -100,15 +104,19 @@ type SiteConfigAutoHealSettingTriggerSlowRequestObservation struct { type SiteConfigAutoHealSettingTriggerSlowRequestParameters struct { // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. + // +kubebuilder:validation:Optional Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The time interval in the form hh:mm:ss. + // +kubebuilder:validation:Optional Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` // The path to which this rule status code applies. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` // The threshold of time passed to qualify as a Slow Request in hh:mm:ss. + // +kubebuilder:validation:Optional TimeTaken *string `json:"timeTaken,omitempty" tf:"time_taken,omitempty"` } @@ -157,21 +165,27 @@ type SiteConfigAutoHealSettingTriggerStatusCodeObservation struct { type SiteConfigAutoHealSettingTriggerStatusCodeParameters struct { // The number of occurrences of the defined status_code in the specified interval on which to trigger this rule. + // +kubebuilder:validation:Optional Count *float64 `json:"count,omitempty" tf:"count,omitempty"` // The time interval in the form hh:mm:ss. + // +kubebuilder:validation:Optional Interval *string `json:"interval,omitempty" tf:"interval,omitempty"` // The path to which this rule status code applies. + // +kubebuilder:validation:Optional Path *string `json:"path,omitempty" tf:"path,omitempty"` // The status code for this rule, accepts single status codes and status code ranges. e.g. 500 or 400-499. Possible values are integers between 101 and 599 + // +kubebuilder:validation:Optional StatusCodeRange *string `json:"statusCodeRange,omitempty" tf:"status_code_range,omitempty"` // The Request Sub Status of the Status Code. + // +kubebuilder:validation:Optional SubStatus *float64 `json:"subStatus,omitempty" tf:"sub_status,omitempty"` // The Win32 Status Code of the Request. + // +kubebuilder:validation:Optional Win32Status *string `json:"win32Status,omitempty" tf:"win32_status,omitempty"` } @@ -208,15 +222,19 @@ type SiteConfigVirtualApplicationObservation struct { type SiteConfigVirtualApplicationParameters struct { // The physical path for the Virtual Application. + // +kubebuilder:validation:Optional PhysicalPath *string `json:"physicalPath,omitempty" tf:"physical_path,omitempty"` // Should pre-loading be enabled. + // +kubebuilder:validation:Optional Preload *bool `json:"preload,omitempty" tf:"preload,omitempty"` // One or more virtual_directory blocks as defined below. + // +kubebuilder:validation:Optional VirtualDirectory []VirtualApplicationVirtualDirectoryParameters `json:"virtualDirectory,omitempty" tf:"virtual_directory,omitempty"` // The Virtual Path for the Virtual Application. + // +kubebuilder:validation:Optional VirtualPath *string `json:"virtualPath,omitempty" tf:"virtual_path,omitempty"` } @@ -241,9 +259,11 @@ type VirtualApplicationVirtualDirectoryObservation struct { type VirtualApplicationVirtualDirectoryParameters struct { // The physical path for the Virtual Application. + // +kubebuilder:validation:Optional PhysicalPath *string `json:"physicalPath,omitempty" tf:"physical_path,omitempty"` // The Virtual Path for the Virtual Application. + // +kubebuilder:validation:Optional VirtualPath *string `json:"virtualPath,omitempty" tf:"virtual_path,omitempty"` } @@ -281,10 +301,12 @@ type WindowsWebAppSlotAuthSettingsActiveDirectoryParameters struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. // Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Active Directory. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. @@ -294,6 +316,7 @@ type WindowsWebAppSlotAuthSettingsActiveDirectoryParameters struct { // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The App Setting name that contains the client secret of the Client. Cannot be used with `client_secret`. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` } @@ -331,6 +354,7 @@ type WindowsWebAppSlotAuthSettingsFacebookParameters struct { // The App ID of the Facebook app used for login. // The App ID of the Facebook app used for login. + // +kubebuilder:validation:Optional AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The App Secret of the Facebook app used for Facebook login. Cannot be specified with app_secret_setting_name. @@ -340,10 +364,12 @@ type WindowsWebAppSlotAuthSettingsFacebookParameters struct { // The app setting name that contains the app_secret value used for Facebook Login. // The app setting name that contains the `app_secret` value used for Facebook Login. Cannot be specified with `app_secret`. + // +kubebuilder:validation:Optional AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. // Specifies a list of OAuth 2.0 scopes to be requested as part of Facebook Login authentication. + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -381,6 +407,7 @@ type WindowsWebAppSlotAuthSettingsGithubParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the GitHub app used for login. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. @@ -390,10 +417,12 @@ type WindowsWebAppSlotAuthSettingsGithubParameters struct { // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for GitHub Login. Cannot be specified with `client_secret`. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -431,6 +460,7 @@ type WindowsWebAppSlotAuthSettingsGoogleParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Google web application. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. @@ -440,10 +470,12 @@ type WindowsWebAppSlotAuthSettingsGoogleParameters struct { // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Google Login. Cannot be specified with `client_secret`. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. // Specifies a list of OAuth 2.0 scopes that will be requested as part of Google Sign-In authentication. If not specified, "openid", "profile", and "email" are used as default scopes. + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -538,6 +570,7 @@ type WindowsWebAppSlotAuthSettingsMicrosoftParameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OAuth 2.0 client ID that was created for the app used for authentication. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with client_secret_setting_name. @@ -547,10 +580,12 @@ type WindowsWebAppSlotAuthSettingsMicrosoftParameters struct { // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. Cannot be specified with `client_secret`. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // Specifies a list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, "wl.basic" is used as the default scope. // The list of OAuth 2.0 scopes that will be requested as part of Microsoft Account authentication. If not specified, `wl.basic` is used as the default scope. + // +kubebuilder:validation:Optional OauthScopes []*string `json:"oauthScopes,omitempty" tf:"oauth_scopes,omitempty"` } @@ -614,57 +649,72 @@ type WindowsWebAppSlotAuthSettingsObservation struct { type WindowsWebAppSlotAuthSettingsParameters struct { // An active_directory block as defined above. + // +kubebuilder:validation:Optional ActiveDirectory []WindowsWebAppSlotAuthSettingsActiveDirectoryParameters `json:"activeDirectory,omitempty" tf:"active_directory,omitempty"` // Specifies a map of login Parameters to send to the OpenID Connect authorization endpoint when a user logs in. // Specifies a map of Login Parameters to send to the OpenID Connect authorization endpoint when a user logs in. + // +kubebuilder:validation:Optional AdditionalLoginParameters map[string]*string `json:"additionalLoginParameters,omitempty" tf:"additional_login_parameters,omitempty"` // Specifies a list of External URLs that can be redirected to as part of logging in or logging out of the Windows Web App Slot. // Specifies a list of External URLs that can be redirected to as part of logging in or logging out of the Windows Web App. + // +kubebuilder:validation:Optional AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` // The default authentication provider to use when multiple providers are configured. Possible values include: AzureActiveDirectory, Facebook, Google, MicrosoftAccount, Twitter, Github. // The default authentication provider to use when multiple providers are configured. Possible values include: `AzureActiveDirectory`, `Facebook`, `Google`, `MicrosoftAccount`, `Twitter`, `Github`. + // +kubebuilder:validation:Optional DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` // Should the Authentication / Authorization feature be enabled for the Windows Web App? // Should the Authentication / Authorization feature be enabled? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // A facebook block as defined below. + // +kubebuilder:validation:Optional Facebook []WindowsWebAppSlotAuthSettingsFacebookParameters `json:"facebook,omitempty" tf:"facebook,omitempty"` // A github block as defined below. + // +kubebuilder:validation:Optional Github []WindowsWebAppSlotAuthSettingsGithubParameters `json:"github,omitempty" tf:"github,omitempty"` // A google block as defined below. + // +kubebuilder:validation:Optional Google []WindowsWebAppSlotAuthSettingsGoogleParameters `json:"google,omitempty" tf:"google,omitempty"` // The OpenID Connect Issuer URI that represents the entity which issues access tokens for this Windows Web App Slot. // The OpenID Connect Issuer URI that represents the entity which issues access tokens. + // +kubebuilder:validation:Optional Issuer *string `json:"issuer,omitempty" tf:"issuer,omitempty"` // A microsoft block as defined below. + // +kubebuilder:validation:Optional Microsoft []WindowsWebAppSlotAuthSettingsMicrosoftParameters `json:"microsoft,omitempty" tf:"microsoft,omitempty"` // The RuntimeVersion of the Authentication / Authorization feature in use for the Windows Web App Slot. // The RuntimeVersion of the Authentication / Authorization feature in use. + // +kubebuilder:validation:Optional RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72 hours. // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to `72` hours. + // +kubebuilder:validation:Optional TokenRefreshExtensionHours *float64 `json:"tokenRefreshExtensionHours,omitempty" tf:"token_refresh_extension_hours,omitempty"` // Should the Windows Web App Slot durably store platform-specific security tokens that are obtained during login flows? Defaults to false. // Should the Windows Web App durably store platform-specific security tokens that are obtained during login flows? Defaults to `false`. + // +kubebuilder:validation:Optional TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` // A twitter block as defined below. + // +kubebuilder:validation:Optional Twitter []WindowsWebAppSlotAuthSettingsTwitterParameters `json:"twitter,omitempty" tf:"twitter,omitempty"` // The action to take when an unauthenticated client attempts to access the app. Possible values include: RedirectToLoginPage, AllowAnonymous. // The action to take when an unauthenticated client attempts to access the app. Possible values include: `RedirectToLoginPage`, `AllowAnonymous`. + // +kubebuilder:validation:Optional UnauthenticatedClientAction *string `json:"unauthenticatedClientAction,omitempty" tf:"unauthenticated_client_action,omitempty"` } @@ -694,6 +744,7 @@ type WindowsWebAppSlotAuthSettingsTwitterParameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + // +kubebuilder:validation:Optional ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with consumer_secret_setting_name. @@ -703,6 +754,7 @@ type WindowsWebAppSlotAuthSettingsTwitterParameters struct { // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. Cannot be specified with `consumer_secret`. + // +kubebuilder:validation:Optional ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` } @@ -812,50 +864,62 @@ type WindowsWebAppSlotAuthSettingsV2ActiveDirectoryV2Parameters struct { // The list of allowed Applications for the Default Authorisation Policy. // The list of allowed Applications for the Default Authorisation Policy. + // +kubebuilder:validation:Optional AllowedApplications []*string `json:"allowedApplications,omitempty" tf:"allowed_applications,omitempty"` // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. // Specifies a list of Allowed audience values to consider when validating JWTs issued by Azure Active Directory. + // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The list of allowed Group Names for the Default Authorisation Policy. // The list of allowed Group Names for the Default Authorisation Policy. + // +kubebuilder:validation:Optional AllowedGroups []*string `json:"allowedGroups,omitempty" tf:"allowed_groups,omitempty"` // The list of allowed Identities for the Default Authorisation Policy. // The list of allowed Identities for the Default Authorisation Policy. + // +kubebuilder:validation:Optional AllowedIdentities []*string `json:"allowedIdentities,omitempty" tf:"allowed_identities,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Active Directory. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The thumbprint of the certificate used for signing purposes. // The thumbprint of the certificate used for signing purposes. + // +kubebuilder:validation:Optional ClientSecretCertificateThumbprint *string `json:"clientSecretCertificateThumbprint,omitempty" tf:"client_secret_certificate_thumbprint,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The App Setting name that contains the client secret of the Client. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // A list of Allowed Client Applications in the JWT Claim. // A list of Allowed Client Applications in the JWT Claim. + // +kubebuilder:validation:Optional JwtAllowedClientApplications []*string `json:"jwtAllowedClientApplications,omitempty" tf:"jwt_allowed_client_applications,omitempty"` // A list of Allowed Groups in the JWT Claim. // A list of Allowed Groups in the JWT Claim. + // +kubebuilder:validation:Optional JwtAllowedGroups []*string `json:"jwtAllowedGroups,omitempty" tf:"jwt_allowed_groups,omitempty"` // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. // A map of key-value pairs to send to the Authorisation Endpoint when a user logs in. + // +kubebuilder:validation:Optional LoginParameters map[string]*string `json:"loginParameters,omitempty" tf:"login_parameters,omitempty"` // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. https://login.microsoftonline.com/v2.0/{tenant-guid}/ // The Azure Tenant Endpoint for the Authenticating Tenant. e.g. `https://login.microsoftonline.com/v2.0/{tenant-guid}/`. + // +kubebuilder:validation:Optional TenantAuthEndpoint *string `json:"tenantAuthEndpoint,omitempty" tf:"tenant_auth_endpoint,omitempty"` // Should the www-authenticate provider should be omitted from the request? Defaults to false // Should the www-authenticate provider should be omitted from the request? Defaults to `false` + // +kubebuilder:validation:Optional WwwAuthenticationDisabled *bool `json:"wwwAuthenticationDisabled,omitempty" tf:"www_authentication_disabled,omitempty"` } @@ -888,10 +952,12 @@ type WindowsWebAppSlotAuthSettingsV2AppleV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Apple web application. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Apple Login. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` } @@ -913,6 +979,7 @@ type WindowsWebAppSlotAuthSettingsV2AzureStaticWebAppV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with Azure Static Web App Authentication. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` } @@ -990,22 +1057,27 @@ type WindowsWebAppSlotAuthSettingsV2CustomOidcV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the Client to use to authenticate with this Custom OIDC. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The name which should be used for this Storage Account. // The name of the Custom OIDC Authentication Provider. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The name of the claim that contains the users name. // The name of the claim that contains the users name. + // +kubebuilder:validation:Optional NameClaimType *string `json:"nameClaimType,omitempty" tf:"name_claim_type,omitempty"` // The app setting name that contains the client_secret value used for the Custom OIDC Login. // The endpoint that contains all the configuration endpoints for this Custom OIDC provider. + // +kubebuilder:validation:Optional OpenIDConfigurationEndpoint *string `json:"openidConfigurationEndpoint,omitempty" tf:"openid_configuration_endpoint,omitempty"` // The list of the scopes that should be requested while authenticating. // The list of the scopes that should be requested while authenticating. + // +kubebuilder:validation:Optional Scopes []*string `json:"scopes,omitempty" tf:"scopes,omitempty"` } @@ -1051,18 +1123,22 @@ type WindowsWebAppSlotAuthSettingsV2FacebookV2Parameters struct { // The App ID of the Facebook app used for login. // The App ID of the Facebook app used for login. + // +kubebuilder:validation:Optional AppID *string `json:"appId,omitempty" tf:"app_id,omitempty"` // The app setting name that contains the app_secret value used for Facebook Login. // The app setting name that contains the `app_secret` value used for Facebook Login. + // +kubebuilder:validation:Optional AppSecretSettingName *string `json:"appSecretSettingName,omitempty" tf:"app_secret_setting_name,omitempty"` // The version of the Facebook API to be used while logging in. // The version of the Facebook API to be used while logging in. + // +kubebuilder:validation:Optional GraphAPIVersion *string `json:"graphApiVersion,omitempty" tf:"graph_api_version,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of scopes to be requested as part of Facebook Login authentication. + // +kubebuilder:validation:Optional LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } @@ -1100,14 +1176,17 @@ type WindowsWebAppSlotAuthSettingsV2GithubV2Parameters struct { // The OAuth 2.0 client ID that was created for the app used for authentication. // The ID of the GitHub app used for login. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for GitHub Login. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of OAuth 2.0 scopes that will be requested as part of GitHub Login authentication. + // +kubebuilder:validation:Optional LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } @@ -1153,18 +1232,22 @@ type WindowsWebAppSlotAuthSettingsV2GoogleV2Parameters struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. // Specifies a list of Allowed Audiences that will be requested as part of Google Sign-In authentication. + // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. // The OpenID Connect Client ID for the Google web application. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name that contains the `client_secret` value used for Google Login. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // Specifies a list of Login scopes that will be requested as part of Google Sign-In authentication. + // +kubebuilder:validation:Optional LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } @@ -1347,46 +1430,57 @@ type WindowsWebAppSlotAuthSettingsV2LoginParameters struct { // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. // External URLs that can be redirected to as part of logging in or logging out of the app. This is an advanced setting typically only needed by Windows Store application backends. **Note:** URLs within the current domain are always implicitly allowed. + // +kubebuilder:validation:Optional AllowedExternalRedirectUrls []*string `json:"allowedExternalRedirectUrls,omitempty" tf:"allowed_external_redirect_urls,omitempty"` // The method by which cookies expire. Possible values include: FixedTime, and IdentityProviderDerived. Defaults to FixedTime. // The method by which cookies expire. Possible values include: `FixedTime`, and `IdentityProviderDerived`. Defaults to `FixedTime`. + // +kubebuilder:validation:Optional CookieExpirationConvention *string `json:"cookieExpirationConvention,omitempty" tf:"cookie_expiration_convention,omitempty"` // The time after the request is made when the session cookie should expire. Defaults to 08:00:00. // The time after the request is made when the session cookie should expire. Defaults to `08:00:00`. + // +kubebuilder:validation:Optional CookieExpirationTime *string `json:"cookieExpirationTime,omitempty" tf:"cookie_expiration_time,omitempty"` // The endpoint to which logout requests should be made. // The endpoint to which logout requests should be made. + // +kubebuilder:validation:Optional LogoutEndpoint *string `json:"logoutEndpoint,omitempty" tf:"logout_endpoint,omitempty"` // The time after the request is made when the nonce should expire. Defaults to 00:05:00. // The time after the request is made when the nonce should expire. Defaults to `00:05:00`. + // +kubebuilder:validation:Optional NonceExpirationTime *string `json:"nonceExpirationTime,omitempty" tf:"nonce_expiration_time,omitempty"` // Should the fragments from the request be preserved after the login request is made. Defaults to false. // Should the fragments from the request be preserved after the login request is made. Defaults to `false`. + // +kubebuilder:validation:Optional PreserveURLFragmentsForLogins *bool `json:"preserveUrlFragmentsForLogins,omitempty" tf:"preserve_url_fragments_for_logins,omitempty"` // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to 72 hours. // The number of hours after session token expiration that a session token can be used to call the token refresh API. Defaults to `72` hours. + // +kubebuilder:validation:Optional TokenRefreshExtensionTime *float64 `json:"tokenRefreshExtensionTime,omitempty" tf:"token_refresh_extension_time,omitempty"` // Should the Token Store configuration Enabled. Defaults to false // Should the Token Store configuration Enabled. Defaults to `false` + // +kubebuilder:validation:Optional TokenStoreEnabled *bool `json:"tokenStoreEnabled,omitempty" tf:"token_store_enabled,omitempty"` // The directory path in the App Filesystem in which the tokens will be stored. // The directory path in the App Filesystem in which the tokens will be stored. + // +kubebuilder:validation:Optional TokenStorePath *string `json:"tokenStorePath,omitempty" tf:"token_store_path,omitempty"` // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. // The name of the app setting which contains the SAS URL of the blob storage containing the tokens. + // +kubebuilder:validation:Optional TokenStoreSASSettingName *string `json:"tokenStoreSasSettingName,omitempty" tf:"token_store_sas_setting_name,omitempty"` // Should the nonce be validated while completing the login flow. Defaults to true. // Should the nonce be validated while completing the login flow. Defaults to `true`. + // +kubebuilder:validation:Optional ValidateNonce *bool `json:"validateNonce,omitempty" tf:"validate_nonce,omitempty"` } @@ -1432,18 +1526,22 @@ type WindowsWebAppSlotAuthSettingsV2MicrosoftV2Parameters struct { // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. // Specifies a list of Allowed Audiences that will be requested as part of Microsoft Sign-In authentication. + // +kubebuilder:validation:Optional AllowedAudiences []*string `json:"allowedAudiences,omitempty" tf:"allowed_audiences,omitempty"` // The OAuth 2.0 client ID that was created for the app used for authentication. // The OAuth 2.0 client ID that was created for the app used for authentication. + // +kubebuilder:validation:Optional ClientID *string `json:"clientId,omitempty" tf:"client_id,omitempty"` // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. // The app setting name containing the OAuth 2.0 client secret that was created for the app used for authentication. + // +kubebuilder:validation:Optional ClientSecretSettingName *string `json:"clientSecretSettingName,omitempty" tf:"client_secret_setting_name,omitempty"` // The list of Login scopes that should be requested as part of Microsoft Account authentication. // The list of Login scopes that will be requested as part of Microsoft Account authentication. + // +kubebuilder:validation:Optional LoginScopes []*string `json:"loginScopes,omitempty" tf:"login_scopes,omitempty"` } @@ -1531,81 +1629,103 @@ type WindowsWebAppSlotAuthSettingsV2Observation struct { type WindowsWebAppSlotAuthSettingsV2Parameters struct { // An active_directory_v2 block as defined below. + // +kubebuilder:validation:Optional ActiveDirectoryV2 []WindowsWebAppSlotAuthSettingsV2ActiveDirectoryV2Parameters `json:"activeDirectoryV2,omitempty" tf:"active_directory_v2,omitempty"` // An apple_v2 block as defined below. + // +kubebuilder:validation:Optional AppleV2 []WindowsWebAppSlotAuthSettingsV2AppleV2Parameters `json:"appleV2,omitempty" tf:"apple_v2,omitempty"` // Should the AuthV2 Settings be enabled. Defaults to false. // Should the AuthV2 Settings be enabled. Defaults to `false` + // +kubebuilder:validation:Optional AuthEnabled *bool `json:"authEnabled,omitempty" tf:"auth_enabled,omitempty"` // An azure_static_web_app_v2 block as defined below. + // +kubebuilder:validation:Optional AzureStaticWebAppV2 []WindowsWebAppSlotAuthSettingsV2AzureStaticWebAppV2Parameters `json:"azureStaticWebAppV2,omitempty" tf:"azure_static_web_app_v2,omitempty"` // The path to the App Auth settings. // The path to the App Auth settings. **Note:** Relative Paths are evaluated from the Site Root directory. + // +kubebuilder:validation:Optional ConfigFilePath *string `json:"configFilePath,omitempty" tf:"config_file_path,omitempty"` // Zero or more custom_oidc_v2 blocks as defined below. + // +kubebuilder:validation:Optional CustomOidcV2 []WindowsWebAppSlotAuthSettingsV2CustomOidcV2Parameters `json:"customOidcV2,omitempty" tf:"custom_oidc_v2,omitempty"` // The Default Authentication Provider to use when more than one Authentication Provider is configured and the unauthenticated_action is set to RedirectToLoginPage. // The Default Authentication Provider to use when the `unauthenticated_action` is set to `RedirectToLoginPage`. + // +kubebuilder:validation:Optional DefaultProvider *string `json:"defaultProvider,omitempty" tf:"default_provider,omitempty"` // The paths which should be excluded from the unauthenticated_action when it is set to RedirectToLoginPage. // The paths which should be excluded from the `unauthenticated_action` when it is set to `RedirectToLoginPage`. + // +kubebuilder:validation:Optional ExcludedPaths []*string `json:"excludedPaths,omitempty" tf:"excluded_paths,omitempty"` // A facebook_v2 block as defined below. + // +kubebuilder:validation:Optional FacebookV2 []WindowsWebAppSlotAuthSettingsV2FacebookV2Parameters `json:"facebookV2,omitempty" tf:"facebook_v2,omitempty"` // The convention used to determine the url of the request made. Possible values include ForwardProxyConventionNoProxy, ForwardProxyConventionStandard, ForwardProxyConventionCustom. Defaults to ForwardProxyConventionNoProxy. // The convention used to determine the url of the request made. Possible values include `ForwardProxyConventionNoProxy`, `ForwardProxyConventionStandard`, `ForwardProxyConventionCustom`. Defaults to `ForwardProxyConventionNoProxy` + // +kubebuilder:validation:Optional ForwardProxyConvention *string `json:"forwardProxyConvention,omitempty" tf:"forward_proxy_convention,omitempty"` // The name of the custom header containing the host of the request. // The name of the header containing the host of the request. + // +kubebuilder:validation:Optional ForwardProxyCustomHostHeaderName *string `json:"forwardProxyCustomHostHeaderName,omitempty" tf:"forward_proxy_custom_host_header_name,omitempty"` // The name of the custom header containing the scheme of the request. // The name of the header containing the scheme of the request. + // +kubebuilder:validation:Optional ForwardProxyCustomSchemeHeaderName *string `json:"forwardProxyCustomSchemeHeaderName,omitempty" tf:"forward_proxy_custom_scheme_header_name,omitempty"` // A github_v2 block as defined below. + // +kubebuilder:validation:Optional GithubV2 []WindowsWebAppSlotAuthSettingsV2GithubV2Parameters `json:"githubV2,omitempty" tf:"github_v2,omitempty"` // A google_v2 block as defined below. + // +kubebuilder:validation:Optional GoogleV2 []WindowsWebAppSlotAuthSettingsV2GoogleV2Parameters `json:"googleV2,omitempty" tf:"google_v2,omitempty"` // The prefix that should precede all the authentication and authorisation paths. Defaults to /.auth. // The prefix that should precede all the authentication and authorisation paths. Defaults to `/.auth` + // +kubebuilder:validation:Optional HTTPRouteAPIPrefix *string `json:"httpRouteApiPrefix,omitempty" tf:"http_route_api_prefix,omitempty"` // A login block as defined below. + // +kubebuilder:validation:Optional Login []WindowsWebAppSlotAuthSettingsV2LoginParameters `json:"login,omitempty" tf:"login,omitempty"` // A microsoft_v2 block as defined below. + // +kubebuilder:validation:Optional MicrosoftV2 []WindowsWebAppSlotAuthSettingsV2MicrosoftV2Parameters `json:"microsoftV2,omitempty" tf:"microsoft_v2,omitempty"` // Should the authentication flow be used for all requests. // Should the authentication flow be used for all requests. + // +kubebuilder:validation:Optional RequireAuthentication *bool `json:"requireAuthentication,omitempty" tf:"require_authentication,omitempty"` // Should HTTPS be required on connections? Defaults to true. // Should HTTPS be required on connections? Defaults to true. + // +kubebuilder:validation:Optional RequireHTTPS *bool `json:"requireHttps,omitempty" tf:"require_https,omitempty"` // The Runtime Version of the Authentication and Authorisation feature of this App. Defaults to ~1. // The Runtime Version of the Authentication and Authorisation feature of this App. Defaults to `~1` + // +kubebuilder:validation:Optional RuntimeVersion *string `json:"runtimeVersion,omitempty" tf:"runtime_version,omitempty"` // A twitter_v2 block as defined below. + // +kubebuilder:validation:Optional TwitterV2 []WindowsWebAppSlotAuthSettingsV2TwitterV2Parameters `json:"twitterV2,omitempty" tf:"twitter_v2,omitempty"` // The action to take for requests made without authentication. Possible values include RedirectToLoginPage, AllowAnonymous, Return401, and Return403. Defaults to RedirectToLoginPage. // The action to take for requests made without authentication. Possible values include `RedirectToLoginPage`, `AllowAnonymous`, `Return401`, and `Return403`. Defaults to `RedirectToLoginPage`. + // +kubebuilder:validation:Optional UnauthenticatedAction *string `json:"unauthenticatedAction,omitempty" tf:"unauthenticated_action,omitempty"` } @@ -1635,10 +1755,12 @@ type WindowsWebAppSlotAuthSettingsV2TwitterV2Parameters struct { // The OAuth 1.0a consumer key of the Twitter application used for sign-in. // The OAuth 1.0a consumer key of the Twitter application used for sign-in. + // +kubebuilder:validation:Optional ConsumerKey *string `json:"consumerKey,omitempty" tf:"consumer_key,omitempty"` // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. // The app setting name that contains the OAuth 1.0a consumer secret of the Twitter application used for sign-in. + // +kubebuilder:validation:Optional ConsumerSecretSettingName *string `json:"consumerSecretSettingName,omitempty" tf:"consumer_secret_setting_name,omitempty"` } @@ -1674,13 +1796,16 @@ type WindowsWebAppSlotBackupParameters struct { // Should this backup job be enabled? Defaults to true. // Should this backup job be enabled? + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // The name which should be used for this Backup. // The name which should be used for this Backup. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // A schedule block as defined below. + // +kubebuilder:validation:Optional Schedule []WindowsWebAppSlotBackupScheduleParameters `json:"schedule,omitempty" tf:"schedule,omitempty"` // The SAS URL to the container. @@ -1742,22 +1867,27 @@ type WindowsWebAppSlotBackupScheduleParameters struct { // How often the backup should be executed (e.g. for weekly backup, this should be set to 7 and frequency_unit should be set to Day). // How often the backup should be executed (e.g. for weekly backup, this should be set to `7` and `frequency_unit` should be set to `Day`). + // +kubebuilder:validation:Optional FrequencyInterval *float64 `json:"frequencyInterval,omitempty" tf:"frequency_interval,omitempty"` // The unit of time for how often the backup should take place. Possible values include: Day, Hour // The unit of time for how often the backup should take place. Possible values include: `Day` and `Hour`. + // +kubebuilder:validation:Optional FrequencyUnit *string `json:"frequencyUnit,omitempty" tf:"frequency_unit,omitempty"` // Should the service keep at least one backup, regardless of age of backup. Defaults to false. // Should the service keep at least one backup, regardless of age of backup. Defaults to `false`. + // +kubebuilder:validation:Optional KeepAtLeastOneBackup *bool `json:"keepAtLeastOneBackup,omitempty" tf:"keep_at_least_one_backup,omitempty"` // After how many days backups should be deleted. Defaults to 30. // After how many days backups should be deleted. + // +kubebuilder:validation:Optional RetentionPeriodDays *float64 `json:"retentionPeriodDays,omitempty" tf:"retention_period_days,omitempty"` // When the schedule should start working in RFC-3339 format. // When the schedule should start working in RFC-3339 format. + // +kubebuilder:validation:Optional StartTime *string `json:"startTime,omitempty" tf:"start_time,omitempty"` } @@ -1787,10 +1917,12 @@ type WindowsWebAppSlotConnectionStringParameters struct { // The name of the connection String. // The name which should be used for this Connection. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // Type of database. Possible values include: APIHub, Custom, DocDb, EventHub, MySQL, NotificationHub, PostgreSQL, RedisCache, ServiceBus, SQLAzure, and SQLServer. // Type of database. Possible values include: `MySQL`, `SQLServer`, `SQLAzure`, `Custom`, `NotificationHub`, `ServiceBus`, `EventHub`, `APIHub`, `DocDb`, `RedisCache`, and `PostgreSQL`. + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` // The connection string value. @@ -1826,9 +1958,11 @@ type WindowsWebAppSlotIdentityObservation struct { type WindowsWebAppSlotIdentityParameters struct { // A list of User Assigned Managed Identity IDs to be assigned to this Windows Web App Slot. + // +kubebuilder:validation:Optional IdentityIds []*string `json:"identityIds,omitempty" tf:"identity_ids,omitempty"` // Specifies the type of Managed Service Identity that should be configured on this Windows Web App Slot. Possible values are SystemAssigned, UserAssigned, SystemAssigned, UserAssigned (to enable both). + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } @@ -1921,12 +2055,15 @@ type WindowsWebAppSlotLogsApplicationLogsAzureBlobStorageObservation struct { type WindowsWebAppSlotLogsApplicationLogsAzureBlobStorageParameters struct { // The level at which to log. Possible values include Error, Warning, Information, Verbose and Off. NOTE: this field is not available for http_logs + // +kubebuilder:validation:Optional Level *string `json:"level,omitempty" tf:"level,omitempty"` // The retention period in days. A values of 0 means no retention. + // +kubebuilder:validation:Optional RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` // SAS url to an Azure blob container with read/write/list/delete permissions. + // +kubebuilder:validation:Optional SASURL *string `json:"sasUrl,omitempty" tf:"sas_url,omitempty"` } @@ -1951,9 +2088,11 @@ type WindowsWebAppSlotLogsApplicationLogsObservation struct { type WindowsWebAppSlotLogsApplicationLogsParameters struct { // A azure_blob_storage_http block as defined above. + // +kubebuilder:validation:Optional AzureBlobStorage []WindowsWebAppSlotLogsApplicationLogsAzureBlobStorageParameters `json:"azureBlobStorage,omitempty" tf:"azure_blob_storage,omitempty"` // Log level. Possible values include: Verbose, Information, Warning, and Error. + // +kubebuilder:validation:Optional FileSystemLevel *string `json:"fileSystemLevel,omitempty" tf:"file_system_level,omitempty"` } @@ -1972,6 +2111,7 @@ type WindowsWebAppSlotLogsHTTPLogsAzureBlobStorageObservation struct { type WindowsWebAppSlotLogsHTTPLogsAzureBlobStorageParameters struct { // The retention period in days. A values of 0 means no retention. + // +kubebuilder:validation:Optional RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` // SAS url to an Azure blob container with read/write/list/delete permissions. @@ -2000,9 +2140,11 @@ type WindowsWebAppSlotLogsHTTPLogsFileSystemObservation struct { type WindowsWebAppSlotLogsHTTPLogsFileSystemParameters struct { // The retention period in days. A values of 0 means no retention. + // +kubebuilder:validation:Optional RetentionInDays *float64 `json:"retentionInDays,omitempty" tf:"retention_in_days,omitempty"` // The maximum size in megabytes that log files can use. + // +kubebuilder:validation:Optional RetentionInMb *float64 `json:"retentionInMb,omitempty" tf:"retention_in_mb,omitempty"` } @@ -2027,9 +2169,11 @@ type WindowsWebAppSlotLogsHTTPLogsObservation struct { type WindowsWebAppSlotLogsHTTPLogsParameters struct { // A azure_blob_storage_http block as defined above. + // +kubebuilder:validation:Optional AzureBlobStorage []WindowsWebAppSlotLogsHTTPLogsAzureBlobStorageParameters `json:"azureBlobStorage,omitempty" tf:"azure_blob_storage,omitempty"` // A file_system block as defined above. + // +kubebuilder:validation:Optional FileSystem []WindowsWebAppSlotLogsHTTPLogsFileSystemParameters `json:"fileSystem,omitempty" tf:"file_system,omitempty"` } @@ -2066,15 +2210,19 @@ type WindowsWebAppSlotLogsObservation struct { type WindowsWebAppSlotLogsParameters struct { // A application_logs block as defined above. + // +kubebuilder:validation:Optional ApplicationLogs []WindowsWebAppSlotLogsApplicationLogsParameters `json:"applicationLogs,omitempty" tf:"application_logs,omitempty"` // Should detailed error messages be enabled. + // +kubebuilder:validation:Optional DetailedErrorMessages *bool `json:"detailedErrorMessages,omitempty" tf:"detailed_error_messages,omitempty"` // Should failed request tracing be enabled. + // +kubebuilder:validation:Optional FailedRequestTracing *bool `json:"failedRequestTracing,omitempty" tf:"failed_request_tracing,omitempty"` // An http_logs block as defined above. + // +kubebuilder:validation:Optional HTTPLogs []WindowsWebAppSlotLogsHTTPLogsParameters `json:"httpLogs,omitempty" tf:"http_logs,omitempty"` } @@ -2187,58 +2335,76 @@ type WindowsWebAppSlotParameters struct { AppServiceIDSelector *v1.Selector `json:"appServiceIdSelector,omitempty" tf:"-"` // A map of key-value pairs of App Settings. + // +kubebuilder:validation:Optional AppSettings map[string]*string `json:"appSettings,omitempty" tf:"app_settings,omitempty"` // An auth_settings block as defined below. + // +kubebuilder:validation:Optional AuthSettings []WindowsWebAppSlotAuthSettingsParameters `json:"authSettings,omitempty" tf:"auth_settings,omitempty"` // An auth_settings_v2 block as defined below. + // +kubebuilder:validation:Optional AuthSettingsV2 []WindowsWebAppSlotAuthSettingsV2Parameters `json:"authSettingsV2,omitempty" tf:"auth_settings_v2,omitempty"` // A backup block as defined below. + // +kubebuilder:validation:Optional Backup []WindowsWebAppSlotBackupParameters `json:"backup,omitempty" tf:"backup,omitempty"` // Should Client Affinity be enabled? + // +kubebuilder:validation:Optional ClientAffinityEnabled *bool `json:"clientAffinityEnabled,omitempty" tf:"client_affinity_enabled,omitempty"` // Should Client Certificates be enabled? + // +kubebuilder:validation:Optional ClientCertificateEnabled *bool `json:"clientCertificateEnabled,omitempty" tf:"client_certificate_enabled,omitempty"` // Paths to exclude when using client certificates, separated by ; // Paths to exclude when using client certificates, separated by ; + // +kubebuilder:validation:Optional ClientCertificateExclusionPaths *string `json:"clientCertificateExclusionPaths,omitempty" tf:"client_certificate_exclusion_paths,omitempty"` // The Client Certificate mode. Possible values are Required, Optional, and OptionalInteractiveUser. This property has no effect when client_cert_enabled is false + // +kubebuilder:validation:Optional ClientCertificateMode *string `json:"clientCertificateMode,omitempty" tf:"client_certificate_mode,omitempty"` // One or more connection_string blocks as defined below. + // +kubebuilder:validation:Optional ConnectionString []WindowsWebAppSlotConnectionStringParameters `json:"connectionString,omitempty" tf:"connection_string,omitempty"` // Should the Windows Web App Slot be enabled? Defaults to true. + // +kubebuilder:validation:Optional Enabled *bool `json:"enabled,omitempty" tf:"enabled,omitempty"` // Should the Windows Web App Slot require HTTPS connections. + // +kubebuilder:validation:Optional HTTPSOnly *bool `json:"httpsOnly,omitempty" tf:"https_only,omitempty"` // An identity block as defined below. + // +kubebuilder:validation:Optional Identity []WindowsWebAppSlotIdentityParameters `json:"identity,omitempty" tf:"identity,omitempty"` // The User Assigned Identity ID used for accessing KeyVault secrets. The identity must be assigned to the application in the identity block. For more information see - Access vaults with a user-assigned identity + // +kubebuilder:validation:Optional KeyVaultReferenceIdentityID *string `json:"keyVaultReferenceIdentityId,omitempty" tf:"key_vault_reference_identity_id,omitempty"` // A logs block as defined below. + // +kubebuilder:validation:Optional Logs []WindowsWebAppSlotLogsParameters `json:"logs,omitempty" tf:"logs,omitempty"` // The ID of the Service Plan in which to run this slot. If not specified the same Service Plan as the Windows Web App will be used. + // +kubebuilder:validation:Optional ServicePlanID *string `json:"servicePlanId,omitempty" tf:"service_plan_id,omitempty"` // A site_config block as defined below. + // +kubebuilder:validation:Optional SiteConfig []WindowsWebAppSlotSiteConfigParameters `json:"siteConfig,omitempty" tf:"site_config,omitempty"` // One or more storage_account blocks as defined below. + // +kubebuilder:validation:Optional StorageAccount []WindowsWebAppSlotStorageAccountParameters `json:"storageAccount,omitempty" tf:"storage_account,omitempty"` // A mapping of tags which should be assigned to the Windows Web App Slot. + // +kubebuilder:validation:Optional Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"` // The subnet id which will be used by this Web App Slot for regional virtual network integration. @@ -2257,6 +2423,7 @@ type WindowsWebAppSlotParameters struct { // The local path and filename of the Zip packaged application to deploy to this Windows Web App. // The local path and filename of the Zip packaged application to deploy to this Windows Web App. **Note:** Using this value requires `WEBSITE_RUN_FROM_PACKAGE=1` on the App in `app_settings`. + // +kubebuilder:validation:Optional ZipDeployFile *string `json:"zipDeployFile,omitempty" tf:"zip_deploy_file,omitempty"` } @@ -2357,47 +2524,62 @@ type WindowsWebAppSlotSiteConfigApplicationStackObservation struct { type WindowsWebAppSlotSiteConfigApplicationStackParameters struct { // The Application Stack for the Windows Web App. Possible values include dotnet, dotnetcore, node, python, php, and java. + // +kubebuilder:validation:Optional CurrentStack *string `json:"currentStack,omitempty" tf:"current_stack,omitempty"` // The name of the Docker Container. For example azure-app-service/samples/aspnethelloworld + // +kubebuilder:validation:Optional DockerContainerName *string `json:"dockerContainerName,omitempty" tf:"docker_container_name,omitempty"` // The registry Host on which the specified Docker Container can be located. For example mcr.microsoft.com + // +kubebuilder:validation:Optional DockerContainerRegistry *string `json:"dockerContainerRegistry,omitempty" tf:"docker_container_registry,omitempty"` // The Image Tag of the specified Docker Container to use. For example latest + // +kubebuilder:validation:Optional DockerContainerTag *string `json:"dockerContainerTag,omitempty" tf:"docker_container_tag,omitempty"` // The version of .NET to use when current_stack is set to dotnetcore. Possible values include v4.0. // The version of DotNetCore to use. + // +kubebuilder:validation:Optional DotnetCoreVersion *string `json:"dotnetCoreVersion,omitempty" tf:"dotnet_core_version,omitempty"` // The version of .NET to use when current_stack is set to dotnet. Possible values include v2.0,v3.0, v4.0, v5.0, v6.0 and v7.0. + // +kubebuilder:validation:Optional DotnetVersion *string `json:"dotnetVersion,omitempty" tf:"dotnet_version,omitempty"` + // +kubebuilder:validation:Optional JavaContainer *string `json:"javaContainer,omitempty" tf:"java_container,omitempty"` + // +kubebuilder:validation:Optional JavaContainerVersion *string `json:"javaContainerVersion,omitempty" tf:"java_container_version,omitempty"` // Should the Java Embedded Server (Java SE) be used to run the app. // Should the application use the embedded web server for the version of Java in use. + // +kubebuilder:validation:Optional JavaEmbeddedServerEnabled *bool `json:"javaEmbeddedServerEnabled,omitempty" tf:"java_embedded_server_enabled,omitempty"` // The version of Java to use when current_stack is set to java. Possible values include 1.7, 1.8, 11 and 17. Required with java_container and java_container_version. + // +kubebuilder:validation:Optional JavaVersion *string `json:"javaVersion,omitempty" tf:"java_version,omitempty"` // The version of node to use when current_stack is set to node. Possible values include ~12, ~14, ~16, and ~18. + // +kubebuilder:validation:Optional NodeVersion *string `json:"nodeVersion,omitempty" tf:"node_version,omitempty"` // The version of PHP to use when current_stack is set to php. Possible values are 7.1, 7.4 and Off. + // +kubebuilder:validation:Optional PHPVersion *string `json:"phpVersion,omitempty" tf:"php_version,omitempty"` // The app is a Python app. Defaults to false. + // +kubebuilder:validation:Optional Python *bool `json:"python,omitempty" tf:"python,omitempty"` + // +kubebuilder:validation:Optional PythonVersion *string `json:"pythonVersion,omitempty" tf:"python_version,omitempty"` // The version of Tomcat the Java App should use. + // +kubebuilder:validation:Optional TomcatVersion *string `json:"tomcatVersion,omitempty" tf:"tomcat_version,omitempty"` } @@ -2428,12 +2610,15 @@ type WindowsWebAppSlotSiteConfigAutoHealSettingActionObservation struct { type WindowsWebAppSlotSiteConfigAutoHealSettingActionParameters struct { // Predefined action to be taken to an Auto Heal trigger. Possible values are CustomAction, LogEvent and Recycle. + // +kubebuilder:validation:Optional ActionType *string `json:"actionType,omitempty" tf:"action_type,omitempty"` // A custom_action block as defined below. + // +kubebuilder:validation:Optional CustomAction []ActionCustomActionParameters `json:"customAction,omitempty" tf:"custom_action,omitempty"` // The minimum amount of time in hh:mm:ss the Windows Web App Slot must have been running before the defined action will be run in the event of a trigger. + // +kubebuilder:validation:Optional MinimumProcessExecutionTime *string `json:"minimumProcessExecutionTime,omitempty" tf:"minimum_process_execution_time,omitempty"` } @@ -2458,9 +2643,11 @@ type WindowsWebAppSlotSiteConfigAutoHealSettingObservation struct { type WindowsWebAppSlotSiteConfigAutoHealSettingParameters struct { // The action to take. Possible values are Allow or Deny. + // +kubebuilder:validation:Optional Action []WindowsWebAppSlotSiteConfigAutoHealSettingActionParameters `json:"action,omitempty" tf:"action,omitempty"` // A trigger block as defined below. + // +kubebuilder:validation:Optional Trigger []WindowsWebAppSlotSiteConfigAutoHealSettingTriggerParameters `json:"trigger,omitempty" tf:"trigger,omitempty"` } @@ -2497,15 +2684,19 @@ type WindowsWebAppSlotSiteConfigAutoHealSettingTriggerObservation struct { type WindowsWebAppSlotSiteConfigAutoHealSettingTriggerParameters struct { // The amount of Private Memory to be consumed for this rule to trigger. Possible values are between 102400 and 13631488. + // +kubebuilder:validation:Optional PrivateMemoryKb *float64 `json:"privateMemoryKb,omitempty" tf:"private_memory_kb,omitempty"` // A requests block as defined above. + // +kubebuilder:validation:Optional Requests []SiteConfigAutoHealSettingTriggerRequestsParameters `json:"requests,omitempty" tf:"requests,omitempty"` // One or more slow_request blocks as defined above. + // +kubebuilder:validation:Optional SlowRequest []SiteConfigAutoHealSettingTriggerSlowRequestParameters `json:"slowRequest,omitempty" tf:"slow_request,omitempty"` // One or more status_code blocks as defined above. + // +kubebuilder:validation:Optional StatusCode []SiteConfigAutoHealSettingTriggerStatusCodeParameters `json:"statusCode,omitempty" tf:"status_code,omitempty"` } @@ -2535,10 +2726,12 @@ type WindowsWebAppSlotSiteConfigCorsParameters struct { // Specifies a list of origins that should be allowed to make cross-origin calls. // Specifies a list of origins that should be allowed to make cross-origin calls. + // +kubebuilder:validation:Optional AllowedOrigins []*string `json:"allowedOrigins,omitempty" tf:"allowed_origins,omitempty"` // Whether CORS requests with credentials are allowed. Defaults to false // Are credentials allowed in CORS requests? Defaults to `false`. + // +kubebuilder:validation:Optional SupportCredentials *bool `json:"supportCredentials,omitempty" tf:"support_credentials,omitempty"` } @@ -2575,15 +2768,19 @@ type WindowsWebAppSlotSiteConfigIPRestrictionHeadersObservation struct { type WindowsWebAppSlotSiteConfigIPRestrictionHeadersParameters struct { // Specifies a list of Azure Front Door IDs. + // +kubebuilder:validation:Optional XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` // Specifies if a Front Door Health Probe should be expected. The only possible value is 1. + // +kubebuilder:validation:Optional XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` // Specifies a list of addresses for which matching should be applied. Omitting this value means allow any. + // +kubebuilder:validation:Optional XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` // Specifies a list of Hosts for which matching should be applied. + // +kubebuilder:validation:Optional XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } @@ -2647,25 +2844,31 @@ type WindowsWebAppSlotSiteConfigIPRestrictionParameters struct { // The action to take. Possible values are Allow or Deny. // The action to take. Possible values are `Allow` or `Deny`. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // A headers block as defined above. + // +kubebuilder:validation:Optional Headers []WindowsWebAppSlotSiteConfigIPRestrictionHeadersParameters `json:"headers,omitempty" tf:"headers,omitempty"` // The CIDR notation of the IP or IP Range to match. For example: 10.0.0.0/24 or 192.168.10.1/32 // The CIDR notation of the IP or IP Range to match. For example: `10.0.0.0/24` or `192.168.10.1/32` or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22` + // +kubebuilder:validation:Optional IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` // The name which should be used for this Storage Account. // The name which should be used for this `ip_restriction`. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The priority value of this ip_restriction. Defaults to 65000. // The priority value of this `ip_restriction`. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // The Service Tag used for this IP Restriction. // The Service Tag used for this IP Restriction. + // +kubebuilder:validation:Optional ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag,omitempty"` // The subnet id which will be used by this Web App Slot for regional virtual network integration. @@ -2890,98 +3093,129 @@ type WindowsWebAppSlotSiteConfigObservation struct { type WindowsWebAppSlotSiteConfigParameters struct { // The URL to the API Definition for this Windows Web App Slot. + // +kubebuilder:validation:Optional APIDefinitionURL *string `json:"apiDefinitionUrl,omitempty" tf:"api_definition_url,omitempty"` // The API Management API ID this Windows Web App Slot os associated with. + // +kubebuilder:validation:Optional APIManagementAPIID *string `json:"apiManagementApiId,omitempty" tf:"api_management_api_id,omitempty"` // If this Windows Web App Slot is Always On enabled. Defaults to true. + // +kubebuilder:validation:Optional AlwaysOn *bool `json:"alwaysOn,omitempty" tf:"always_on,omitempty"` // The App command line to launch. + // +kubebuilder:validation:Optional AppCommandLine *string `json:"appCommandLine,omitempty" tf:"app_command_line,omitempty"` // A application_stack block as defined above. + // +kubebuilder:validation:Optional ApplicationStack []WindowsWebAppSlotSiteConfigApplicationStackParameters `json:"applicationStack,omitempty" tf:"application_stack,omitempty"` // Should Auto heal rules be enabled. Required with auto_heal_setting. + // +kubebuilder:validation:Optional AutoHealEnabled *bool `json:"autoHealEnabled,omitempty" tf:"auto_heal_enabled,omitempty"` // A auto_heal_setting block as defined above. Required with auto_heal. + // +kubebuilder:validation:Optional AutoHealSetting []WindowsWebAppSlotSiteConfigAutoHealSettingParameters `json:"autoHealSetting,omitempty" tf:"auto_heal_setting,omitempty"` // The Windows Web App Slot Name to automatically swap to when deployment to that slot is successfully completed. + // +kubebuilder:validation:Optional AutoSwapSlotName *string `json:"autoSwapSlotName,omitempty" tf:"auto_swap_slot_name,omitempty"` // The Client ID of the Managed Service Identity to use for connections to the Azure Container Registry. + // +kubebuilder:validation:Optional ContainerRegistryManagedIdentityClientID *string `json:"containerRegistryManagedIdentityClientId,omitempty" tf:"container_registry_managed_identity_client_id,omitempty"` // Should connections for Azure Container Registry use Managed Identity. + // +kubebuilder:validation:Optional ContainerRegistryUseManagedIdentity *bool `json:"containerRegistryUseManagedIdentity,omitempty" tf:"container_registry_use_managed_identity,omitempty"` // A cors block as defined above. + // +kubebuilder:validation:Optional Cors []WindowsWebAppSlotSiteConfigCorsParameters `json:"cors,omitempty" tf:"cors,omitempty"` // Specifies a list of Default Documents for the Windows Web App Slot. + // +kubebuilder:validation:Optional DefaultDocuments []*string `json:"defaultDocuments,omitempty" tf:"default_documents,omitempty"` // The State of FTP / FTPS service. Possible values include: AllAllowed, FtpsOnly, Disabled. + // +kubebuilder:validation:Optional FtpsState *string `json:"ftpsState,omitempty" tf:"ftps_state,omitempty"` // The amount of time in minutes that a node can be unhealthy before being removed from the load balancer. Possible values are between 2 and 10. Only valid in conjunction with health_check_path. // The amount of time in minutes that a node is unhealthy before being removed from the load balancer. Possible values are between `2` and `10`. Defaults to `10`. Only valid in conjunction with `health_check_path` + // +kubebuilder:validation:Optional HealthCheckEvictionTimeInMin *float64 `json:"healthCheckEvictionTimeInMin,omitempty" tf:"health_check_eviction_time_in_min,omitempty"` // The path to the Health Check. + // +kubebuilder:validation:Optional HealthCheckPath *string `json:"healthCheckPath,omitempty" tf:"health_check_path,omitempty"` // Should the HTTP2 be enabled? + // +kubebuilder:validation:Optional Http2Enabled *bool `json:"http2Enabled,omitempty" tf:"http2_enabled,omitempty"` // One or more ip_restriction blocks as defined above. + // +kubebuilder:validation:Optional IPRestriction []WindowsWebAppSlotSiteConfigIPRestrictionParameters `json:"ipRestriction,omitempty" tf:"ip_restriction,omitempty"` // The Site load balancing. Possible values include: WeightedRoundRobin, LeastRequests, LeastResponseTime, WeightedTotalTraffic, RequestHash, PerSiteRoundRobin. Defaults to LeastRequests if omitted. + // +kubebuilder:validation:Optional LoadBalancingMode *string `json:"loadBalancingMode,omitempty" tf:"load_balancing_mode,omitempty"` // Use Local MySQL. Defaults to false. + // +kubebuilder:validation:Optional LocalMySQLEnabled *bool `json:"localMysqlEnabled,omitempty" tf:"local_mysql_enabled,omitempty"` // Managed pipeline mode. Possible values include: Integrated, Classic. + // +kubebuilder:validation:Optional ManagedPipelineMode *string `json:"managedPipelineMode,omitempty" tf:"managed_pipeline_mode,omitempty"` // The configures the minimum version of TLS required for SSL requests. Possible values include: 1.0, 1.1, and 1.2. Defaults to 1.2. + // +kubebuilder:validation:Optional MinimumTLSVersion *string `json:"minimumTlsVersion,omitempty" tf:"minimum_tls_version,omitempty"` // Should Remote Debugging be enabled. Defaults to false. + // +kubebuilder:validation:Optional RemoteDebuggingEnabled *bool `json:"remoteDebuggingEnabled,omitempty" tf:"remote_debugging_enabled,omitempty"` // The Remote Debugging Version. Possible values include VS2017 and VS2019 + // +kubebuilder:validation:Optional RemoteDebuggingVersion *string `json:"remoteDebuggingVersion,omitempty" tf:"remote_debugging_version,omitempty"` // One or more scm_ip_restriction blocks as defined above. + // +kubebuilder:validation:Optional ScmIPRestriction []WindowsWebAppSlotSiteConfigScmIPRestrictionParameters `json:"scmIpRestriction,omitempty" tf:"scm_ip_restriction,omitempty"` // The configures the minimum version of TLS required for SSL requests to the SCM site Possible values include: 1.0, 1.1, and 1.2. Defaults to 1.2. + // +kubebuilder:validation:Optional ScmMinimumTLSVersion *string `json:"scmMinimumTlsVersion,omitempty" tf:"scm_minimum_tls_version,omitempty"` // Should the Windows Web App Slot ip_restriction configuration be used for the SCM also. + // +kubebuilder:validation:Optional ScmUseMainIPRestriction *bool `json:"scmUseMainIpRestriction,omitempty" tf:"scm_use_main_ip_restriction,omitempty"` // Should the Windows Web App Slotuse a 32-bit worker. Defaults to true. + // +kubebuilder:validation:Optional Use32BitWorker *bool `json:"use32BitWorker,omitempty" tf:"use_32_bit_worker,omitempty"` // One or more virtual_application blocks as defined below. + // +kubebuilder:validation:Optional VirtualApplication []SiteConfigVirtualApplicationParameters `json:"virtualApplication,omitempty" tf:"virtual_application,omitempty"` // Should all outbound traffic to have NAT Gateways, Network Security Groups and User Defined Routes applied? Defaults to false. // Should all outbound traffic to have Virtual Network Security Groups and User Defined Routes applied? Defaults to `false`. + // +kubebuilder:validation:Optional VnetRouteAllEnabled *bool `json:"vnetRouteAllEnabled,omitempty" tf:"vnet_route_all_enabled,omitempty"` // Should Web Sockets be enabled. Defaults to false. + // +kubebuilder:validation:Optional WebsocketsEnabled *bool `json:"websocketsEnabled,omitempty" tf:"websockets_enabled,omitempty"` // The number of Workers for this Windows App Service Slot. + // +kubebuilder:validation:Optional WorkerCount *float64 `json:"workerCount,omitempty" tf:"worker_count,omitempty"` } @@ -3018,15 +3252,19 @@ type WindowsWebAppSlotSiteConfigScmIPRestrictionHeadersObservation struct { type WindowsWebAppSlotSiteConfigScmIPRestrictionHeadersParameters struct { // Specifies a list of Azure Front Door IDs. + // +kubebuilder:validation:Optional XAzureFdid []*string `json:"xAzureFdid,omitempty" tf:"x_azure_fdid"` // Specifies if a Front Door Health Probe should be expected. The only possible value is 1. + // +kubebuilder:validation:Optional XFdHealthProbe []*string `json:"xFdHealthProbe,omitempty" tf:"x_fd_health_probe"` // Specifies a list of addresses for which matching should be applied. Omitting this value means allow any. + // +kubebuilder:validation:Optional XForwardedFor []*string `json:"xForwardedFor,omitempty" tf:"x_forwarded_for"` // Specifies a list of Hosts for which matching should be applied. + // +kubebuilder:validation:Optional XForwardedHost []*string `json:"xForwardedHost,omitempty" tf:"x_forwarded_host"` } @@ -3090,25 +3328,31 @@ type WindowsWebAppSlotSiteConfigScmIPRestrictionParameters struct { // The action to take. Possible values are Allow or Deny. // The action to take. Possible values are `Allow` or `Deny`. + // +kubebuilder:validation:Optional Action *string `json:"action,omitempty" tf:"action,omitempty"` // A headers block as defined above. + // +kubebuilder:validation:Optional Headers []WindowsWebAppSlotSiteConfigScmIPRestrictionHeadersParameters `json:"headers,omitempty" tf:"headers,omitempty"` // The CIDR notation of the IP or IP Range to match. For example: 10.0.0.0/24 or 192.168.10.1/32 // The CIDR notation of the IP or IP Range to match. For example: `10.0.0.0/24` or `192.168.10.1/32` or `fe80::/64` or `13.107.6.152/31,13.107.128.0/22` + // +kubebuilder:validation:Optional IPAddress *string `json:"ipAddress,omitempty" tf:"ip_address,omitempty"` // The name which should be used for this Storage Account. // The name which should be used for this `ip_restriction`. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The priority value of this ip_restriction. Defaults to 65000. // The priority value of this `ip_restriction`. + // +kubebuilder:validation:Optional Priority *float64 `json:"priority,omitempty" tf:"priority,omitempty"` // The Service Tag used for this IP Restriction. // The Service Tag used for this IP Restriction. + // +kubebuilder:validation:Optional ServiceTag *string `json:"serviceTag,omitempty" tf:"service_tag,omitempty"` // The subnet id which will be used by this Web App Slot for regional virtual network integration. @@ -3185,18 +3429,23 @@ type WindowsWebAppSlotStorageAccountParameters struct { AccessKeySecretRef v1.SecretKeySelector `json:"accessKeySecretRef" tf:"-"` // The Name of the Storage Account. + // +kubebuilder:validation:Optional AccountName *string `json:"accountName,omitempty" tf:"account_name,omitempty"` // The path at which to mount the storage share. + // +kubebuilder:validation:Optional MountPath *string `json:"mountPath,omitempty" tf:"mount_path,omitempty"` // The name which should be used for this Storage Account. + // +kubebuilder:validation:Optional Name *string `json:"name,omitempty" tf:"name,omitempty"` // The Name of the File Share or Container Name for Blob storage. + // +kubebuilder:validation:Optional ShareName *string `json:"shareName,omitempty" tf:"share_name,omitempty"` // The Azure Storage Type. Possible values include AzureFiles and AzureBlob + // +kubebuilder:validation:Optional Type *string `json:"type,omitempty" tf:"type,omitempty"` } diff --git a/go.mod b/go.mod index eee226ddc..68493a8f1 100644 --- a/go.mod +++ b/go.mod @@ -2,7 +2,7 @@ module github.com/upbound/provider-azure go 1.19 -replace github.com/upbound/upjet => github.com/lsviben/upjet v0.0.0-20230726104527-dc55bdf638c0 +replace github.com/upbound/upjet => github.com/lsviben/upjet v0.0.0-20230727085627-91de73c8db52 require ( github.com/crossplane/crossplane-runtime v0.20.0 diff --git a/go.sum b/go.sum index a920d0637..10a9f24cf 100644 --- a/go.sum +++ b/go.sum @@ -294,8 +294,8 @@ github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= github.com/kylelemons/godebug v0.0.0-20170820004349-d65d576e9348/go.mod h1:B69LEHPfb2qLo0BaaOLcbitczOKLWTsrBG9LczfCD4k= github.com/kylelemons/godebug v1.1.0 h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0SNc= github.com/kylelemons/godebug v1.1.0/go.mod h1:9/0rRGxNHcop5bhtWyNeEfOS8JIWk580+fNqagV/RAw= -github.com/lsviben/upjet v0.0.0-20230726104527-dc55bdf638c0 h1:LZeq963G1o7iME8QaHzbLSgoKd/cDztbqj6NAr++77s= -github.com/lsviben/upjet v0.0.0-20230726104527-dc55bdf638c0/go.mod h1:2RXHgpIugCL/S/Use1QJAeVaev901RBeUByQh5gUtGk= +github.com/lsviben/upjet v0.0.0-20230727085627-91de73c8db52 h1:+6oZXIH61OW9y8qFoA0x2NrMlFautL8j/BTrTAV3UEQ= +github.com/lsviben/upjet v0.0.0-20230727085627-91de73c8db52/go.mod h1:2RXHgpIugCL/S/Use1QJAeVaev901RBeUByQh5gUtGk= github.com/mailru/easyjson v0.7.7 h1:UGYAvKxe3sBsEDzO8ZeWOSlIQfWFlxbzLZe7hwFURr0= github.com/mailru/easyjson v0.7.7/go.mod h1:xzfreul335JAWq5oZzymOObrkdz5UnU4kGfJJLY9Nlc= github.com/mattn/go-colorable v0.0.9/go.mod h1:9vuHe8Xs5qXnSaW/c/ABM9alt+Vo+STaOChaDxuIBZU=