Repository: knative-sandbox/eventing-kafka-broker
Pull request #3041 (2023-04-14 13:58:29)

Update deps
## Proposed Changes

- as per title, but let's see.

Part of the _actual_ fix was, remove dependencies, that have been deleted or moved:
```
go: finding module for package knative.dev/eventing/test/rekt/resources/svc
go: finding module for package knative.dev/eventing/test/test_images/heartbeats
go: found knative.dev/eventing/test/test_images/heartbeats in knative.dev/eventing v0.36.7
go: found knative.dev/eventing/test/rekt/resources/svc in knative.dev/eventing v0.36.7
```

Change for that was in:
* [hack/tools.go](https://github.com/knative-sandbox/eventing-kafka-broker/pull/3041/files#diff-c70c0ccc1e4ba2d6da1d6c59877e3600c6771f133dec670df485e23fde6cb795)
* [test/e2e_new_channel/tracing_test.go](https://github.com/knative-sandbox/eventing-kafka-broker/pull/3041/files#diff-2d66718964aa141e3cd7bb2916be23d2fc8ba3e563fe8d2ff44dfeb537d1ede7)

<!--
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/3041#" 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]: [APPROVALNOTIFIER] This PR is **APPROVED**

This pull-request has been approved by: *<a href="https://github.com/knative-sandbox/eventing-kafka-broker/pull/3041#" title="Author self-approved">matzew</a>*, *<a href="https://github.com/knative-sandbox/eventing-kafka-broker/pull/3041#pullrequestreview-1385519283" title="Approved">pierDipi</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,pierDipi]

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":[]} -->
codecov[bot]: ## [Codecov](https://codecov.io/gh/knative-sandbox/eventing-kafka-broker/pull/3041?src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=knative-sandbox) Report
> Merging [#3041](https://codecov.io/gh/knative-sandbox/eventing-kafka-broker/pull/3041?src=pr&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=knative-sandbox) (4db5d54) into [main](https://codecov.io/gh/knative-sandbox/eventing-kafka-broker/commit/920b29a64967ce66673ddac2eb56a903c3236cdb?el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=knative-sandbox) (920b29a) will **decrease** coverage by `22.17%`.
> The diff coverage is `n/a`.

```diff
@@              Coverage Diff              @@
##               main    #3041       +/-   ##
=============================================
- Coverage     81.10%   58.93%   -22.17%     
=============================================
  Files            77       79        +2     
  Lines          2625     8409     +5784     
  Branches        232        0      -232     
=============================================
+ Hits           2129     4956     +2827     
- Misses          361     3076     +2715     
- Partials        135      377      +242     
```

| 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.

[see 156 files with indirect coverage changes](https://codecov.io/gh/knative-sandbox/eventing-kafka-broker/pull/3041/indirect-changes?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 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-reconciler-tests-sasl-plain_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-sasl-plain_eventing-kafka-broker_main/1646875584459968512) | true | `/test channel-reconciler-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 -->
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
--- | --- | --- | --- | ---
channel-reconciler-tests-sasl-plain_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-sasl-plain_eventing-kafka-broker_main/1646875584459968512) | true | `/test channel-reconciler-tests-sasl-plain`
integration-tests_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/integration-tests_eventing-kafka-broker_main/1646875582929047552) | true | `/test integration-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 -->
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
--- | --- | --- | --- | ---
channel-reconciler-tests-sasl-plain_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-sasl-plain_eventing-kafka-broker_main/1646875584459968512) | true | `/test channel-reconciler-tests-sasl-plain`
integration-tests_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/integration-tests_eventing-kafka-broker_main/1646875582929047552) | true | `/test integration-tests`
reconciler-tests_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/reconciler-tests_eventing-kafka-broker_main/1646875583042293760) | true | `/test reconciler-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 -->
pierDipi: /retest
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
--- | --- | --- | --- | ---
channel-reconciler-tests-sasl-plain_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-sasl-plain_eventing-kafka-broker_main/1646875584459968512) | true | `/test channel-reconciler-tests-sasl-plain`
integration-tests_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/integration-tests_eventing-kafka-broker_main/1646875582929047552) | true | `/test integration-tests`
reconciler-tests_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/reconciler-tests_eventing-kafka-broker_main/1646875583042293760) | true | `/test reconciler-tests`
reconciler-tests-namespaced-broker_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/reconciler-tests-namespaced-broker_eventing-kafka-broker_main/1646875583096819712) | true | `/test reconciler-tests-namespaced-broker`

[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 -->
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
--- | --- | --- | --- | ---
channel-reconciler-tests-sasl-plain_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-sasl-plain_eventing-kafka-broker_main/1646875584459968512) | true | `/test channel-reconciler-tests-sasl-plain`
integration-tests_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/integration-tests_eventing-kafka-broker_main/1646875582929047552) | true | `/test integration-tests`
reconciler-tests_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/reconciler-tests_eventing-kafka-broker_main/1646875583042293760) | true | `/test reconciler-tests`
reconciler-tests-namespaced-broker_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/reconciler-tests-namespaced-broker_eventing-kafka-broker_main/1646875583096819712) | true | `/test reconciler-tests-namespaced-broker`
channel-reconciler-tests-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-ssl_eventing-kafka-broker_main/1646875583390420992) | true | `/test channel-reconciler-tests-ssl`

[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 -->
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
--- | --- | --- | --- | ---
channel-reconciler-tests-sasl-plain_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-sasl-plain_eventing-kafka-broker_main/1646875584459968512) | true | `/test channel-reconciler-tests-sasl-plain`
integration-tests_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/integration-tests_eventing-kafka-broker_main/1646875582929047552) | true | `/test integration-tests`
reconciler-tests_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/reconciler-tests_eventing-kafka-broker_main/1646875583042293760) | true | `/test reconciler-tests`
reconciler-tests-namespaced-broker_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/reconciler-tests-namespaced-broker_eventing-kafka-broker_main/1646875583096819712) | true | `/test reconciler-tests-namespaced-broker`
channel-reconciler-tests-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-ssl_eventing-kafka-broker_main/1646875583390420992) | true | `/test channel-reconciler-tests-ssl`
channel-integration-tests-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-integration-tests-ssl_eventing-kafka-broker_main/1646875583172317184) | true | `/test channel-integration-tests-ssl`

[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 -->
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
--- | --- | --- | --- | ---
channel-reconciler-tests-sasl-plain_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-sasl-plain_eventing-kafka-broker_main/1646875584459968512) | true | `/test channel-reconciler-tests-sasl-plain`
integration-tests_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/integration-tests_eventing-kafka-broker_main/1646875582929047552) | true | `/test integration-tests`
reconciler-tests_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/reconciler-tests_eventing-kafka-broker_main/1646875583042293760) | true | `/test reconciler-tests`
reconciler-tests-namespaced-broker_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/reconciler-tests-namespaced-broker_eventing-kafka-broker_main/1646875583096819712) | true | `/test reconciler-tests-namespaced-broker`
channel-reconciler-tests-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-ssl_eventing-kafka-broker_main/1646875583390420992) | true | `/test channel-reconciler-tests-ssl`
channel-integration-tests-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-integration-tests-ssl_eventing-kafka-broker_main/1646875583172317184) | true | `/test channel-integration-tests-ssl`
channel-integration-tests-sasl-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-integration-tests-sasl-ssl_eventing-kafka-broker_main/1646875583235231744) | true | `/test channel-integration-tests-sasl-ssl`
channel-reconciler-tests-sasl-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-sasl-ssl_eventing-kafka-broker_main/1646875583646273536) | true | `/test channel-reconciler-tests-sasl-ssl`

[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 -->
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
--- | --- | --- | --- | ---
channel-reconciler-tests-sasl-plain_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-sasl-plain_eventing-kafka-broker_main/1646875584459968512) | true | `/test channel-reconciler-tests-sasl-plain`
integration-tests_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/integration-tests_eventing-kafka-broker_main/1646875582929047552) | true | `/test integration-tests`
reconciler-tests_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/reconciler-tests_eventing-kafka-broker_main/1646875583042293760) | true | `/test reconciler-tests`
reconciler-tests-namespaced-broker_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/reconciler-tests-namespaced-broker_eventing-kafka-broker_main/1646875583096819712) | true | `/test reconciler-tests-namespaced-broker`
channel-reconciler-tests-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-ssl_eventing-kafka-broker_main/1646875583390420992) | true | `/test channel-reconciler-tests-ssl`
channel-integration-tests-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-integration-tests-ssl_eventing-kafka-broker_main/1646875583172317184) | true | `/test channel-integration-tests-ssl`
channel-integration-tests-sasl-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-integration-tests-sasl-ssl_eventing-kafka-broker_main/1646875583235231744) | true | `/test channel-integration-tests-sasl-ssl`
channel-reconciler-tests-sasl-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-sasl-ssl_eventing-kafka-broker_main/1646875583646273536) | true | `/test channel-reconciler-tests-sasl-ssl`
channel-integration-tests-sasl-plain_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-integration-tests-sasl-plain_eventing-kafka-broker_main/1646875583293952000) | 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: /retest

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
--- | --- | --- | --- | ---
channel-reconciler-tests-sasl-plain_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-sasl-plain_eventing-kafka-broker_main/1646875584459968512) | true | `/test channel-reconciler-tests-sasl-plain`
integration-tests_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/integration-tests_eventing-kafka-broker_main/1646875582929047552) | true | `/test integration-tests`
reconciler-tests-namespaced-broker_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/reconciler-tests-namespaced-broker_eventing-kafka-broker_main/1646875583096819712) | true | `/test reconciler-tests-namespaced-broker`
channel-reconciler-tests-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-ssl_eventing-kafka-broker_main/1646875583390420992) | true | `/test channel-reconciler-tests-ssl`
channel-integration-tests-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-integration-tests-ssl_eventing-kafka-broker_main/1646875583172317184) | true | `/test channel-integration-tests-ssl`
channel-integration-tests-sasl-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-integration-tests-sasl-ssl_eventing-kafka-broker_main/1646875583235231744) | true | `/test channel-integration-tests-sasl-ssl`
channel-reconciler-tests-sasl-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-sasl-ssl_eventing-kafka-broker_main/1646875583646273536) | true | `/test channel-reconciler-tests-sasl-ssl`
channel-integration-tests-sasl-plain_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-integration-tests-sasl-plain_eventing-kafka-broker_main/1646875583293952000) | true | `/test channel-integration-tests-sasl-plain`
reconciler-tests_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/reconciler-tests_eventing-kafka-broker_main/1646881174942912512) | true | `/test reconciler-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 -->
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
--- | --- | --- | --- | ---
integration-tests_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/integration-tests_eventing-kafka-broker_main/1646875582929047552) | true | `/test integration-tests`
reconciler-tests-namespaced-broker_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/reconciler-tests-namespaced-broker_eventing-kafka-broker_main/1646875583096819712) | true | `/test reconciler-tests-namespaced-broker`
channel-reconciler-tests-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-ssl_eventing-kafka-broker_main/1646875583390420992) | true | `/test channel-reconciler-tests-ssl`
channel-integration-tests-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-integration-tests-ssl_eventing-kafka-broker_main/1646875583172317184) | true | `/test channel-integration-tests-ssl`
channel-integration-tests-sasl-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-integration-tests-sasl-ssl_eventing-kafka-broker_main/1646875583235231744) | true | `/test channel-integration-tests-sasl-ssl`
channel-reconciler-tests-sasl-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-sasl-ssl_eventing-kafka-broker_main/1646875583646273536) | true | `/test channel-reconciler-tests-sasl-ssl`
channel-integration-tests-sasl-plain_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-integration-tests-sasl-plain_eventing-kafka-broker_main/1646875583293952000) | true | `/test channel-integration-tests-sasl-plain`
reconciler-tests_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/reconciler-tests_eventing-kafka-broker_main/1646881174942912512) | true | `/test reconciler-tests`
channel-reconciler-tests-sasl-plain_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-sasl-plain_eventing-kafka-broker_main/1646881174997438464) | true | `/test channel-reconciler-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 -->
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
--- | --- | --- | --- | ---
reconciler-tests-namespaced-broker_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/reconciler-tests-namespaced-broker_eventing-kafka-broker_main/1646875583096819712) | true | `/test reconciler-tests-namespaced-broker`
channel-reconciler-tests-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-ssl_eventing-kafka-broker_main/1646875583390420992) | true | `/test channel-reconciler-tests-ssl`
channel-integration-tests-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-integration-tests-ssl_eventing-kafka-broker_main/1646875583172317184) | true | `/test channel-integration-tests-ssl`
channel-integration-tests-sasl-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-integration-tests-sasl-ssl_eventing-kafka-broker_main/1646875583235231744) | true | `/test channel-integration-tests-sasl-ssl`
channel-reconciler-tests-sasl-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-sasl-ssl_eventing-kafka-broker_main/1646875583646273536) | true | `/test channel-reconciler-tests-sasl-ssl`
channel-integration-tests-sasl-plain_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-integration-tests-sasl-plain_eventing-kafka-broker_main/1646875583293952000) | true | `/test channel-integration-tests-sasl-plain`
reconciler-tests_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/reconciler-tests_eventing-kafka-broker_main/1646881174942912512) | true | `/test reconciler-tests`
channel-reconciler-tests-sasl-plain_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-sasl-plain_eventing-kafka-broker_main/1646881174997438464) | true | `/test channel-reconciler-tests-sasl-plain`
integration-tests_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/integration-tests_eventing-kafka-broker_main/1646881174888386560) | true | `/test integration-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 -->
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
--- | --- | --- | --- | ---
reconciler-tests-namespaced-broker_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/reconciler-tests-namespaced-broker_eventing-kafka-broker_main/1646875583096819712) | true | `/test reconciler-tests-namespaced-broker`
channel-integration-tests-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-integration-tests-ssl_eventing-kafka-broker_main/1646875583172317184) | true | `/test channel-integration-tests-ssl`
channel-integration-tests-sasl-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-integration-tests-sasl-ssl_eventing-kafka-broker_main/1646875583235231744) | true | `/test channel-integration-tests-sasl-ssl`
channel-reconciler-tests-sasl-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-sasl-ssl_eventing-kafka-broker_main/1646875583646273536) | true | `/test channel-reconciler-tests-sasl-ssl`
channel-integration-tests-sasl-plain_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-integration-tests-sasl-plain_eventing-kafka-broker_main/1646875583293952000) | true | `/test channel-integration-tests-sasl-plain`
reconciler-tests_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/reconciler-tests_eventing-kafka-broker_main/1646881174942912512) | true | `/test reconciler-tests`
channel-reconciler-tests-sasl-plain_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-sasl-plain_eventing-kafka-broker_main/1646881174997438464) | true | `/test channel-reconciler-tests-sasl-plain`
integration-tests_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/integration-tests_eventing-kafka-broker_main/1646881174888386560) | true | `/test integration-tests`
channel-reconciler-tests-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-ssl_eventing-kafka-broker_main/1646881752649568256) | true | `/test channel-reconciler-tests-ssl`

[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 -->
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
--- | --- | --- | --- | ---
reconciler-tests-namespaced-broker_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/reconciler-tests-namespaced-broker_eventing-kafka-broker_main/1646875583096819712) | true | `/test reconciler-tests-namespaced-broker`
channel-integration-tests-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-integration-tests-ssl_eventing-kafka-broker_main/1646875583172317184) | true | `/test channel-integration-tests-ssl`
channel-integration-tests-sasl-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-integration-tests-sasl-ssl_eventing-kafka-broker_main/1646875583235231744) | true | `/test channel-integration-tests-sasl-ssl`
channel-integration-tests-sasl-plain_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-integration-tests-sasl-plain_eventing-kafka-broker_main/1646875583293952000) | true | `/test channel-integration-tests-sasl-plain`
reconciler-tests_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/reconciler-tests_eventing-kafka-broker_main/1646881174942912512) | true | `/test reconciler-tests`
channel-reconciler-tests-sasl-plain_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-sasl-plain_eventing-kafka-broker_main/1646881174997438464) | true | `/test channel-reconciler-tests-sasl-plain`
integration-tests_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/integration-tests_eventing-kafka-broker_main/1646881174888386560) | true | `/test integration-tests`
channel-reconciler-tests-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-ssl_eventing-kafka-broker_main/1646881752649568256) | true | `/test channel-reconciler-tests-ssl`
channel-reconciler-tests-sasl-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-sasl-ssl_eventing-kafka-broker_main/1646881752750231552) | true | `/test channel-reconciler-tests-sasl-ssl`

[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 -->
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
--- | --- | --- | --- | ---
reconciler-tests-namespaced-broker_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/reconciler-tests-namespaced-broker_eventing-kafka-broker_main/1646875583096819712) | true | `/test reconciler-tests-namespaced-broker`
channel-integration-tests-sasl-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-integration-tests-sasl-ssl_eventing-kafka-broker_main/1646875583235231744) | true | `/test channel-integration-tests-sasl-ssl`
channel-integration-tests-sasl-plain_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-integration-tests-sasl-plain_eventing-kafka-broker_main/1646875583293952000) | true | `/test channel-integration-tests-sasl-plain`
reconciler-tests_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/reconciler-tests_eventing-kafka-broker_main/1646881174942912512) | true | `/test reconciler-tests`
channel-reconciler-tests-sasl-plain_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-sasl-plain_eventing-kafka-broker_main/1646881174997438464) | true | `/test channel-reconciler-tests-sasl-plain`
integration-tests_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/integration-tests_eventing-kafka-broker_main/1646881174888386560) | true | `/test integration-tests`
channel-reconciler-tests-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-ssl_eventing-kafka-broker_main/1646881752649568256) | true | `/test channel-reconciler-tests-ssl`
channel-reconciler-tests-sasl-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-sasl-ssl_eventing-kafka-broker_main/1646881752750231552) | true | `/test channel-reconciler-tests-sasl-ssl`
channel-integration-tests-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-integration-tests-ssl_eventing-kafka-broker_main/1646881752326606848) | true | `/test channel-integration-tests-ssl`

[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 -->
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
--- | --- | --- | --- | ---
reconciler-tests-namespaced-broker_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/reconciler-tests-namespaced-broker_eventing-kafka-broker_main/1646875583096819712) | true | `/test reconciler-tests-namespaced-broker`
channel-integration-tests-sasl-plain_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-integration-tests-sasl-plain_eventing-kafka-broker_main/1646875583293952000) | true | `/test channel-integration-tests-sasl-plain`
reconciler-tests_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/reconciler-tests_eventing-kafka-broker_main/1646881174942912512) | true | `/test reconciler-tests`
channel-reconciler-tests-sasl-plain_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-sasl-plain_eventing-kafka-broker_main/1646881174997438464) | true | `/test channel-reconciler-tests-sasl-plain`
integration-tests_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/integration-tests_eventing-kafka-broker_main/1646881174888386560) | true | `/test integration-tests`
channel-reconciler-tests-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-ssl_eventing-kafka-broker_main/1646881752649568256) | true | `/test channel-reconciler-tests-ssl`
channel-reconciler-tests-sasl-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-sasl-ssl_eventing-kafka-broker_main/1646881752750231552) | true | `/test channel-reconciler-tests-sasl-ssl`
channel-integration-tests-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-integration-tests-ssl_eventing-kafka-broker_main/1646881752326606848) | true | `/test channel-integration-tests-ssl`
channel-integration-tests-sasl-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-integration-tests-sasl-ssl_eventing-kafka-broker_main/1646881752452435968) | true | `/test channel-integration-tests-sasl-ssl`

[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 -->
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
--- | --- | --- | --- | ---
channel-integration-tests-sasl-plain_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-integration-tests-sasl-plain_eventing-kafka-broker_main/1646875583293952000) | true | `/test channel-integration-tests-sasl-plain`
reconciler-tests_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/reconciler-tests_eventing-kafka-broker_main/1646881174942912512) | true | `/test reconciler-tests`
channel-reconciler-tests-sasl-plain_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-sasl-plain_eventing-kafka-broker_main/1646881174997438464) | true | `/test channel-reconciler-tests-sasl-plain`
integration-tests_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/integration-tests_eventing-kafka-broker_main/1646881174888386560) | true | `/test integration-tests`
channel-reconciler-tests-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-ssl_eventing-kafka-broker_main/1646881752649568256) | true | `/test channel-reconciler-tests-ssl`
channel-reconciler-tests-sasl-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-sasl-ssl_eventing-kafka-broker_main/1646881752750231552) | true | `/test channel-reconciler-tests-sasl-ssl`
channel-integration-tests-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-integration-tests-ssl_eventing-kafka-broker_main/1646881752326606848) | true | `/test channel-integration-tests-ssl`
channel-integration-tests-sasl-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-integration-tests-sasl-ssl_eventing-kafka-broker_main/1646881752452435968) | true | `/test channel-integration-tests-sasl-ssl`
reconciler-tests-namespaced-broker_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/reconciler-tests-namespaced-broker_eventing-kafka-broker_main/1646881752204972032) | true | `/test reconciler-tests-namespaced-broker`

[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 -->
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
--- | --- | --- | --- | ---
reconciler-tests_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/reconciler-tests_eventing-kafka-broker_main/1646881174942912512) | true | `/test reconciler-tests`
channel-reconciler-tests-sasl-plain_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-sasl-plain_eventing-kafka-broker_main/1646881174997438464) | true | `/test channel-reconciler-tests-sasl-plain`
integration-tests_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/integration-tests_eventing-kafka-broker_main/1646881174888386560) | true | `/test integration-tests`
channel-reconciler-tests-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-ssl_eventing-kafka-broker_main/1646881752649568256) | true | `/test channel-reconciler-tests-ssl`
channel-reconciler-tests-sasl-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-reconciler-tests-sasl-ssl_eventing-kafka-broker_main/1646881752750231552) | true | `/test channel-reconciler-tests-sasl-ssl`
channel-integration-tests-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-integration-tests-ssl_eventing-kafka-broker_main/1646881752326606848) | true | `/test channel-integration-tests-ssl`
channel-integration-tests-sasl-ssl_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-integration-tests-sasl-ssl_eventing-kafka-broker_main/1646881752452435968) | true | `/test channel-integration-tests-sasl-ssl`
reconciler-tests-namespaced-broker_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/reconciler-tests-namespaced-broker_eventing-kafka-broker_main/1646881752204972032) | true | `/test reconciler-tests-namespaced-broker`
channel-integration-tests-sasl-plain_eventing-kafka-broker_main | 4db5d544989f7aefb828113fedc7d59e4568d4b1 | [link](https://prow.knative.dev/view/gs/knative-prow/pr-logs/pull/knative-sandbox_eventing-kafka-broker/3041/channel-integration-tests-sasl-plain_eventing-kafka-broker_main/1646881752586653696) | 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: Locally, with this branch/pr, I see:

 ```
Events:
  Type     Reason       Age                  From               Message
  ----     ------       ----                 ----               -------
  Normal   Scheduled    3m41s                default-scheduler  Successfully assigned knative-eventing/kafka-source-dispatcher-0 to kind-control-plane
  Warning  FailedMount  98s                  kubelet            Unable to attach or mount volumes: unmounted volumes=[contract-resources], unattached volumes=[config-tracing kube-api-access-rj52h config-kafka-source-data-plane contract-resources cache kafka-config-logging]: timed out waiting for the condition
  Warning  FailedMount  94s (x9 over 3m41s)  kubelet            MountVolume.SetUp failed for volume "contract-resources" : configmap "kafka-source-dispatcher-0" not found
```



Patch:
diff --git a/control-plane/pkg/reconciler/channel/resources/service.go b/control-plane/pkg/reconciler/channel/resources/service.go
index 750957c8f..6b9d1410e 100644
--- a/control-plane/pkg/reconciler/channel/resources/service.go
+++ b/control-plane/pkg/reconciler/channel/resources/service.go
@@ -53,11 +53,8 @@ func MakeChannelServiceName(name string) string {
 // pointing to the specified service in a namespace.
 func ExternalService(namespace, service string) ServiceOption {
 	return func(svc *corev1.Service) error {
-		// TODO this overrides the current serviceSpec. Is this correct?
-		svc.Spec = corev1.ServiceSpec{
-			Type:         corev1.ServiceTypeExternalName,
-			ExternalName: network.GetServiceHostname(service, namespace),
-		}
+		svc.Spec.Type = corev1.ServiceTypeExternalName
+		svc.Spec.ExternalName = network.GetServiceHostname(service, namespace)
 		return nil
 	}
 }
diff --git a/control-plane/pkg/reconciler/consumergroup/controller.go b/control-plane/pkg/reconciler/consumergroup/controller.go
index 935dd13cc..d4df70feb 100644
--- a/control-plane/pkg/reconciler/consumergroup/controller.go
+++ b/control-plane/pkg/reconciler/consumergroup/controller.go
@@ -44,6 +44,7 @@ import (
 	"knative.dev/pkg/configmap"
 	"knative.dev/pkg/controller"
 	"knative.dev/pkg/logging"
+	"knative.dev/pkg/reconciler"
 	"knative.dev/pkg/system"
 
 	statefulsetscheduler "knative.dev/eventing/pkg/scheduler/statefulset"
@@ -131,7 +132,24 @@ func NewController(ctx context.Context, watcher configmap.Watcher) *controller.I
 
 	consumerGroupInformer := consumergroup.Get(ctx)
 
-	impl := cgreconciler.NewImpl(ctx, r)
+	impl := cgreconciler.NewImpl(ctx, r, func(impl *controller.Impl) controller.Options {
+		return controller.Options{
+			PromoteFunc: func(bkt reconciler.Bucket) {
+				for _, value := range schedulers {
+					if ss, ok := value.Scheduler.(*statefulsetscheduler.StatefulSetScheduler); ok {
+						ss.Promote(bkt, nil)
+					}
+				}
+			},
+			DemoteFunc: func(bkt reconciler.Bucket) {
+				for _, value := range schedulers {
+					if ss, ok := value.Scheduler.(*statefulsetscheduler.StatefulSetScheduler); ok {
+						ss.Demote(bkt)
+					}
+				}
+			},
+		}
+	})
 
 	configStore := config.NewStore(ctx, func(name string, value *config.KafkaFeatureFlags) {
 		r.KafkaFeatureFlags.Reset(value)
diff --git a/go.mod b/go.mod
index bef50e9e0..f018d090b 100644
--- a/go.mod
+++ b/go.mod
@@ -39,10 +39,10 @@ require (
 	github.com/davecgh/go-spew v1.1.1
 	github.com/google/gofuzz v1.2.0
 	github.com/kedacore/keda/v2 v2.8.1
-	knative.dev/eventing v0.36.1-0.20230309084530-05f6d84ad43c
-	knative.dev/hack v0.0.0-20230228173453-3de51aff69a3
-	knative.dev/pkg v0.0.0-20230309013522-c5dd1d1264ba
-	knative.dev/reconciler-test v0.0.0-20230307080119-d52257e4e606
+	knative.dev/eventing v0.36.1-0.20230418085055-cc3d254d555c
+	knative.dev/hack v0.0.0-20230417170854-f591fea109b3
+	knative.dev/pkg v0.0.0-20230418073056-dfad48eaa5d0
+	knative.dev/reconciler-test v0.0.0-20230418082056-9fbd79e5dbe1
 	sigs.k8s.io/controller-runtime v0.12.3
 )
 
diff --git a/go.sum b/go.sum
index fc3c6d9c8..0977ec4a1 100644
--- a/go.sum
+++ b/go.sum
@@ -1518,14 +1518,14 @@ k8s.io/utils v0.0.0-20200912215256-4140de9c8800/go.mod h1:jPW/WVKK9YHAvNhRxK0md/
 k8s.io/utils v0.0.0-20210819203725-bdf08cb9a70a/go.mod h1:jPW/WVKK9YHAvNhRxK0md/EJ228hCsBRufyofKtW8HA=
 k8s.io/utils v0.0.0-20221108210102-8e77b1f39fe2 h1:GfD9OzL11kvZN5iArC6oTS7RTj7oJOIfnislxYlqTj8=
 k8s.io/utils v0.0.0-20221108210102-8e77b1f39fe2/go.mod h1:OLgZIPagt7ERELqWJFomSt595RzquPNLL48iOWgYOg0=
-knative.dev/eventing v0.36.1-0.20230309084530-05f6d84ad43c h1:idpDTj8ipzWAy7kDZSq3uk4taQoOAAWJGKt84ScmqhE=
-knative.dev/eventing v0.36.1-0.20230309084530-05f6d84ad43c/go.mod h1:8mo69M3WWCQWNyWb2G+g2Jyeh8eDOiQud4Xd8jLr57Q=
-knative.dev/hack v0.0.0-20230228173453-3de51aff69a3 h1:Jt3n+AZsZHZaFhk/A1NnboAvgjV+hvvyeyyuIX/hUx0=
-knative.dev/hack v0.0.0-20230228173453-3de51aff69a3/go.mod h1:yk2OjGDsbEnQjfxdm0/HJKS2WqTLEFg/N6nUs6Rqx3Q=
-knative.dev/pkg v0.0.0-20230309013522-c5dd1d1264ba h1:THY9ox1maZNYcmvYBJ3hhtjqHp9Ci0fDsF1t+GIoiOo=
-knative.dev/pkg v0.0.0-20230309013522-c5dd1d1264ba/go.mod h1:S+KfTInuwEkZSTwvWqrWZV/TEw6ps51GUGaSC1Fnbe0=
-knative.dev/reconciler-test v0.0.0-20230307080119-d52257e4e606 h1:gJY32/uUublG1WSFH0QDstxE3aEQiU61JLr+t0uLp5c=
-knative.dev/reconciler-test v0.0.0-20230307080119-d52257e4e606/go.mod h1:2472v1Zg0stETnG6t2qpnyiJadgOJHb2iLaAgiOHa68=
+knative.dev/eventing v0.36.1-0.20230418085055-cc3d254d555c h1:9XRvapQa0EA2Gu92v3JMsW0eiF2ZTEBPx5wvBCDKcHw=
+knative.dev/eventing v0.36.1-0.20230418085055-cc3d254d555c/go.mod h1:LxPAmS/FakpbFZvC4kkBuV6QSL5EyhwQYV62XLQQaQw=
+knative.dev/hack v0.0.0-20230417170854-f591fea109b3 h1:+W4WBOq83tfGXKhtv8OB/uJeYqze3zh69GKiz1ucuqk=
+knative.dev/hack v0.0.0-20230417170854-f591fea109b3/go.mod h1:yk2OjGDsbEnQjfxdm0/HJKS2WqTLEFg/N6nUs6Rqx3Q=
+knative.dev/pkg v0.0.0-20230418073056-dfad48eaa5d0 h1:EFQcoUo8I4bc+U3y6tR1B3ONYZSHWUdAfI7Vh7dae8g=
+knative.dev/pkg v0.0.0-20230418073056-dfad48eaa5d0/go.mod h1:2qWPP9Gjh9Q7ETti+WRHnBnGCSCq+6q7m3p/nmUQviE=
+knative.dev/reconciler-test v0.0.0-20230418082056-9fbd79e5dbe1 h1:ILiEZPy3UUDOb/wptcDmj/TEHRkdYZrdj1jKaU56oIw=
+knative.dev/reconciler-test v0.0.0-20230418082056-9fbd79e5dbe1/go.mod h1:oEXVO+rWs2/SGEOttJ9ikIabrDuioX7n883K+trfgZ0=
 pgregory.net/rapid v0.3.3 h1:jCjBsY4ln4Atz78QoBWxUEvAHaFyNDQg9+WU62aCn1U=
 pgregory.net/rapid v0.3.3/go.mod h1:UYpPVyjFHzYBGHIxLFoupi8vwk6rXNzRY9OMvVxFIOU=
 rsc.io/binaryregexp v0.2.0/go.mod h1:qTv7/COck+e2FymRvadv62gMdZztPaShugOCi3I+8D8=
diff --git a/hack/tools.go b/hack/tools.go
index dd2da0ae7..a4fd77372 100644
--- a/hack/tools.go
+++ b/hack/tools.go
@@ -29,7 +29,6 @@ import (
 
 	// Test images from eventing
 	_ "knative.dev/eventing/test/test_images/event-sender"
-	_ "knative.dev/eventing/test/test_images/heartbeats"
 	_ "knative.dev/eventing/test/test_images/performance"
 	_ "knative.dev/eventing/test/test_images/print"
 	_ "knative.dev/eventing/test/test_images/recordevents"
@@ -50,6 +49,8 @@ import (
 	// Event log utility for e2e channel testing
 	_ "knative.dev/eventing/cmd/event_display"
 
+	_ "knative.dev/eventing/cmd/heartbeats"
+
 	// We copy them into third_party, so we need them.
 	_ "github.com/kedacore/keda/v2/apis/keda/v1alpha1"
 )
diff --git a/vendor/knative.dev/eventing/cmd/heartbeats/main.go b/vendor/knative.dev/eventing/cmd/heartbeats/main.go
new file mode 100644
index 000000000..cf78e41fb
--- /dev/null
+++ b/vendor/knative.dev/eventing/cmd/heartbeats/main.go
@@ -0,0 +1,196 @@
+/*
+Copyright 2018 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 main
+
+import (
+	"encoding/json"
+	"errors"
+	"flag"
+	"fmt"
+	"log"
+	"net/http"
+	"os"
+	"strconv"
+	"syscall"
+	"time"
+
+	"go.uber.org/zap"
+	duckv1 "knative.dev/pkg/apis/duck/v1"
+	"knative.dev/pkg/signals"
+	"knative.dev/pkg/tracing"
+	"knative.dev/pkg/tracing/config"
+
+	"github.com/cloudevents/sdk-go/observability/opencensus/v2/client"
+	cloudevents "github.com/cloudevents/sdk-go/v2"
+	cehttp "github.com/cloudevents/sdk-go/v2/protocol/http"
+	"github.com/kelseyhightower/envconfig"
+)
+
+type Heartbeat struct {
+	Sequence int    `json:"id"`
+	Label    string `json:"label"`
+	Msg      string `json:"msg,omitempty"`
+}
+
+var (
+	eventSource string
+	eventType   string
+	sink        string
+	label       string
+	periodStr   string
+	msg         string
+)
+
+func init() {
+	flag.StringVar(&eventSource, "eventSource", "", "the event-source (CloudEvents)")
+	flag.StringVar(&eventType, "eventType", "dev.knative.eventing.samples.heartbeat", "the event-type (CloudEvents)")
+	flag.StringVar(&sink, "sink", "", "the host url to heartbeat to")
+	flag.StringVar(&label, "label", "", "a special label")
+	flag.StringVar(&periodStr, "period", "5s", "the duration between heartbeats. Supported formats: Go (https://pkg.go.dev/time#ParseDuration), integers (interpreted as seconds)")
+	flag.StringVar(&msg, "msg", "", "message content in data.msg")
+}
+
+type envConfig struct {
+	// Sink URL where to send heartbeat cloudevents
+	Sink string `envconfig:"K_SINK"`
+
+	// CEOverrides are the CloudEvents overrides to be applied to the outbound event.
+	CEOverrides string `envconfig:"K_CE_OVERRIDES"`
+
+	// Name of this pod.
+	Name string `envconfig:"POD_NAME" required:"true"`
+
+	// Namespace this pod exists in.
+	Namespace string `envconfig:"POD_NAMESPACE" required:"true"`
+
+	// Whether to run continuously or exit.
+	OneShot bool `envconfig:"ONE_SHOT" default:"false"`
+
+	// JSON configuration for tracing
+	TracingConfig string `envconfig:"K_CONFIG_TRACING"`
+}
+
+func main() {
+	flag.Parse()
+
+	ctx := signals.NewContext()
+	ctx = cloudevents.ContextWithRetriesExponentialBackoff(ctx, 20*time.Millisecond, 10)
+
+	defer maybeQuitIstioProxy()
+
+	var env envConfig
+	if err := envconfig.Process("", &env); err != nil {
+		log.Printf("[ERROR] Failed to process env var: %s", err)
+		os.Exit(1)
+	}
+
+	if env.Sink != "" {
+		sink = env.Sink
+	}
+
+	var ceOverrides *duckv1.CloudEventOverrides
+	if len(env.CEOverrides) > 0 {
+		overrides := duckv1.CloudEventOverrides{}
+		err := json.Unmarshal([]byte(env.CEOverrides), &overrides)
+		if err != nil {
+			log.Printf("[ERROR] Unparseable CloudEvents overrides %s: %v", env.CEOverrides, err)
+			os.Exit(1)
+		}
+		ceOverrides = &overrides
+	}
+
+	conf, err := config.JSONToTracingConfig(env.TracingConfig)
+	if err != nil {
+		log.Printf("Failed to read tracing config, using the no-op default: %v", err)
+	}
+	tracer, err := tracing.SetupPublishingWithStaticConfig(zap.L().Sugar(), "", conf)
+	if err != nil {
+		log.Fatalf("Failed to initialize tracing: %v", err)
+	}
+	defer tracer.Shutdown(ctx)
+	c, err := client.NewClientHTTP([]cehttp.Option{cloudevents.WithTarget(sink)}, nil)
+	if err != nil {
+		log.Fatalf("failed to create client: %s", err.Error())
+	}
+
+	// default to 5s if unset, try to parse as a duration, then as an int
+	var period time.Duration
+	if periodStr == "" {
+		period = 5 * time.Second
+	} else if p, err := time.ParseDuration(periodStr); err == nil {
+		period = p
+	} else if p, err := strconv.Atoi(periodStr); err == nil {
+		period = time.Duration(p) * time.Second
+	} else {
+		log.Fatalf("Invalid period interval provided: %q", periodStr)
+	}
+
+	if eventSource == "" {
+		eventSource = fmt.Sprintf("https://knative.dev/eventing-contrib/cmd/heartbeats/#%s/%s", env.Namespace, env.Name)
+		log.Printf("Heartbeats Source: %s", eventSource)
+	}
+
+	if len(label) > 0 && label[0] == '"' {
+		label, _ = strconv.Unquote(label)
+	}
+	hb := &Heartbeat{
+		Sequence: 0,
+		Label:    label,
+		Msg:      msg,
+	}
+	ticker := time.NewTicker(period)
+	for {
+		hb.Sequence++
+
+		event := cloudevents.NewEvent("1.0")
+		event.SetType(eventType)
+		event.SetSource(eventSource)
+		event.SetExtension("the", 42)
+		event.SetExtension("heart", "yes")
+		event.SetExtension("beats", true)
+
+		if ceOverrides != nil && ceOverrides.Extensions != nil {
+			for n, v := range ceOverrides.Extensions {
+				event.SetExtension(n, v)
+			}
+		}
+
+		if err := event.SetData(cloudevents.ApplicationJSON, hb); err != nil {
+			log.Printf("failed to set cloudevents msg: %s", err.Error())
+		}
+
+		log.Printf("sending cloudevent to %s", sink)
+		if res := c.Send(ctx, event); !cloudevents.IsACK(res) {
+			log.Printf("failed to send cloudevent: %v", res)
+		}
+
+		if env.OneShot {
+			return
+		}
+
+		// Wait for next tick
+		<-ticker.C
+	}
+}
+
+// maybeQuitIstioProxy shuts down Istio's proxy when available.
+func maybeQuitIstioProxy() {
+	_, err := http.DefaultClient.Get("http://localhost:15020/quitquitquit")
+	if err != nil && !errors.Is(err, syscall.ECONNREFUSED) {
+		log.Println("[Ignore this warning if Istio proxy is not used on this pod]", err)
+	}
+}
diff --git a/vendor/knative.dev/eventing/pkg/apis/config/zz_generated.deepcopy.go b/vendor/knative.dev/eventing/pkg/apis/config/zz_generated.deepcopy.go
index a26083d98..a57b366a9 100644
--- a/vendor/knative.dev/eventing/pkg/apis/config/zz_generated.deepcopy.go
+++ b/vendor/knative.dev/eventing/pkg/apis/config/zz_generated.deepcopy.go
@@ -32,7 +32,7 @@ func (in *BrokerConfig) DeepCopyInto(out *BrokerConfig) {
 	if in.KReference != nil {
 		in, out := &in.KReference, &out.KReference
 		*out = new(v1.KReference)
-		**out = **in
+		(*in).DeepCopyInto(*out)
 	}
 	if in.Delivery != nil {
 		in, out := &in.Delivery, &out.Delivery
diff --git a/vendor/knative.dev/eventing/pkg/apis/duck/v1beta1/zz_generated.deepcopy.go b/vendor/knative.dev/eventing/pkg/apis/duck/v1beta1/zz_generated.deepcopy.go
index fe805eefe..fad633c8e 100644
--- a/vendor/knative.dev/eventing/pkg/apis/duck/v1beta1/zz_generated.deepcopy.go
+++ b/vendor/knative.dev/eventing/pkg/apis/duck/v1beta1/zz_generated.deepcopy.go
@@ -119,7 +119,7 @@ func (in *ChannelableStatus) DeepCopyInto(out *ChannelableStatus) {
 	if in.DeadLetterChannel != nil {
 		in, out := &in.DeadLetterChannel, &out.DeadLetterChannel
 		*out = new(v1.KReference)
-		**out = **in
+		(*in).DeepCopyInto(*out)
 	}
 	return
 }
@@ -181,7 +181,7 @@ func (in *DeliveryStatus) DeepCopyInto(out *DeliveryStatus) {
 	if in.DeadLetterChannel != nil {
 		in, out := &in.DeadLetterChannel, &out.DeadLetterChannel
 		*out = new(v1.KReference)
-		**out = **in
+		(*in).DeepCopyInto(*out)
 	}
 	return
 }
diff --git a/vendor/knative.dev/eventing/pkg/apis/eventing/v1/zz_generated.deepcopy.go b/vendor/knative.dev/eventing/pkg/apis/eventing/v1/zz_generated.deepcopy.go
index fcf2f31ee..763b0ba4b 100644
--- a/vendor/knative.dev/eventing/pkg/apis/eventing/v1/zz_generated.deepcopy.go
+++ b/vendor/knative.dev/eventing/pkg/apis/eventing/v1/zz_generated.deepcopy.go
@@ -95,7 +95,7 @@ func (in *BrokerSpec) DeepCopyInto(out *BrokerSpec) {
 	if in.Config != nil {
 		in, out := &in.Config, &out.Config
 		*out = new(duckv1.KReference)
-		**out = **in
+		(*in).DeepCopyInto(*out)
 	}
 	if in.Delivery != nil {
 		in, out := &in.Delivery, &out.Delivery
diff --git a/vendor/knative.dev/eventing/pkg/apis/feature/features.go b/vendor/knative.dev/eventing/pkg/apis/feature/features.go
index b12355886..9f6946097 100644
--- a/vendor/knative.dev/eventing/pkg/apis/feature/features.go
+++ b/vendor/knative.dev/eventing/pkg/apis/feature/features.go
@@ -34,6 +34,17 @@ const (
 	// Allowed neither explicitly disables or enables a behavior.
 	// eg. allow a client to control behavior with an annotation or allow a new value through validation.
 	Allowed Flag = "Allowed"
+	// Strict is only applicable to the TransportEncryption feature.
+	// The following applies:
+	// - Addressables must not accept events to non-HTTPS endpoints
+	// - Addressables must only advertise HTTPS endpoints
+	Strict Flag = "Strict"
+	// Permissive is only applicable to the TransportEncryption feature.
+	// The following applies:
+	// - Addressables should accept events at both HTTP and HTTPS endpoints
+	// - Addressables should advertise both HTTP and HTTPS endpoints
+	// - Producers should prefer to send events to HTTPS endpoints, if available
+	Permissive Flag = "Permissive"
 )
 
 // Flags is a map containing all the enabled/disabled flags for the experimental features.
@@ -50,6 +61,16 @@ func (e Flags) IsAllowed(featureName string) bool {
 	return e.IsEnabled(featureName) || (e != nil && e[featureName] == Allowed)
 }
 
+// IsPermissiveTransportEncryption returns true if the TransportEncryption feature is in Permissive mode.
+func (e Flags) IsPermissiveTransportEncryption() bool {
+	return e != nil && e[TransportEncryption] == Permissive
+}
+
+// IsStrictTransportEncryption returns true if the TransportEncryption feature is in Strict mode.
+func (e Flags) IsStrictTransportEncryption() bool {
+	return e != nil && e[TransportEncryption] == Strict
+}
+
 // NewFlagsConfigFromMap creates a Flags from the supplied Map
 func NewFlagsConfigFromMap(data map[string]string) (Flags, error) {
 	flags := Flags{}
@@ -66,6 +87,10 @@ func NewFlagsConfigFromMap(data map[string]string) (Flags, error) {
 			flags[sanitizedKey] = Disabled
 		} else if strings.EqualFold(v, string(Enabled)) {
 			flags[sanitizedKey] = Enabled
+		} else if strings.EqualFold(v, string(Permissive)) {
+			flags[sanitizedKey] = Permissive
+		} else if strings.EqualFold(v, string(Strict)) {
+			flags[sanitizedKey] = Strict
 		} else {
 			return Flags{}, fmt.Errorf("cannot parse the boolean flag '%s' = '%s'. Allowed values: [true, false]", k, v)
 		}
diff --git a/vendor/knative.dev/eventing/pkg/apis/feature/flag_names.go b/vendor/knative.dev/eventing/pkg/apis/feature/flag_names.go
index 65a78d06f..d8dccea6d 100644
--- a/vendor/knative.dev/eventing/pkg/apis/feature/flag_names.go
+++ b/vendor/knative.dev/eventing/pkg/apis/feature/flag_names.go
@@ -17,9 +17,10 @@ limitations under the License.
 package feature
 
 const (
-	KReferenceGroup    = "kreference-group"
-	DeliveryRetryAfter = "delivery-retryafter"
-	DeliveryTimeout    = "delivery-timeout"
-	KReferenceMapping  = "kreference-mapping"
-	NewTriggerFilters  = "new-trigger-filters"
+	KReferenceGroup     = "kreference-group"
+	DeliveryRetryAfter  = "delivery-retryafter"
+	DeliveryTimeout     = "delivery-timeout"
+	KReferenceMapping   = "kreference-mapping"
+	NewTriggerFilters   = "new-trigger-filters"
+	TransportEncryption = "transport-encryption"
 )
diff --git a/vendor/knative.dev/eventing/pkg/apis/messaging/v1/zz_generated.deepcopy.go b/vendor/knative.dev/eventing/pkg/apis/messaging/v1/zz_generated.deepcopy.go
index 1481da34b..9748abdd8 100644
--- a/vendor/knative.dev/eventing/pkg/apis/messaging/v1/zz_generated.deepcopy.go
+++ b/vendor/knative.dev/eventing/pkg/apis/messaging/v1/zz_generated.deepcopy.go
@@ -118,7 +118,7 @@ func (in *ChannelStatus) DeepCopyInto(out *ChannelStatus) {
 	if in.Channel != nil {
 		in, out := &in.Channel, &out.Channel
 		*out = new(duckv1.KReference)
-		**out = **in
+		(*in).DeepCopyInto(*out)
 	}
 	return
 }
@@ -322,7 +322,7 @@ func (in *SubscriptionList) DeepCopyObject() runtime.Object {
 // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
 func (in *SubscriptionSpec) DeepCopyInto(out *SubscriptionSpec) {
 	*out = *in
-	out.Channel = in.Channel
+	in.Channel.DeepCopyInto(&out.Channel)
 	if in.Subscriber != nil {
 		in, out := &in.Subscriber, &out.Subscriber
 		*out = new(duckv1.Destination)
diff --git a/vendor/knative.dev/eventing/pkg/kncloudevents/retries.go b/vendor/knative.dev/eventing/pkg/kncloudevents/retries.go
index c51ad6661..c8b30f913 100644
--- a/vendor/knative.dev/eventing/pkg/kncloudevents/retries.go
+++ b/vendor/knative.dev/eventing/pkg/kncloudevents/retries.go
@@ -83,7 +83,7 @@ func RetryConfigFromDeliverySpec(spec v1.DeliverySpec) (RetryConfig, error) {
 
 	retryConfig := NoRetries()
 
-	retryConfig.CheckRetry = RetryIfGreaterThan300
+	retryConfig.CheckRetry = SelectiveRetry
 
 	if spec.Retry != nil {
 		retryConfig.RetryMax = int(*spec.Retry)
@@ -131,11 +131,6 @@ func RetryConfigFromDeliverySpec(spec v1.DeliverySpec) (RetryConfig, error) {
 	return retryConfig, nil
 }
 
-// RetryIfGreaterThan300 is a simple default implementation
-func RetryIfGreaterThan300(_ context.Context, response *http.Response, err error) (bool, error) {
-	return !(response != nil && (response.StatusCode < 300 && response.StatusCode != -1)), err
-}
-
 // SelectiveRetry is an alternative function to determine whether to retry based on response
 //
 // Note - Returning true indicates a retry should occur.  Returning an error will result in that
diff --git a/vendor/knative.dev/eventing/pkg/scheduler/statefulset/autoscaler.go b/vendor/knative.dev/eventing/pkg/scheduler/statefulset/autoscaler.go
index a829668d3..203d3963f 100644
--- a/vendor/knative.dev/eventing/pkg/scheduler/statefulset/autoscaler.go
+++ b/vendor/knative.dev/eventing/pkg/scheduler/statefulset/autoscaler.go
@@ -20,13 +20,16 @@ import (
 	"context"
 	"math"
 	"sync"
+	"sync/atomic"
 	"time"
 
 	"go.uber.org/zap"
 	v1 "k8s.io/api/core/v1"
 	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
+	"k8s.io/apimachinery/pkg/types"
 	"k8s.io/apimachinery/pkg/util/wait"
 	clientappsv1 "k8s.io/client-go/kubernetes/typed/apps/v1"
+	"knative.dev/pkg/reconciler"
 
 	kubeclient "knative.dev/pkg/client/injection/kube/client"
 	"knative.dev/pkg/logging"
@@ -35,6 +38,16 @@ import (
 	st "knative.dev/eventing/pkg/scheduler/state"
 )
 
+var (
+	// ephemeralLeaderElectionObject is the key used to check whether a given autoscaler instance
+	// is leader or not.
+	// This is an ephemeral key and must be kept stable and unmodified across releases.
+	ephemeralLeaderElectionObject = types.NamespacedName{
+		Namespace: "knative-eventing",
+		Name:      "autoscaler-ephemeral",
+	}
+)
+
 type Autoscaler interface {
 	// Start runs the autoscaler until cancelled.
 	Start(ctx context.Context)
@@ -59,9 +72,35 @@ type autoscaler struct {
 	// refreshPeriod is how often the autoscaler tries to scale down the statefulset
 	refreshPeriod time.Duration
 	lock          sync.Locker
+
+	// isLeader signals whether a given autoscaler instance is leader or not.
+	// The autoscaler is considered the leader when ephemeralLeaderElectionObject is in a
+	// bucket where we've been promoted.
+	isLeader atomic.Bool
+}
+
+var (
+	_ reconciler.LeaderAware = &autoscaler{}
+)
+
+// Promote implements reconciler.LeaderAware.
+func (a *autoscaler) Promote(b reconciler.Bucket, _ func(reconciler.Bucket, types.NamespacedName)) error {
+	if b.Has(ephemeralLeaderElectionObject) {
+		// The promoted bucket has the ephemeralLeaderElectionObject, so we are leader.
+		a.isLeader.Store(true)
+	}
+	return nil
 }
 
-func newAutoscaler(ctx context.Context, cfg *Config, stateAccessor st.StateAccessor) Autoscaler {
+// Demote implements reconciler.LeaderAware.
+func (a *autoscaler) Demote(b reconciler.Bucket) {
+	if b.Has(ephemeralLeaderElectionObject) {
+		// The demoted bucket has the ephemeralLeaderElectionObject, so we are not leader anymore.
+		a.isLeader.Store(false)
+	}
+}
+
+func newAutoscaler(ctx context.Context, cfg *Config, stateAccessor st.StateAccessor) *autoscaler {
 	return &autoscaler{
 		logger:            logging.FromContext(ctx),
 		statefulSetClient: kubeclient.Get(ctx).AppsV1().StatefulSets(cfg.StatefulSetNamespace),
@@ -73,6 +112,7 @@ func newAutoscaler(ctx context.Context, cfg *Config, stateAccessor st.StateAcces
 		capacity:          cfg.PodCapacity,
 		refreshPeriod:     cfg.RefreshPeriod,
 		lock:              new(sync.Mutex),
+		isLeader:          atomic.Bool{},
 	}
 }
 
@@ -111,6 +151,9 @@ func (a *autoscaler) syncAutoscale(ctx context.Context, attemptScaleDown bool, p
 }
 
 func (a *autoscaler) doautoscale(ctx context.Context, attemptScaleDown bool, pending int32) error {
+	if !a.isLeader.Load() {
+		return nil
+	}
 	state, err := a.stateAccessor.State(nil)
 	if err != nil {
 		a.logger.Info("error while refreshing scheduler state (will retry)", zap.Error(err))
diff --git a/vendor/knative.dev/eventing/pkg/scheduler/statefulset/scheduler.go b/vendor/knative.dev/eventing/pkg/scheduler/statefulset/scheduler.go
index f3ecb7c0c..a1b5985e6 100644
--- a/vendor/knative.dev/eventing/pkg/scheduler/statefulset/scheduler.go
+++ b/vendor/knative.dev/eventing/pkg/scheduler/statefulset/scheduler.go
@@ -32,6 +32,7 @@ import (
 	corev1listers "k8s.io/client-go/listers/core/v1"
 	"k8s.io/client-go/tools/cache"
 	"k8s.io/utils/integer"
+	"knative.dev/pkg/reconciler"
 
 	kubeclient "knative.dev/pkg/client/injection/kube/client"
 	statefulsetinformer "knative.dev/pkg/client/injection/kube/informers/apps/v1/statefulset"
@@ -145,11 +146,31 @@ type StatefulSetScheduler struct {
 	reserved map[types.NamespacedName]map[string]int32
 }
 
+var (
+	_ reconciler.LeaderAware = &StatefulSetScheduler{}
+	_ scheduler.Scheduler    = &StatefulSetScheduler{}
+)
+
+// Promote implements reconciler.LeaderAware.
+func (s *StatefulSetScheduler) Promote(b reconciler.Bucket, enq func(reconciler.Bucket, types.NamespacedName)) error {
+	if v, ok := s.autoscaler.(reconciler.LeaderAware); ok {
+		return v.Promote(b, enq)
+	}
+	return nil
+}
+
+// Demote implements reconciler.LeaderAware.
+func (s *StatefulSetScheduler) Demote(b reconciler.Bucket) {
+	if v, ok := s.autoscaler.(reconciler.LeaderAware); ok {
+		v.Demote(b)
+	}
+}
+
 func newStatefulSetScheduler(ctx context.Context,
 	cfg *Config,
 	stateAccessor st.StateAccessor,
 	autoscaler Autoscaler,
-	podlister corev1listers.PodNamespaceLister) scheduler.Scheduler {
+	podlister corev1listers.PodNamespaceLister) *StatefulSetScheduler {
 
 	scheduler := &StatefulSetScheduler{
 		ctx:                  ctx,
diff --git a/vendor/knative.dev/hack/release.sh b/vendor/knative.dev/hack/release.sh
index 135fa8b7c..5d4f09a89 100644
--- a/vendor/knative.dev/hack/release.sh
+++ b/vendor/knative.dev/hack/release.sh
@@ -51,6 +51,7 @@ function tag_images_in_yamls() {
   local DOCKER_BASE="${KO_DOCKER_REPO}/${REPO_ROOT_DIR/$SRC_DIR}"
   local GEO_REGIONS="${GEO_REPLICATION[@]} "
   echo "Tagging any images under '${DOCKER_BASE}' with ${TAG}"
+  # shellcheck disable=SC2068
   for file in $@; do
     [[ "${file##*.}" != "yaml" ]] && continue
     echo "Inspecting ${file}"
@@ -316,7 +317,8 @@ function build_from_source() {
 function get_images_in_yamls() {
   rm -rf "$IMAGES_REFS_FILE"
   echo "Assembling a list of image refences to sign"
-  for file in "$@"; do
+  # shellcheck disable=SC2068
+  for file in $@; do
     [[ "${file##*.}" != "yaml" ]] && continue
     echo "Inspecting ${file}"
     while read -r image; do
@@ -407,10 +409,11 @@ function sign_release() {
   if [[ -f "$IMAGES_REFS_FILE" ]]; then
     COSIGN_EXPERIMENTAL=1 cosign sign $(cat "$IMAGES_REFS_FILE") \
       --recursive --identity-token="${ID_TOKEN}"
+    cp "${IMAGES_REFS_FILE}" "${ARTIFACTS}"
     if  [ -n "${ATTEST_IMAGES:-}" ]; then # Temporary Feature Gate
       provenance-generator --clone-log=/logs/clone.json \
         --image-refs="$IMAGES_REFS_FILE" --output=attestation.json
-      mkdir -p "${ARTIFACTS}"/attestation && cp attestation.json "${ARTIFACTS}"/attestation
+      mkdir -p "${ARTIFACTS}" && cp attestation.json "${ARTIFACTS}"
       COSIGN_EXPERIMENTAL=1 cosign attest $(cat "$IMAGES_REFS_FILE") \
         --recursive --identity-token="${ID_TOKEN}" \
         --predicate=attestation.json --type=slsaprovenance
diff --git a/vendor/knative.dev/pkg/apis/duck/v1/addressable_types.go b/vendor/knative.dev/pkg/apis/duck/v1/addressable_types.go
index 83e746a00..bdcb994fa 100644
--- a/vendor/knative.dev/pkg/apis/duck/v1/addressable_types.go
+++ b/vendor/knative.dev/pkg/apis/duck/v1/addressable_types.go
@@ -38,7 +38,16 @@ import (
 // typically stored in the object's `status`, as this information may
 // be generated by the controller.
 type Addressable struct {
+	// Name is the name of the address.
+	// +optional
+	Name *string `json:"name,omitempty"`
+
 	URL *apis.URL `json:"url,omitempty"`
+
+	// CACerts is the Certification Authority (CA) certificates in PEM format
+	// according to https://www.rfc-editor.org/rfc/rfc7468.
+	// +optional
+	CACerts *string `json:"CACerts,omitempty"`
 }
 
 var (
@@ -62,7 +71,15 @@ type AddressableType struct {
 // AddressStatus shows how we expect folks to embed Addressable in
 // their Status field.
 type AddressStatus struct {
+	// Address is a single Addressable address.
+	// If Addresses is present, Address will be ignored by clients.
+	// +optional
 	Address *Addressable `json:"address,omitempty"`
+
+	// Addresses is a list of addresses for different protocols (HTTP and HTTPS)
+	// If Addresses is present, Address must be ignored by clients.
+	// +optional
+	Addresses []Addressable `json:"addresses,omitempty"`
 }
 
 // Verify AddressableType resources meet duck contracts.
@@ -89,9 +106,11 @@ func (a *Addressable) ConvertFrom(ctx context.Context, from apis.Convertible) er
 
 // Populate implements duck.Populatable
 func (t *AddressableType) Populate() {
+	name := "http"
 	t.Status = AddressStatus{
-		&Addressable{
+		Address: &Addressable{
 			// Populate ALL fields
+			Name: &name,
 			URL: &apis.URL{
 				Scheme: "http",
 				Host:   "foo.com",
diff --git a/vendor/knative.dev/pkg/apis/duck/v1/destination.go b/vendor/knative.dev/pkg/apis/duck/v1/destination.go
index c895e6d29..15638f401 100644
--- a/vendor/knative.dev/pkg/apis/duck/v1/destination.go
+++ b/vendor/knative.dev/pkg/apis/duck/v1/destination.go
@@ -31,6 +31,13 @@ type Destination struct {
 	// URI can be an absolute URL(non-empty scheme and non-empty host) pointing to the target or a relative URI. Relative URIs will be resolved using the base URI retrieved from Ref.
 	// +optional
 	URI *apis.URL `json:"uri,omitempty"`
+
+	// CACerts are Certification Authority (CA) certificates in PEM format
+	// according to https://www.rfc-editor.org/rfc/rfc7468.
+	// If set, these CAs are appended to the set of CAs provided
+	// by the Addressable target, if any.
+	// +optional
+	CACerts *string `json:"CACerts,omitempty"`
 }
 
 // Validate the Destination has all the necessary fields and check the
diff --git a/vendor/knative.dev/pkg/apis/duck/v1/knative_reference.go b/vendor/knative.dev/pkg/apis/duck/v1/knative_reference.go
index a0b169d6f..c723c147a 100644
--- a/vendor/knative.dev/pkg/apis/duck/v1/knative_reference.go
+++ b/vendor/knative.dev/pkg/apis/duck/v1/knative_reference.go
@@ -49,6 +49,10 @@ type KReference struct {
 	// Note: This API is EXPERIMENTAL and might break anytime. For more details: https://github.com/knative/eventing/issues/5086
 	// +optional
 	Group string `json:"group,omitempty"`
+
+	// Address points to a specific Address Name.
+	// +optional
+	Address *string `json:"address,omitempty"`
 }
 
 func (kr *KReference) Validate(ctx context.Context) *apis.FieldError {
diff --git a/vendor/knative.dev/pkg/apis/duck/v1/zz_generated.deepcopy.go b/vendor/knative.dev/pkg/apis/duck/v1/zz_generated.deepcopy.go
index 96638e579..83cccfd3b 100644
--- a/vendor/knative.dev/pkg/apis/duck/v1/zz_generated.deepcopy.go
+++ b/vendor/knative.dev/pkg/apis/duck/v1/zz_generated.deepcopy.go
@@ -34,6 +34,13 @@ func (in *AddressStatus) DeepCopyInto(out *AddressStatus) {
 		*out = new(Addressable)
 		(*in).DeepCopyInto(*out)
 	}
+	if in.Addresses != nil {
+		in, out := &in.Addresses, &out.Addresses
+		*out = make([]Addressable, len(*in))
+		for i := range *in {
+			(*in)[i].DeepCopyInto(&(*out)[i])
+		}
+	}
 	return
 }
 
@@ -50,11 +57,21 @@ func (in *AddressStatus) DeepCopy() *AddressStatus {
 // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
 func (in *Addressable) DeepCopyInto(out *Addressable) {
 	*out = *in
+	if in.Name != nil {
+		in, out := &in.Name, &out.Name
+		*out = new(string)
+		**out = **in
+	}
 	if in.URL != nil {
 		in, out := &in.URL, &out.URL
 		*out = new(apis.URL)
 		(*in).DeepCopyInto(*out)
 	}
+	if in.CACerts != nil {
+		in, out := &in.CACerts, &out.CACerts
+		*out = new(string)
+		**out = **in
+	}
 	return
 }
 
@@ -332,13 +349,18 @@ func (in *Destination) DeepCopyInto(out *Destination) {
 	if in.Ref != nil {
 		in, out := &in.Ref, &out.Ref
 		*out = new(KReference)
-		**out = **in
+		(*in).DeepCopyInto(*out)
 	}
 	if in.URI != nil {
 		in, out := &in.URI, &out.URI
 		*out = new(apis.URL)
 		(*in).DeepCopyInto(*out)
 	}
+	if in.CACerts != nil {
+		in, out := &in.CACerts, &out.CACerts
+		*out = new(string)
+		**out = **in
+	}
 	return
 }
 
@@ -355,6 +377,11 @@ func (in *Destination) DeepCopy() *Destination {
 // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
 func (in *KReference) DeepCopyInto(out *KReference) {
 	*out = *in
+	if in.Address != nil {
+		in, out := &in.Address, &out.Address
+		*out = new(string)
+		**out = **in
+	}
 	return
 }
 
diff --git a/vendor/knative.dev/pkg/apis/duck/v1alpha1/addressable_types.go b/vendor/knative.dev/pkg/apis/duck/v1alpha1/addressable_types.go
index 328246f6f..e0399f55d 100644
--- a/vendor/knative.dev/pkg/apis/duck/v1alpha1/addressable_types.go
+++ b/vendor/knative.dev/pkg/apis/duck/v1alpha1/addressable_types.go
@@ -66,7 +66,15 @@ type AddressableType struct {
 // AddressStatus shows how we expect folks to embed Addressable in
 // their Status field.
 type AddressStatus struct {
+	// Address is a single Addressable address.
+	// If Addresses is present, Address will be ignored by clients.
+	// +optional
 	Address *Addressable `json:"address,omitempty"`
+
+	// Addresses is a list of addresses for different protocols (HTTP and HTTPS)
+	// If Addresses is present, Address must be ignored by clients.
+	// +optional
+	Addresses []Addressable `json:"addresses,omitempty"`
 }
 
 var (
@@ -123,10 +131,12 @@ func (a *Addressable) ConvertFrom(ctx context.Context, from apis.Convertible) er
 
 // Populate implements duck.Populatable
 func (t *AddressableType) Populate() {
+	name := "http"
 	t.Status = AddressStatus{
-		&Addressable{
+		Address: &Addressable{
 			// Populate ALL fields
 			Addressable: v1beta1.Addressable{
+				Name: &name,
 				URL: &apis.URL{
 					Scheme: "http",
 					Host:   "foo.bar.svc.cluster.local",
diff --git a/vendor/knative.dev/pkg/apis/duck/v1alpha1/zz_generated.deepcopy.go b/vendor/knative.dev/pkg/apis/duck/v1alpha1/zz_generated.deepcopy.go
index c845923b1..4c9d62236 100644
--- a/vendor/knative.dev/pkg/apis/duck/v1alpha1/zz_generated.deepcopy.go
+++ b/vendor/knative.dev/pkg/apis/duck/v1alpha1/zz_generated.deepcopy.go
@@ -33,6 +33,13 @@ func (in *AddressStatus) DeepCopyInto(out *AddressStatus) {
 		*out = new(Addressable)
 		(*in).DeepCopyInto(*out)
 	}
+	if in.Addresses != nil {
+		in, out := &in.Addresses, &out.Addresses
+		*out = make([]Addressable, len(*in))
+		for i := range *in {
+			(*in)[i].DeepCopyInto(&(*out)[i])
+		}
+	}
 	return
 }
 
diff --git a/vendor/knative.dev/pkg/apis/duck/v1beta1/addressable_types.go b/vendor/knative.dev/pkg/apis/duck/v1beta1/addressable_types.go
index ba7bbc85d..57f310e52 100644
--- a/vendor/knative.dev/pkg/apis/duck/v1beta1/addressable_types.go
+++ b/vendor/knative.dev/pkg/apis/duck/v1beta1/addressable_types.go
@@ -37,7 +37,16 @@ import (
 // typically stored in the object's `status`, as this information may
 // be generated by the controller.
 type Addressable struct {
+	// Name is the name of the address.
+	// +optional
+	Name *string `json:"name,omitempty"`
+
 	URL *apis.URL `json:"url,omitempty"`
+
+	// CACerts is the Certification Authority (CA) certificates in PEM format
+	// according to https://www.rfc-editor.org/rfc/rfc7468.
+	// +optional
+	CACerts *string `json:"CACerts,omitempty"`
 }
 
 var (
@@ -64,7 +73,15 @@ type AddressableType struct {
 // AddressStatus shows how we expect folks to embed Addressable in
 // their Status field.
 type AddressStatus struct {
+	// Address is a single Addressable address.
+	// If Addresses is present, Address will be ignored by clients.
+	// +optional
 	Address *Addressable `json:"address,omitempty"`
+
+	// Addresses is a list of addresses for different protocols (HTTP and HTTPS)
+	// If Addresses is present, Address must be ignored by clients.
+	// +optional
+	Addresses []Addressable `json:"addresses,omitempty"`
 }
 
 // Verify AddressableType resources meet duck contracts.
@@ -102,9 +119,11 @@ func (a *Addressable) ConvertFrom(ctx context.Context, from apis.Convertible) er
 
 // Populate implements duck.Populatable
 func (t *AddressableType) Populate() {
+	name := "http"
 	t.Status = AddressStatus{
-		&Addressable{
+		Address: &Addressable{
 			// Populate ALL fields
+			Name: &name,
 			URL: &apis.URL{
 				Scheme: "http",
 				Host:   "foo.com",
diff --git a/vendor/knative.dev/pkg/apis/duck/v1beta1/destination.go b/vendor/knative.dev/pkg/apis/duck/v1beta1/destination.go
index 4e369b872..4c361d7c1 100644
--- a/vendor/knative.dev/pkg/apis/duck/v1beta1/destination.go
+++ b/vendor/knative.dev/pkg/apis/duck/v1beta1/destination.go
@@ -44,6 +44,13 @@ type Destination struct {
 	// URI can be an absolute URL(non-empty scheme and non-empty host) pointing to the target or a relative URI. Relative URIs will be resolved using the base URI retrieved from Ref.
 	// +optional
 	URI *apis.URL `json:"uri,omitempty"`
+
+	// CACerts are Certification Authority (CA) certificates in PEM format
+	// according to https://www.rfc-editor.org/rfc/rfc7468.
+	// If set, these CAs are appended to the set of CAs provided
+	// by the Addressable target, if any.
+	// +optional
+	CACerts *string `json:"CACerts,omitempty"`
 }
 
 func (dest *Destination) Validate(ctx context.Context) *apis.FieldError {
diff --git a/vendor/knative.dev/pkg/apis/duck/v1beta1/zz_generated.deepcopy.go b/vendor/knative.dev/pkg/apis/duck/v1beta1/zz_generated.deepcopy.go
index 743081b01..6ba145f3e 100644
--- a/vendor/knative.dev/pkg/apis/duck/v1beta1/zz_generated.deepcopy.go
+++ b/vendor/knative.dev/pkg/apis/duck/v1beta1/zz_generated.deepcopy.go
@@ -35,6 +35,13 @@ func (in *AddressStatus) DeepCopyInto(out *AddressStatus) {
 		*out = new(Addressable)
 		(*in).DeepCopyInto(*out)
 	}
+	if in.Addresses != nil {
+		in, out := &in.Addresses, &out.Addresses
+		*out = make([]Addressable, len(*in))
+		for i := range *in {
+			(*in)[i].DeepCopyInto(&(*out)[i])
+		}
+	}
 	return
 }
 
@@ -51,11 +58,21 @@ func (in *AddressStatus) DeepCopy() *AddressStatus {
 // DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
 func (in *Addressable) DeepCopyInto(out *Addressable) {
 	*out = *in
+	if in.Name != nil {
+		in, out := &in.Name, &out.Name
+		*out = new(string)
+		**out = **in
+	}
 	if in.URL != nil {
 		in, out := &in.URL, &out.URL
 		*out = new(apis.URL)
 		(*in).DeepCopyInto(*out)
 	}
+	if in.CACerts != nil {
+		in, out := &in.CACerts, &out.CACerts
+		*out = new(string)
+		**out = **in
+	}
 	return
 }
 
@@ -264,6 +281,11 @@ func (in *Destination) DeepCopyInto(out *Destination) {
 		*out = new(apis.URL)
 		(*in).DeepCopyInto(*out)
 	}
+	if in.CACerts != nil {
+		in, out := &in.CACerts, &out.CACerts
+		*out = new(string)
+		**out = **in
+	}
 	return
 }
 
diff --git a/vendor/knative.dev/pkg/injection/health_check.go b/vendor/knative.dev/pkg/injection/health_check.go
index 2899c7e35..d4eb7fd46 100644
--- a/vendor/knative.dev/pkg/injection/health_check.go
+++ b/vendor/knative.dev/pkg/injection/health_check.go
@@ -40,7 +40,7 @@ func ServeHealthProbes(ctx context.Context, port int) error {
 	}()
 
 	// start the web server on port and accept requests
-	logger.Infof("Probes server listening on port %s", port)
+	logger.Infof("Probes server listening on port %d", port)
 	if err := server.ListenAndServe(); err != nil && !errors.Is(err, http.ErrServerClosed) {
 		return err
 	}
diff --git a/vendor/knative.dev/pkg/metrics/config.go b/vendor/knative.dev/pkg/metrics/config.go
index 3fe3c1737..ce5e7f875 100644
--- a/vendor/knative.dev/pkg/metrics/config.go
+++ b/vendor/knative.dev/pkg/metrics/config.go
@@ -41,19 +41,21 @@ const (
 	DomainEnv = "METRICS_DOMAIN"
 
 	// The following keys are used to configure metrics reporting.
-	// See https://github.com/knative/serving/blob/main/config/config-observability.yaml
+	// See https://github.com/knative/serving/blob/main/config/core/configmaps/observability.yaml
 	// for details.
 	collectorAddressKey = "metrics.opencensus-address"
 	collectorSecureKey  = "metrics.opencensus-require-tls"
 	reportingPeriodKey  = "metrics.reporting-period-seconds"
 
-	defaultBackendEnvName = "DEFAULT_METRICS_BACKEND"
-	defaultPrometheusPort = 9090
-	maxPrometheusPort     = 65535
-	minPrometheusPort     = 1024
-	defaultPrometheusHost = "0.0.0.0"
-	prometheusPortEnvName = "METRICS_PROMETHEUS_PORT"
-	prometheusHostEnvName = "METRICS_PROMETHEUS_HOST"
+	defaultBackendEnvName            = "DEFAULT_METRICS_BACKEND"
+	defaultPrometheusPort            = 9090
+	defaultPrometheusReportingPeriod = 5
+	defaultOpenCensusReportingPeriod = 60
+	maxPrometheusPort                = 65535
+	minPrometheusPort                = 1024
+	defaultPrometheusHost            = "0.0.0.0"
+	prometheusPortEnvName            = "METRICS_PROMETHEUS_PORT"
+	prometheusHostEnvName            = "METRICS_PROMETHEUS_HOST"
 )
 
 var (
@@ -206,9 +208,9 @@ func createMetricsConfig(_ context.Context, ops ExporterOptions) (*metricsConfig
 	} else {
 		switch mc.backendDestination {
 		case openCensus:
-			mc.reportingPeriod = time.Minute
+			mc.reportingPeriod = defaultOpenCensusReportingPeriod * time.Second
 		case prometheus:
-			mc.reportingPeriod = 5 * time.Second
+			mc.reportingPeriod = defaultPrometheusReportingPeriod * time.Second
 		}
 	}
 	return &mc, nil
diff --git a/vendor/knative.dev/pkg/metrics/config_observability.go b/vendor/knative.dev/pkg/metrics/config_observability.go
index b6affd293..e766b071b 100644
--- a/vendor/knative.dev/pkg/metrics/config_observability.go
+++ b/vendor/knative.dev/pkg/metrics/config_observability.go
@@ -71,6 +71,10 @@ type ObservabilityConfig struct {
 	// OpenCensus. "None" disables all backends.
 	RequestMetricsBackend string
 
+	// RequestMetricsReportingPeriodSeconds specifies the request metrics reporting period in sec at queue proxy, eg 1.
+	// If a zero or negative value is passed the default reporting period is used (10 secs).
+	RequestMetricsReportingPeriodSeconds int
+
 	// EnableProfiling indicates whether it is allowed to retrieve runtime profiling data from
 	// the pods via an HTTP server in the format expected by the pprof visualization tool.
 	EnableProfiling bool
@@ -114,6 +118,12 @@ func NewObservabilityConfigFromConfigMap(configMap *corev1.ConfigMap) (*Observab
 		return oc, nil
 	}
 
+	defaultRequestMetricsReportingPeriod, err := getDefaultRequestMetricsReportingPeriod(configMap.Data)
+	if err != nil {
+		return nil, err
+	}
+	oc.RequestMetricsReportingPeriodSeconds = defaultRequestMetricsReportingPeriod
+
 	if err := cm.Parse(configMap.Data,
 		cm.AsBool("logging.enable-var-log-collection", &oc.EnableVarLogCollection),
 		cm.AsString("logging.revision-url-template", &oc.LoggingURLTemplate),
@@ -121,6 +131,7 @@ func NewObservabilityConfigFromConfigMap(configMap *corev1.ConfigMap) (*Observab
 		cm.AsBool(EnableReqLogKey, &oc.EnableRequestLog),
 		cm.AsBool(EnableProbeReqLogKey, &oc.EnableProbeRequestLog),
 		cm.AsString("metrics.request-metrics-backend-destination", &oc.RequestMetricsBackend),
+		cm.AsInt("metrics.request-metrics-reporting-period-seconds", &oc.RequestMetricsReportingPeriodSeconds),
 		cm.AsBool("profiling.enable", &oc.EnableProfiling),
 		cm.AsString("metrics.opencensus-address", &oc.MetricsCollectorAddress),
 	); err != nil {
@@ -163,3 +174,27 @@ func ConfigMapName() string {
 	}
 	return "config-observability"
 }
+
+// Use the same as `metrics.reporting-period-seconds` for the default
+// of `metrics.request-metrics-reporting-period-seconds`
+func getDefaultRequestMetricsReportingPeriod(data map[string]string) (int, error) {
+	// Default backend is prometheus
+	period := defaultPrometheusReportingPeriod
+	if repStr := data[reportingPeriodKey]; repStr != "" {
+		repInt, err := strconv.Atoi(repStr)
+		if err != nil {
+			return -1, fmt.Errorf("invalid %s value %q", reportingPeriodKey, repStr)
+		}
+		period = repInt
+	} else {
+		if raw, ok := data["metrics.request-metrics-backend-destination"]; ok {
+			switch metricsBackend(raw) {
+			case prometheus:
+				period = defaultPrometheusReportingPeriod
+			case openCensus:
+				period = defaultOpenCensusReportingPeriod
+			}
+		}
+	}
+	return period, nil
+}
diff --git a/vendor/knative.dev/pkg/metrics/opencensus_exporter.go b/vendor/knative.dev/pkg/metrics/opencensus_exporter.go
index eaeac4a56..59e33ab09 100644
--- a/vendor/knative.dev/pkg/metrics/opencensus_exporter.go
+++ b/vendor/knative.dev/pkg/metrics/opencensus_exporter.go
@@ -99,7 +99,7 @@ func getCredentials(component string, secret *corev1.Secret, logger *zap.Sugared
 		return nil
 	}
 	return credentials.NewTLS(&tls.Config{
-		MinVersion: tls.VersionTLS12,
+		MinVersion: tls.VersionTLS13,
 		GetClientCertificate: func(*tls.CertificateRequestInfo) (*tls.Certificate, error) {
 			cert, err := tls.X509KeyPair(secret.Data["client-cert.pem"], secret.Data["client-key.pem"])
 			if err != nil {
diff --git a/vendor/knative.dev/pkg/webhook/env.go b/vendor/knative.dev/pkg/webhook/env.go
index 01d52c8b0..ffb757011 100644
--- a/vendor/knative.dev/pkg/webhook/env.go
+++ b/vendor/knative.dev/pkg/webhook/env.go
@@ -17,6 +17,7 @@ limitations under the License.
 package webhook
 
 import (
+	"crypto/tls"
 	"fmt"
 	"os"
 	"strconv"
@@ -28,7 +29,9 @@ const (
 	// Webhook is the name of the override key used inside of the logging config for Webhook Controller.
 	webhookNameEnvKey = "WEBHOOK_NAME"
 
-	secretNameEnvKey = "WEBHOOK_SECRET_NAME"
+	secretNameEnvKey = "WEBHOOK_SECRET_NAME" //nolint:gosec // This is not a hardcoded credential
+
+	tlsMinVersionEnvKey = "WEBHOOK_TLS_MIN_VERSION"
 )
 
 // PortFromEnv returns the webhook port set by portEnvKey, or default port if env var is not set.
@@ -50,11 +53,11 @@ func NameFromEnv() string {
 		return webhook
 	}
 
-	panic(fmt.Sprintf(`The environment variable %q is not set.
+	panic(fmt.Sprintf(`The environment variable %[1]q is not set.
 This should be unique for the webhooks in a namespace
 If this is a process running on Kubernetes, then initialize this variable via:
   env:
-  - name: WEBHOOK_NAME
+  - name: %[1]s
     value: webhook
 `, webhookNameEnvKey))
 }
@@ -66,3 +69,16 @@ func SecretNameFromEnv(defaultSecretName string) string {
 	}
 	return secret
 }
+
+func TLSMinVersionFromEnv(defaultTLSMinVersion uint16) uint16 {
+	switch tlsMinVersion := os.Getenv(tlsMinVersionEnvKey); tlsMinVersion {
+	case "1.2":
+		return tls.VersionTLS12
+	case "1.3":
+		return tls.VersionTLS13
+	case "":
+		return defaultTLSMinVersion
+	default:
+		panic(fmt.Sprintf("the environment variable %q has to be either '1.2' or '1.3'", tlsMinVersionEnvKey))
+	}
+}
diff --git a/vendor/knative.dev/pkg/webhook/webhook.go b/vendor/knative.dev/pkg/webhook/webhook.go
index 6099e6ac5..779d388d2 100644
--- a/vendor/knative.dev/pkg/webhook/webhook.go
+++ b/vendor/knative.dev/pkg/webhook/webhook.go
@@ -40,6 +40,10 @@ import (
 
 // Options contains the configuration for the webhook
 type Options struct {
+	// TLSMinVersion contains the minimum TLS version that is acceptable to communicate with the API server.
+	// TLS 1.3 is the minimum version if not specified otherwise.
+	TLSMinVersion uint16
+
 	// ServiceName is the service name of the webhook.
 	ServiceName string
 
@@ -119,6 +123,13 @@ func New(
 		opts.StatsReporter = reporter
 	}
 
+	defaultTLSMinVersion := uint16(tls.VersionTLS13)
+	if opts.TLSMinVersion == 0 {
+		opts.TLSMinVersion = TLSMinVersionFromEnv(defaultTLSMinVersion)
+	} else if opts.TLSMinVersion != tls.VersionTLS12 && opts.TLSMinVersion != tls.VersionTLS13 {
+		return nil, fmt.Errorf("unsupported TLS version: %d", opts.TLSMinVersion)
+	}
+
 	syncCtx, cancel := context.WithCancel(context.Background())
 
 	webhook = &Webhook{
@@ -136,7 +147,7 @@ func New(
 		secretInformer := kubeinformerfactory.Get(ctx).Core().V1().Secrets()
 
 		webhook.tlsConfig = &tls.Config{
-			MinVersion: tls.VersionTLS12,
+			MinVersion: opts.TLSMinVersion,
 
 			// If we return (nil, error) the client sees - 'tls: internal error"
 			// If we return (nil, nil) the client sees - 'tls: no certificates configured'
diff --git a/vendor/modules.txt b/vendor/modules.txt
index 7d9b6f1bc..42a73cb60 100644
--- a/vendor/modules.txt
+++ b/vendor/modules.txt
@@ -1221,9 +1221,10 @@ k8s.io/utils/net
 k8s.io/utils/pointer
 k8s.io/utils/strings/slices
 k8s.io/utils/trace
-# knative.dev/eventing v0.36.1-0.20230309084530-05f6d84ad43c
+# knative.dev/eventing v0.36.1-0.20230418085055-cc3d254d555c
 ## explicit; go 1.18
 knative.dev/eventing/cmd/event_display
+knative.dev/eventing/cmd/heartbeats
 knative.dev/eventing/pkg/apis/config
 knative.dev/eventing/pkg/apis/duck
 knative.dev/eventing/pkg/apis/duck/v1
@@ -1346,11 +1347,9 @@ knative.dev/eventing/test/rekt/resources/delivery
 knative.dev/eventing/test/rekt/resources/pingsource
 knative.dev/eventing/test/rekt/resources/source
 knative.dev/eventing/test/rekt/resources/subscription
-knative.dev/eventing/test/rekt/resources/svc
 knative.dev/eventing/test/rekt/resources/trigger
 knative.dev/eventing/test/test_images
 knative.dev/eventing/test/test_images/event-sender
-knative.dev/eventing/test/test_images/heartbeats
 knative.dev/eventing/test/test_images/performance
 knative.dev/eventing/test/test_images/print
 knative.dev/eventing/test/test_images/recordevents
@@ -1368,11 +1367,11 @@ knative.dev/eventing/test/upgrade/prober/wathola/fetcher
 knative.dev/eventing/test/upgrade/prober/wathola/forwarder
 knative.dev/eventing/test/upgrade/prober/wathola/receiver
 knative.dev/eventing/test/upgrade/prober/wathola/sender
-# knative.dev/hack v0.0.0-20230228173453-3de51aff69a3
+# knative.dev/hack v0.0.0-20230417170854-f591fea109b3
 ## explicit; go 1.18
 knative.dev/hack
 knative.dev/hack/shell
-# knative.dev/pkg v0.0.0-20230309013522-c5dd1d1264ba
+# knative.dev/pkg v0.0.0-20230418073056-dfad48eaa5d0
 ## explicit; go 1.18
 knative.dev/pkg/apiextensions/storageversion
 knative.dev/pkg/apiextensions/storageversion/cmd/migrate
@@ -1482,7 +1481,7 @@ 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-20230307080119-d52257e4e606
+# knative.dev/reconciler-test v0.0.0-20230418082056-9fbd79e5dbe1
 ## explicit; go 1.18
 knative.dev/reconciler-test/cmd/eventshub
 knative.dev/reconciler-test/pkg/environment


Test patch:
diff --git a/control-plane/pkg/reconciler/testing/objects_channel.go b/control-plane/pkg/reconciler/testing/objects_channel.go
index 5fd18ca8b..2a7b6127b 100644
--- a/control-plane/pkg/reconciler/testing/objects_channel.go
+++ b/control-plane/pkg/reconciler/testing/objects_channel.go
@@ -26,14 +26,15 @@ import (
 	"k8s.io/apimachinery/pkg/runtime/schema"
 	clientgotesting "k8s.io/client-go/testing"
 	"k8s.io/utils/pointer"
-	messagingv1beta1 "knative.dev/eventing-kafka-broker/control-plane/pkg/apis/messaging/v1beta1"
-	"knative.dev/eventing-kafka-broker/control-plane/pkg/reconciler/channel/resources"
 	eventingduckv1 "knative.dev/eventing/pkg/apis/duck/v1"
 	v1 "knative.dev/eventing/pkg/apis/messaging/v1"
 	"knative.dev/pkg/apis"
 	duckv1 "knative.dev/pkg/apis/duck/v1"
 	"knative.dev/pkg/network"
 
+	messagingv1beta1 "knative.dev/eventing-kafka-broker/control-plane/pkg/apis/messaging/v1beta1"
+	"knative.dev/eventing-kafka-broker/control-plane/pkg/reconciler/channel/resources"
+
 	"knative.dev/eventing-kafka-broker/control-plane/pkg/config"
 	"knative.dev/eventing-kafka-broker/control-plane/pkg/contract"
 	"knative.dev/eventing-kafka-broker/control-plane/pkg/kafka"
@@ -352,6 +353,13 @@ func NewPerChannelService(env *config.Env) *corev1.Service {
 		Spec: corev1.ServiceSpec{
 			Type:         corev1.ServiceTypeExternalName,
 			ExternalName: network.GetServiceHostname(env.IngressName, env.SystemNamespace),
+			Ports: []corev1.ServicePort{
+				{
+					Name:     "http",
+					Protocol: corev1.ProtocolTCP,
+					Port:     80,
+				},
+			},
 		},
 	}
 
diff --git a/test/e2e_new_channel/tracing_test.go b/test/e2e_new_channel/tracing_test.go
index 9800d53f3..576318972 100644
--- a/test/e2e_new_channel/tracing_test.go
+++ b/test/e2e_new_channel/tracing_test.go
@@ -29,7 +29,6 @@ import (
 	tracinghelper "knative.dev/eventing/test/conformance/helpers/tracing"
 	"knative.dev/eventing/test/rekt/resources/channel_impl"
 	"knative.dev/eventing/test/rekt/resources/subscription"
-	"knative.dev/eventing/test/rekt/resources/svc"
 	"knative.dev/pkg/system"
 	_ "knative.dev/pkg/system/testing"
 	"knative.dev/reconciler-test/pkg/environment"
@@ -38,6 +37,7 @@ import (
 	"knative.dev/reconciler-test/pkg/feature"
 	"knative.dev/reconciler-test/pkg/k8s"
 	"knative.dev/reconciler-test/pkg/knative"
+	"knative.dev/reconciler-test/pkg/resources/service"
 
 	"knative.dev/eventing-kafka-broker/test/pkg/tracing"
 )
@@ -72,7 +72,7 @@ func eventWithTraceExported() *feature.Feature {
 	f.Setup("install channel", channel_impl.Install(channelName))
 	f.Setup("install subscription", subscription.Install(subName,
 		subscription.WithChannel(channel_impl.AsRef(channelName)),
-		subscription.WithSubscriber(svc.AsRef(sinkName), ""),
+		subscription.WithSubscriber(service.AsKReference(sinkName), ""),
 	))
 
 	f.Setup("subscription is ready", subscription.IsReady(subName))
diff --git a/test/scripts/first-event-delay.sh b/test/scripts/first-event-delay.sh
index f43cf83f7..09ad366bb 100755
--- a/test/scripts/first-event-delay.sh
+++ b/test/scripts/first-event-delay.sh
@@ -114,7 +114,7 @@ spec:
     spec:
       containers:
       - name: single-heartbeat
-        image: ko://knative.dev/eventing/test/test_images/heartbeats
+        image: ko://knative.dev/eventing/cmd/heartbeats
         args:
         - --period=1
         env:
diff --git a/third_party/eventing-latest/eventing-core.yaml b/third_party/eventing-latest/eventing-core.yaml
index 009a52d05..ca357461e 100644
--- a/third_party/eventing-latest/eventing-core.yaml
+++ b/third_party/eventing-latest/eventing-core.yaml
@@ -16,7 +16,7 @@ kind: Namespace
 metadata:
   name: knative-eventing
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 
 ---
@@ -40,7 +40,7 @@ metadata:
   name: eventing-controller
   namespace: knative-eventing
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 ---
 apiVersion: rbac.authorization.k8s.io/v1
@@ -48,7 +48,7 @@ kind: ClusterRoleBinding
 metadata:
   name: eventing-controller
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 subjects:
   - kind: ServiceAccount
@@ -64,7 +64,7 @@ kind: ClusterRoleBinding
 metadata:
   name: eventing-controller-resolver
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 subjects:
   - kind: ServiceAccount
@@ -80,7 +80,7 @@ kind: ClusterRoleBinding
 metadata:
   name: eventing-controller-source-observer
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 subjects:
   - kind: ServiceAccount
@@ -96,7 +96,7 @@ kind: ClusterRoleBinding
 metadata:
   name: eventing-controller-sources-controller
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 subjects:
   - kind: ServiceAccount
@@ -112,7 +112,7 @@ kind: ClusterRoleBinding
 metadata:
   name: eventing-controller-manipulator
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 subjects:
   - kind: ServiceAccount
@@ -144,7 +144,7 @@ metadata:
   name: pingsource-mt-adapter
   namespace: knative-eventing
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 ---
 apiVersion: rbac.authorization.k8s.io/v1
@@ -152,7 +152,7 @@ kind: ClusterRoleBinding
 metadata:
   name: knative-eventing-pingsource-mt-adapter
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 subjects:
   - kind: ServiceAccount
@@ -184,7 +184,7 @@ metadata:
   name: eventing-webhook
   namespace: knative-eventing
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 ---
 apiVersion: rbac.authorization.k8s.io/v1
@@ -192,7 +192,7 @@ kind: ClusterRoleBinding
 metadata:
   name: eventing-webhook
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 subjects:
   - kind: ServiceAccount
@@ -209,7 +209,7 @@ metadata:
   namespace: knative-eventing
   name: eventing-webhook
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 subjects:
   - kind: ServiceAccount
@@ -225,7 +225,7 @@ kind: ClusterRoleBinding
 metadata:
   name: eventing-webhook-resolver
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 subjects:
   - kind: ServiceAccount
@@ -241,7 +241,7 @@ kind: ClusterRoleBinding
 metadata:
   name: eventing-webhook-podspecable-binding
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 subjects:
   - kind: ServiceAccount
@@ -273,7 +273,7 @@ metadata:
   name: config-br-default-channel
   namespace: knative-eventing
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 data:
   channel-template-spec: |
@@ -301,7 +301,7 @@ metadata:
   name: config-br-defaults
   namespace: knative-eventing
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 data:
   # Configures the default for any Broker that does not specify a spec.config or Broker class.
@@ -338,7 +338,7 @@ metadata:
   name: default-ch-webhook
   namespace: knative-eventing
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 data:
   # Configuration for defaulting channels that do not specify CRD implementations.
@@ -374,7 +374,7 @@ metadata:
   labels:
   annotations:
     knative.dev/example-checksum: "9185c153"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 data:
   _example: |
@@ -420,7 +420,7 @@ metadata:
   labels:
     knative.dev/config-propagation: original
     knative.dev/config-category: eventing
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 data:
   # ALPHA feature: The kreference-group allows you to use the Group field in KReferences.
@@ -512,7 +512,7 @@ metadata:
   name: config-leader-election
   namespace: knative-eventing
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
   annotations:
     knative.dev/example-checksum: "f7948630"
@@ -575,7 +575,7 @@ metadata:
   labels:
     knative.dev/config-propagation: original
     knative.dev/config-category: eventing
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 data:
   # Common configuration for all Knative codebase
@@ -628,7 +628,7 @@ metadata:
   labels:
     knative.dev/config-propagation: original
     knative.dev/config-category: eventing
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
   annotations:
     knative.dev/example-checksum: "f46cf09d"
@@ -702,7 +702,7 @@ metadata:
   name: config-sugar
   namespace: knative-eventing
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
   annotations:
     knative.dev/example-checksum: "62dfac6f"
@@ -761,7 +761,7 @@ metadata:
   labels:
     knative.dev/config-propagation: original
     knative.dev/config-category: eventing
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
   annotations:
     knative.dev/example-checksum: "0492ceb0"
@@ -818,7 +818,7 @@ metadata:
   labels:
     knative.dev/high-availability: "true"
     app.kubernetes.io/component: eventing-controller
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 spec:
   selector:
@@ -829,7 +829,7 @@ spec:
       labels:
         app: eventing-controller
         app.kubernetes.io/component: eventing-controller
-        app.kubernetes.io/version: "20230406-d9910407d"
+        app.kubernetes.io/version: "20230416-a5b4810a2"
         app.kubernetes.io/name: knative-eventing
     spec:
       # To avoid node becoming SPOF, spread our replicas to different nodes.
@@ -847,7 +847,7 @@ spec:
       containers:
         - name: eventing-controller
           terminationMessagePolicy: FallbackToLogsOnError
-          image: gcr.io/knative-nightly/knative.dev/eventing/cmd/controller@sha256:32e6634c7434c6beb535998104b06df5a126eec7eebac04fb0fe23af2c51b809
+          image: gcr.io/knative-nightly/knative.dev/eventing/cmd/controller@sha256:627f4be3a5c5b2548a90055a6be8edfeb4d40ea6ccfa83c663cb39526a5dd62e
           resources:
             requests:
               cpu: 100m
@@ -865,7 +865,7 @@ spec:
               value: knative.dev/eventing
             # APIServerSource
             - name: APISERVER_RA_IMAGE
-              value: gcr.io/knative-nightly/knative.dev/eventing/cmd/apiserver_receive_adapter@sha256:2a1d57fa4d2a3ed142f8d478ea7c361542a789cc1fcd898692d1405c03c741d0
+              value: gcr.io/knative-nightly/knative.dev/eventing/cmd/apiserver_receive_adapter@sha256:4a8a264ab160f8f5a309502d825bfe1f8f9ba8374273b7d28dded429e0b66022
             - name: POD_NAME
               valueFrom:
                 fieldRef:
@@ -935,7 +935,7 @@ metadata:
   namespace: knative-eventing
   labels:
     app.kubernetes.io/component: pingsource-mt-adapter
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     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.
@@ -949,7 +949,7 @@ spec:
       labels:
         !!merge <<: *labels
         app.kubernetes.io/component: pingsource-mt-adapter
-        app.kubernetes.io/version: "20230406-d9910407d"
+        app.kubernetes.io/version: "20230416-a5b4810a2"
         app.kubernetes.io/name: knative-eventing
     spec:
       affinity:
@@ -963,7 +963,7 @@ spec:
       enableServiceLinks: false
       containers:
         - name: dispatcher
-          image: gcr.io/knative-nightly/knative.dev/eventing/cmd/mtping@sha256:48d90015f8b517a9b347d3776453496e232ef53c58b55dc3bdfec57febb068e5
+          image: gcr.io/knative-nightly/knative.dev/eventing/cmd/mtping@sha256:f8a80709cb09f958a16d698b068353b6641167fcb7df8f028e45b7629242fa70
           env:
             - name: SYSTEM_NAMESPACE
               value: ''
@@ -1037,7 +1037,7 @@ metadata:
   namespace: knative-eventing
   labels:
     app.kubernetes.io/component: eventing-webhook
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 spec:
   scaleTargetRef:
@@ -1062,7 +1062,7 @@ metadata:
   namespace: knative-eventing
   labels:
     app.kubernetes.io/component: eventing-webhook
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 spec:
   minAvailable: 80%
@@ -1092,7 +1092,7 @@ metadata:
   namespace: knative-eventing
   labels:
     app.kubernetes.io/component: eventing-webhook
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 spec:
   selector:
@@ -1104,7 +1104,7 @@ spec:
       labels:
         !!merge <<: *labels
         app.kubernetes.io/component: eventing-webhook
-        app.kubernetes.io/version: "20230406-d9910407d"
+        app.kubernetes.io/version: "20230416-a5b4810a2"
         app.kubernetes.io/name: knative-eventing
     spec:
       # To avoid node becoming SPOF, spread our replicas to different nodes.
@@ -1124,7 +1124,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:07d97d1bbb59f0edf9aed346525b1b911155e52c0c5d51dd83093b7b380e0a14
+          image: gcr.io/knative-nightly/knative.dev/eventing/cmd/webhook@sha256:584168154f7016e801324c56f7f46477a2b4aff78a93702f0cd47de28ca43080
           resources:
             requests:
               # taken from serving.
@@ -1197,7 +1197,7 @@ metadata:
   labels:
     role: eventing-webhook
     app.kubernetes.io/component: eventing-webhook
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
   name: eventing-webhook
   namespace: knative-eventing
@@ -1232,7 +1232,7 @@ metadata:
     eventing.knative.dev/source: "true"
     duck.knative.dev/source: "true"
     knative.dev/crd-install: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
   annotations:
     # TODO add schemas and descriptions
@@ -1476,7 +1476,7 @@ metadata:
   labels:
     knative.dev/crd-install: "true"
     duck.knative.dev/addressable: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 spec:
   group: eventing.knative.dev
@@ -1647,7 +1647,7 @@ metadata:
     knative.dev/crd-install: "true"
     messaging.knative.dev/subscribable: "true"
     duck.knative.dev/addressable: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 spec:
   group: messaging.knative.dev
@@ -1921,7 +1921,7 @@ metadata:
     eventing.knative.dev/source: "true"
     duck.knative.dev/source: "true"
     knative.dev/crd-install: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
   name: containersources.sources.knative.dev
 spec:
@@ -2072,7 +2072,7 @@ metadata:
   name: eventtypes.eventing.knative.dev
   labels:
     knative.dev/crd-install: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 spec:
   group: eventing.knative.dev
@@ -2201,7 +2201,7 @@ metadata:
   labels:
     knative.dev/crd-install: "true"
     duck.knative.dev/addressable: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 spec:
   group: flows.knative.dev
@@ -2456,7 +2456,7 @@ metadata:
     eventing.knative.dev/source: "true"
     duck.knative.dev/source: "true"
     knative.dev/crd-install: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
   annotations:
     # TODO add schemas and descriptions
@@ -2645,7 +2645,7 @@ metadata:
   labels:
     knative.dev/crd-install: "true"
     duck.knative.dev/addressable: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 spec:
   group: flows.knative.dev
@@ -2966,7 +2966,7 @@ metadata:
     duck.knative.dev/source: "true"
     duck.knative.dev/binding: "true"
     knative.dev/crd-install: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
   name: sinkbindings.sources.knative.dev
 spec:
@@ -3154,7 +3154,7 @@ metadata:
   name: subscriptions.messaging.knative.dev
   labels:
     knative.dev/crd-install: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 spec:
   group: messaging.knative.dev
@@ -3365,7 +3365,7 @@ metadata:
   name: triggers.eventing.knative.dev
   labels:
     knative.dev/crd-install: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 spec:
   group: eventing.knative.dev
@@ -3549,7 +3549,7 @@ kind: ClusterRole
 metadata:
   name: addressable-resolver
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 aggregationRule:
   clusterRoleSelectors:
@@ -3563,7 +3563,7 @@ metadata:
   name: service-addressable-resolver
   labels:
     duck.knative.dev/addressable: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 # Do not use this role directly. These rules will be added to the "addressable-resolver" role.
 rules:
@@ -3582,7 +3582,7 @@ metadata:
   name: serving-addressable-resolver
   labels:
     duck.knative.dev/addressable: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 # Do not use this role directly. These rules will be added to the "addressable-resolver" role.
 rules:
@@ -3604,7 +3604,7 @@ metadata:
   name: channel-addressable-resolver
   labels:
     duck.knative.dev/addressable: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 # Do not use this role directly. These rules will be added to the "addressable-resolver" role.
 rules:
@@ -3630,7 +3630,7 @@ metadata:
   name: broker-addressable-resolver
   labels:
     duck.knative.dev/addressable: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 # Do not use this role directly. These rules will be added to the "addressable-resolver" role.
 rules:
@@ -3650,7 +3650,7 @@ metadata:
   name: flows-addressable-resolver
   labels:
     duck.knative.dev/addressable: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 # Do not use this role directly. These rules will be added to the "addressable-resolver" role.
 rules:
@@ -3686,7 +3686,7 @@ kind: ClusterRole
 metadata:
   name: eventing-broker-filter
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 rules:
   - apiGroups:
@@ -3712,7 +3712,7 @@ kind: ClusterRole
 metadata:
   name: eventing-broker-ingress
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 rules:
   - apiGroups:
@@ -3729,7 +3729,7 @@ kind: ClusterRole
 metadata:
   name: eventing-config-reader
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 rules:
   - apiGroups:
@@ -3762,7 +3762,7 @@ kind: ClusterRole
 metadata:
   name: channelable-manipulator
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 aggregationRule:
   clusterRoleSelectors:
@@ -3776,7 +3776,7 @@ metadata:
   name: meta-channelable-manipulator
   labels:
     duck.knative.dev/channelable: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 # Do not use this role directly. These rules will be added to the "channelable-manipulator" role.
 rules:
@@ -3815,7 +3815,7 @@ metadata:
   name: knative-eventing-namespaced-admin
   labels:
     rbac.authorization.k8s.io/aggregate-to-admin: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 rules:
   - apiGroups: ["eventing.knative.dev"]
@@ -3828,7 +3828,7 @@ metadata:
   name: knative-messaging-namespaced-admin
   labels:
     rbac.authorization.k8s.io/aggregate-to-admin: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 rules:
   - apiGroups: ["messaging.knative.dev"]
@@ -3841,7 +3841,7 @@ metadata:
   name: knative-flows-namespaced-admin
   labels:
     rbac.authorization.k8s.io/aggregate-to-admin: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 rules:
   - apiGroups: ["flows.knative.dev"]
@@ -3854,7 +3854,7 @@ metadata:
   name: knative-sources-namespaced-admin
   labels:
     rbac.authorization.k8s.io/aggregate-to-admin: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 rules:
   - apiGroups: ["sources.knative.dev"]
@@ -3867,7 +3867,7 @@ metadata:
   name: knative-bindings-namespaced-admin
   labels:
     rbac.authorization.k8s.io/aggregate-to-admin: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 rules:
   - apiGroups: ["bindings.knative.dev"]
@@ -3880,7 +3880,7 @@ metadata:
   name: knative-eventing-namespaced-edit
   labels:
     rbac.authorization.k8s.io/aggregate-to-view: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 rules:
   - apiGroups: ["eventing.knative.dev", "messaging.knative.dev", "sources.knative.dev", "flows.knative.dev", "bindings.knative.dev"]
@@ -3893,7 +3893,7 @@ metadata:
   name: knative-eventing-namespaced-view
   labels:
     rbac.authorization.k8s.io/aggregate-to-view: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 rules:
   - apiGroups: ["eventing.knative.dev", "messaging.knative.dev", "sources.knative.dev", "flows.knative.dev", "bindings.knative.dev"]
@@ -3920,7 +3920,7 @@ kind: ClusterRole
 metadata:
   name: knative-eventing-controller
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 rules:
   - apiGroups:
@@ -4055,7 +4055,7 @@ kind: ClusterRole
 metadata:
   name: knative-eventing-pingsource-mt-adapter
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 rules:
   - apiGroups:
@@ -4122,7 +4122,7 @@ kind: ClusterRole
 metadata:
   name: podspecable-binding
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 aggregationRule:
   clusterRoleSelectors:
@@ -4136,7 +4136,7 @@ metadata:
   name: builtin-podspecable-binding
   labels:
     duck.knative.dev/podspecable: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 # Do not use this role directly. These rules will be added to the "podspecable-binding role.
 rules:
@@ -4182,7 +4182,7 @@ kind: ClusterRole
 metadata:
   name: source-observer
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 aggregationRule:
   clusterRoleSelectors:
@@ -4196,7 +4196,7 @@ metadata:
   name: eventing-sources-source-observer
   labels:
     duck.knative.dev/source: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 # Do not use this role directly. These rules will be added to the "source-observer" role.
 rules:
@@ -4232,7 +4232,7 @@ kind: ClusterRole
 metadata:
   name: knative-eventing-sources-controller
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 rules:
   - apiGroups:
@@ -4318,7 +4318,7 @@ kind: ClusterRole
 metadata:
   name: knative-eventing-webhook
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 rules:
   # For watching logging configuration and getting certs.
@@ -4428,7 +4428,7 @@ metadata:
   namespace: knative-eventing
   name: knative-eventing-webhook
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 rules:
   # For manipulating certs into secrets.
@@ -4464,7 +4464,7 @@ kind: ValidatingWebhookConfiguration
 metadata:
   name: config.webhook.eventing.knative.dev
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 webhooks:
   - admissionReviewVersions: ["v1", "v1beta1"]
@@ -4499,7 +4499,7 @@ kind: MutatingWebhookConfiguration
 metadata:
   name: webhook.eventing.knative.dev
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 webhooks:
   - admissionReviewVersions: ["v1", "v1beta1"]
@@ -4532,7 +4532,7 @@ kind: ValidatingWebhookConfiguration
 metadata:
   name: validation.webhook.eventing.knative.dev
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 webhooks:
   - admissionReviewVersions: ["v1", "v1beta1"]
@@ -4566,7 +4566,7 @@ metadata:
   name: eventing-webhook-certs
   namespace: knative-eventing
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 # The data is populated at install time.
 
@@ -4590,7 +4590,7 @@ kind: MutatingWebhookConfiguration
 metadata:
   name: sinkbindings.webhook.sources.knative.dev
   labels:
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     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 68ea40734..64cc4e57e 100644
--- a/third_party/eventing-latest/eventing-crds.yaml
+++ b/third_party/eventing-latest/eventing-crds.yaml
@@ -20,7 +20,7 @@ metadata:
     eventing.knative.dev/source: "true"
     duck.knative.dev/source: "true"
     knative.dev/crd-install: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
   annotations:
     # TODO add schemas and descriptions
@@ -264,7 +264,7 @@ metadata:
   labels:
     knative.dev/crd-install: "true"
     duck.knative.dev/addressable: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 spec:
   group: eventing.knative.dev
@@ -435,7 +435,7 @@ metadata:
     knative.dev/crd-install: "true"
     messaging.knative.dev/subscribable: "true"
     duck.knative.dev/addressable: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 spec:
   group: messaging.knative.dev
@@ -709,7 +709,7 @@ metadata:
     eventing.knative.dev/source: "true"
     duck.knative.dev/source: "true"
     knative.dev/crd-install: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
   name: containersources.sources.knative.dev
 spec:
@@ -860,7 +860,7 @@ metadata:
   name: eventtypes.eventing.knative.dev
   labels:
     knative.dev/crd-install: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 spec:
   group: eventing.knative.dev
@@ -989,7 +989,7 @@ metadata:
   labels:
     knative.dev/crd-install: "true"
     duck.knative.dev/addressable: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 spec:
   group: flows.knative.dev
@@ -1244,7 +1244,7 @@ metadata:
     eventing.knative.dev/source: "true"
     duck.knative.dev/source: "true"
     knative.dev/crd-install: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
   annotations:
     # TODO add schemas and descriptions
@@ -1433,7 +1433,7 @@ metadata:
   labels:
     knative.dev/crd-install: "true"
     duck.knative.dev/addressable: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 spec:
   group: flows.knative.dev
@@ -1754,7 +1754,7 @@ metadata:
     duck.knative.dev/source: "true"
     duck.knative.dev/binding: "true"
     knative.dev/crd-install: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
   name: sinkbindings.sources.knative.dev
 spec:
@@ -1942,7 +1942,7 @@ metadata:
   name: subscriptions.messaging.knative.dev
   labels:
     knative.dev/crd-install: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 spec:
   group: messaging.knative.dev
@@ -2153,7 +2153,7 @@ metadata:
   name: triggers.eventing.knative.dev
   labels:
     knative.dev/crd-install: "true"
-    app.kubernetes.io/version: "20230406-d9910407d"
+    app.kubernetes.io/version: "20230416-a5b4810a2"
     app.kubernetes.io/name: knative-eventing
 spec:
   group: eventing.knative.dev
diff --git a/vendor/knative.dev/eventing/test/README.md b/vendor/knative.dev/eventing/test/README.md
index ef7283741..ca18751e6 100644
--- a/vendor/knative.dev/eventing/test/README.md
+++ b/vendor/knative.dev/eventing/test/README.md
@@ -136,7 +136,7 @@ build and push the test images used by the e2e tests. It requires:
   to be set
 - You to be
   [authenticated with your `KO_DOCKER_REPO`](https://github.com/knative/serving/blob/main/DEVELOPMENT.md#environment-setup)
-- [`docker`](https://docs.docker.com/install/) to be installed
+- [`docker`](https://docs.docker.com/get-docker/) to be installed
 
 `PLATFORM` environment variable is optional. If it is specified, test images
 will be built for specific hardware architecture, according to its value (for
diff --git a/vendor/knative.dev/eventing/test/e2e-common.sh b/vendor/knative.dev/eventing/test/e2e-common.sh
index b3e96560b..92b3378da 100644
--- a/vendor/knative.dev/eventing/test/e2e-common.sh
+++ b/vendor/knative.dev/eventing/test/e2e-common.sh
@@ -65,6 +65,9 @@ export SYSTEM_NAMESPACE
 SYSTEM_NAMESPACE="${SYSTEM_NAMESPACE:-"knative-eventing-"$(head -c 128 < \
   /dev/urandom | LC_CTYPE=C tr -dc 'a-z0-9' | fold -w 10 | head -n 1)}"
 
+CERT_MANAGER_NAMESPACE="cert-manager"
+export CERT_MANAGER_NAMESPACE
+
 # Latest release. If user does not supply this as a flag, the latest
 # tagged release on the current branch will be used.
 readonly LATEST_RELEASE_VERSION=$(latest_version)
@@ -82,6 +85,8 @@ function knative_setup() {
   enable_sugar || fail_test "Could not enable Sugar Controller Injection"
 
   unleash_duck || fail_test "Could not unleash the chaos duck"
+
+  install_cert_manager || fail_test "Could not install Cert Manager"
 }
 
 function scale_controlplane() {
@@ -372,3 +377,10 @@ function wait_for_file() {
   done
   return 0
 }
+
+function install_cert_manager() {
+  kubectl apply -f third_party/cert-manager/01-cert-manager.crds.yaml
+  kubectl apply -f third_party/cert-manager/02-cert-manager.yaml
+
+  wait_until_pods_running "$CERT_MANAGER_NAMESPACE" || fail_test "Failed to install cert manager"
+}
diff --git a/vendor/knative.dev/eventing/test/rekt/features/channel/features.go b/vendor/knative.dev/eventing/test/rekt/features/channel/features.go
index 0384403ac..1a6b6bf19 100644
--- a/vendor/knative.dev/eventing/test/rekt/features/channel/features.go
+++ b/vendor/knative.dev/eventing/test/rekt/features/channel/features.go
@@ -38,7 +38,6 @@ import (
 	"knative.dev/eventing/test/rekt/resources/channel_impl"
 	"knative.dev/eventing/test/rekt/resources/containersource"
 	"knative.dev/eventing/test/rekt/resources/delivery"
-	"knative.dev/eventing/test/rekt/resources/pingsource"
 	"knative.dev/eventing/test/rekt/resources/source"
 	"knative.dev/eventing/test/rekt/resources/subscription"
 )
@@ -53,12 +52,10 @@ func ChannelChain(length int, createSubscriberFn func(ref *duckv1.KReference, ur
 		name := feature.MakeRandomK8sName(fmt.Sprintf("channel-%04d", i))
 		channels = append(channels, name)
 		f.Setup("install channel", channel_impl.Install(name))
-		f.Requirement("channel is ready", channel_impl.IsReady(name))
+		f.Setup("channel is ready", channel_impl.IsReady(name))
 	}
 
 	f.Setup("install sink", eventshub.Install(sink, eventshub.StartReceiver))
-	// attach the first channel to the source
-	f.Setup("install containersource", containersource.Install(cs, pingsource.WithSink(channel_impl.AsRef(channels[0]), "")))
 
 	// use the rest for the chain
 	for i := 0; i < length; i++ {
@@ -75,7 +72,12 @@ func ChannelChain(length int, createSubscriberFn func(ref *duckv1.KReference, ur
 				createSubscriberFn(channel_impl.AsRef(channels[i+1]), ""),
 			))
 		}
+
+		f.Setup("subscription is ready", subscription.IsReady(sub))
 	}
+
+	// attach the first channel to the source
+	f.Requirement("install containersource", containersource.Install(cs, containersource.WithSink(channel_impl.AsRef(channels[0]), "")))
 	f.Requirement("containersource goes ready", containersource.IsReady(cs))
 
 	f.Assert("chained channels relay events", assert.OnStore(sink).MatchEvent(test.HasType("dev.knative.eventing.samples.heartbeat")).AtLeast(1))
diff --git a/vendor/knative.dev/eventing/test/rekt/resources/containersource/containersource.yaml b/vendor/knative.dev/eventing/test/rekt/resources/containersource/containersource.yaml
index d4d6803d6..6dcdd3c3d 100644
--- a/vendor/knative.dev/eventing/test/rekt/resources/containersource/containersource.yaml
+++ b/vendor/knative.dev/eventing/test/rekt/resources/containersource/containersource.yaml
@@ -49,7 +49,7 @@ spec:
     spec:
       containers:
       - name: heartbeats
-        image: ko://knative.dev/eventing/test/test_images/heartbeats
+        image: ko://knative.dev/eventing/cmd/heartbeats
         imagePullPolicy: IfNotPresent
         args:
         - {{ .args }}
diff --git a/vendor/knative.dev/eventing/test/rekt/resources/svc/service.go b/vendor/knative.dev/eventing/test/rekt/resources/svc/service.go
deleted file mode 100644
index 8db20bebd..000000000
--- a/vendor/knative.dev/eventing/test/rekt/resources/svc/service.go
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
-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 svc
-
-import (
-	v1 "k8s.io/api/core/v1"
-	"k8s.io/apimachinery/pkg/util/intstr"
-	"knative.dev/reconciler-test/pkg/feature"
-	"knative.dev/reconciler-test/pkg/resources/service"
-)
-
-// Deprecated, use reconciler-test/pkg/resources/service
-var Gvr = service.GVR
-
-// Install will create a Service resource mapping :80 to :8080 on the provided
-// selector for pods.
-// Deprecated, use reconciler-test/pkg/resources/service
-func Install(name, selectorKey, selectorValue string) feature.StepFn {
-	return service.Install(name,
-		service.WithSelectors(map[string]string{selectorKey: selectorValue}),
-		service.WithPorts([]v1.ServicePort{{
-			Port:       80,
-			TargetPort: intstr.FromInt(8080),
-		}}))
-}
-
-// AsRef returns a KRef for a Service without namespace.
-// Deprecated, use reconciler-test/pkg/resources/service
-var AsRef = service.AsKReference
-
-// Deprecated, use reconciler-test/pkg/resources/service
-var AsTrackerReference = service.AsTrackerReference
-
-// Deprecated, use reconciler-test/pkg/resources/service
-var AsDestinationRef = service.AsDestinationRef
-
-// Address
-// Deprecated, use reconciler-test/pkg/resources/service
-var Address = service.Address
diff --git a/vendor/knative.dev/eventing/test/test_images/heartbeats/main.go b/vendor/knative.dev/eventing/test/test_images/heartbeats/main.go
deleted file mode 100644
index 1ef0544c2..000000000
--- a/vendor/knative.dev/eventing/test/test_images/heartbeats/main.go
+++ /dev/null
@@ -1,154 +0,0 @@
-/*
-Copyright 2019 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 main
-
-import (
-	"context"
-	"encoding/json"
-	"flag"
-	"fmt"
-	"log"
-	"os"
-	"strconv"
-	"time"
-
-	cloudevents "github.com/cloudevents/sdk-go/v2"
-	"github.com/kelseyhightower/envconfig"
-	"go.opencensus.io/plugin/ochttp"
-	duckv1 "knative.dev/pkg/apis/duck/v1"
-	"knative.dev/pkg/tracing/propagation/tracecontextb3"
-)
-
-type Heartbeat struct {
-	Sequence int    `json:"id"`
-	Msg      string `json:"msg"`
-}
-
-var (
-	sink      string
-	msg       string
-	periodStr string
-)
-
-func init() {
-	flag.StringVar(&sink, "sink", "", "the host url to heartbeat to")
-	flag.StringVar(&msg, "msg", "", "the data message")
-	flag.StringVar(&periodStr, "period", "5", "the number of seconds between heartbeats")
-}
-
-type envConfig struct {
-	// Sink URL where to send heartbeat cloudevents
-	Sink string `envconfig:"K_SINK"`
-
-	// CEOverrides are the CloudEvents overrides to be applied to the outbound event.
-	CEOverrides string `envconfig:"K_CE_OVERRIDES"`
-
-	// Name of this pod.
-	Name string `envconfig:"POD_NAME" required:"true"`
-
-	// Namespace this pod exists in.
-	Namespace string `envconfig:"POD_NAMESPACE" required:"true"`
-
-	OneShot bool `envconfig:"ONE_SHOT" default:"false"`
-}
-
-func main() {
-	flag.Parse()
-
-	var env envConfig
-	if err := envconfig.Process("", &env); err != nil {
-		log.Printf("[ERROR] Failed to process env var: %s", err)
-		os.Exit(1)
-	}
-
-	if env.Sink != "" {
-		sink = env.Sink
-	}
-
-	var ceOverrides *duckv1.CloudEventOverrides
-	if len(env.CEOverrides) > 0 {
-		overrides := duckv1.CloudEventOverrides{}
-		err := json.Unmarshal([]byte(env.CEOverrides), &overrides)
-		if err != nil {
-			log.Printf("[ERROR] Unparseable CloudEvents overrides %s: %v", env.CEOverrides, err)
-			os.Exit(1)
-		}
-		ceOverrides = &overrides
-	}
-
-	p, err := cloudevents.NewHTTP(
-		cloudevents.WithTarget(sink),
-		cloudevents.WithRoundTripper(&ochttp.Transport{
-			Propagation: tracecontextb3.TraceContextEgress,
-		}))
-	if err != nil {
-		log.Fatalf("failed to create protocol: %s", err.Error())
-	}
-
-	c, err := cloudevents.NewClient(p, cloudevents.WithUUIDs(), cloudevents.WithTimeNow())
-	if err != nil {
-		log.Fatalf("failed to create client: %s", err.Error())
-	}
-
-	var period time.Duration
-	if p, err := strconv.Atoi(periodStr); err != nil {
-		period = time.Duration(5) * time.Second
-	} else {
-		period = time.Duration(p) * time.Second
-	}
-
-	source := fmt.Sprintf("https://knative.dev/eventing/test/heartbeats/#%s/%s", env.Namespace, env.Name)
-	log.Printf("Heartbeats Source: %s", source)
-
-	hb := &Heartbeat{
-		Sequence: 0,
-		Msg:      msg,
-	}
-	ticker := time.NewTicker(period)
-	for {
-		hb.Sequence++
-
-		event := cloudevents.NewEvent()
-		event.SetType("dev.knative.eventing.samples.heartbeat")
-		event.SetSource(source)
-		event.SetExtension("the", 42)
-		event.SetExtension("heart", "yes")
-		event.SetExtension("beats", true)
-
-		if ceOverrides != nil && ceOverrides.Extensions != nil {
-			for n, v := range ceOverrides.Extensions {
-				event.SetExtension(n, v)
-			}
-		}
-
-		if err := event.SetData(cloudevents.ApplicationJSON, hb); err != nil {
-			log.Fatalf("failed to set cloudevents data: %s", err.Error())
-		}
-
-		log.Printf("sending cloudevent to %s", sink)
-		if result := c.Send(context.Background(), event); !cloudevents.IsACK(result) {
-			log.Printf("failed to send cloudevent: %s", result.Error())
-		}
-
-		if env.OneShot {
-			return
-		}
-
-		// Wait for next tick
-		<-ticker.C
-	}
-}
diff --git a/vendor/knative.dev/eventing/test/test_images/heartbeats/pod.yaml b/vendor/knative.dev/eventing/test/test_images/heartbeats/pod.yaml
deleted file mode 100644
index 5b212ebe1..000000000
--- a/vendor/knative.dev/eventing/test/test_images/heartbeats/pod.yaml
+++ /dev/null
@@ -1,9 +0,0 @@
-apiVersion: v1
-kind: Pod
-metadata:
-  name: heartbeats
-spec:
-  containers:
-    - name: heartbeats
-      image: ko://knative.dev/eventing/test/test_images/heartbeats
-
diff --git a/vendor/knative.dev/reconciler-test/pkg/resources/job/job.yaml b/vendor/knative.dev/reconciler-test/pkg/resources/job/job.yaml
index 2269966a9..ec894aad8 100644
--- a/vendor/knative.dev/reconciler-test/pkg/resources/job/job.yaml
+++ b/vendor/knative.dev/reconciler-test/pkg/resources/job/job.yaml
@@ -12,7 +12,7 @@ metadata:
   {{ if .labels }}
   labels:
     {{ range $key, $value := .labels }}
-    {{ $key }}: {{ $value }}
+    {{ $key }}: "{{ $value }}"
     {{ end }}
   {{ end }}
 spec:
@@ -34,7 +34,7 @@ spec:
       {{ if .podlabels }}
       labels:
         {{ range $key, $value := .podlabels }}
-        {{ $key }}: {{ $value }}
+        {{ $key }}: "{{ $value }}"
         {{ end }}
       {{ end }}
     {{ end }}
diff --git a/vendor/knative.dev/reconciler-test/pkg/resources/secret/secret.yaml b/vendor/knative.dev/reconciler-test/pkg/resources/secret/secret.yaml
index bb828eeea..d5a3f194a 100644
--- a/vendor/knative.dev/reconciler-test/pkg/resources/secret/secret.yaml
+++ b/vendor/knative.dev/reconciler-test/pkg/resources/secret/secret.yaml
@@ -12,7 +12,7 @@ metadata:
   {{ if .labels }}
   labels:
     {{ range $key, $value := .labels }}
-    {{ $key }}: {{ $value }}
+    {{ $key }}: "{{ $value }}"
     {{ end }}
   {{ end }}
 {{ if .type }}
diff --git a/vendor/knative.dev/reconciler-test/pkg/resources/service/service.yaml b/vendor/knative.dev/reconciler-test/pkg/resources/service/service.yaml
index 90646a409..d8c312ad0 100644
--- a/vendor/knative.dev/reconciler-test/pkg/resources/service/service.yaml
+++ b/vendor/knative.dev/reconciler-test/pkg/resources/service/service.yaml
@@ -26,14 +26,14 @@ metadata:
   {{ if .labels }}
   labels:
     {{ range $key, $value := .labels }}
-    {{ $key }}: {{ $value }}
+    {{ $key }}: "{{ $value }}"
     {{ end }}
   {{ end }}
 spec:
   {{ if .selectors }}
   selector:
     {{ range $key, $value := .selectors }}
-    {{ $key }}: {{ $value }}
+    {{ $key }}: "{{ $value }}"
     {{ end }}
   {{ end }}
   ports: