Skip to content

Commit

Permalink
upgrade to latest dependencies
Browse files Browse the repository at this point in the history
bumping knative.dev/hack ef6e7e9...b799531:
  > b799531 Update community files (# 403)
bumping knative.dev/serving 16d2da8...f640bbb:
  > f640bbb Update net-gateway-api nightly (# 15603)
  > 64b8325 Update community files (# 15602)
  > 423e654 Fix configuration metadata inconsistency (# 15601)
  > 135b667 Update net-kourier nightly (# 15598)
  > f215fdb Update net-contour nightly (# 15597)
  > 7dc3e95 Update net-gateway-api nightly (# 15596)
bumping knative.dev/eventing 65aeab5...f53d038:
  > f53d038 [main] Update community files (# 8307)
  > df34028 Add missing copyright boilerplate (# 8305)
  > 3f2b75b Use GetServiceHostname when passing URL to JobSink (# 8303)
  > fa6b4c5 Add jobsinks-addressable-resolver cluster role (# 8298)
  > b4b609a Add observedGeneration in JobSink OpenAPI schema (# 8297)
  > 2e4d353 Allow imc-controller to list JobSinks (# 8294)
  > 7bca815 IntegrationSource CRD (# 8238)
  > c859efd [main] Format Go code (# 8289)
  > 7c97e6f Schduler: MAXFILLUP strategy will spread vreplicas across multiple pods (# 8263)
  > ef6b31a fix: et autocreate makes eventtype id required (# 8288)
  > 4faf9c8 [main] Upgrade to latest dependencies (# 8287)
bumping knative.dev/pkg 6af2bf9...0a99635:
  > 0a99635 Update community files (# 3112)
  > 25f6002 upgrade to latest dependencies (# 3111)

Signed-off-by: Knative Automation <[email protected]>
  • Loading branch information
knative-automation committed Nov 6, 2024
1 parent 23d48c5 commit 72740ff
Show file tree
Hide file tree
Showing 23 changed files with 1,394 additions and 16 deletions.
8 changes: 4 additions & 4 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -13,10 +13,10 @@ require (
k8s.io/api v0.30.3
k8s.io/apimachinery v0.30.3
k8s.io/client-go v0.30.3
knative.dev/eventing v0.43.1-0.20241025105802-65aeab55d676
knative.dev/hack v0.0.0-20241025103803-ef6e7e983a60
knative.dev/pkg v0.0.0-20241024133302-6af2bf9747e9
knative.dev/serving v0.43.1-0.20241025124202-16d2da814851
knative.dev/eventing v0.43.1-0.20241106013442-f53d038a4ab9
knative.dev/hack v0.0.0-20241106013728-b7995315deb5
knative.dev/pkg v0.0.0-20241106013442-0a99635c789e
knative.dev/serving v0.43.1-0.20241106121759-f640bbbdefc1
)

require (
Expand Down
16 changes: 8 additions & 8 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -794,16 +794,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.20241025105802-65aeab55d676 h1:fWmwnq9ZbX0RmUSic9tZtUQl0ezQ5elUajG3oWnMPfU=
knative.dev/eventing v0.43.1-0.20241025105802-65aeab55d676/go.mod h1:0izwspaO4Id2Zq7yTJFgYMjd1b9KDgjMAVyXKVgxivA=
knative.dev/hack v0.0.0-20241025103803-ef6e7e983a60 h1:LjBbosBvW/9/qjzIJtGpehPsbNWVvy1Fz8yZvMbFWe4=
knative.dev/hack v0.0.0-20241025103803-ef6e7e983a60/go.mod h1:R0ritgYtjLDO9527h5vb5X6gfvt5LCrJ55BNbVDsWiY=
knative.dev/eventing v0.43.1-0.20241106013442-f53d038a4ab9 h1:at/1crRiffBCnqke29mvVnN1omoCMayv18D24Xs3TKc=
knative.dev/eventing v0.43.1-0.20241106013442-f53d038a4ab9/go.mod h1:2mdt9J66vQYzxizDz8I/F6IGzV1QgwCkacBR8X12Ssk=
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/networking v0.0.0-20241024135302-d5387fab1de1 h1:eU3Jgfr3XjxRJkyyOp2wSoI/pm9Z0I1wgw6iBxG1VUo=
knative.dev/networking v0.0.0-20241024135302-d5387fab1de1/go.mod h1:slScd6CR0VlxLiKVFSJTVj/ne8C7elWEE4F93nVOOJk=
knative.dev/pkg v0.0.0-20241024133302-6af2bf9747e9 h1:+aw7X2GqCCslYR4pC08a5NGalTBTP7QiNdEwDtqJi2k=
knative.dev/pkg v0.0.0-20241024133302-6af2bf9747e9/go.mod h1:F91q72nAoVVP9T0Y8gllA7cJ0+SXAQQ8Oa6x9xZ7Bwo=
knative.dev/serving v0.43.1-0.20241025124202-16d2da814851 h1:iIqXMol/cei3PAyRizQrBE+NSFR/fq8GdAp8g62Uqi4=
knative.dev/serving v0.43.1-0.20241025124202-16d2da814851/go.mod h1:FGW1QEwQ0x2KWenTEZ+YNflBdBL9ATC8okmDoHo+yJ0=
knative.dev/pkg v0.0.0-20241106013442-0a99635c789e h1:Ksol0kNFrbJ9YfEsrRP60XGJS7eYAx6YLLji0fmxv/g=
knative.dev/pkg v0.0.0-20241106013442-0a99635c789e/go.mod h1:FeMbTLlxQqSASwlRCrYEOsZ0OKUgSj52qxhECwYCJsw=
knative.dev/serving v0.43.1-0.20241106121759-f640bbbdefc1 h1:VZvnEaVppsWcmxy2puA+48bh8CVyVc17AXGVRhgzQM8=
knative.dev/serving v0.43.1-0.20241106121759-f640bbbdefc1/go.mod h1:FGW1QEwQ0x2KWenTEZ+YNflBdBL9ATC8okmDoHo+yJ0=
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=
Expand Down
6 changes: 6 additions & 0 deletions vendor/knative.dev/eventing/pkg/apis/sources/register.go
Original file line number Diff line number Diff line change
Expand Up @@ -56,4 +56,10 @@ var (
Group: GroupName,
Resource: "containersources",
}

// IntegrationSourceResource respresents a Knative Eventing Sources IntegrationSource
IntegrationSourceResource = schema.GroupResource{
Group: GroupName,
Resource: "integrationsources",
}
)
20 changes: 20 additions & 0 deletions vendor/knative.dev/eventing/pkg/apis/sources/v1alpha1/doc.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
/*
Copyright 2020 The Knative Authors
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/

// Package v1alpha1 contains API Schema definitions for the sources v1alpha1 API group.
// +k8s:deepcopy-gen=package
// +groupName=sources.knative.dev
package v1alpha1
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
/*
Copyright 2020 The Knative Authors
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/

package v1alpha1

import (
"context"
"fmt"

"knative.dev/pkg/apis"
)

// ConvertTo implements apis.Convertible
// Converts source from v1alpha1.IntegrationSource into a higher version.
func (source *IntegrationSource) ConvertTo(ctx context.Context, obj apis.Convertible) error {
return fmt.Errorf("v1alpha1 is the highest known version, got: %T", source)
}

// ConvertFrom implements apis.Convertible
// Converts source from a higher version into v1beta2.IntegrationSource
func (source *IntegrationSource) ConvertFrom(ctx context.Context, obj apis.Convertible) error {
return fmt.Errorf("v1alpha1 is the highest known version, got: %T", source)
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
/*
Copyright 2020 The Knative Authors
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/

package v1alpha1

import "context"

func (source *IntegrationSource) SetDefaults(ctx context.Context) {
source.Spec.SetDefaults(ctx)
}

func (source *IntegrationSourceSpec) SetDefaults(ctx context.Context) {
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
/*
Copyright 2020 The Knative Authors
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/

package v1alpha1

import (
corev1 "k8s.io/api/core/v1"
v1 "knative.dev/eventing/pkg/apis/sources/v1"
"knative.dev/pkg/apis"
)

const (
// IntegrationSourceConditionReady has status True when the IntegrationSource is ready to send events.
IntegrationSourceConditionReady = apis.ConditionReady

// IntegrationSourceConditionReceiveAdapterReady has status True when the IntegrationSource's Deployment is ready.
IntegrationSourceConditionContainerSourceReady apis.ConditionType = "ContainerSourceReady"
)

var IntegrationCondSet = apis.NewLivingConditionSet(
IntegrationSourceConditionContainerSourceReady,
)

// GetConditionSet retrieves the condition set for this resource. Implements the KRShaped interface.
func (*IntegrationSource) GetConditionSet() apis.ConditionSet {
return IntegrationCondSet
}

// GetTopLevelCondition returns the top level condition.
func (s *IntegrationSourceStatus) GetTopLevelCondition() *apis.Condition {
return IntegrationCondSet.Manage(s).GetTopLevelCondition()
}

// InitializeConditions sets relevant unset conditions to Unknown state.
func (s *IntegrationSourceStatus) InitializeConditions() {
IntegrationCondSet.Manage(s).InitializeConditions()
}

func (iss *IntegrationSourceStatus) IsReady() bool {
return IntegrationCondSet.Manage(iss).IsHappy()
}

func (s *IntegrationSourceStatus) PropagateContainerSourceStatus(status *v1.ContainerSourceStatus) {
//// Do not copy conditions nor observedGeneration
s.SourceStatus = *status.SourceStatus.DeepCopy()

cond := status.GetCondition(apis.ConditionReady)
switch {
case cond == nil:
IntegrationCondSet.Manage(s).MarkUnknown(IntegrationSourceConditionContainerSourceReady, "", "")
case cond.Status == corev1.ConditionTrue:
IntegrationCondSet.Manage(s).MarkTrue(IntegrationSourceConditionContainerSourceReady)
case cond.Status == corev1.ConditionFalse:
IntegrationCondSet.Manage(s).MarkFalse(IntegrationSourceConditionContainerSourceReady, cond.Reason, cond.Message)
case cond.Status == corev1.ConditionUnknown:
IntegrationCondSet.Manage(s).MarkUnknown(IntegrationSourceConditionContainerSourceReady, cond.Reason, cond.Message)
default:
IntegrationCondSet.Manage(s).MarkUnknown(IntegrationSourceConditionContainerSourceReady, cond.Reason, cond.Message)
}

// Propagate ContainerSources AuthStatus to IntegrationSources AuthStatus
s.Auth = status.Auth
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,185 @@
/*
Copyright 2020 The Knative Authors
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/

package v1alpha1

import (
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"
"knative.dev/pkg/apis"
duckv1 "knative.dev/pkg/apis/duck/v1"
"knative.dev/pkg/kmeta"
)

// +genclient
// +genreconciler
// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

// IntegrationSource is the Schema for the Integrationsources API
type IntegrationSource struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty"`

Spec IntegrationSourceSpec `json:"spec,omitempty"`
Status IntegrationSourceStatus `json:"status,omitempty"`
}

var (
_ runtime.Object = (*IntegrationSource)(nil)
_ kmeta.OwnerRefable = (*IntegrationSource)(nil)
_ apis.Validatable = (*IntegrationSource)(nil)
_ apis.Defaultable = (*IntegrationSource)(nil)
_ apis.HasSpec = (*IntegrationSource)(nil)
_ duckv1.KRShaped = (*IntegrationSource)(nil)
_ apis.Convertible = (*IntegrationSource)(nil)
)

// IntegrationSourceSpec defines the desired state of IntegrationSource
type IntegrationSourceSpec struct {
// inherits duck/v1 SourceSpec, which currently provides:
// * Sink - a reference to an object that will resolve to a domain name or
// a URI directly to use as the sink.
// * CloudEventOverrides - defines overrides to control the output format
// and modifications of the event sent to the sink.
duckv1.SourceSpec `json:",inline"`

Aws *Aws `json:"aws,omitempty"` // AWS source configuration
Timer *Timer `json:"timer,omitempty"` // Timer configuration
}

type Timer struct {
Period int `json:"period" default:"1000"` // Interval (in milliseconds) between producing messages
Message string `json:"message"` // Message to generate
ContentType string `json:"contentType" default:"text/plain"` // Content type of generated message
RepeatCount int `json:"repeatCount,omitempty"` // Max number of fires (optional)
}

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
}

type AWSS3 struct {
AWSCommon `json:",inline"` // Embeds AWSCommon to inherit its fields in JSON
BucketNameOrArn string `json:"bucketNameOrArn,omitempty"` // S3 Bucket name or ARN
DeleteAfterRead bool `json:"deleteAfterRead" default:"true"` // Auto-delete objects after reading
MoveAfterRead bool `json:"moveAfterRead" default:"false"` // Move objects after reading
DestinationBucket string `json:"destinationBucket,omitempty"` // Destination bucket for moved objects
DestinationBucketPrefix string `json:"destinationBucketPrefix,omitempty"` // Prefix for moved objects
DestinationBucketSuffix string `json:"destinationBucketSuffix,omitempty"` // Suffix for moved objects
AutoCreateBucket bool `json:"autoCreateBucket" default:"false"` // Auto-create S3 bucket
Prefix string `json:"prefix,omitempty"` // S3 bucket prefix for search
IgnoreBody bool `json:"ignoreBody" default:"false"` // Ignore object body
ForcePathStyle bool `json:"forcePathStyle" default:"false"` // Force path style for bucket access
Delay int `json:"delay" default:"500"` // Delay between polls in milliseconds
MaxMessagesPerPoll int `json:"maxMessagesPerPoll" default:"10"` // Max messages to poll per request
}

type AWSSQS struct {
AWSCommon `json:",inline"` // Embeds AWSCommon to inherit its fields in JSON
QueueNameOrArn string `json:"queueNameOrArn,omitempty"` // SQS Queue name or ARN
DeleteAfterRead bool `json:"deleteAfterRead" default:"true"` // Auto-delete messages after reading
AutoCreateQueue bool `json:"autoCreateQueue" default:"false"` // Auto-create SQS queue
AmazonAWSHost string `json:"amazonAWSHost" default:"amazonaws.com"` // AWS host
Protocol string `json:"protocol" default:"https"` // Communication protocol (http/https)
QueueURL string `json:"queueURL,omitempty"` // Full SQS queue URL
Greedy bool `json:"greedy" default:"false"` // Greedy scheduler
Delay int `json:"delay" default:"500"` // Delay between polls in milliseconds
MaxMessagesPerPoll int `json:"maxMessagesPerPoll" default:"1"` // Max messages to return (1-10)
WaitTimeSeconds int `json:"waitTimeSeconds,omitempty"` // Wait time for messages
VisibilityTimeout int `json:"visibilityTimeout,omitempty"` // Visibility timeout in seconds
}

type AWSDDBStreams struct {
AWSCommon `json:",inline"` // Embeds AWSCommon to inherit its fields in JSON
Table string `json:"table,omitempty"` // The name of the DynamoDB table
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 Aws struct {
S3 *AWSS3 `json:"s3,omitempty"` // S3 source configuration
SQS *AWSSQS `json:"sqs,omitempty"` // SQS source configuration
DDBStreams *AWSDDBStreams `json:"ddb-streams,omitempty"` // DynamoDB Streams source configuration
Auth *Auth `json:"auth,omitempty"`
}

type Auth struct {
// Auth Secret
Secret *Secret `json:"secret,omitempty"`

// AccessKey is the AWS access key ID.
AccessKey string `json:"accessKey,omitempty"`

// SecretKey is the AWS secret access key.
SecretKey string `json:"secretKey,omitempty"`
}

func (a *Auth) HasAuth() bool {
return a != nil && a.Secret != nil &&
a.Secret.Ref != nil && a.Secret.Ref.Name != ""
}

type Secret struct {
// Secret reference for SASL and SSL configurations.
Ref *SecretReference `json:"ref,omitempty"`
}

type SecretReference struct {
// Secret name.
Name string `json:"name"`
}

// GetGroupVersionKind returns the GroupVersionKind.
func (*IntegrationSource) GetGroupVersionKind() schema.GroupVersionKind {
return SchemeGroupVersion.WithKind("IntegrationSource")
}

// IntegrationSourceStatus defines the observed state of IntegrationSource
type IntegrationSourceStatus struct {
// inherits duck/v1 SourceStatus, which currently provides:
// * ObservedGeneration - the 'Generation' of the Service that was last
// processed by the controller.
// * Conditions - the latest available observations of a resource's current
// state.
// * SinkURI - the current active sink URI that has been configured for the
// Source.
duckv1.SourceStatus `json:",inline"`
}

// +k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object

// IntegrationSourceList contains a list of IntegrationSource
type IntegrationSourceList struct {
metav1.TypeMeta `json:",inline"`
metav1.ListMeta `json:"metadata,omitempty"`
Items []IntegrationSource `json:"items"`
}

// GetUntypedSpec returns the spec of the IntegrationSource.
func (c *IntegrationSource) GetUntypedSpec() interface{} {
return c.Spec
}

// GetStatus retrieves the status of the IntegrationSource. Implements the KRShaped interface.
func (c *IntegrationSource) GetStatus() *duckv1.Status {
return &c.Status.Status
}
Loading

0 comments on commit 72740ff

Please sign in to comment.