Repository: knative-sandbox/eventing-kafka-broker
Pull request #2907 (2023-01-17 11:27:40)

Refactoring the topic config, passing directly in the broker config map
Signed-off-by: Matthias Wessendorf <mwessend@redhat.com>

Fixes #

<!-- Please include the 'why' behind your changes if no issue exists -->

## Proposed Changes

- changing the `topicConfig` implementation and passing in the "broker config" `ConfigMap`

<!--
If this change has user-visible impact, follow the instructions below.
Examples include:

- :gift: Add new feature
- :bug: Fix bug
- :broom: Update or clean up current behavior
- :wastebasket: Remove feature or internal logic

Otherwise delete the rest of this template.
-->

**Release Note**

<!--
:page_facing_up: If this change has user-visible impact, write a release note in the block
below. Include the string "action required" if additional action is required of
users switching to the new release, for example in case of a breaking change.

Write as if you are speaking to users, not other Knative contributors. If this
change has no user-visible impact, no release-note is needed.
-->

```release-note

```

**Docs**

<!--
:book: If this change has user-visible impact, link to an issue or PR in
https://github.com/knative/docs.
-->


knative-prow[bot]: [APPROVALNOTIFIER] This PR is **APPROVED**

This pull-request has been approved by: *<a href="https://github.com/knative-sandbox/eventing-kafka-broker/pull/2907#" title="Author self-approved">matzew</a>*

The full list of commands accepted by this bot can be found [here](https://go.k8s.io/bot-commands?repo=knative-sandbox%2Feventing-kafka-broker).

The pull request process is described [here](https://git.k8s.io/community/contributors/guide/owners.md#the-code-review-process)

<details >
Needs approval from an approver in each of these files:

- ~~[OWNERS](https://github.com/knative-sandbox/eventing-kafka-broker/blob/main/OWNERS)~~ [matzew]

Approvers can indicate their approval by writing `/approve` in a comment
Approvers can cancel approval by writing `/approve cancel` in a comment
</details>
<!-- META={"approvers":[]} -->
knative-prow[bot]: @matzew: The following test **failed**, say `/retest` to rerun all failed tests or `/retest-required` to rerun all mandatory failed tests:

Test name | Commit | Details | Required | Rerun command
--- | --- | --- | --- | ---
unit-tests_eventing-kafka-broker_main | c6b0ef821c4102722a2aea19c7c33b37fa92a2dc | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/2907/unit-tests_eventing-kafka-broker_main/1615310242348797952) | true | `/test unit-tests`

[Your PR dashboard](https://prow.knative.dev/pr).

<details>

Instructions for interacting with me using PR comments are available [here](https://git.k8s.io/community/contributors/guide/pull-requests.md).  If you have questions or suggestions related to my behavior, please file an issue against the [kubernetes/test-infra](https://github.com/kubernetes/test-infra/issues/new?title=Prow%20issue:) repository. I understand the commands that are listed [here](https://go.k8s.io/bot-commands).
</details>
<!-- test report -->
codecov[bot]: # [Codecov](https://codecov.io/gh/knative-sandbox/eventing-kafka-broker/pull/2907?src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=knative-sandbox) Report
> Merging [#2907](https://codecov.io/gh/knative-sandbox/eventing-kafka-broker/pull/2907?src=pr&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=knative-sandbox) (c3b2d7f) into [main](https://codecov.io/gh/knative-sandbox/eventing-kafka-broker/commit/fff16a319750f0c1339e599556b8fac3ba2d1d26?el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=knative-sandbox) (fff16a3) will **decrease** coverage by `5.31%`.
> The diff coverage is `100.00%`.

> :exclamation: Current head c3b2d7f differs from pull request most recent head c6b0ef8. Consider uploading reports for the commit c6b0ef8 to get more accurate results

```diff
@@             Coverage Diff              @@
##               main    #2907      +/-   ##
============================================
- Coverage     63.77%   58.45%   -5.32%     
============================================
  Files           155       78      -77     
  Lines         10928     8311    -2617     
  Branches        231        0     -231     
============================================
- Hits           6969     4858    -2111     
+ Misses         3455     3085     -370     
+ Partials        504      368     -136     
```

| Flag | Coverage Δ | |
|---|---|---|
| java-unittests | `?` | |

Flags with carried forward coverage won't be shown. [Click here](https://docs.codecov.io/docs/carryforward-flags?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=knative-sandbox#carryforward-flags-in-the-pull-request-comment) to find out more.

| [Impacted Files](https://codecov.io/gh/knative-sandbox/eventing-kafka-broker/pull/2907?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=knative-sandbox) | Coverage Δ | |
|---|---|---|
| [control-plane/pkg/reconciler/broker/broker.go](https://codecov.io/gh/knative-sandbox/eventing-kafka-broker/pull/2907?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=knative-sandbox#diff-Y29udHJvbC1wbGFuZS9wa2cvcmVjb25jaWxlci9icm9rZXIvYnJva2VyLmdv) | `70.67% <100.00%> (+0.12%)` | :arrow_up: |
| [...lane/pkg/reconciler/consumergroup/consumergroup.go](https://codecov.io/gh/knative-sandbox/eventing-kafka-broker/pull/2907?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=knative-sandbox#diff-Y29udHJvbC1wbGFuZS9wa2cvcmVjb25jaWxlci9jb25zdW1lcmdyb3VwL2NvbnN1bWVyZ3JvdXAuZ28=) | `53.73% <0.00%> (-0.64%)` | :arrow_down: |
| [...er/impl/consumer/InvalidCloudEventInterceptor.java](https://codecov.io/gh/knative-sandbox/eventing-kafka-broker/pull/2907?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=knative-sandbox#diff-ZGF0YS1wbGFuZS9kaXNwYXRjaGVyL3NyYy9tYWluL2phdmEvZGV2L2tuYXRpdmUvZXZlbnRpbmcva2Fma2EvYnJva2VyL2Rpc3BhdGNoZXIvaW1wbC9jb25zdW1lci9JbnZhbGlkQ2xvdWRFdmVudEludGVyY2VwdG9yLmphdmE=) | | |
| [...broker/dispatcher/impl/consumer/OffsetManager.java](https://codecov.io/gh/knative-sandbox/eventing-kafka-broker/pull/2907?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=knative-sandbox#diff-ZGF0YS1wbGFuZS9kaXNwYXRjaGVyL3NyYy9tYWluL2phdmEvZGV2L2tuYXRpdmUvZXZlbnRpbmcva2Fma2EvYnJva2VyL2Rpc3BhdGNoZXIvaW1wbC9jb25zdW1lci9PZmZzZXRNYW5hZ2VyLmphdmE=) | | |
| [...oker/dispatcher/impl/consumer/KeyDeserializer.java](https://codecov.io/gh/knative-sandbox/eventing-kafka-broker/pull/2907?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=knative-sandbox#diff-ZGF0YS1wbGFuZS9kaXNwYXRjaGVyL3NyYy9tYWluL2phdmEvZGV2L2tuYXRpdmUvZXZlbnRpbmcva2Fma2EvYnJva2VyL2Rpc3BhdGNoZXIvaW1wbC9jb25zdW1lci9LZXlEZXNlcmlhbGl6ZXIuamF2YQ==) | | |
| [...dispatcher/impl/ResponseToHttpEndpointHandler.java](https://codecov.io/gh/knative-sandbox/eventing-kafka-broker/pull/2907?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=knative-sandbox#diff-ZGF0YS1wbGFuZS9kaXNwYXRjaGVyL3NyYy9tYWluL2phdmEvZGV2L2tuYXRpdmUvZXZlbnRpbmcva2Fma2EvYnJva2VyL2Rpc3BhdGNoZXIvaW1wbC9SZXNwb25zZVRvSHR0cEVuZHBvaW50SGFuZGxlci5qYXZh) | | |
| [...cher/impl/consumer/CloudEventOverridesMutator.java](https://codecov.io/gh/knative-sandbox/eventing-kafka-broker/pull/2907?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=knative-sandbox#diff-ZGF0YS1wbGFuZS9kaXNwYXRjaGVyL3NyYy9tYWluL2phdmEvZGV2L2tuYXRpdmUvZXZlbnRpbmcva2Fma2EvYnJva2VyL2Rpc3BhdGNoZXIvaW1wbC9jb25zdW1lci9DbG91ZEV2ZW50T3ZlcnJpZGVzTXV0YXRvci5qYXZh) | | |
| [...tcher/impl/consumer/UnorderedConsumerVerticle.java](https://codecov.io/gh/knative-sandbox/eventing-kafka-broker/pull/2907?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=knative-sandbox#diff-ZGF0YS1wbGFuZS9kaXNwYXRjaGVyL3NyYy9tYWluL2phdmEvZGV2L2tuYXRpdmUvZXZlbnRpbmcva2Fma2EvYnJva2VyL2Rpc3BhdGNoZXIvaW1wbC9jb25zdW1lci9Vbm9yZGVyZWRDb25zdW1lclZlcnRpY2xlLmphdmE=) | | |
| [...patcher/impl/consumer/OrderedConsumerVerticle.java](https://codecov.io/gh/knative-sandbox/eventing-kafka-broker/pull/2907?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=knative-sandbox#diff-ZGF0YS1wbGFuZS9kaXNwYXRjaGVyL3NyYy9tYWluL2phdmEvZGV2L2tuYXRpdmUvZXZlbnRpbmcva2Fma2EvYnJva2VyL2Rpc3BhdGNoZXIvaW1wbC9jb25zdW1lci9PcmRlcmVkQ29uc3VtZXJWZXJ0aWNsZS5qYXZh) | | |
| [...ka/broker/core/security/KubernetesCredentials.java](https://codecov.io/gh/knative-sandbox/eventing-kafka-broker/pull/2907?src=pr&el=tree&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=knative-sandbox#diff-ZGF0YS1wbGFuZS9jb3JlL3NyYy9tYWluL2phdmEvZGV2L2tuYXRpdmUvZXZlbnRpbmcva2Fma2EvYnJva2VyL2NvcmUvc2VjdXJpdHkvS3ViZXJuZXRlc0NyZWRlbnRpYWxzLmphdmE=) | | |
| ... and [70 more](https://codecov.io/gh/knative-sandbox/eventing-kafka-broker/pull/2907?src=pr&el=tree-more&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=knative-sandbox) | |

Help us with your feedback. Take ten seconds to tell us [how you rate us](https://about.codecov.io/nps?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=knative-sandbox). Have a feature suggestion? [Share it here.](https://app.codecov.io/gh/feedback/?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=knative-sandbox)

knative-prow[bot]: @matzew: The following tests **failed**, say `/retest` to rerun all failed tests or `/retest-required` to rerun all mandatory failed tests:

Test name | Commit | Details | Required | Rerun command
--- | --- | --- | --- | ---
unit-tests_eventing-kafka-broker_main | c6b0ef821c4102722a2aea19c7c33b37fa92a2dc | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/2907/unit-tests_eventing-kafka-broker_main/1615310242348797952) | true | `/test unit-tests`
channel-integration-tests-sasl-plain_eventing-kafka-broker_main | c6b0ef821c4102722a2aea19c7c33b37fa92a2dc | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/2907/channel-integration-tests-sasl-plain_eventing-kafka-broker_main/1615310255770570752) | true | `/test channel-integration-tests-sasl-plain`

[Your PR dashboard](https://prow.knative.dev/pr).

<details>

Instructions for interacting with me using PR comments are available [here](https://git.k8s.io/community/contributors/guide/pull-requests.md).  If you have questions or suggestions related to my behavior, please file an issue against the [kubernetes/test-infra](https://github.com/kubernetes/test-infra/issues/new?title=Prow%20issue:) repository. I understand the commands that are listed [here](https://go.k8s.io/bot-commands).
</details>
<!-- test report -->
matzew: /test channel-integration-tests-sasl-plain
matzew: /test unit-tests
knative-prow[bot]: @matzew: The following test **failed**, say `/retest` to rerun all failed tests or `/retest-required` to rerun all mandatory failed tests:

Test name | Commit | Details | Required | Rerun command
--- | --- | --- | --- | ---
channel-integration-tests-sasl-plain_eventing-kafka-broker_main | c6b0ef821c4102722a2aea19c7c33b37fa92a2dc | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/2907/channel-integration-tests-sasl-plain_eventing-kafka-broker_main/1615325187354398720) | true | `/test channel-integration-tests-sasl-plain`

[Your PR dashboard](https://prow.knative.dev/pr).

<details>

Instructions for interacting with me using PR comments are available [here](https://git.k8s.io/community/contributors/guide/pull-requests.md).  If you have questions or suggestions related to my behavior, please file an issue against the [kubernetes/test-infra](https://github.com/kubernetes/test-infra/issues/new?title=Prow%20issue:) repository. I understand the commands that are listed [here](https://go.k8s.io/bot-commands).
</details>
<!-- test report -->
matzew: /test channel-integration-tests-sasl-plain

Patch:
diff --git a/control-plane/pkg/reconciler/broker/broker.go b/control-plane/pkg/reconciler/broker/broker.go
index 18c82c9e3..ddd2b7a69 100644
--- a/control-plane/pkg/reconciler/broker/broker.go
+++ b/control-plane/pkg/reconciler/broker/broker.go
@@ -108,7 +108,12 @@ func (r *Reconciler) reconcileKind(ctx context.Context, broker *eventing.Broker)
 	}
 	statusConditionManager.DataPlaneAvailable()
 
-	topicConfig, brokerConfig, err := r.topicConfig(logger, broker)
+	brokerConfig, err := r.brokerConfigMap(logger, broker)
+	if err != nil && !apierrors.IsNotFound(err) {
+		return statusConditionManager.FailedToResolveConfig(err)
+	}
+
+	topicConfig, err := r.topicConfig(logger, broker, brokerConfig)
 	if err != nil {
 		return statusConditionManager.FailedToResolveConfig(err)
 	}
@@ -347,10 +352,7 @@ func (r *Reconciler) finalizeKind(ctx context.Context, broker *eventing.Broker)
 	// External topics are not managed by the broker,
 	// therefore we do not delete them
 	if !externalTopic {
-
-		// I do not like the use of `_`
-		// TODO: refactor
-		topicConfig, _, err := r.topicConfig(logger, broker)
+		topicConfig, err := r.topicConfig(logger, broker, brokerConfig)
 		if err != nil {
 			return fmt.Errorf("failed to resolve broker config: %w", err)
 		}
@@ -505,28 +507,19 @@ func (r *Reconciler) brokerConfigMap(logger *zap.Logger, broker *eventing.Broker
 	return cm, getCmError
 }
 
-// TODO: pass the configmap to this function
-func (r *Reconciler) topicConfig(logger *zap.Logger, broker *eventing.Broker) (*kafka.TopicConfig, *corev1.ConfigMap, error) {
-
-	cm, getCmError := r.brokerConfigMap(logger, broker)
-	// For generic errors, we return the error, when the ConfigMap wasn't found we try to get topic information from
-	// the rebuilt ConfigMap, if it's still not possible we return the `getCmError` down below.
-	if getCmError != nil && !apierrors.IsNotFound(getCmError) {
-		return nil, nil, getCmError
-	}
-
-	topicConfig, err := kafka.TopicConfigFromConfigMap(logger, cm)
+func (r *Reconciler) topicConfig(logger *zap.Logger, broker *eventing.Broker, brokerConfig *corev1.ConfigMap) (*kafka.TopicConfig, error) {
+	topicConfig, err := kafka.TopicConfigFromConfigMap(logger, brokerConfig)
 	if err != nil {
 		// Check if the rebuilt CM is empty
-		if cm != nil && len(cm.Data) == 0 {
-			return nil, cm, fmt.Errorf("unable to rebuild topic config, failed to get configmap %s/%s: %w", r.brokerNamespace(broker), broker.Spec.Config.Name, getCmError)
+		if brokerConfig != nil && len(brokerConfig.Data) == 0 {
+			return nil, fmt.Errorf("unable to rebuild topic config, failed to get configmap %s/%s", r.brokerNamespace(broker), broker.Spec.Config.Name)
 		}
-		return nil, cm, fmt.Errorf("unable to build topic config from configmap: %w - ConfigMap data: %v", err, cm.Data)
+		return nil, fmt.Errorf("unable to build topic config from configmap: %w - ConfigMap data: %v", err, brokerConfig.Data)
 	}
 
-	storeConfigMapAsStatusAnnotation(broker, cm)
+	storeConfigMapAsStatusAnnotation(broker, brokerConfig)
 
-	return topicConfig, cm, nil
+	return topicConfig, nil
 }
 
 // Save ConfigMap's data into broker annotations, to prevent issue when the ConfigMap itself is being deleted


Test patch:
diff --git a/control-plane/pkg/reconciler/broker/broker_test.go b/control-plane/pkg/reconciler/broker/broker_test.go
index f176a40ad..fae9a678e 100644
--- a/control-plane/pkg/reconciler/broker/broker_test.go
+++ b/control-plane/pkg/reconciler/broker/broker_test.go
@@ -1320,7 +1320,7 @@ func brokerReconciliation(t *testing.T, format string, env config.Env) {
 				Eventf(
 					corev1.EventTypeWarning,
 					"InternalError",
-					fmt.Sprintf(`failed to get contract configuration: unable to rebuild topic config, failed to get configmap %s/%s: configmap %q not found`, ConfigMapNamespace, ConfigMapName, ConfigMapName),
+					fmt.Sprintf(`failed to get contract configuration: unable to rebuild topic config, failed to get configmap %s/%s`, ConfigMapNamespace, ConfigMapName),
 				),
 			},
 			SkipNamespaceValidation: true, // WantCreates compare the broker namespace with configmap namespace, so skip it
@@ -1338,7 +1338,7 @@ func brokerReconciliation(t *testing.T, format string, env config.Env) {
 						),
 						reconcilertesting.WithInitBrokerConditions,
 						StatusBrokerDataPlaneAvailable,
-						StatusBrokerConfigNotParsed(fmt.Sprintf(`unable to rebuild topic config, failed to get configmap %s/%s: configmap %q not found`, ConfigMapNamespace, ConfigMapName, ConfigMapName)),
+						StatusBrokerConfigNotParsed(fmt.Sprintf(`unable to rebuild topic config, failed to get configmap %s/%s`, ConfigMapNamespace, ConfigMapName)),
 					),
 				},
 			},
diff --git a/third_party/eventing-latest/eventing-core.yaml b/third_party/eventing-latest/eventing-core.yaml
index 50d776cec..f8e2d417a 100644
--- a/third_party/eventing-latest/eventing-core.yaml
+++ b/third_party/eventing-latest/eventing-core.yaml
@@ -16,8 +16,8 @@ kind: Namespace
 metadata:
   name: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 
 ---
@@ -41,8 +41,8 @@ metadata:
   name: eventing-controller
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 ---
 apiVersion: rbac.authorization.k8s.io/v1
@@ -50,8 +50,8 @@ kind: ClusterRoleBinding
 metadata:
   name: eventing-controller
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 subjects:
   - kind: ServiceAccount
@@ -67,8 +67,8 @@ kind: ClusterRoleBinding
 metadata:
   name: eventing-controller-resolver
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 subjects:
   - kind: ServiceAccount
@@ -84,8 +84,8 @@ kind: ClusterRoleBinding
 metadata:
   name: eventing-controller-source-observer
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 subjects:
   - kind: ServiceAccount
@@ -101,8 +101,8 @@ kind: ClusterRoleBinding
 metadata:
   name: eventing-controller-sources-controller
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 subjects:
   - kind: ServiceAccount
@@ -118,8 +118,8 @@ kind: ClusterRoleBinding
 metadata:
   name: eventing-controller-manipulator
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 subjects:
   - kind: ServiceAccount
@@ -151,8 +151,8 @@ metadata:
   name: pingsource-mt-adapter
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 ---
 apiVersion: rbac.authorization.k8s.io/v1
@@ -160,8 +160,8 @@ kind: ClusterRoleBinding
 metadata:
   name: knative-eventing-pingsource-mt-adapter
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 subjects:
   - kind: ServiceAccount
@@ -193,8 +193,8 @@ metadata:
   name: eventing-webhook
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 ---
 apiVersion: rbac.authorization.k8s.io/v1
@@ -202,8 +202,8 @@ kind: ClusterRoleBinding
 metadata:
   name: eventing-webhook
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 subjects:
   - kind: ServiceAccount
@@ -220,8 +220,8 @@ metadata:
   namespace: knative-eventing
   name: eventing-webhook
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 subjects:
   - kind: ServiceAccount
@@ -237,8 +237,8 @@ kind: ClusterRoleBinding
 metadata:
   name: eventing-webhook-resolver
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 subjects:
   - kind: ServiceAccount
@@ -254,8 +254,8 @@ kind: ClusterRoleBinding
 metadata:
   name: eventing-webhook-podspecable-binding
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 subjects:
   - kind: ServiceAccount
@@ -287,8 +287,8 @@ metadata:
   name: config-br-default-channel
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 data:
   channel-template-spec: |
@@ -316,8 +316,8 @@ metadata:
   name: config-br-defaults
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 data:
   # Configures the default for any Broker that does not specify a spec.config or Broker class.
@@ -354,8 +354,8 @@ metadata:
   name: default-ch-webhook
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 data:
   # Configuration for defaulting channels that do not specify CRD implementations.
@@ -389,10 +389,10 @@ metadata:
   name: config-ping-defaults
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
   annotations:
     knative.dev/example-checksum: "9185c153"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 data:
   _example: |
@@ -436,10 +436,10 @@ metadata:
   name: config-features
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     knative.dev/config-propagation: original
     knative.dev/config-category: eventing
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 data:
   # ALPHA feature: The kreference-group allows you to use the Group field in KReferences.
@@ -480,7 +480,7 @@ metadata:
   name: config-kreference-mapping
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     knative.dev/config-propagation: original
     knative.dev/config-category: eventing
   annotations:
@@ -529,8 +529,8 @@ metadata:
   name: config-leader-election
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
   annotations:
     knative.dev/example-checksum: "f7948630"
@@ -591,10 +591,10 @@ metadata:
   name: config-logging
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     knative.dev/config-propagation: original
     knative.dev/config-category: eventing
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 data:
   # Common configuration for all Knative codebase
@@ -645,10 +645,10 @@ metadata:
   name: config-observability
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     knative.dev/config-propagation: original
     knative.dev/config-category: eventing
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
   annotations:
     knative.dev/example-checksum: "f46cf09d"
@@ -722,8 +722,8 @@ metadata:
   name: config-sugar
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
   annotations:
     knative.dev/example-checksum: "62dfac6f"
@@ -780,10 +780,10 @@ metadata:
   name: config-tracing
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     knative.dev/config-propagation: original
     knative.dev/config-category: eventing
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
   annotations:
     knative.dev/example-checksum: "0492ceb0"
@@ -838,10 +838,10 @@ metadata:
   name: eventing-controller
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     knative.dev/high-availability: "true"
     app.kubernetes.io/component: eventing-controller
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 spec:
   selector:
@@ -851,9 +851,9 @@ spec:
     metadata:
       labels:
         app: eventing-controller
-        eventing.knative.dev/release: "v20230110-d4184192c"
+        eventing.knative.dev/release: "v20230116-694f82436"
         app.kubernetes.io/component: eventing-controller
-        app.kubernetes.io/version: "20230110-d4184192c"
+        app.kubernetes.io/version: "20230116-694f82436"
         app.kubernetes.io/name: knative-eventing
     spec:
       # To avoid node becoming SPOF, spread our replicas to different nodes.
@@ -871,7 +871,7 @@ spec:
       containers:
         - name: eventing-controller
           terminationMessagePolicy: FallbackToLogsOnError
-          image: gcr.io/knative-nightly/knative.dev/eventing/cmd/controller@sha256:1b21a9e5f5f63bf08dee9a20fa62840692b50b378db08de142585a2b9070c1b8
+          image: gcr.io/knative-nightly/knative.dev/eventing/cmd/controller@sha256:c2b6976cb2bf239f165deeca6d864392f6f8ab0f7c69607d8cc2d66ebe2daf2c
           resources:
             requests:
               cpu: 100m
@@ -889,7 +889,7 @@ spec:
               value: knative.dev/eventing
             # APIServerSource
             - name: APISERVER_RA_IMAGE
-              value: gcr.io/knative-nightly/knative.dev/eventing/cmd/apiserver_receive_adapter@sha256:910ffc34c24fc4bc7a438b16b67808d6befb1a410ba3e144cb39dc844a667b02
+              value: gcr.io/knative-nightly/knative.dev/eventing/cmd/apiserver_receive_adapter@sha256:8b0c38aa3c090525d342d50afaf47ab96bf64651a40d4479977a2a50d63ba990
             - name: POD_NAME
               valueFrom:
                 fieldRef:
@@ -958,9 +958,9 @@ metadata:
   name: pingsource-mt-adapter
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     app.kubernetes.io/component: pingsource-mt-adapter
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 spec:
   # when set to 0 (and only 0) will be set to 1 when the first PingSource is created.
@@ -973,9 +973,9 @@ spec:
     metadata:
       labels:
         !!merge <<: *labels
-        eventing.knative.dev/release: "v20230110-d4184192c"
+        eventing.knative.dev/release: "v20230116-694f82436"
         app.kubernetes.io/component: pingsource-mt-adapter
-        app.kubernetes.io/version: "20230110-d4184192c"
+        app.kubernetes.io/version: "20230116-694f82436"
         app.kubernetes.io/name: knative-eventing
     spec:
       affinity:
@@ -989,7 +989,7 @@ spec:
       enableServiceLinks: false
       containers:
         - name: dispatcher
-          image: gcr.io/knative-nightly/knative.dev/eventing/cmd/mtping@sha256:a846fe0321a848ee4defa508f2b1a8963efb5ed341f0e17d117ca6d2ed8e155d
+          image: gcr.io/knative-nightly/knative.dev/eventing/cmd/mtping@sha256:29e0cf00f11d090497df3688c3cfac34e2883ff7d0acc906ee948c154ffad1bc
           env:
             - name: SYSTEM_NAMESPACE
               value: ''
@@ -1062,9 +1062,9 @@ metadata:
   name: eventing-webhook
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     app.kubernetes.io/component: eventing-webhook
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 spec:
   scaleTargetRef:
@@ -1088,9 +1088,9 @@ metadata:
   name: eventing-webhook
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     app.kubernetes.io/component: eventing-webhook
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 spec:
   minAvailable: 80%
@@ -1119,9 +1119,9 @@ metadata:
   name: eventing-webhook
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     app.kubernetes.io/component: eventing-webhook
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 spec:
   selector:
@@ -1132,9 +1132,9 @@ spec:
     metadata:
       labels:
         !!merge <<: *labels
-        eventing.knative.dev/release: "v20230110-d4184192c"
+        eventing.knative.dev/release: "v20230116-694f82436"
         app.kubernetes.io/component: eventing-webhook
-        app.kubernetes.io/version: "20230110-d4184192c"
+        app.kubernetes.io/version: "20230116-694f82436"
         app.kubernetes.io/name: knative-eventing
     spec:
       # To avoid node becoming SPOF, spread our replicas to different nodes.
@@ -1154,7 +1154,7 @@ spec:
           terminationMessagePolicy: FallbackToLogsOnError
           # This is the Go import path for the binary that is containerized
           # and substituted here.
-          image: gcr.io/knative-nightly/knative.dev/eventing/cmd/webhook@sha256:704bec11499814335688b932cda4ca8a8377cb7979309ccfe44774d342c19ac2
+          image: gcr.io/knative-nightly/knative.dev/eventing/cmd/webhook@sha256:b48d261b9de0d82f9854549caf86cb250313cb79f4633c2ff2a48b5026f7150a
           resources:
             requests:
               # taken from serving.
@@ -1225,10 +1225,10 @@ apiVersion: v1
 kind: Service
 metadata:
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     role: eventing-webhook
     app.kubernetes.io/component: eventing-webhook
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
   name: eventing-webhook
   namespace: knative-eventing
@@ -1260,11 +1260,11 @@ kind: CustomResourceDefinition
 metadata:
   creationTimestamp: null
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     eventing.knative.dev/source: "true"
     duck.knative.dev/source: "true"
     knative.dev/crd-install: "true"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
   annotations:
     # TODO add schemas and descriptions
@@ -1476,10 +1476,10 @@ kind: CustomResourceDefinition
 metadata:
   name: brokers.eventing.knative.dev
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     knative.dev/crd-install: "true"
     duck.knative.dev/addressable: "true"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 spec:
   group: eventing.knative.dev
@@ -1643,11 +1643,11 @@ kind: CustomResourceDefinition
 metadata:
   name: channels.messaging.knative.dev
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     knative.dev/crd-install: "true"
     messaging.knative.dev/subscribable: "true"
     duck.knative.dev/addressable: "true"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 spec:
   group: messaging.knative.dev
@@ -1918,11 +1918,11 @@ apiVersion: apiextensions.k8s.io/v1
 kind: CustomResourceDefinition
 metadata:
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     eventing.knative.dev/source: "true"
     duck.knative.dev/source: "true"
     knative.dev/crd-install: "true"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
   name: containersources.sources.knative.dev
 spec:
@@ -2072,9 +2072,9 @@ kind: CustomResourceDefinition
 metadata:
   name: eventtypes.eventing.knative.dev
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     knative.dev/crd-install: "true"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 spec:
   group: eventing.knative.dev
@@ -2201,10 +2201,10 @@ kind: CustomResourceDefinition
 metadata:
   name: parallels.flows.knative.dev
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     knative.dev/crd-install: "true"
     duck.knative.dev/addressable: "true"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 spec:
   group: flows.knative.dev
@@ -2456,11 +2456,11 @@ apiVersion: apiextensions.k8s.io/v1
 kind: CustomResourceDefinition
 metadata:
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     eventing.knative.dev/source: "true"
     duck.knative.dev/source: "true"
     knative.dev/crd-install: "true"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
   annotations:
     # TODO add schemas and descriptions
@@ -2647,10 +2647,10 @@ kind: CustomResourceDefinition
 metadata:
   name: sequences.flows.knative.dev
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     knative.dev/crd-install: "true"
     duck.knative.dev/addressable: "true"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 spec:
   group: flows.knative.dev
@@ -2967,12 +2967,12 @@ apiVersion: apiextensions.k8s.io/v1
 kind: CustomResourceDefinition
 metadata:
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     eventing.knative.dev/source: "true"
     duck.knative.dev/source: "true"
     duck.knative.dev/binding: "true"
     knative.dev/crd-install: "true"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
   name: sinkbindings.sources.knative.dev
 spec:
@@ -3159,9 +3159,9 @@ kind: CustomResourceDefinition
 metadata:
   name: subscriptions.messaging.knative.dev
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     knative.dev/crd-install: "true"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 spec:
   group: messaging.knative.dev
@@ -3371,9 +3371,9 @@ kind: CustomResourceDefinition
 metadata:
   name: triggers.eventing.knative.dev
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     knative.dev/crd-install: "true"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 spec:
   group: eventing.knative.dev
@@ -3557,8 +3557,8 @@ kind: ClusterRole
 metadata:
   name: addressable-resolver
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 aggregationRule:
   clusterRoleSelectors:
@@ -3571,9 +3571,9 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: service-addressable-resolver
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     duck.knative.dev/addressable: "true"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 # Do not use this role directly. These rules will be added to the "addressable-resolver" role.
 rules:
@@ -3591,9 +3591,9 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: serving-addressable-resolver
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     duck.knative.dev/addressable: "true"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 # Do not use this role directly. These rules will be added to the "addressable-resolver" role.
 rules:
@@ -3614,9 +3614,9 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: channel-addressable-resolver
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     duck.knative.dev/addressable: "true"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 # Do not use this role directly. These rules will be added to the "addressable-resolver" role.
 rules:
@@ -3641,9 +3641,9 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: broker-addressable-resolver
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     duck.knative.dev/addressable: "true"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 # Do not use this role directly. These rules will be added to the "addressable-resolver" role.
 rules:
@@ -3662,9 +3662,9 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: flows-addressable-resolver
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     duck.knative.dev/addressable: "true"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 # Do not use this role directly. These rules will be added to the "addressable-resolver" role.
 rules:
@@ -3700,8 +3700,8 @@ kind: ClusterRole
 metadata:
   name: eventing-broker-filter
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 rules:
   - apiGroups:
@@ -3727,8 +3727,8 @@ kind: ClusterRole
 metadata:
   name: eventing-broker-ingress
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 rules:
   - apiGroups:
@@ -3745,8 +3745,8 @@ kind: ClusterRole
 metadata:
   name: eventing-config-reader
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 rules:
   - apiGroups:
@@ -3779,8 +3779,8 @@ kind: ClusterRole
 metadata:
   name: channelable-manipulator
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 aggregationRule:
   clusterRoleSelectors:
@@ -3793,9 +3793,9 @@ kind: ClusterRole
 metadata:
   name: meta-channelable-manipulator
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     duck.knative.dev/channelable: "true"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 # Do not use this role directly. These rules will be added to the "channelable-manipulator" role.
 rules:
@@ -3833,9 +3833,9 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: knative-eventing-namespaced-admin
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     rbac.authorization.k8s.io/aggregate-to-admin: "true"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 rules:
   - apiGroups: ["eventing.knative.dev"]
@@ -3847,9 +3847,9 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: knative-messaging-namespaced-admin
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     rbac.authorization.k8s.io/aggregate-to-admin: "true"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 rules:
   - apiGroups: ["messaging.knative.dev"]
@@ -3861,9 +3861,9 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: knative-flows-namespaced-admin
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     rbac.authorization.k8s.io/aggregate-to-admin: "true"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 rules:
   - apiGroups: ["flows.knative.dev"]
@@ -3875,9 +3875,9 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: knative-sources-namespaced-admin
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     rbac.authorization.k8s.io/aggregate-to-admin: "true"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 rules:
   - apiGroups: ["sources.knative.dev"]
@@ -3889,9 +3889,9 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: knative-bindings-namespaced-admin
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     rbac.authorization.k8s.io/aggregate-to-admin: "true"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 rules:
   - apiGroups: ["bindings.knative.dev"]
@@ -3904,8 +3904,8 @@ metadata:
   name: knative-eventing-namespaced-edit
   labels:
     rbac.authorization.k8s.io/aggregate-to-edit: "true"
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 rules:
   - apiGroups: ["eventing.knative.dev", "messaging.knative.dev", "sources.knative.dev", "flows.knative.dev", "bindings.knative.dev"]
@@ -3918,8 +3918,8 @@ metadata:
   name: knative-eventing-namespaced-view
   labels:
     rbac.authorization.k8s.io/aggregate-to-view: "true"
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 rules:
   - apiGroups: ["eventing.knative.dev", "messaging.knative.dev", "sources.knative.dev", "flows.knative.dev", "bindings.knative.dev"]
@@ -3946,8 +3946,8 @@ kind: ClusterRole
 metadata:
   name: knative-eventing-controller
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 rules:
   - apiGroups:
@@ -4082,8 +4082,8 @@ kind: ClusterRole
 metadata:
   name: knative-eventing-pingsource-mt-adapter
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 rules:
   - apiGroups:
@@ -4150,8 +4150,8 @@ kind: ClusterRole
 metadata:
   name: podspecable-binding
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 aggregationRule:
   clusterRoleSelectors:
@@ -4164,9 +4164,9 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: builtin-podspecable-binding
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     duck.knative.dev/podspecable: "true"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 # Do not use this role directly. These rules will be added to the "podspecable-binding role.
 rules:
@@ -4212,8 +4212,8 @@ kind: ClusterRole
 metadata:
   name: source-observer
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 aggregationRule:
   clusterRoleSelectors:
@@ -4226,9 +4226,9 @@ apiVersion: rbac.authorization.k8s.io/v1
 metadata:
   name: eventing-sources-source-observer
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     duck.knative.dev/source: "true"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 # Do not use this role directly. These rules will be added to the "source-observer" role.
 rules:
@@ -4264,8 +4264,8 @@ kind: ClusterRole
 metadata:
   name: knative-eventing-sources-controller
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 rules:
   - apiGroups:
@@ -4351,8 +4351,8 @@ kind: ClusterRole
 metadata:
   name: knative-eventing-webhook
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 rules:
   # For watching logging configuration and getting certs.
@@ -4462,8 +4462,8 @@ metadata:
   namespace: knative-eventing
   name: knative-eventing-webhook
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 rules:
   # For manipulating certs into secrets.
@@ -4499,8 +4499,8 @@ kind: ValidatingWebhookConfiguration
 metadata:
   name: config.webhook.eventing.knative.dev
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 webhooks:
   - admissionReviewVersions: ["v1", "v1beta1"]
@@ -4537,8 +4537,8 @@ kind: MutatingWebhookConfiguration
 metadata:
   name: webhook.eventing.knative.dev
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 webhooks:
   - admissionReviewVersions: ["v1", "v1beta1"]
@@ -4571,8 +4571,8 @@ kind: ValidatingWebhookConfiguration
 metadata:
   name: validation.webhook.eventing.knative.dev
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 webhooks:
   - admissionReviewVersions: ["v1", "v1beta1"]
@@ -4606,8 +4606,8 @@ metadata:
   name: eventing-webhook-certs
   namespace: knative-eventing
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 # The data is populated at install time.
 
@@ -4631,8 +4631,8 @@ kind: MutatingWebhookConfiguration
 metadata:
   name: sinkbindings.webhook.sources.knative.dev
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 webhooks:
   - admissionReviewVersions: ["v1", "v1beta1"]
diff --git a/third_party/eventing-latest/eventing-crds.yaml b/third_party/eventing-latest/eventing-crds.yaml
index 1f60d1af7..5c9f7e686 100644
--- a/third_party/eventing-latest/eventing-crds.yaml
+++ b/third_party/eventing-latest/eventing-crds.yaml
@@ -17,11 +17,11 @@ kind: CustomResourceDefinition
 metadata:
   creationTimestamp: null
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     eventing.knative.dev/source: "true"
     duck.knative.dev/source: "true"
     knative.dev/crd-install: "true"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
   annotations:
     # TODO add schemas and descriptions
@@ -233,10 +233,10 @@ kind: CustomResourceDefinition
 metadata:
   name: brokers.eventing.knative.dev
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     knative.dev/crd-install: "true"
     duck.knative.dev/addressable: "true"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 spec:
   group: eventing.knative.dev
@@ -400,11 +400,11 @@ kind: CustomResourceDefinition
 metadata:
   name: channels.messaging.knative.dev
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     knative.dev/crd-install: "true"
     messaging.knative.dev/subscribable: "true"
     duck.knative.dev/addressable: "true"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 spec:
   group: messaging.knative.dev
@@ -675,11 +675,11 @@ apiVersion: apiextensions.k8s.io/v1
 kind: CustomResourceDefinition
 metadata:
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     eventing.knative.dev/source: "true"
     duck.knative.dev/source: "true"
     knative.dev/crd-install: "true"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
   name: containersources.sources.knative.dev
 spec:
@@ -829,9 +829,9 @@ kind: CustomResourceDefinition
 metadata:
   name: eventtypes.eventing.knative.dev
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     knative.dev/crd-install: "true"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 spec:
   group: eventing.knative.dev
@@ -958,10 +958,10 @@ kind: CustomResourceDefinition
 metadata:
   name: parallels.flows.knative.dev
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     knative.dev/crd-install: "true"
     duck.knative.dev/addressable: "true"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 spec:
   group: flows.knative.dev
@@ -1213,11 +1213,11 @@ apiVersion: apiextensions.k8s.io/v1
 kind: CustomResourceDefinition
 metadata:
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     eventing.knative.dev/source: "true"
     duck.knative.dev/source: "true"
     knative.dev/crd-install: "true"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
   annotations:
     # TODO add schemas and descriptions
@@ -1404,10 +1404,10 @@ kind: CustomResourceDefinition
 metadata:
   name: sequences.flows.knative.dev
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     knative.dev/crd-install: "true"
     duck.knative.dev/addressable: "true"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 spec:
   group: flows.knative.dev
@@ -1724,12 +1724,12 @@ apiVersion: apiextensions.k8s.io/v1
 kind: CustomResourceDefinition
 metadata:
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     eventing.knative.dev/source: "true"
     duck.knative.dev/source: "true"
     duck.knative.dev/binding: "true"
     knative.dev/crd-install: "true"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
   name: sinkbindings.sources.knative.dev
 spec:
@@ -1916,9 +1916,9 @@ kind: CustomResourceDefinition
 metadata:
   name: subscriptions.messaging.knative.dev
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     knative.dev/crd-install: "true"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 spec:
   group: messaging.knative.dev
@@ -2128,9 +2128,9 @@ kind: CustomResourceDefinition
 metadata:
   name: triggers.eventing.knative.dev
   labels:
-    eventing.knative.dev/release: "v20230110-d4184192c"
+    eventing.knative.dev/release: "v20230116-694f82436"
     knative.dev/crd-install: "true"
-    app.kubernetes.io/version: "20230110-d4184192c"
+    app.kubernetes.io/version: "20230116-694f82436"
     app.kubernetes.io/name: knative-eventing
 spec:
   group: eventing.knative.dev