-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
E2E tests fail on Prow with newer ko versions #2479
Comments
Actually, the last link points to a Prow job using go 1.10 and cloud SDK 221. The root cause for these errors might be unrelated to Prow or the go/cloud version. |
The "error processing import paths" issue still happpens with go 1.11 and Cloud SDK 228:
|
this is now happening with go 1.10 as well - https://gubernator.knative.dev/build/knative-prow/pr-logs/pull/knative_serving/2725/pull-knative-serving-upgrade-tests/1074733769555972099/ |
This is actually unrelated to Cloud SDK and go version. It failed for the same reason with Cloud SDK 221 and go 1.10: I'm now suspicious of |
prow-tests image v20181025-0fcaba1 works fine. It uses Cloud SDK 221 and go 1.10: https://prow.knative.dev/log?job=pull-knative-serving-integration-tests&id=1074778816099913728 |
It looks like this is happening with Two things I've noticed:
I think there might be several issues, but one of them is probably symlink related + a race. Also, it seems that invoking @mattmoor any thoughts? |
Nailed down the culprit to ko. Details and logs in #2745. The culprit seems to be google/go-containerregistry#297 Jon, you authored that PR and has way more context than me, so I'm assigning this issue to you. /assign @jonjohnsonjr |
@adrcunha thank you for narrowing it down to that commit, that's really helpful. This is interesting because I've suspected something about the test environment might be causing an issue (which is why I can't reproduce it locally). Is it possible to get a dump of the environment variables? I suspect there's a bug/race somewhere that involves all of this + the symlinks stuff in my comment:
And I suspect there's an environment difference between {prow, me, that commit} that triggers the bug/race in our test environment but not when run locally... |
@jonjohnsonjr environment variables are dumped here: https://prow.knative.dev/log?job=pull-knative-serving-integration-tests&id=1075118053097738241 Search for @@@, they're right after the first occurrence. |
I have a theory that google/go-containerregistry#297 has a hard requirement on a later version of kubectl than we're using, perhaps?
Might be related to google/go-containerregistry#328 as well. |
I believe this was fixed by google/go-containerregistry#330 |
/assign @adrcunha |
@jonjohnsonjr the newest
Any clues? |
@adrcunha this can be fixed by retrying. It's a race condition of kubectl. |
We should add the retry even to our current prow job setup. I sometimes see this error during the current e2e setup as well. |
I'm not convinced that this is a race condition of kubectl. The E2E tests failed 3 times in a row for the same reason. It doesn't happen with the older version of ko, as you can see in the CI flow. |
Actually, this is the real culprit:
|
#2745 confirmed that the issues was fixed by google/go-containerregistry#330. |
Sample job using the latest ko: https://prow.knative.dev/log?job=pull-knative-serving-integration-tests&id=1079514393449861120 |
When making Prow use go 1.11.1 and Cloud SDK 225, E2E tests started failing with different errrors:
https://gubernator.knative.dev/build/knative-prow/pr-logs/pull/knative_serving/2468/pull-knative-serving-integration-tests/1062426675620352001/
https://gubernator.knative.dev/build/knative-prow/pr-logs/pull/knative_serving/2437/pull-knative-serving-integration-tests/1062427808908709890/
https://gubernator.knative.dev/build/knative-prow/logs/ci-knative-serving-continuous/1062420259731935234
To reproduce it, you must start a Prow test job using
prow-tests:v20181113-07b942c-dirty
.The text was updated successfully, but these errors were encountered: