v1alpha1

package
v0.6.0 Latest Latest
Warning

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

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

Documentation

Overview

+kubebuilder:object:generate=true +groupName=sns.aws.kubedb.com +versionName=v1alpha1

Index

Constants

View Source
const (
	CRDGroup   = "sns.aws.kubedb.com"
	CRDVersion = "v1alpha1"
)

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 (
	Topic_Kind             = "Topic"
	Topic_GroupKind        = schema.GroupKind{Group: CRDGroup, Kind: Topic_Kind}.String()
	Topic_KindAPIVersion   = Topic_Kind + "." + CRDGroupVersion.String()
	Topic_GroupVersionKind = CRDGroupVersion.WithKind(Topic_Kind)
)

Repository type metadata.

Functions

This section is empty.

Types

type Topic

type Topic 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.region)",message="spec.forProvider.region is a required parameter"
	Spec   TopicSpec   `json:"spec"`
	Status TopicStatus `json:"status,omitempty"`
}

Topic is the Schema for the Topics API. Provides an SNS topic resource. +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].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:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,aws}

func (*Topic) DeepCopy

func (in *Topic) DeepCopy() *Topic

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

func (*Topic) DeepCopyInto

func (in *Topic) DeepCopyInto(out *Topic)

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

func (*Topic) DeepCopyObject

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

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

func (*Topic) GetCondition

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

GetCondition of this Topic.

func (*Topic) GetConnectionDetailsMapping

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

GetConnectionDetailsMapping for this Topic

func (*Topic) GetDeletionPolicy

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

GetDeletionPolicy of this Topic.

func (*Topic) GetID

func (tr *Topic) GetID() string

GetID returns ID of underlying Terraform resource of this Topic

func (*Topic) GetInitParameters

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

GetInitParameters of this Topic

func (*Topic) GetManagementPolicies

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

GetManagementPolicies of this Topic.

func (*Topic) GetMergedParameters

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

GetInitParameters of this Topic

func (*Topic) GetObservation

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

GetObservation of this Topic

func (*Topic) GetParameters

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

GetParameters of this Topic

func (*Topic) GetProviderConfigReference

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

GetProviderConfigReference of this Topic.

func (*Topic) GetPublishConnectionDetailsTo

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

GetPublishConnectionDetailsTo of this Topic.

func (*Topic) GetTerraformResourceType

func (mg *Topic) GetTerraformResourceType() string

GetTerraformResourceType returns Terraform resource type for this Topic

func (*Topic) GetTerraformSchemaVersion

func (tr *Topic) GetTerraformSchemaVersion() int

GetTerraformSchemaVersion returns the associated Terraform schema version

func (*Topic) GetWriteConnectionSecretToReference

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

GetWriteConnectionSecretToReference of this Topic.

func (*Topic) LateInitialize

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

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

func (*Topic) ResolveReferences

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

ResolveReferences of this Topic.

func (*Topic) SetConditions

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

SetConditions of this Topic.

func (*Topic) SetDeletionPolicy

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

SetDeletionPolicy of this Topic.

func (*Topic) SetManagementPolicies

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

SetManagementPolicies of this Topic.

func (*Topic) SetObservation

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

SetObservation for this Topic

func (*Topic) SetParameters

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

SetParameters for this Topic

func (*Topic) SetProviderConfigReference

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

SetProviderConfigReference of this Topic.

func (*Topic) SetPublishConnectionDetailsTo

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

SetPublishConnectionDetailsTo of this Topic.

func (*Topic) SetWriteConnectionSecretToReference

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

SetWriteConnectionSecretToReference of this Topic.

type TopicInitParameters

type TopicInitParameters struct {

	// Percentage of success to sample
	ApplicationSuccessFeedbackSampleRate *float64 `json:"applicationSuccessFeedbackSampleRate,omitempty" tf:"application_success_feedback_sample_rate,omitempty"`

	// Enables content-based deduplication for FIFO topics. For more information, see the related documentation
	ContentBasedDeduplication *bool `json:"contentBasedDeduplication,omitempty" tf:"content_based_deduplication,omitempty"`

	// The SNS delivery policy. More on AWS documentation
	DeliveryPolicy *string `json:"deliveryPolicy,omitempty" tf:"delivery_policy,omitempty"`

	// The display name for the topic
	DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`

	// Boolean indicating whether or not to create a FIFO (first-in-first-out) topic (default is false).
	FifoTopic *bool `json:"fifoTopic,omitempty" tf:"fifo_topic,omitempty"`

	// Percentage of success to sample
	FirehoseSuccessFeedbackSampleRate *float64 `json:"firehoseSuccessFeedbackSampleRate,omitempty" tf:"firehose_success_feedback_sample_rate,omitempty"`

	// Percentage of success to sample
	HTTPSuccessFeedbackSampleRate *float64 `json:"httpSuccessFeedbackSampleRate,omitempty" tf:"http_success_feedback_sample_rate,omitempty"`

	// The ID of an AWS-managed customer master key (CMK) for Amazon SNS or a custom CMK. For more information, see Key Terms
	KMSMasterKeyID *string `json:"kmsMasterKeyId,omitempty" tf:"kms_master_key_id,omitempty"`

	// Percentage of success to sample
	LambdaSuccessFeedbackSampleRate *float64 `json:"lambdaSuccessFeedbackSampleRate,omitempty" tf:"lambda_success_feedback_sample_rate,omitempty"`

	// The fully-formed AWS policy as JSON.
	Policy *string `json:"policy,omitempty" tf:"policy,omitempty"`

	// If SignatureVersion should be 1 (SHA1) or 2 (SHA256). The signature version corresponds to the hashing algorithm used while creating the signature of the notifications, subscription confirmations, or unsubscribe confirmation messages sent by Amazon SNS.
	SignatureVersion *float64 `json:"signatureVersion,omitempty" tf:"signature_version,omitempty"`

	// Percentage of success to sample
	SqsSuccessFeedbackSampleRate *float64 `json:"sqsSuccessFeedbackSampleRate,omitempty" tf:"sqs_success_feedback_sample_rate,omitempty"`

	// Key-value map of resource tags. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.
	TagsAll map[string]*string `json:"tagsAll,omitempty" tf:"tags_all,omitempty"`

	// Tracing mode of an Amazon SNS topic. Valid values: "PassThrough", "Active".
	TracingConfig *string `json:"tracingConfig,omitempty" tf:"tracing_config,omitempty"`
}

func (*TopicInitParameters) DeepCopy

func (in *TopicInitParameters) DeepCopy() *TopicInitParameters

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

func (*TopicInitParameters) DeepCopyInto

func (in *TopicInitParameters) DeepCopyInto(out *TopicInitParameters)

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

type TopicList

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

TopicList contains a list of Topics

func (*TopicList) DeepCopy

func (in *TopicList) DeepCopy() *TopicList

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

func (*TopicList) DeepCopyInto

func (in *TopicList) DeepCopyInto(out *TopicList)

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

func (*TopicList) DeepCopyObject

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

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

func (*TopicList) GetItems

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

GetItems of this TopicList.

type TopicObservation

type TopicObservation struct {

	// IAM role for failure feedback
	ApplicationFailureFeedbackRoleArn *string `json:"applicationFailureFeedbackRoleArn,omitempty" tf:"application_failure_feedback_role_arn,omitempty"`

	// The IAM role permitted to receive success feedback for this topic
	ApplicationSuccessFeedbackRoleArn *string `json:"applicationSuccessFeedbackRoleArn,omitempty" tf:"application_success_feedback_role_arn,omitempty"`

	// Percentage of success to sample
	ApplicationSuccessFeedbackSampleRate *float64 `json:"applicationSuccessFeedbackSampleRate,omitempty" tf:"application_success_feedback_sample_rate,omitempty"`

	// The ARN of the SNS topic, as a more obvious property (clone of id)
	Arn *string `json:"arn,omitempty" tf:"arn,omitempty"`

	// Enables content-based deduplication for FIFO topics. For more information, see the related documentation
	ContentBasedDeduplication *bool `json:"contentBasedDeduplication,omitempty" tf:"content_based_deduplication,omitempty"`

	// The SNS delivery policy. More on AWS documentation
	DeliveryPolicy *string `json:"deliveryPolicy,omitempty" tf:"delivery_policy,omitempty"`

	// The display name for the topic
	DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`

	// Boolean indicating whether or not to create a FIFO (first-in-first-out) topic (default is false).
	FifoTopic *bool `json:"fifoTopic,omitempty" tf:"fifo_topic,omitempty"`

	// IAM role for failure feedback
	FirehoseFailureFeedbackRoleArn *string `json:"firehoseFailureFeedbackRoleArn,omitempty" tf:"firehose_failure_feedback_role_arn,omitempty"`

	// The IAM role permitted to receive success feedback for this topic
	FirehoseSuccessFeedbackRoleArn *string `json:"firehoseSuccessFeedbackRoleArn,omitempty" tf:"firehose_success_feedback_role_arn,omitempty"`

	// Percentage of success to sample
	FirehoseSuccessFeedbackSampleRate *float64 `json:"firehoseSuccessFeedbackSampleRate,omitempty" tf:"firehose_success_feedback_sample_rate,omitempty"`

	// IAM role for failure feedback
	HTTPFailureFeedbackRoleArn *string `json:"httpFailureFeedbackRoleArn,omitempty" tf:"http_failure_feedback_role_arn,omitempty"`

	// The IAM role permitted to receive success feedback for this topic
	HTTPSuccessFeedbackRoleArn *string `json:"httpSuccessFeedbackRoleArn,omitempty" tf:"http_success_feedback_role_arn,omitempty"`

	// Percentage of success to sample
	HTTPSuccessFeedbackSampleRate *float64 `json:"httpSuccessFeedbackSampleRate,omitempty" tf:"http_success_feedback_sample_rate,omitempty"`

	// The ARN of the SNS topic
	ID *string `json:"id,omitempty" tf:"id,omitempty"`

	// The ID of an AWS-managed customer master key (CMK) for Amazon SNS or a custom CMK. For more information, see Key Terms
	KMSMasterKeyID *string `json:"kmsMasterKeyId,omitempty" tf:"kms_master_key_id,omitempty"`

	// IAM role for failure feedback
	LambdaFailureFeedbackRoleArn *string `json:"lambdaFailureFeedbackRoleArn,omitempty" tf:"lambda_failure_feedback_role_arn,omitempty"`

	// The IAM role permitted to receive success feedback for this topic
	LambdaSuccessFeedbackRoleArn *string `json:"lambdaSuccessFeedbackRoleArn,omitempty" tf:"lambda_success_feedback_role_arn,omitempty"`

	// Percentage of success to sample
	LambdaSuccessFeedbackSampleRate *float64 `json:"lambdaSuccessFeedbackSampleRate,omitempty" tf:"lambda_success_feedback_sample_rate,omitempty"`

	// The AWS Account ID of the SNS topic owner
	Owner *string `json:"owner,omitempty" tf:"owner,omitempty"`

	// The fully-formed AWS policy as JSON.
	Policy *string `json:"policy,omitempty" tf:"policy,omitempty"`

	// If SignatureVersion should be 1 (SHA1) or 2 (SHA256). The signature version corresponds to the hashing algorithm used while creating the signature of the notifications, subscription confirmations, or unsubscribe confirmation messages sent by Amazon SNS.
	SignatureVersion *float64 `json:"signatureVersion,omitempty" tf:"signature_version,omitempty"`

	// IAM role for failure feedback
	SqsFailureFeedbackRoleArn *string `json:"sqsFailureFeedbackRoleArn,omitempty" tf:"sqs_failure_feedback_role_arn,omitempty"`

	// The IAM role permitted to receive success feedback for this topic
	SqsSuccessFeedbackRoleArn *string `json:"sqsSuccessFeedbackRoleArn,omitempty" tf:"sqs_success_feedback_role_arn,omitempty"`

	// Percentage of success to sample
	SqsSuccessFeedbackSampleRate *float64 `json:"sqsSuccessFeedbackSampleRate,omitempty" tf:"sqs_success_feedback_sample_rate,omitempty"`

	// Key-value map of resource tags. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.
	TagsAll map[string]*string `json:"tagsAll,omitempty" tf:"tags_all,omitempty"`

	// Tracing mode of an Amazon SNS topic. Valid values: "PassThrough", "Active".
	TracingConfig *string `json:"tracingConfig,omitempty" tf:"tracing_config,omitempty"`
}

func (*TopicObservation) DeepCopy

func (in *TopicObservation) DeepCopy() *TopicObservation

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

func (*TopicObservation) DeepCopyInto

func (in *TopicObservation) DeepCopyInto(out *TopicObservation)

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

type TopicParameters

type TopicParameters struct {

	// IAM role for failure feedback
	// +crossplane:generate:reference:type=kubedb.dev/provider-aws/apis/iam/v1alpha1.Role
	// +crossplane:generate:reference:extractor=kubedb.dev/provider-aws/config/common.ARNExtractor()
	// +kubebuilder:validation:Optional
	ApplicationFailureFeedbackRoleArn *string `json:"applicationFailureFeedbackRoleArn,omitempty" tf:"application_failure_feedback_role_arn,omitempty"`

	// Reference to a Role in iam to populate applicationFailureFeedbackRoleArn.
	// +kubebuilder:validation:Optional
	ApplicationFailureFeedbackRoleArnRef *v1.Reference `json:"applicationFailureFeedbackRoleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate applicationFailureFeedbackRoleArn.
	// +kubebuilder:validation:Optional
	ApplicationFailureFeedbackRoleArnSelector *v1.Selector `json:"applicationFailureFeedbackRoleArnSelector,omitempty" tf:"-"`

	// The IAM role permitted to receive success feedback for this topic
	// +crossplane:generate:reference:type=kubedb.dev/provider-aws/apis/iam/v1alpha1.Role
	// +crossplane:generate:reference:extractor=kubedb.dev/provider-aws/config/common.ARNExtractor()
	// +kubebuilder:validation:Optional
	ApplicationSuccessFeedbackRoleArn *string `json:"applicationSuccessFeedbackRoleArn,omitempty" tf:"application_success_feedback_role_arn,omitempty"`

	// Reference to a Role in iam to populate applicationSuccessFeedbackRoleArn.
	// +kubebuilder:validation:Optional
	ApplicationSuccessFeedbackRoleArnRef *v1.Reference `json:"applicationSuccessFeedbackRoleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate applicationSuccessFeedbackRoleArn.
	// +kubebuilder:validation:Optional
	ApplicationSuccessFeedbackRoleArnSelector *v1.Selector `json:"applicationSuccessFeedbackRoleArnSelector,omitempty" tf:"-"`

	// Percentage of success to sample
	// +kubebuilder:validation:Optional
	ApplicationSuccessFeedbackSampleRate *float64 `json:"applicationSuccessFeedbackSampleRate,omitempty" tf:"application_success_feedback_sample_rate,omitempty"`

	// Enables content-based deduplication for FIFO topics. For more information, see the related documentation
	// +kubebuilder:validation:Optional
	ContentBasedDeduplication *bool `json:"contentBasedDeduplication,omitempty" tf:"content_based_deduplication,omitempty"`

	// The SNS delivery policy. More on AWS documentation
	// +kubebuilder:validation:Optional
	DeliveryPolicy *string `json:"deliveryPolicy,omitempty" tf:"delivery_policy,omitempty"`

	// The display name for the topic
	// +kubebuilder:validation:Optional
	DisplayName *string `json:"displayName,omitempty" tf:"display_name,omitempty"`

	// Boolean indicating whether or not to create a FIFO (first-in-first-out) topic (default is false).
	// +kubebuilder:validation:Optional
	FifoTopic *bool `json:"fifoTopic,omitempty" tf:"fifo_topic,omitempty"`

	// IAM role for failure feedback
	// +crossplane:generate:reference:type=kubedb.dev/provider-aws/apis/iam/v1alpha1.Role
	// +crossplane:generate:reference:extractor=kubedb.dev/provider-aws/config/common.ARNExtractor()
	// +kubebuilder:validation:Optional
	FirehoseFailureFeedbackRoleArn *string `json:"firehoseFailureFeedbackRoleArn,omitempty" tf:"firehose_failure_feedback_role_arn,omitempty"`

	// Reference to a Role in iam to populate firehoseFailureFeedbackRoleArn.
	// +kubebuilder:validation:Optional
	FirehoseFailureFeedbackRoleArnRef *v1.Reference `json:"firehoseFailureFeedbackRoleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate firehoseFailureFeedbackRoleArn.
	// +kubebuilder:validation:Optional
	FirehoseFailureFeedbackRoleArnSelector *v1.Selector `json:"firehoseFailureFeedbackRoleArnSelector,omitempty" tf:"-"`

	// The IAM role permitted to receive success feedback for this topic
	// +crossplane:generate:reference:type=kubedb.dev/provider-aws/apis/iam/v1alpha1.Role
	// +crossplane:generate:reference:extractor=kubedb.dev/provider-aws/config/common.ARNExtractor()
	// +kubebuilder:validation:Optional
	FirehoseSuccessFeedbackRoleArn *string `json:"firehoseSuccessFeedbackRoleArn,omitempty" tf:"firehose_success_feedback_role_arn,omitempty"`

	// Reference to a Role in iam to populate firehoseSuccessFeedbackRoleArn.
	// +kubebuilder:validation:Optional
	FirehoseSuccessFeedbackRoleArnRef *v1.Reference `json:"firehoseSuccessFeedbackRoleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate firehoseSuccessFeedbackRoleArn.
	// +kubebuilder:validation:Optional
	FirehoseSuccessFeedbackRoleArnSelector *v1.Selector `json:"firehoseSuccessFeedbackRoleArnSelector,omitempty" tf:"-"`

	// Percentage of success to sample
	// +kubebuilder:validation:Optional
	FirehoseSuccessFeedbackSampleRate *float64 `json:"firehoseSuccessFeedbackSampleRate,omitempty" tf:"firehose_success_feedback_sample_rate,omitempty"`

	// IAM role for failure feedback
	// +crossplane:generate:reference:type=kubedb.dev/provider-aws/apis/iam/v1alpha1.Role
	// +crossplane:generate:reference:extractor=kubedb.dev/provider-aws/config/common.ARNExtractor()
	// +kubebuilder:validation:Optional
	HTTPFailureFeedbackRoleArn *string `json:"httpFailureFeedbackRoleArn,omitempty" tf:"http_failure_feedback_role_arn,omitempty"`

	// Reference to a Role in iam to populate httpFailureFeedbackRoleArn.
	// +kubebuilder:validation:Optional
	HTTPFailureFeedbackRoleArnRef *v1.Reference `json:"httpFailureFeedbackRoleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate httpFailureFeedbackRoleArn.
	// +kubebuilder:validation:Optional
	HTTPFailureFeedbackRoleArnSelector *v1.Selector `json:"httpFailureFeedbackRoleArnSelector,omitempty" tf:"-"`

	// The IAM role permitted to receive success feedback for this topic
	// +crossplane:generate:reference:type=kubedb.dev/provider-aws/apis/iam/v1alpha1.Role
	// +crossplane:generate:reference:extractor=kubedb.dev/provider-aws/config/common.ARNExtractor()
	// +kubebuilder:validation:Optional
	HTTPSuccessFeedbackRoleArn *string `json:"httpSuccessFeedbackRoleArn,omitempty" tf:"http_success_feedback_role_arn,omitempty"`

	// Reference to a Role in iam to populate httpSuccessFeedbackRoleArn.
	// +kubebuilder:validation:Optional
	HTTPSuccessFeedbackRoleArnRef *v1.Reference `json:"httpSuccessFeedbackRoleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate httpSuccessFeedbackRoleArn.
	// +kubebuilder:validation:Optional
	HTTPSuccessFeedbackRoleArnSelector *v1.Selector `json:"httpSuccessFeedbackRoleArnSelector,omitempty" tf:"-"`

	// Percentage of success to sample
	// +kubebuilder:validation:Optional
	HTTPSuccessFeedbackSampleRate *float64 `json:"httpSuccessFeedbackSampleRate,omitempty" tf:"http_success_feedback_sample_rate,omitempty"`

	// The ID of an AWS-managed customer master key (CMK) for Amazon SNS or a custom CMK. For more information, see Key Terms
	// +kubebuilder:validation:Optional
	KMSMasterKeyID *string `json:"kmsMasterKeyId,omitempty" tf:"kms_master_key_id,omitempty"`

	// IAM role for failure feedback
	// +crossplane:generate:reference:type=kubedb.dev/provider-aws/apis/iam/v1alpha1.Role
	// +crossplane:generate:reference:extractor=kubedb.dev/provider-aws/config/common.ARNExtractor()
	// +kubebuilder:validation:Optional
	LambdaFailureFeedbackRoleArn *string `json:"lambdaFailureFeedbackRoleArn,omitempty" tf:"lambda_failure_feedback_role_arn,omitempty"`

	// Reference to a Role in iam to populate lambdaFailureFeedbackRoleArn.
	// +kubebuilder:validation:Optional
	LambdaFailureFeedbackRoleArnRef *v1.Reference `json:"lambdaFailureFeedbackRoleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate lambdaFailureFeedbackRoleArn.
	// +kubebuilder:validation:Optional
	LambdaFailureFeedbackRoleArnSelector *v1.Selector `json:"lambdaFailureFeedbackRoleArnSelector,omitempty" tf:"-"`

	// The IAM role permitted to receive success feedback for this topic
	// +crossplane:generate:reference:type=kubedb.dev/provider-aws/apis/iam/v1alpha1.Role
	// +crossplane:generate:reference:extractor=kubedb.dev/provider-aws/config/common.ARNExtractor()
	// +kubebuilder:validation:Optional
	LambdaSuccessFeedbackRoleArn *string `json:"lambdaSuccessFeedbackRoleArn,omitempty" tf:"lambda_success_feedback_role_arn,omitempty"`

	// Reference to a Role in iam to populate lambdaSuccessFeedbackRoleArn.
	// +kubebuilder:validation:Optional
	LambdaSuccessFeedbackRoleArnRef *v1.Reference `json:"lambdaSuccessFeedbackRoleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate lambdaSuccessFeedbackRoleArn.
	// +kubebuilder:validation:Optional
	LambdaSuccessFeedbackRoleArnSelector *v1.Selector `json:"lambdaSuccessFeedbackRoleArnSelector,omitempty" tf:"-"`

	// Percentage of success to sample
	// +kubebuilder:validation:Optional
	LambdaSuccessFeedbackSampleRate *float64 `json:"lambdaSuccessFeedbackSampleRate,omitempty" tf:"lambda_success_feedback_sample_rate,omitempty"`

	// The fully-formed AWS policy as JSON.
	// +kubebuilder:validation:Optional
	Policy *string `json:"policy,omitempty" tf:"policy,omitempty"`

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

	// If SignatureVersion should be 1 (SHA1) or 2 (SHA256). The signature version corresponds to the hashing algorithm used while creating the signature of the notifications, subscription confirmations, or unsubscribe confirmation messages sent by Amazon SNS.
	// +kubebuilder:validation:Optional
	SignatureVersion *float64 `json:"signatureVersion,omitempty" tf:"signature_version,omitempty"`

	// IAM role for failure feedback
	// +crossplane:generate:reference:type=kubedb.dev/provider-aws/apis/iam/v1alpha1.Role
	// +crossplane:generate:reference:extractor=kubedb.dev/provider-aws/config/common.ARNExtractor()
	// +kubebuilder:validation:Optional
	SqsFailureFeedbackRoleArn *string `json:"sqsFailureFeedbackRoleArn,omitempty" tf:"sqs_failure_feedback_role_arn,omitempty"`

	// Reference to a Role in iam to populate sqsFailureFeedbackRoleArn.
	// +kubebuilder:validation:Optional
	SqsFailureFeedbackRoleArnRef *v1.Reference `json:"sqsFailureFeedbackRoleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate sqsFailureFeedbackRoleArn.
	// +kubebuilder:validation:Optional
	SqsFailureFeedbackRoleArnSelector *v1.Selector `json:"sqsFailureFeedbackRoleArnSelector,omitempty" tf:"-"`

	// The IAM role permitted to receive success feedback for this topic
	// +crossplane:generate:reference:type=kubedb.dev/provider-aws/apis/iam/v1alpha1.Role
	// +crossplane:generate:reference:extractor=kubedb.dev/provider-aws/config/common.ARNExtractor()
	// +kubebuilder:validation:Optional
	SqsSuccessFeedbackRoleArn *string `json:"sqsSuccessFeedbackRoleArn,omitempty" tf:"sqs_success_feedback_role_arn,omitempty"`

	// Reference to a Role in iam to populate sqsSuccessFeedbackRoleArn.
	// +kubebuilder:validation:Optional
	SqsSuccessFeedbackRoleArnRef *v1.Reference `json:"sqsSuccessFeedbackRoleArnRef,omitempty" tf:"-"`

	// Selector for a Role in iam to populate sqsSuccessFeedbackRoleArn.
	// +kubebuilder:validation:Optional
	SqsSuccessFeedbackRoleArnSelector *v1.Selector `json:"sqsSuccessFeedbackRoleArnSelector,omitempty" tf:"-"`

	// Percentage of success to sample
	// +kubebuilder:validation:Optional
	SqsSuccessFeedbackSampleRate *float64 `json:"sqsSuccessFeedbackSampleRate,omitempty" tf:"sqs_success_feedback_sample_rate,omitempty"`

	// Key-value map of resource tags. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.
	// +kubebuilder:validation:Optional
	Tags map[string]*string `json:"tags,omitempty" tf:"tags,omitempty"`

	// A map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.
	// +kubebuilder:validation:Optional
	TagsAll map[string]*string `json:"tagsAll,omitempty" tf:"tags_all,omitempty"`

	// Tracing mode of an Amazon SNS topic. Valid values: "PassThrough", "Active".
	// +kubebuilder:validation:Optional
	TracingConfig *string `json:"tracingConfig,omitempty" tf:"tracing_config,omitempty"`
}

func (*TopicParameters) DeepCopy

func (in *TopicParameters) DeepCopy() *TopicParameters

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

func (*TopicParameters) DeepCopyInto

func (in *TopicParameters) DeepCopyInto(out *TopicParameters)

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

type TopicSpec

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

TopicSpec defines the desired state of Topic

func (*TopicSpec) DeepCopy

func (in *TopicSpec) DeepCopy() *TopicSpec

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

func (*TopicSpec) DeepCopyInto

func (in *TopicSpec) DeepCopyInto(out *TopicSpec)

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

type TopicStatus

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

TopicStatus defines the observed state of Topic.

func (*TopicStatus) DeepCopy

func (in *TopicStatus) DeepCopy() *TopicStatus

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

func (*TopicStatus) DeepCopyInto

func (in *TopicStatus) DeepCopyInto(out *TopicStatus)

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