diff --git a/go.mod b/go.mod index c360b4d8c..acb5a8d7e 100644 --- a/go.mod +++ b/go.mod @@ -20,11 +20,11 @@ require ( k8s.io/apimachinery v0.30.3 k8s.io/client-go v0.30.3 k8s.io/utils v0.0.0-20240711033017-18e509b52bc8 - knative.dev/eventing v0.43.1-0.20241126125511-65da6fc77cd4 - knative.dev/hack v0.0.0-20241106013728-b7995315deb5 - knative.dev/hack/schema v0.0.0-20241106013728-b7995315deb5 - knative.dev/pkg v0.0.0-20241118074447-a7fd9b10bb9f - knative.dev/reconciler-test v0.0.0-20241106013737-0619dc3ecbcf + knative.dev/eventing v0.43.1-0.20241203174144-3345c8609def + knative.dev/hack v0.0.0-20241128013751-1978b3a02667 + knative.dev/hack/schema v0.0.0-20241128013751-1978b3a02667 + knative.dev/pkg v0.0.0-20241128013618-f3ab5605e542 + knative.dev/reconciler-test v0.0.0-20241128013747-984ae1257c23 ) require ( diff --git a/go.sum b/go.sum index d5a82f7ed..305944144 100644 --- a/go.sum +++ b/go.sum @@ -825,16 +825,16 @@ k8s.io/kube-openapi v0.0.0-20240808142205-8e686545bdb8 h1:1Wof1cGQgA5pqgo8MxKPtf k8s.io/kube-openapi v0.0.0-20240808142205-8e686545bdb8/go.mod h1:Os6V6dZwLNii3vxFpxcNaTmH8LJJBkOTg1N0tOA0fvA= k8s.io/utils v0.0.0-20240711033017-18e509b52bc8 h1:pUdcCO1Lk/tbT5ztQWOBi5HBgbBP1J8+AsQnQCKsi8A= k8s.io/utils v0.0.0-20240711033017-18e509b52bc8/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0= -knative.dev/eventing v0.43.1-0.20241126125511-65da6fc77cd4 h1:0jgqiStGgfXkFeTFKXM02tw7cxJSOypE0Q1xhInTucc= -knative.dev/eventing v0.43.1-0.20241126125511-65da6fc77cd4/go.mod h1:RxMFtxk903ZoxyS140MPdLLePTzBdeaGkVmBTB52t04= -knative.dev/hack v0.0.0-20241106013728-b7995315deb5 h1:CfU5+6B+ylBd7mSGpvRqpzZV8H5ZQLGUwVygFzbE+1o= -knative.dev/hack v0.0.0-20241106013728-b7995315deb5/go.mod h1:R0ritgYtjLDO9527h5vb5X6gfvt5LCrJ55BNbVDsWiY= -knative.dev/hack/schema v0.0.0-20241106013728-b7995315deb5 h1:XBZ2viC6IBcFJ3xfvR/NNtdKwvcTaYwftLwr2Mzh86I= -knative.dev/hack/schema v0.0.0-20241106013728-b7995315deb5/go.mod h1:jRH/sx6mwwuMVhvJgnzSaoYA1N4qaIkJa+zxEGtVA5I= -knative.dev/pkg v0.0.0-20241118074447-a7fd9b10bb9f h1:ggyD8WGF4LbTWfCiLo++EC/Q7rvYY4UI6CzuDt9dXkE= -knative.dev/pkg v0.0.0-20241118074447-a7fd9b10bb9f/go.mod h1:C2dxK66GlycMOS0SKqv0SMAnWkxsYbG4hkH32Xg1qD0= -knative.dev/reconciler-test v0.0.0-20241106013737-0619dc3ecbcf h1:FMgW5irj5xRPSRmtVICeLNHnZsnn7t8IFO0Fj3Kf+jo= -knative.dev/reconciler-test v0.0.0-20241106013737-0619dc3ecbcf/go.mod h1:W9Kmdoxelg2mswUpDKerL/4Ih1/ouVhlSMeZeJ5LX9c= +knative.dev/eventing v0.43.1-0.20241203174144-3345c8609def h1:PvB6R/O/vG8Tv6yw+A+u94YDnQV6nA1xaN7y0b1G7/s= +knative.dev/eventing v0.43.1-0.20241203174144-3345c8609def/go.mod h1:RxMFtxk903ZoxyS140MPdLLePTzBdeaGkVmBTB52t04= +knative.dev/hack v0.0.0-20241128013751-1978b3a02667 h1:cp3GfEBnL0H2OrqdxLZ7nZ2K7U4PMdQhdBogl4Vd5+E= +knative.dev/hack v0.0.0-20241128013751-1978b3a02667/go.mod h1:R0ritgYtjLDO9527h5vb5X6gfvt5LCrJ55BNbVDsWiY= +knative.dev/hack/schema v0.0.0-20241128013751-1978b3a02667 h1:w8tQwPQ/VE/GhXfXix+xuj0dm7Np3UvmUpmFcwVs16k= +knative.dev/hack/schema v0.0.0-20241128013751-1978b3a02667/go.mod h1:jRH/sx6mwwuMVhvJgnzSaoYA1N4qaIkJa+zxEGtVA5I= +knative.dev/pkg v0.0.0-20241128013618-f3ab5605e542 h1:x5cEwa34aOgQDnSTEE+UtRk5lND0cvb8KbVBUShwNuI= +knative.dev/pkg v0.0.0-20241128013618-f3ab5605e542/go.mod h1:C2dxK66GlycMOS0SKqv0SMAnWkxsYbG4hkH32Xg1qD0= +knative.dev/reconciler-test v0.0.0-20241128013747-984ae1257c23 h1:uImxV6MAs6JEahOHfemXSq7fgWNQ5ZW1BtFPDlanEc4= +knative.dev/reconciler-test v0.0.0-20241128013747-984ae1257c23/go.mod h1:zDapuiJIFS67XEVBJWdEnVN5KHE8EvFGooLQGXeDH/c= rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8= rsc.io/quote/v3 v3.1.0/go.mod h1:yEA65RcK8LyAZtP9Kv3t0HmxON59tX3rD+tICJqUlj0= rsc.io/sampler v1.3.0/go.mod h1:T1hPZKmBbMNahiBKFy5HrXp6adAjACjK9JXDnKaTXpA= diff --git a/vendor/knative.dev/eventing/pkg/apis/common/integration/v1alpha1/aws.go b/vendor/knative.dev/eventing/pkg/apis/common/integration/v1alpha1/aws.go index 056ef5b4e..7a77d57b5 100644 --- a/vendor/knative.dev/eventing/pkg/apis/common/integration/v1alpha1/aws.go +++ b/vendor/knative.dev/eventing/pkg/apis/common/integration/v1alpha1/aws.go @@ -16,13 +16,19 @@ limitations under the License. package v1alpha1 +const ( + + // AwsAccessKey is the name of the expected key on the secret for accessing the actual AWS access key value. + AwsAccessKey = "aws.accessKey" + // AwsSecretKey is the name of the expected key on the secret for accessing the actual AWS secret key value. + AwsSecretKey = "aws.secretKey" +) + type AWSCommon struct { // Auth is the S3 authentication (accessKey/secretKey) configuration. - Region string `json:"region,omitempty"` // AWS region - ProfileCredentialsName string `json:"profileCredentialsName,omitempty"` // Profile name for profile credentials provider - SessionToken string `json:"sessionToken,omitempty"` // Session token - URIEndpointOverride string `json:"uriEndpointOverride,omitempty"` // Override endpoint URI - OverrideEndpoint bool `json:"overrideEndpoint" default:"false"` // Override endpoint flag + Region string `json:"region,omitempty"` // AWS region + URIEndpointOverride string `json:"uriEndpointOverride,omitempty"` // Override endpoint URI + OverrideEndpoint bool `json:"overrideEndpoint" default:"false"` // Override endpoint flag } type AWSS3 struct { @@ -62,3 +68,9 @@ type AWSDDBStreams struct { StreamIteratorType string `json:"streamIteratorType,omitempty" default:"FROM_LATEST"` // Defines where in the DynamoDB stream to start getting records Delay int `json:"delay,omitempty" default:"500"` // Delay in milliseconds before the next poll from the database } + +type AWSSNS struct { + AWSCommon `json:",inline"` // Embeds AWSCommon to inherit its fields in JSON + Arn string `json:"arn,omitempty" camel:"CAMEL_KAMELET_AWS_SNS_SINK_TOPICNAMEORARN"` // SNS ARN + AutoCreateTopic bool `json:"autoCreateTopic" default:"false"` // Auto-create SNS topic +} diff --git a/vendor/knative.dev/eventing/pkg/apis/common/integration/v1alpha1/zz_generated.deepcopy.go b/vendor/knative.dev/eventing/pkg/apis/common/integration/v1alpha1/zz_generated.deepcopy.go index 5d0f7dde5..9cf353963 100644 --- a/vendor/knative.dev/eventing/pkg/apis/common/integration/v1alpha1/zz_generated.deepcopy.go +++ b/vendor/knative.dev/eventing/pkg/apis/common/integration/v1alpha1/zz_generated.deepcopy.go @@ -71,6 +71,23 @@ func (in *AWSS3) DeepCopy() *AWSS3 { return out } +// DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. +func (in *AWSSNS) DeepCopyInto(out *AWSSNS) { + *out = *in + out.AWSCommon = in.AWSCommon + return +} + +// DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AWSSNS. +func (in *AWSSNS) DeepCopy() *AWSSNS { + if in == nil { + return nil + } + out := new(AWSSNS) + in.DeepCopyInto(out) + return out +} + // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil. func (in *AWSSQS) DeepCopyInto(out *AWSSQS) { *out = *in diff --git a/vendor/knative.dev/eventing/pkg/apis/sinks/v1alpha1/integration_sink_types.go b/vendor/knative.dev/eventing/pkg/apis/sinks/v1alpha1/integration_sink_types.go index 5e2dbb46f..efc15e62b 100644 --- a/vendor/knative.dev/eventing/pkg/apis/sinks/v1alpha1/integration_sink_types.go +++ b/vendor/knative.dev/eventing/pkg/apis/sinks/v1alpha1/integration_sink_types.go @@ -76,6 +76,7 @@ type Log struct { type Aws struct { S3 *v1alpha1.AWSS3 `json:"s3,omitempty"` // S3 source configuration SQS *v1alpha1.AWSSQS `json:"sqs,omitempty"` // SQS source configuration + SNS *v1alpha1.AWSSNS `json:"sns,omitempty"` // SNS source configuration Auth *v1alpha1.Auth `json:"auth,omitempty"` } diff --git a/vendor/knative.dev/eventing/pkg/apis/sinks/v1alpha1/integration_sink_validation.go b/vendor/knative.dev/eventing/pkg/apis/sinks/v1alpha1/integration_sink_validation.go index c96b83d7d..9a0ae4dd7 100644 --- a/vendor/knative.dev/eventing/pkg/apis/sinks/v1alpha1/integration_sink_validation.go +++ b/vendor/knative.dev/eventing/pkg/apis/sinks/v1alpha1/integration_sink_validation.go @@ -42,6 +42,9 @@ func (spec *IntegrationSinkSpec) Validate(ctx context.Context) *apis.FieldError if spec.Aws.SQS != nil { sinkSetCount++ } + if spec.Aws.SNS != nil { + sinkSetCount++ + } } // Validate that only one sink field is set @@ -53,7 +56,7 @@ func (spec *IntegrationSinkSpec) Validate(ctx context.Context) *apis.FieldError // Only perform AWS-specific validation if exactly one AWS sink is configured if sinkSetCount == 1 && spec.Aws != nil { - if spec.Aws.S3 != nil || spec.Aws.SQS != nil { + if spec.Aws.S3 != nil || spec.Aws.SQS != nil || spec.Aws.SNS != nil { // Check that AWS Auth is properly configured if !spec.Aws.Auth.HasAuth() { errs = errs.Also(apis.ErrMissingField("aws.auth.secret.ref.name")) @@ -79,6 +82,15 @@ func (spec *IntegrationSinkSpec) Validate(ctx context.Context) *apis.FieldError errs = errs.Also(apis.ErrMissingField("aws.sqs.region")) } } + // Additional validation for AWS SNS required fields + if spec.Aws.SNS != nil { + if spec.Aws.SNS.Arn == "" { + errs = errs.Also(apis.ErrMissingField("aws.sns.arn")) + } + if spec.Aws.SNS.Region == "" { + errs = errs.Also(apis.ErrMissingField("aws.sns.region")) + } + } } return errs diff --git a/vendor/knative.dev/eventing/pkg/apis/sinks/v1alpha1/job_sink_types.go b/vendor/knative.dev/eventing/pkg/apis/sinks/v1alpha1/job_sink_types.go index da69766bd..5cc3a0faf 100644 --- a/vendor/knative.dev/eventing/pkg/apis/sinks/v1alpha1/job_sink_types.go +++ b/vendor/knative.dev/eventing/pkg/apis/sinks/v1alpha1/job_sink_types.go @@ -29,7 +29,7 @@ import ( ) const ( - ExecutionModeEnvVar = "KNATIVE_EXECUTION_MODE" + ExecutionModeEnvVar = "K_EXECUTION_MODE" ) type ExecutionMode string diff --git a/vendor/knative.dev/eventing/pkg/apis/sinks/v1alpha1/zz_generated.deepcopy.go b/vendor/knative.dev/eventing/pkg/apis/sinks/v1alpha1/zz_generated.deepcopy.go index 3dff23adf..a0265e79c 100644 --- a/vendor/knative.dev/eventing/pkg/apis/sinks/v1alpha1/zz_generated.deepcopy.go +++ b/vendor/knative.dev/eventing/pkg/apis/sinks/v1alpha1/zz_generated.deepcopy.go @@ -40,6 +40,11 @@ func (in *Aws) DeepCopyInto(out *Aws) { *out = new(integrationv1alpha1.AWSSQS) **out = **in } + if in.SNS != nil { + in, out := &in.SNS, &out.SNS + *out = new(integrationv1alpha1.AWSSNS) + **out = **in + } if in.Auth != nil { in, out := &in.Auth, &out.Auth *out = new(integrationv1alpha1.Auth) diff --git a/vendor/modules.txt b/vendor/modules.txt index d65f03014..777a19d70 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -1061,7 +1061,7 @@ k8s.io/utils/pointer k8s.io/utils/ptr k8s.io/utils/strings/slices k8s.io/utils/trace -# knative.dev/eventing v0.43.1-0.20241126125511-65da6fc77cd4 +# knative.dev/eventing v0.43.1-0.20241203174144-3345c8609def ## explicit; go 1.22.7 knative.dev/eventing/pkg/apis knative.dev/eventing/pkg/apis/common/integration/v1alpha1 @@ -1135,16 +1135,16 @@ knative.dev/eventing/test/lib/sender knative.dev/eventing/test/test_images knative.dev/eventing/test/test_images/event-sender knative.dev/eventing/test/test_images/print -# knative.dev/hack v0.0.0-20241106013728-b7995315deb5 +# knative.dev/hack v0.0.0-20241128013751-1978b3a02667 ## explicit; go 1.21 knative.dev/hack -# knative.dev/hack/schema v0.0.0-20241106013728-b7995315deb5 +# knative.dev/hack/schema v0.0.0-20241128013751-1978b3a02667 ## explicit; go 1.21 knative.dev/hack/schema/commands knative.dev/hack/schema/docs knative.dev/hack/schema/registry knative.dev/hack/schema/schema -# knative.dev/pkg v0.0.0-20241118074447-a7fd9b10bb9f +# knative.dev/pkg v0.0.0-20241128013618-f3ab5605e542 ## explicit; go 1.22.7 knative.dev/pkg/apis knative.dev/pkg/apis/duck @@ -1221,8 +1221,8 @@ knative.dev/pkg/webhook/json knative.dev/pkg/webhook/resourcesemantics knative.dev/pkg/webhook/resourcesemantics/defaulting knative.dev/pkg/webhook/resourcesemantics/validation -# knative.dev/reconciler-test v0.0.0-20241106013737-0619dc3ecbcf -## explicit; go 1.22.0 +# knative.dev/reconciler-test v0.0.0-20241128013747-984ae1257c23 +## explicit; go 1.22.7 knative.dev/reconciler-test/cmd/eventshub knative.dev/reconciler-test/pkg/environment knative.dev/reconciler-test/pkg/eventshub