-
Notifications
You must be signed in to change notification settings - Fork 263
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
Restores the bash e2e tests as a smoke test #183
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.
LGTM. Are there any plans to run those test for each PR, too ? Where would this need to be triggered ?
Great question. Was wondering that myself. Perhaps @adrcunha has some insights to share? I know he helped various times for infra scripts. Thx in advance. |
Get this merged, clone https://github.com/knative/test-infra/pull/908/files#diff-6b96213e43367b89ca71567c589995ed , run |
test/e2e-smoke-tests.sh
Outdated
# Helper functions. | ||
|
||
# Build kn before integration tests, so we fail fast in case of error. | ||
function cluster_setup() { |
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.
I suggest doing what serving does, and move the common code (source, cluster_setup, knative_setup, initalize) into a e2e-common.sh file in a (near) future PR.
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.
OK
kubectl create ns $KN_E2E_SMOKE_TESTS_NAMESPACE || fail_test | ||
|
||
./kn service create hello --image gcr.io/knative-samples/helloworld-go -e TARGET=Knative -n $KN_E2E_SMOKE_TESTS_NAMESPACE || fail_test | ||
sleep 5 |
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.
Hopefully soon this can be replaced with a proper checking, in order to avoid flakes?
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.
Yes, with #54 (landing soon hopefully) we will have synchronous creation by default and don't need any sleep here.
Slight confusion here. The PR 908 (link) is merged. I cloned the ➜ prow git:(master) make config
go run make_config.go --prow-config-output="/Users/maximilien/Desktop/github/knative-test-infra/src/github.com/knative/test-infra/ci/prow//config.yaml" --testgrid-config-output="/Users/maximilien/Desktop/github/knative-test-infra/src/github.com/knative/test-infra/ci/prow//../testgrid/config.yaml" config_knative.yaml The files have not changed... so perhaps I should skip this step. |
@sixolet i dont think these tests are useful especially since they do not assert on anything except an error code. if go e2e arent readable, we should fix that instead. |
@maximilien sorry about not being clear, I wrote that in a hurry. Don't worry about test-infra for now. When I wrote "clone 908" I meant the same kind of job needs to be added to the settings for the client repo so we have the presubmit. Once this PR is merged we can talk about it. |
The (small) value I see here is that you call the command through a shell and not through exec (like in go's e2e). E.g. in the discussion about using wildcard patterns with Said that maybe it would make more sense to extend the go based e2e tests to use a shell (if they not already do, sorry haven't checked that yet, but I doubt they do). If it's not too expensive, having a simple test testing in one (or if we want to go over the top, with multiple) shell makes sense, as |
45e0265
to
ece61f6
Compare
ece61f6
to
4aacccb
Compare
/retest |
OK I think the backend infra is failing miserably on all PRs tests... Istio failing here.
I'll attempt retesting later or tomorrow. |
No, the failure happens when building kn, in cluster_setup():
|
/retest |
im not quite clear what benefit we would be getting out of testing in bash vs exec-ing? user contract of the binary isnt changing based on the shell. |
E.g Wildcard expansion ? There are differences how arguments interpreted, shell vs. exec. |
/lgtm |
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: maximilien, rhuss, sixolet 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 |
This should allow a set of small e2e tests that only use
kn
and do not depends on the e2e Golang code and other dependencies that it might create.