Skip to content

Remove Legacy Client from Eventing#2693

Merged
knative-prow-robot merged 2 commits intoknative:masterfrom
n3wscott:rm-leg-client
Mar 4, 2020
Merged

Remove Legacy Client from Eventing#2693
knative-prow-robot merged 2 commits intoknative:masterfrom
n3wscott:rm-leg-client

Conversation

@n3wscott
Copy link
Copy Markdown
Contributor

@n3wscott n3wscott commented Mar 3, 2020

Fixes #2312

Proposed Changes

The following resources are removed:

  • CronJobSource/sources.eventing.knative.dev
  • ApiServerSource/sources.eventing.knative.dev
  • SinkBinding/sources.eventing.knative.dev
  • ContainerSource/sources.eventing.knative.dev

Release Note

The following resources are removed:

- CronJobSource/sources.eventing.knative.dev
- ApiServerSource/sources.eventing.knative.dev
- SinkBinding/sources.eventing.knative.dev
- ContainerSource/sources.eventing.knative.dev

Required action to remove the legacysinkbindings webhook:

kubectl delete mutatingwebhookconfiguration legacysinkbindings.webhook.sources.knative.dev

Docs
tracked by knative/docs#2267

@googlebot googlebot added the cla: yes Indicates the PR's author has signed the CLA. label Mar 3, 2020
@knative-prow-robot knative-prow-robot added the size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. label Mar 3, 2020
@n3wscott n3wscott changed the title Rm leg client Remove Legacy Client from Eventing Mar 3, 2020
@knative-prow-robot knative-prow-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Mar 3, 2020
@knative-prow-robot knative-prow-robot added the area/test-and-release Test infrastructure, tests or release label Mar 3, 2020
@knative-metrics-robot
Copy link
Copy Markdown

The following is the coverage report on the affected files.
Say /test pull-knative-eventing-go-coverage to re-run this coverage report

File Old Coverage New Coverage Delta
pkg/apis/eventing/v1alpha1/test_helper.go 79.5% 85.4% 5.8
pkg/reconciler/reconciler.go 8.7% 4.5% -4.2

@knative-prow-robot
Copy link
Copy Markdown
Contributor

@n3wscott: The following test failed, say /retest to rerun all failed tests:

Test name Commit Details Rerun command
pull-knative-eventing-go-coverage 9fee96f link /test pull-knative-eventing-go-coverage

Full PR test history. Your PR dashboard.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@vaikas
Copy link
Copy Markdown
Contributor

vaikas commented Mar 4, 2020

/lgtm
/approve

/hold

until tmw mid morning to make sure folks get a chance to take a looksie.

@knative-prow-robot knative-prow-robot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Mar 4, 2020
@knative-prow-robot knative-prow-robot added the lgtm Indicates that a PR is ready to be merged. label Mar 4, 2020
@knative-prow-robot
Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: n3wscott, vaikas

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@nachocano
Copy link
Copy Markdown
Contributor

Just for the record, as I mentioned it multiple times in the Sources WG meetings.

I think it was a mistake to deprecate ContainerSource, arguably one of the most widely used Sources out there. I still see SinkBinding as a useful construct to create Sources and not as a Source itself.
I don't think we are making the lives easier for our users but rather ourselves by removing ContainerSource.

Having said that and given that it seems that I'm the only one in the community who thinks this, there must be something I'm missing from the big picture. Therefore, I disagree and commit, I'm not holding off this PR.

@lionelvillard
Copy link
Copy Markdown
Contributor

@nachocano what can you do with ContainerSource that you can't do with SinkBinding?

@n3wscott
Copy link
Copy Markdown
Contributor Author

n3wscott commented Mar 4, 2020

@nachocano what can you do with ContainerSource that you can't do with SinkBinding?

there is nothing you can do with ContainerSource that you can't do with SinkBinding, plus a bunch more things are supported in SinkBinding because there is no component between you and the container you want to ship. And SinkBinding allows you to target CRDs like Serving Services and that just works out of the box.

@lionelvillard
Copy link
Copy Markdown
Contributor

I think ContainerSource is useful, simpler to use, and can be easily be extended to support multiple type of Podsceable (like Kn Service).

@nachocano What about moving ContainerSource over to eventing-contrib ?

@nachocano
Copy link
Copy Markdown
Contributor

nachocano commented Mar 4, 2020

@nachocano what can you do with ContainerSource that you can't do with SinkBinding?

IMO provide a higher level abstraction for users and abstract them away from core K8s constructs (e.g., deployments, statefulsets, replicasets, etc.). With ContainerSource they just create one thing instead of two (the SinkBinding and the Podspecable subject). Those are my main reasons, and also the fact that ContainerSource is widely popular already...

@nachocano
Copy link
Copy Markdown
Contributor

I think ContainerSource is useful, simpler to use, and can be easily be extended to support multiple type of Podsceable (like Kn Service).

Strongly agree

@nachocano What about moving ContainerSource over to eventing-contrib ?

+1 and I can take care of the move

@n3wscott
Copy link
Copy Markdown
Contributor Author

n3wscott commented Mar 4, 2020

I think ContainerSource is useful, simpler to use, and can be easily be extended to support multiple type of Podsceable (like Kn Service).

Strongly agree

@nachocano What about moving ContainerSource over to eventing-contrib ?

+1 and I can take care of the move

The code is still in the release branches. That work should not block this PR.

@nachocano
Copy link
Copy Markdown
Contributor

The code is still in the release branches. That work should not block this PR.

Correct, nobody is blocking this PR

@n3wscott
Copy link
Copy Markdown
Contributor Author

n3wscott commented Mar 4, 2020

I think ContainerSource is useful, simpler to use, and can be easily be extended to support multiple type of Podsceable (like Kn Service).

Strongly agree

@nachocano What about moving ContainerSource over to eventing-contrib ?

+1 and I can take care of the move

Maybe a better place is knative-sandbox.

@n3wscott
Copy link
Copy Markdown
Contributor Author

n3wscott commented Mar 4, 2020

/unhold

@knative-prow-robot knative-prow-robot removed the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Mar 4, 2020
@knative-prow-robot knative-prow-robot merged commit 4d1c20b into knative:master Mar 4, 2020
@nachocano
Copy link
Copy Markdown
Contributor

@nachocano What about moving ContainerSource over to eventing-contrib ?

+1 and I can take care of the move

@lionelvillard I was starting with the migration. But putting more thought to it and reading the migration plan, it feels that moving it to eventing-contrib is not the right thing to do. IMO this should still be part of core. SinkBinding + Deployment worsens the UX.
Will create a new issue and add some of my rationale. I want to get input from all eventing leaders and folks from the community.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. area/test-and-release Test infrastructure, tests or release cla: yes Indicates the PR's author has signed the CLA. lgtm Indicates that a PR is ready to be merged. size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Followup on sources api migration.

7 participants