v1beta2

package
v1.12.0-rc.0 Latest Latest
Warning

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

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

Documentation

Overview

+kubebuilder:object:generate=true +groupName=route53recoverycontrolconfig.aws.upbound.io +versionName=v1beta2

Index

Constants

View Source
const (
	CRDGroup   = "route53recoverycontrolconfig.aws.upbound.io"
	CRDVersion = "v1beta2"
)

Package type metadata.

Variables

View Source
var (
	// CRDGroupVersion is the API Group Version used to register the objects
	CRDGroupVersion = schema.GroupVersion{Group: CRDGroup, Version: CRDVersion}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: CRDGroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)
View Source
var (
	SafetyRule_Kind             = "SafetyRule"
	SafetyRule_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: SafetyRule_Kind}.String()
	SafetyRule_KindAPIVersion   = SafetyRule_Kind + "." + CRDGroupVersion.String()
	SafetyRule_GroupVersionKind = CRDGroupVersion.WithKind(SafetyRule_Kind)
)

Repository type metadata.

Functions

This section is empty.

Types

type RuleConfigInitParameters

type RuleConfigInitParameters struct {

	// Logical negation of the rule.
	Inverted *bool `json:"inverted,omitempty" tf:"inverted,omitempty"`

	// Number of controls that must be set when you specify an ATLEAST type rule.
	Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"`

	// Rule type. Valid values are ATLEAST, AND, and OR.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*RuleConfigInitParameters) DeepCopy

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

func (*RuleConfigInitParameters) DeepCopyInto

func (in *RuleConfigInitParameters) DeepCopyInto(out *RuleConfigInitParameters)

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

type RuleConfigObservation

type RuleConfigObservation struct {

	// Logical negation of the rule.
	Inverted *bool `json:"inverted,omitempty" tf:"inverted,omitempty"`

	// Number of controls that must be set when you specify an ATLEAST type rule.
	Threshold *float64 `json:"threshold,omitempty" tf:"threshold,omitempty"`

	// Rule type. Valid values are ATLEAST, AND, and OR.
	Type *string `json:"type,omitempty" tf:"type,omitempty"`
}

func (*RuleConfigObservation) DeepCopy

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

func (*RuleConfigObservation) DeepCopyInto

func (in *RuleConfigObservation) DeepCopyInto(out *RuleConfigObservation)

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

type RuleConfigParameters

type RuleConfigParameters struct {

	// Logical negation of the rule.
	// +kubebuilder:validation:Optional
	Inverted *bool `json:"inverted" tf:"inverted,omitempty"`

	// Number of controls that must be set when you specify an ATLEAST type rule.
	// +kubebuilder:validation:Optional
	Threshold *float64 `json:"threshold" tf:"threshold,omitempty"`

	// Rule type. Valid values are ATLEAST, AND, and OR.
	// +kubebuilder:validation:Optional
	Type *string `json:"type" tf:"type,omitempty"`
}

func (*RuleConfigParameters) DeepCopy

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

func (*RuleConfigParameters) DeepCopyInto

func (in *RuleConfigParameters) DeepCopyInto(out *RuleConfigParameters)

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

type SafetyRule

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

SafetyRule is the Schema for the SafetyRules API. Provides an AWS Route 53 Recovery Control Config Safety Rule +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="EXTERNAL-NAME",type="string",JSONPath=".metadata.annotations.crossplane\\.io/external-name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,aws}

func (*SafetyRule) DeepCopy

func (in *SafetyRule) DeepCopy() *SafetyRule

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

func (*SafetyRule) DeepCopyInto

func (in *SafetyRule) DeepCopyInto(out *SafetyRule)

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

func (*SafetyRule) DeepCopyObject

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

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

func (*SafetyRule) GetCondition

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

GetCondition of this SafetyRule.

func (*SafetyRule) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this SafetyRule

func (*SafetyRule) GetDeletionPolicy

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

GetDeletionPolicy of this SafetyRule.

func (*SafetyRule) GetID

func (tr *SafetyRule) GetID() string

GetID returns ID of underlying Terraform resource of this SafetyRule

func (*SafetyRule) GetInitParameters

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

GetInitParameters of this SafetyRule

func (*SafetyRule) GetManagementPolicies

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

GetManagementPolicies of this SafetyRule.

func (*SafetyRule) GetMergedParameters

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

GetInitParameters of this SafetyRule

func (*SafetyRule) GetObservation

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

GetObservation of this SafetyRule

func (*SafetyRule) GetParameters

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

GetParameters of this SafetyRule

func (*SafetyRule) GetProviderConfigReference

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

GetProviderConfigReference of this SafetyRule.

func (*SafetyRule) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this SafetyRule.

func (*SafetyRule) GetTerraformResourceType

func (mg *SafetyRule) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this SafetyRule

func (*SafetyRule) GetTerraformSchemaVersion

func (tr *SafetyRule) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*SafetyRule) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this SafetyRule.

func (*SafetyRule) Hub

func (tr *SafetyRule) Hub()

Hub marks this type as a conversion hub.

func (*SafetyRule) LateInitialize

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

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

func (*SafetyRule) ResolveReferences

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

func (*SafetyRule) SetConditions

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

SetConditions of this SafetyRule.

func (*SafetyRule) SetDeletionPolicy

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

SetDeletionPolicy of this SafetyRule.

func (*SafetyRule) SetManagementPolicies

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

SetManagementPolicies of this SafetyRule.

func (*SafetyRule) SetObservation

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

SetObservation for this SafetyRule

func (*SafetyRule) SetParameters

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

SetParameters for this SafetyRule

func (*SafetyRule) SetProviderConfigReference

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

SetProviderConfigReference of this SafetyRule.

func (*SafetyRule) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this SafetyRule.

func (*SafetyRule) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this SafetyRule.

type SafetyRuleInitParameters

type SafetyRuleInitParameters struct {

	// Routing controls that are part of transactions that are evaluated to determine if a request to change a routing control state is allowed.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/route53recoverycontrolconfig/v1beta1.RoutingControl
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-aws/config/common.TerraformID()
	AssertedControls []*string `json:"assertedControls,omitempty" tf:"asserted_controls,omitempty"`

	// References to RoutingControl in route53recoverycontrolconfig to populate assertedControls.
	// +kubebuilder:validation:Optional
	AssertedControlsRefs []v1.Reference `json:"assertedControlsRefs,omitempty" tf:"-"`

	// Selector for a list of RoutingControl in route53recoverycontrolconfig to populate assertedControls.
	// +kubebuilder:validation:Optional
	AssertedControlsSelector *v1.Selector `json:"assertedControlsSelector,omitempty" tf:"-"`

	// ARN of the control panel in which this safety rule will reside.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/route53recoverycontrolconfig/v1beta1.ControlPanel
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-aws/config/common.TerraformID()
	ControlPanelArn *string `json:"controlPanelArn,omitempty" tf:"control_panel_arn,omitempty"`

	// Reference to a ControlPanel in route53recoverycontrolconfig to populate controlPanelArn.
	// +kubebuilder:validation:Optional
	ControlPanelArnRef *v1.Reference `json:"controlPanelArnRef,omitempty" tf:"-"`

	// Selector for a ControlPanel in route53recoverycontrolconfig to populate controlPanelArn.
	// +kubebuilder:validation:Optional
	ControlPanelArnSelector *v1.Selector `json:"controlPanelArnSelector,omitempty" tf:"-"`

	// Gating controls for the new gating rule. That is, routing controls that are evaluated by the rule configuration that you specify.
	GatingControls []*string `json:"gatingControls,omitempty" tf:"gating_controls,omitempty"`

	// Name describing the safety rule.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Configuration block for safety rule criteria. See below.
	RuleConfig *RuleConfigInitParameters `json:"ruleConfig,omitempty" tf:"rule_config,omitempty"`

	// Routing controls that can only be set or unset if the specified rule_config evaluates to true for the specified gating_controls.
	TargetControls []*string `json:"targetControls,omitempty" tf:"target_controls,omitempty"`

	// Evaluation period, in milliseconds (ms), during which any request against the target routing controls will fail.
	WaitPeriodMs *float64 `json:"waitPeriodMs,omitempty" tf:"wait_period_ms,omitempty"`
}

func (*SafetyRuleInitParameters) DeepCopy

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

func (*SafetyRuleInitParameters) DeepCopyInto

func (in *SafetyRuleInitParameters) DeepCopyInto(out *SafetyRuleInitParameters)

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

type SafetyRuleList

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

SafetyRuleList contains a list of SafetyRules

func (*SafetyRuleList) DeepCopy

func (in *SafetyRuleList) DeepCopy() *SafetyRuleList

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

func (*SafetyRuleList) DeepCopyInto

func (in *SafetyRuleList) DeepCopyInto(out *SafetyRuleList)

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

func (*SafetyRuleList) DeepCopyObject

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

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

func (*SafetyRuleList) GetItems

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

GetItems of this SafetyRuleList.

type SafetyRuleObservation

type SafetyRuleObservation struct {

	// ARN of the safety rule.
	Arn *string `json:"arn,omitempty" tf:"arn,omitempty"`

	// Routing controls that are part of transactions that are evaluated to determine if a request to change a routing control state is allowed.
	AssertedControls []*string `json:"assertedControls,omitempty" tf:"asserted_controls,omitempty"`

	// ARN of the control panel in which this safety rule will reside.
	ControlPanelArn *string `json:"controlPanelArn,omitempty" tf:"control_panel_arn,omitempty"`

	// Gating controls for the new gating rule. That is, routing controls that are evaluated by the rule configuration that you specify.
	GatingControls []*string `json:"gatingControls,omitempty" tf:"gating_controls,omitempty"`

	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// Name describing the safety rule.
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Configuration block for safety rule criteria. See below.
	RuleConfig *RuleConfigObservation `json:"ruleConfig,omitempty" tf:"rule_config,omitempty"`

	// Status of the safety rule. PENDING when it is being created/updated, PENDING_DELETION when it is being deleted, and DEPLOYED otherwise.
	Status *string `json:"status,omitempty" tf:"status,omitempty"`

	// Routing controls that can only be set or unset if the specified rule_config evaluates to true for the specified gating_controls.
	TargetControls []*string `json:"targetControls,omitempty" tf:"target_controls,omitempty"`

	// Evaluation period, in milliseconds (ms), during which any request against the target routing controls will fail.
	WaitPeriodMs *float64 `json:"waitPeriodMs,omitempty" tf:"wait_period_ms,omitempty"`
}

func (*SafetyRuleObservation) DeepCopy

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

func (*SafetyRuleObservation) DeepCopyInto

func (in *SafetyRuleObservation) DeepCopyInto(out *SafetyRuleObservation)

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

type SafetyRuleParameters

type SafetyRuleParameters struct {

	// Routing controls that are part of transactions that are evaluated to determine if a request to change a routing control state is allowed.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/route53recoverycontrolconfig/v1beta1.RoutingControl
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-aws/config/common.TerraformID()
	// +kubebuilder:validation:Optional
	AssertedControls []*string `json:"assertedControls,omitempty" tf:"asserted_controls,omitempty"`

	// References to RoutingControl in route53recoverycontrolconfig to populate assertedControls.
	// +kubebuilder:validation:Optional
	AssertedControlsRefs []v1.Reference `json:"assertedControlsRefs,omitempty" tf:"-"`

	// Selector for a list of RoutingControl in route53recoverycontrolconfig to populate assertedControls.
	// +kubebuilder:validation:Optional
	AssertedControlsSelector *v1.Selector `json:"assertedControlsSelector,omitempty" tf:"-"`

	// ARN of the control panel in which this safety rule will reside.
	// +crossplane:generate:reference:type=github.com/upbound/provider-aws/apis/route53recoverycontrolconfig/v1beta1.ControlPanel
	// +crossplane:generate:reference:extractor=github.com/upbound/provider-aws/config/common.TerraformID()
	// +kubebuilder:validation:Optional
	ControlPanelArn *string `json:"controlPanelArn,omitempty" tf:"control_panel_arn,omitempty"`

	// Reference to a ControlPanel in route53recoverycontrolconfig to populate controlPanelArn.
	// +kubebuilder:validation:Optional
	ControlPanelArnRef *v1.Reference `json:"controlPanelArnRef,omitempty" tf:"-"`

	// Selector for a ControlPanel in route53recoverycontrolconfig to populate controlPanelArn.
	// +kubebuilder:validation:Optional
	ControlPanelArnSelector *v1.Selector `json:"controlPanelArnSelector,omitempty" tf:"-"`

	// Gating controls for the new gating rule. That is, routing controls that are evaluated by the rule configuration that you specify.
	// +kubebuilder:validation:Optional
	GatingControls []*string `json:"gatingControls,omitempty" tf:"gating_controls,omitempty"`

	// Name describing the safety rule.
	// +kubebuilder:validation:Optional
	Name *string `json:"name,omitempty" tf:"name,omitempty"`

	// Region is the region you'd like your resource to be created in.
	// +upjet:crd:field:TFTag=-
	// +kubebuilder:validation:Required
	Region *string `json:"region" tf:"-"`

	// Configuration block for safety rule criteria. See below.
	// +kubebuilder:validation:Optional
	RuleConfig *RuleConfigParameters `json:"ruleConfig,omitempty" tf:"rule_config,omitempty"`

	// Routing controls that can only be set or unset if the specified rule_config evaluates to true for the specified gating_controls.
	// +kubebuilder:validation:Optional
	TargetControls []*string `json:"targetControls,omitempty" tf:"target_controls,omitempty"`

	// Evaluation period, in milliseconds (ms), during which any request against the target routing controls will fail.
	// +kubebuilder:validation:Optional
	WaitPeriodMs *float64 `json:"waitPeriodMs,omitempty" tf:"wait_period_ms,omitempty"`
}

func (*SafetyRuleParameters) DeepCopy

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

func (*SafetyRuleParameters) DeepCopyInto

func (in *SafetyRuleParameters) DeepCopyInto(out *SafetyRuleParameters)

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

type SafetyRuleSpec

type SafetyRuleSpec struct {
	v1.ResourceSpec `json:",inline"`
	ForProvider     SafetyRuleParameters `json:"forProvider"`
	// THIS IS A BETA FIELD. It will be honored
	// unless the Management Policies feature flag is disabled.
	// InitProvider holds the same fields as ForProvider, with the exception
	// of Identifier and other resource reference fields. The fields that are
	// in InitProvider are merged into ForProvider when the resource is created.
	// The same fields are also added to the terraform ignore_changes hook, to
	// avoid updating them after creation. This is useful for fields that are
	// required on creation, but we do not desire to update them after creation,
	// for example because of an external controller is managing them, like an
	// autoscaler.
	InitProvider SafetyRuleInitParameters `json:"initProvider,omitempty"`
}

SafetyRuleSpec defines the desired state of SafetyRule

func (*SafetyRuleSpec) DeepCopy

func (in *SafetyRuleSpec) DeepCopy() *SafetyRuleSpec

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

func (*SafetyRuleSpec) DeepCopyInto

func (in *SafetyRuleSpec) DeepCopyInto(out *SafetyRuleSpec)

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

type SafetyRuleStatus

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

SafetyRuleStatus defines the observed state of SafetyRule.

func (*SafetyRuleStatus) DeepCopy

func (in *SafetyRuleStatus) DeepCopy() *SafetyRuleStatus

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

func (*SafetyRuleStatus) DeepCopyInto

func (in *SafetyRuleStatus) DeepCopyInto(out *SafetyRuleStatus)

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

Jump to

Keyboard shortcuts

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