tests(k8s): real e2e for k8s runtime#499
Conversation
206abf5 to
d9c47ab
Compare
d9c47ab to
5cfcb8b
Compare
Pangjiping
left a comment
There was a problem hiding this comment.
LGTM. I will fix networkpolicy test error
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 5cfcb8b1b5
ℹ️ About Codex in GitHub
Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
|
|
||
| cd tests/python | ||
| uv sync --all-extras --refresh | ||
| make test |
There was a problem hiding this comment.
Exclude sandbox-manager pause tests from the k8s run
This script now invokes the entire tests/python suite, but both manager suites still pause a sandbox during fixture setup (tests/python/tests/test_sandbox_manager_e2e.py:138 and tests/python/tests/test_sandbox_manager_e2e_sync.py:86). The Kubernetes backend still returns 501 for pause_sandbox (server/src/services/k8s/kubernetes_service.py:552-568), so the new workflow will fail as soon as those fixtures run unless the k8s job skips or deselects the manager tests.
Useful? React with 👍 / 👎.
| SERVER_IMG="${SERVER_IMG:-opensandbox/server:e2e-local}" | ||
| EXECD_IMG="${EXECD_IMG:-opensandbox/execd:e2e-local}" | ||
| EGRESS_IMG="${EGRESS_IMG:-opensandbox/egress:e2e-local}" | ||
| CODE_INTERPRETER_IMG="${CODE_INTERPRETER_IMG:-opensandbox/code-interpreter:latest}" |
There was a problem hiding this comment.
Pin the kind-loaded sandbox image to a non-latest tag
The job preloads opensandbox/code-interpreter:latest into kind, but the BatchSandbox main container never sets imagePullPolicy (server/src/services/k8s/batchsandbox_provider.py:602-615). On Kubernetes, a :latest tag defaults to Always, so every sandbox pod will still pull from Docker Hub instead of using the image we loaded. That makes this workflow flaky under registry outages/rate limits and means it is not actually testing the preloaded artifact.
Useful? React with 👍 / 👎.
| - 'components/execd/**' | ||
| - 'components/egress/**' |
There was a problem hiding this comment.
Add components/internal to the k8s E2E path filter
This workflow is supposed to validate the execd/egress images it builds, but PRs that only touch components/internal/** will not trigger it. Both Dockerfiles vendor that module into the build context (components/execd/Dockerfile:24-33, components/egress/Dockerfile:24-35), so an internal logging/version change can break the k8s E2E path while skipping this job entirely until after merge.
Useful? React with 👍 / 👎.
Summary
Testing
Breaking Changes
Checklist