-
Notifications
You must be signed in to change notification settings - Fork 592
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Bringing ContainerSource back #2824
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Produced via:
gofmt -s -w $(find -path './vendor' -prune -o -path './third_party' -prune -o -type f -name '*.go' -print)
/retest |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Produced via:
gofmt -s -w $(find -path './vendor' -prune -o -path './third_party' -prune -o -type f -name '*.go' -print)
/retest
…On Mon, Mar 23, 2020 at 5:54 PM Knative Prow Robot ***@***.***> wrote:
@nachocano <https://github.com/nachocano>: The following tests *failed*,
say /retest to rerun all failed tests:
Test name Commit Details Rerun command
pull-knative-eventing-unit-tests f7452f4
<f7452f4>
link
<https://prow.knative.dev/view/gcs/knative-prow/pr-logs/pull/knative_eventing/2824/pull-knative-eventing-unit-tests/1242245049702420484> /test
pull-knative-eventing-unit-tests
pull-knative-eventing-go-coverage 34635cc
<34635cc>
link
<https://prow.knative.dev/view/gcs/knative-prow/pr-logs/pull/knative_eventing/2824/pull-knative-eventing-go-coverage/1242252221354086402> /test
pull-knative-eventing-go-coverage
Full PR test history
<https://gubernator.knative.dev/pr/knative_eventing/2824>. Your PR
dashboard <https://gubernator.knative.dev/pr/nachocano>.
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>.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#2824 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ABD65DALIOAU4C7LLO7V44DRJAAELANCNFSM4LSIRB3Q>
.
|
I think we need to have agreement before this can just land. /approve cancel |
@n3wscott the agreement was documented here: #2739. BTW nothing is set in stone, if we later on decide this is useless, we can certainly revisit. /fyi @grantr @lionelvillard @vaikas as WG leads |
at the very least this needs to use sink binding internally. |
nit: can we call it DeploymentSource to better align with the syntactic sugar it represents? fwiw I think Serving's Service resource is useful precedent for a new abstraction to simplify the resource model 🤷♂ |
Because this is a source, it should go to the sources WG. That is the point of having a Sources WG. |
Getting the container source back is fine with me as clearly there's a need from the users/developers to make it super trivial to create sources. However, before we move too much forward with some of the proposed changes that I saw on the issue, I think we need a further discussion about some of the proposed features. For example imho DLQ does not belong imho to the source, just like fanout doesn't belong there and so forth. There should be a clean / clear separation of concerns and baking more things into what a source is seems wrong to me. We should discuss that in the context of Sources WG. |
Maybe that can be done in a follow up. I'm not entirely convinced that is the right approach, it will create an IMO unnecessary extra object. |
The implementation might change in the near future, so we'd rather not couple it with Deployments. ContainerSource is a (widely) popular name already, I think we should keep it.
@mattmoor just to be sure, you consider Serving's Service is a precedent in favor of having this ContainerSource abstraction? |
Yes, I wasn't planning on adding any of those extra bits yet, they are not included in this PR at all. |
If you do not use SinkBinding, ContainerSource is duplicating all the logic of SinkBinding. So that is not ideal. |
hmm, I think we are just doing the same for ceOverrides serialization and setting the env variables in the containers. That can be easily moved out to some util. I wonder if the ceOverrides marshalling thing is actually better to have it in pkg so that different sources can easily leverage it? |
Implemented it using SinkBinding as suggested by folks. Updated UTs, etc... /assign @n3wscott |
cmd/webhook/main.go
Outdated
@@ -86,6 +86,7 @@ var ourTypes = map[schema.GroupVersionKind]resourcesemantics.GenericCRD{ | |||
sourcesv1alpha1.SchemeGroupVersion.WithKind("ApiServerSource"): &sourcesv1alpha1.ApiServerSource{}, | |||
sourcesv1alpha1.SchemeGroupVersion.WithKind("PingSource"): &sourcesv1alpha1.PingSource{}, | |||
sourcesv1alpha1.SchemeGroupVersion.WithKind("SinkBinding"): &sourcesv1alpha1.SinkBinding{}, | |||
sourcesv1alpha1.SchemeGroupVersion.WithKind("ContainerSource"): &sourcesv1alpha1.ContainerSource{}, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
v1alpha2
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
sounds good, will do
type: date | ||
JSONPath: .metadata.creationTimestamp | ||
versions: | ||
- name: v1alpha1 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
v1alpha2
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ack! will do
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lets move it to v1alpha2 and I will approve
Perfect, will do! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Produced via:
gofmt -s -w $(find -path './vendor' -prune -o -path './third_party' -prune -o -type f -name '*.go' -print)
The following is the coverage report on the affected files.
|
@nachocano: The following test failed, say
Full PR test history. Your PR dashboard. 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. |
/lgtm 🙃 |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: n3wscott, nachocano The full list of commands accepted by this bot can be found here. The pull request process is described here
Needs approval from an approver in each of these files:
Approvers can indicate their approval by writing |
Highly appreciated @n3wscott !!! |
Fixes #2755
Proposed Changes
sources.knative.dev
API group and as v1alpha2.spec.template
. Updated types to be a valid duckv1.Source. Updated validation, defaults, reconciler to use genReconciler, and some other cleanups.Release Note
Docs
knative/docs#2332
/cc @lionelvillard @grantr @vaikas @n3wscott