Skip to content

tests(k8s): real e2e for k8s runtime#499

Merged
Pangjiping merged 1 commit intoalibaba:mainfrom
ninan-nn:feature/real_k8s_e2e
Mar 22, 2026
Merged

tests(k8s): real e2e for k8s runtime#499
Pangjiping merged 1 commit intoalibaba:mainfrom
ninan-nn:feature/real_k8s_e2e

Conversation

@ninan-nn
Copy link
Collaborator

Summary

  • What is changing and why?

Testing

  • Not run (explain why)
  • Unit tests
  • Integration tests
  • e2e / manual verification

Breaking Changes

  • None
  • Yes (describe impact and migration path)

Checklist

  • Linked Issue or clearly described motivation
  • Added/updated docs (if needed)
  • Added/updated tests (if needed)
  • Security impact considered
  • Backward compatibility considered

@ninan-nn ninan-nn force-pushed the feature/real_k8s_e2e branch 7 times, most recently from 206abf5 to d9c47ab Compare March 20, 2026 11:59
@ninan-nn ninan-nn force-pushed the feature/real_k8s_e2e branch from d9c47ab to 5cfcb8b Compare March 20, 2026 12:05
@Pangjiping Pangjiping marked this pull request as ready for review March 22, 2026 04:20
Copy link
Collaborator

@Pangjiping Pangjiping left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM. I will fix networkpolicy test error

@Pangjiping Pangjiping merged commit fe55fe9 into alibaba:main Mar 22, 2026
4 of 6 checks passed
Copy link

@chatgpt-codex-connector chatgpt-codex-connector bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 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

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge 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}"

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge 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 👍 / 👎.

Comment on lines +17 to +18
- 'components/execd/**'
- 'components/egress/**'

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge 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 👍 / 👎.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants