Another attempt to add an E2E test#178
Conversation
This is a copy of the eventing E2E test which checks if KubernetesEventSource can deliver an event to a sink.
Dep added a bunch of non-go vendored files from eventing/cmd/* for some reason.
This was fixed in Istio 1.0.
It isn't installed by default for e2e tests.
This copies over the k8sevents image, some other necessary utility classes, and updates the location the e2e tests look for images to the published eventing-sources image path.
Update the test import in k8s_events_test.go to eventing-sources/test instead of eventing/test. This fixes an error around duplicated e2e test flags and ensures we aren't reliant on implementation details of the eventing repo's tests.
|
/test pull-knative-eventing-sources-integration-tests |
|
@n3wscott since you just cleaned up eventing e2e tests. |
|
It looks like there is a lot of copy/pasta from the e2e test from eventing. I think we can let this in at the moment but I think we (knative) should build up a e2e framework that can be shared between the project. What do you think of that overall plan? So, let this in, but it is tech-debt. |
|
There is definitely copy & paste here - both from the previous PR (121) and from Eventing repo in general. At the time, my goal was to just push the e2e work already started to a working state so that we'd get some e2e test coverage here. I've resolved the merge conflicts here so it's unblocked from getting in. And I'll create an issue in knative/pkg to track pulling these common e2e test bits out. I believe other repos also have similar duplication of e2e helpers that would also benefit from consolidation. |
|
@vaikas-google @n3wscott Note that the most recent unit tests run as part of this PR exposed the same data race observed on #191 - a lot of |
|
/test pull-knative-eventing-sources-unit-tests |
I missed then when catching up on the latest test-infra changes for this PR.
|
This initial e2e test is passing again and ready for an updated review. The expectation is that once we get an e2e suite bootstrapped others can start adding e2e tests for each source. This is a full E2E test of the Kubernetes Events source wired up via Eventing. I know we've moved towards reducing test dependencies between repos in the other projects, but I left that dependency in for now as otherwise there's nowhere that confirms Eventing Sources and Eventing actually work together. I believe the existing issue knative/pkg#26 is probably the best place to track reducing this kind of copy/paste between e2e setups in each repo and I added a comment there as well as this comment that will link the two issues. |
| metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" | ||
| "k8s.io/apimachinery/pkg/util/wait" | ||
|
|
||
| // Mysteriously required to support GCP auth (required by k8s libs). |
There was a problem hiding this comment.
I dont think we need this anymore
There was a problem hiding this comment.
Serving and Eventing master still have this in as well. I can attempt to take it out and see what happens, but I assume something still needs it.
|
/lgtm |
grantr
left a comment
There was a problem hiding this comment.
Thanks @bbrowning for getting this across the line! The first one is the hardest.
These will probably need more work as we expand the number of Addressables (e.g. Broker) and write E2E tests for more sources, but good start as is.
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: bbrowning, grantr The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
|
Thanks for the reviews! |
This is an attempt to push #121 to completion so we get some basic E2E testing for eventing-sources. It may take a couple of iterations here to get things passing.