feat(kubernetes): Surface Image Pull Errors in Kubernetes Runtime#279
Closed
cognifloyd wants to merge 13 commits intogo-vela:masterfrom
Closed
feat(kubernetes): Surface Image Pull Errors in Kubernetes Runtime#279cognifloyd wants to merge 13 commits intogo-vela:masterfrom
cognifloyd wants to merge 13 commits intogo-vela:masterfrom
Conversation
Pulling is a Docker-specific term that does not apply to the Kubernetes runtime. Preparing is more generic and can apply to both.
Codecov Report
@@ Coverage Diff @@
## master #279 +/- ##
==========================================
- Coverage 78.91% 78.77% -0.14%
==========================================
Files 67 67
Lines 4870 4952 +82
==========================================
+ Hits 3843 3901 +58
- Misses 884 903 +19
- Partials 143 148 +5
|
kneal
reviewed
Mar 1, 2022
Collaborator
|
can you please fix up the new linting errors? we added/modified some rules that triggered a few issues. |
57cb4c6 to
8a22f18
Compare
Member
Author
|
I'm really not sure what to do to replace |
Member
Author
|
I'm going to break this down into more discrete PRs. As I'm studying issues with the k8s runtime, I'm considering some different ways to subscribe to the event stream related to a build. |
3 tasks
Member
Author
|
Closing in favor of #331 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The Docker Runtime surfaces image pull errors naturally because of the blocking synchronous requests to pull an image or start a container.
Kubernetes is asynchronous, so we have to explicitly watch for events to make sure the image pull succeeds in RunContainer.
When we capture a failure event, we can surface the event in the same way as the Docker runtime.
There may be other places where we need to watch for events, so I extracted some of the test logic from WaitContainer to make it reusable.
Also, this changes the init step so it says "Preparing" instead of "Pulling" since the Kubernetes runtime does NOT pull during init.