Adding Tier1 kuberay e2e tests Adding Smoke kuberay e2e tests (authentication validation) Running e2e tests matching: ^(TestRayJobWithClusterSelector|TestRayJob|TestRayJobSuspend|TestRayJobLightWeightMode|TestRayClusterAuthentication)$ go: downloading k8s.io/utils v0.0.0-20250820121507-0af2bda4dd1d go: downloading github.com/onsi/gomega v1.37.0 go: downloading k8s.io/api v0.34.1 go: downloading k8s.io/apimachinery v0.34.1 go: downloading github.com/stretchr/testify v1.11.0 go: downloading k8s.io/client-go v0.34.1 go: downloading github.com/onsi/ginkgo/v2 v2.23.4 go: downloading sigs.k8s.io/controller-runtime v0.22.1 go: downloading github.com/openshift/api v0.0.0-20250602203052-b29811a290c7 go: downloading github.com/pkg/errors v0.9.1 go: downloading github.com/Masterminds/semver/v3 v3.3.1 go: downloading sigs.k8s.io/yaml v1.6.0 go: downloading github.com/go-logr/logr v1.4.3 go: downloading k8s.io/apiserver v0.34.1 go: downloading k8s.io/component-base v0.34.1 go: downloading github.com/google/go-cmp v0.7.0 go: downloading github.com/gogo/protobuf v1.3.2 go: downloading sigs.k8s.io/randfill v1.0.0 go: downloading gopkg.in/inf.v0 v0.9.1 go: downloading k8s.io/klog/v2 v2.130.1 go: downloading sigs.k8s.io/structured-merge-diff/v6 v6.3.0 go: downloading github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc go: downloading github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 go: downloading sigs.k8s.io/json v0.0.0-20250730193827-2d320260d730 go: downloading github.com/evanphx/json-patch/v5 v5.9.11 go: downloading golang.org/x/net v0.43.0 go: downloading gopkg.in/yaml.v3 v3.0.1 go: downloading go.yaml.in/yaml/v2 v2.4.2 go: downloading golang.org/x/sys v0.35.0 go: downloading k8s.io/kube-openapi v0.0.0-20250814151709-d7b6acb124c3 go: downloading github.com/json-iterator/go v1.1.12 go: downloading gomodules.xyz/jsonpatch/v2 v2.4.0 go: downloading github.com/prometheus/client_golang v1.23.0 go: downloading github.com/spf13/pflag v1.0.7 go: downloading github.com/fxamacker/cbor/v2 v2.9.0 go: downloading k8s.io/apiextensions-apiserver v0.34.1 go: downloading golang.org/x/text v0.28.0 go: downloading github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd go: downloading github.com/modern-go/reflect2 v1.0.3-0.20250322232337-35a7c28c31ee go: downloading github.com/google/uuid v1.6.0 go: downloading github.com/google/btree v1.1.3 go: downloading golang.org/x/sync v0.16.0 go: downloading github.com/x448/float16 v0.8.4 go: downloading github.com/prometheus/client_model v0.6.2 go: downloading github.com/prometheus/common v0.65.0 go: downloading github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 go: downloading golang.org/x/term v0.34.0 go: downloading github.com/gorilla/websocket v1.5.4-0.20250319132907-e064f32e3674 go: downloading github.com/blang/semver/v4 v4.0.0 go: downloading github.com/prometheus/procfs v0.17.0 go: downloading go.opentelemetry.io/otel/trace v1.35.0 go: downloading github.com/beorn7/perks v1.0.1 go: downloading github.com/cespare/xxhash/v2 v2.3.0 go: downloading google.golang.org/protobuf v1.36.8 go: downloading github.com/google/gnostic-models v0.7.0 go: downloading golang.org/x/time v0.12.0 go: downloading go.yaml.in/yaml/v3 v3.0.4 go: downloading github.com/go-openapi/jsonreference v0.21.0 go: downloading github.com/go-openapi/swag v0.23.1 go: downloading golang.org/x/oauth2 v0.30.0 go: downloading github.com/moby/spdystream v0.5.0 go: downloading gopkg.in/evanphx/json-patch.v4 v4.13.0 go: downloading github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f go: downloading github.com/emicklei/go-restful/v3 v3.13.0 go: downloading github.com/go-openapi/jsonpointer v0.21.2 go: downloading go.opentelemetry.io/otel v1.35.0 go: downloading github.com/mailru/easyjson v0.9.0 go: downloading github.com/josharian/intern v1.0.0 === RUN TestRayClusterAuthentication raycluster_auth_test.go:34: [2026-05-20T18:44:23Z] Created RayCluster test-ns-js89k/raycluster-auth with authentication enabled raycluster_auth_test.go:36: [2026-05-20T18:44:23Z] Waiting for RayCluster test-ns-js89k/raycluster-auth to become ready === RUN TestRayClusterAuthentication/Auth_proxy_sidecar_is_injected_into_head_pod --- PASS: TestRayClusterAuthentication/Auth_proxy_sidecar_is_injected_into_head_pod (0.00s) === RUN TestRayClusterAuthentication/Unauthenticated_request_to_auth_proxy_is_rejected core.go:87: [2026-05-20T18:48:27Z] Executing command: [python3 -c import urllib.request, ssl ctx = ssl.create_default_context() ctx.check_hostname = False ctx.verify_mode = ssl.CERT_NONE try: urllib.request.urlopen(urllib.request.Request('https://localhost:8443/'), context=ctx, timeout=5) print('STATUS:200') except urllib.error.HTTPError as e: print('STATUS:' + str(e.code)) except Exception as e: print('ERROR:' + str(e)) ] core.go:100: [2026-05-20T18:48:28Z] Command stdout: STATUS:401 core.go:101: [2026-05-20T18:48:28Z] Command stderr: --- PASS: TestRayClusterAuthentication/Unauthenticated_request_to_auth_proxy_is_rejected (0.16s) test.go:114: [2026-05-20T18:48:28Z] Retrieving Pod Container test-ns-js89k/raycluster-auth-head-lqx4k/ray-head logs test.go:102: [2026-05-20T18:48:28Z] Creating ephemeral output directory as KUBERAY_TEST_OUTPUT_DIR env variable is unset test.go:105: [2026-05-20T18:48:28Z] Output directory has been created at: /tmp/TestRayClusterAuthentication921427628/001 test.go:114: [2026-05-20T18:48:28Z] Retrieving Pod Container test-ns-js89k/raycluster-auth-head-lqx4k/kube-rbac-proxy logs test.go:114: [2026-05-20T18:48:28Z] Retrieving Pod Container test-ns-js89k/raycluster-auth-small-group-worker-jgzl2/ray-worker logs --- PASS: TestRayClusterAuthentication (244.72s) === RUN TestRayJobWithClusterSelector rayjob_cluster_selector_test.go:27: [2026-05-20T18:48:28Z] Created ConfigMap test-ns-7k68m/jobs successfully rayjob_cluster_selector_test.go:35: [2026-05-20T18:48:28Z] Created RayCluster test-ns-7k68m/raycluster successfully rayjob_cluster_selector_test.go:37: [2026-05-20T18:48:28Z] Waiting for RayCluster test-ns-7k68m/raycluster to become ready === RUN TestRayJobWithClusterSelector/Successful_RayJob === PAUSE TestRayJobWithClusterSelector/Successful_RayJob === RUN TestRayJobWithClusterSelector/Failing_RayJob === PAUSE TestRayJobWithClusterSelector/Failing_RayJob === RUN TestRayJobWithClusterSelector/RayJob_should_be_created_but_not_to_be_updated_when_managed_externally === PAUSE TestRayJobWithClusterSelector === RUN TestRayJobLightWeightMode rayjob_lightweight_test.go:27: [2026-05-20T18:49:07Z] Created ConfigMap test-ns-fcdj8/jobs successfully === RUN TestRayJobLightWeightMode/Successful_RayJob rayjob_lightweight_test.go:56: [2026-05-20T18:49:07Z] Created RayJob test-ns-fcdj8/counter successfully rayjob_lightweight_test.go:58: [2026-05-20T18:49:07Z] Waiting for RayJob test-ns-fcdj8/counter to complete --- PASS: TestRayJobLightWeightMode/Successful_RayJob (23.16s) === RUN TestRayJobLightWeightMode/Failing_RayJob_without_cluster_shutdown_after_finished rayjob_lightweight_test.go:90: [2026-05-20T18:49:30Z] Created RayJob test-ns-fcdj8/fail successfully rayjob_lightweight_test.go:92: [2026-05-20T18:49:30Z] Waiting for RayJob test-ns-fcdj8/fail to complete --- PASS: TestRayJobLightWeightMode/Failing_RayJob_without_cluster_shutdown_after_finished (27.19s) === RUN TestRayJobLightWeightMode/Should_transition_to_'Complete'_if_the_Ray_job_has_stopped. rayjob_lightweight_test.go:121: [2026-05-20T18:49:57Z] Created RayJob test-ns-fcdj8/stop successfully rayjob_lightweight_test.go:123: [2026-05-20T18:49:57Z] Waiting for RayJob test-ns-fcdj8/stop to be 'Running' rayjob_lightweight_test.go:127: [2026-05-20T18:50:23Z] Waiting for RayJob test-ns-fcdj8/stop to be 'Complete' rayjob_lightweight_test.go:137: [2026-05-20T18:50:49Z] Deleted RayJob test-ns-fcdj8/stop successfully --- PASS: TestRayJobLightWeightMode/Should_transition_to_'Complete'_if_the_Ray_job_has_stopped. (51.32s) test.go:114: [2026-05-20T18:50:49Z] Retrieving Pod Container test-ns-fcdj8/fail-sdctr-head-k886j/ray-head logs test.go:102: [2026-05-20T18:50:49Z] Creating ephemeral output directory as KUBERAY_TEST_OUTPUT_DIR env variable is unset test.go:105: [2026-05-20T18:50:49Z] Output directory has been created at: /tmp/TestRayJobLightWeightMode2160558099/001 test.go:114: [2026-05-20T18:50:49Z] Retrieving Pod Container test-ns-fcdj8/fail-sdctr-head-k886j/kube-rbac-proxy logs test.go:114: [2026-05-20T18:50:49Z] Retrieving Pod Container test-ns-fcdj8/fail-sdctr-small-group-worker-8rstr/ray-worker logs test.go:114: [2026-05-20T18:50:49Z] Retrieving Pod Container test-ns-fcdj8/stop-mrht5-head-dptnf/ray-head logs test.go:114: [2026-05-20T18:50:49Z] Retrieving Pod Container test-ns-fcdj8/stop-mrht5-head-dptnf/kube-rbac-proxy logs test.go:114: [2026-05-20T18:50:49Z] Retrieving Pod Container test-ns-fcdj8/stop-mrht5-small-group-worker-76j9c/ray-worker logs --- PASS: TestRayJobLightWeightMode (101.80s) === RUN TestRayJobSuspend rayjob_suspend_test.go:27: [2026-05-20T18:50:49Z] Created ConfigMap test-ns-p2jdc/jobs successfully === RUN TestRayJobSuspend/Suspend_the_RayJob_when_its_status_is_'Running',_and_then_resume_it. rayjob_suspend_test.go:41: [2026-05-20T18:50:49Z] Created RayJob test-ns-p2jdc/long-running successfully rayjob_suspend_test.go:43: [2026-05-20T18:50:49Z] Waiting for RayJob test-ns-p2jdc/long-running to be 'Running' rayjob_suspend_test.go:47: [2026-05-20T18:51:14Z] Suspend the RayJob test-ns-p2jdc/long-running rayjob_suspend_test.go:52: [2026-05-20T18:51:14Z] Waiting for RayJob test-ns-p2jdc/long-running to be 'Suspended' rayjob_suspend_test.go:68: [2026-05-20T18:51:15Z] Resume the RayJob by updating `suspend` to false. rayjob_suspend_test.go:78: [2026-05-20T18:51:39Z] Deleted RayJob test-ns-p2jdc/long-running successfully --- PASS: TestRayJobSuspend/Suspend_the_RayJob_when_its_status_is_'Running',_and_then_resume_it. (50.45s) === RUN TestRayJobSuspend/Create_a_suspended_RayJob,_and_then_resume_it. rayjob_suspend_test.go:97: [2026-05-20T18:51:39Z] Created RayJob test-ns-p2jdc/counter successfully rayjob_suspend_test.go:99: [2026-05-20T18:51:39Z] Waiting for RayJob test-ns-p2jdc/counter to be 'Suspended' rayjob_suspend_test.go:103: [2026-05-20T18:51:40Z] Resume the RayJob by updating `suspend` to false. rayjob_suspend_test.go:108: [2026-05-20T18:51:40Z] Waiting for RayJob test-ns-p2jdc/counter to complete rayjob_suspend_test.go:123: [2026-05-20T18:52:25Z] Deleted RayJob test-ns-p2jdc/counter successfully --- PASS: TestRayJobSuspend/Create_a_suspended_RayJob,_and_then_resume_it. (47.40s) test.go:102: [2026-05-20T18:52:27Z] Creating ephemeral output directory as KUBERAY_TEST_OUTPUT_DIR env variable is unset test.go:105: [2026-05-20T18:52:27Z] Output directory has been created at: /tmp/TestRayJobSuspend3119388754/001 --- PASS: TestRayJobSuspend (97.89s) === RUN TestRayJob rayjob_test.go:29: [2026-05-20T18:52:27Z] Created ConfigMap test-ns-dw7gs/jobs successfully === RUN TestRayJob/Successful_RayJob rayjob_test.go:46: [2026-05-20T18:52:27Z] Created RayJob test-ns-dw7gs/counter successfully rayjob_test.go:48: [2026-05-20T18:52:27Z] Waiting for RayJob test-ns-dw7gs/counter to complete rayjob_test.go:64: [2026-05-20T18:53:14Z] Checking that the RayJob status info has been set correctly. rayjob_test.go:81: [2026-05-20T18:53:14Z] Update `suspend` to true. However, since the RayJob is completed, the status should not be updated to `Suspended`. rayjob_test.go:91: [2026-05-20T18:53:44Z] Deleted RayJob test-ns-dw7gs/counter successfully --- PASS: TestRayJob/Successful_RayJob (77.35s) === RUN TestRayJob/Failing_RayJob_without_cluster_shutdown_after_finished rayjob_test.go:105: [2026-05-20T18:53:44Z] Created RayJob test-ns-dw7gs/fail successfully rayjob_test.go:107: [2026-05-20T18:53:44Z] Waiting for RayJob test-ns-dw7gs/fail to complete rayjob_test.go:130: [2026-05-20T18:54:29Z] Deleted RayJob test-ns-dw7gs/fail successfully --- PASS: TestRayJob/Failing_RayJob_without_cluster_shutdown_after_finished (46.31s) === RUN TestRayJob/Failing_submitter_K8s_Job rayjob_test.go:158: [2026-05-20T18:54:30Z] Created RayJob test-ns-dw7gs/fail-k8s-job successfully rayjob_test.go:160: [2026-05-20T18:54:30Z] Waiting for RayJob test-ns-dw7gs/fail-k8s-job to complete rayjob_test.go:183: [2026-05-20T18:55:40Z] Deleted RayJob test-ns-dw7gs/fail-k8s-job successfully --- PASS: TestRayJob/Failing_submitter_K8s_Job (69.45s) === RUN TestRayJob/Should_transition_to_'Complete'_if_the_Ray_job_has_stopped. rayjob_test.go:197: [2026-05-20T18:55:40Z] Created RayJob test-ns-dw7gs/stop successfully rayjob_test.go:199: [2026-05-20T18:55:40Z] Waiting for RayJob test-ns-dw7gs/stop to be 'Running' rayjob_test.go:203: [2026-05-20T18:56:06Z] Waiting for RayJob test-ns-dw7gs/stop to be 'Complete' rayjob_test.go:213: [2026-05-20T18:56:42Z] Deleted RayJob test-ns-dw7gs/stop successfully --- PASS: TestRayJob/Should_transition_to_'Complete'_if_the_Ray_job_has_stopped. (62.41s) === RUN TestRayJob/RuntimeEnvYAML_is_not_a_valid_YAML_string rayjob_test.go:225: [2026-05-20T18:56:42Z] Created RayJob test-ns-dw7gs/invalid-yamlstr successfully --- PASS: TestRayJob/RuntimeEnvYAML_is_not_a_valid_YAML_string (5.01s) === RUN TestRayJob/RayJob_has_passed_ActiveDeadlineSeconds rayjob_test.go:244: [2026-05-20T18:56:47Z] Created RayJob test-ns-dw7gs/long-running successfully rayjob_test.go:247: [2026-05-20T18:56:47Z] Waiting for RayJob test-ns-dw7gs/long-running to be 'Complete' --- PASS: TestRayJob/RayJob_has_passed_ActiveDeadlineSeconds (7.06s) === RUN TestRayJob/RayJob_should_be_created,_but_not_updated_when_managed_externally rayjob_test.go:270: [2026-05-20T18:56:54Z] Created RayJob test-ns-dw7gs/managed-externally successfully rayjob_test.go:296: [2026-05-20T18:56:54Z] Deleted RayJob test-ns-dw7gs/managed-externally successfully --- PASS: TestRayJob/RayJob_should_be_created,_but_not_updated_when_managed_externally (0.05s) test.go:114: [2026-05-20T18:56:54Z] Retrieving Pod Container test-ns-dw7gs/long-running-8c9pp-head-wjb8b/ray-head logs test.go:102: [2026-05-20T18:56:54Z] Creating ephemeral output directory as KUBERAY_TEST_OUTPUT_DIR env variable is unset test.go:105: [2026-05-20T18:56:54Z] Output directory has been created at: /tmp/TestRayJob3711740262/001 test.go:114: [2026-05-20T18:56:54Z] Retrieving Pod Container test-ns-dw7gs/long-running-8c9pp-head-wjb8b/kube-rbac-proxy logs test.go:114: [2026-05-20T18:56:54Z] Retrieving Pod Container test-ns-dw7gs/long-running-8c9pp-small-group-worker-ckj9j/ray-worker logs test.go:114: [2026-05-20T18:56:54Z] Error getting logs from container test-ns-dw7gs/long-running-8c9pp-small-group-worker-ckj9j/ray-worker --- PASS: TestRayJob (267.76s) === CONT TestRayJobWithClusterSelector rayjob_cluster_selector_test.go:109: [2026-05-20T18:56:54Z] Created RayJob test-ns-7k68m/managed-externally successfully --- PASS: TestRayJobWithClusterSelector/RayJob_should_be_created_but_not_to_be_updated_when_managed_externally (470.45s) === RUN TestRayJobWithClusterSelector/RayJob_should_not_be_created_due_to_managedBy_invalid_value --- PASS: TestRayJobWithClusterSelector/RayJob_should_not_be_created_due_to_managedBy_invalid_value (0.01s) === CONT TestRayJobWithClusterSelector/Successful_RayJob rayjob_cluster_selector_test.go:57: [2026-05-20T18:56:57Z] Created RayJob test-ns-7k68m/counter successfully rayjob_cluster_selector_test.go:59: [2026-05-20T18:56:57Z] Waiting for RayJob test-ns-7k68m/counter to complete --- PASS: TestRayJobWithClusterSelector/Successful_RayJob (13.08s) === CONT TestRayJobWithClusterSelector/Failing_RayJob rayjob_cluster_selector_test.go:81: [2026-05-20T18:57:10Z] Created RayJob test-ns-7k68m/fail successfully rayjob_cluster_selector_test.go:83: [2026-05-20T18:57:10Z] Waiting for RayJob test-ns-7k68m/fail to complete --- PASS: TestRayJobWithClusterSelector/Failing_RayJob (9.06s) test.go:114: [2026-05-20T18:57:19Z] Retrieving Pod Container test-ns-7k68m/counter-kmh2k/ray-job-submitter logs test.go:102: [2026-05-20T18:57:20Z] Creating ephemeral output directory as KUBERAY_TEST_OUTPUT_DIR env variable is unset test.go:105: [2026-05-20T18:57:20Z] Output directory has been created at: /tmp/TestRayJobWithClusterSelector3296548460/001 test.go:114: [2026-05-20T18:57:20Z] Retrieving Pod Container test-ns-7k68m/fail-4znkw/ray-job-submitter logs test.go:114: [2026-05-20T18:57:20Z] Retrieving Pod Container test-ns-7k68m/raycluster-head-cddzt/ray-head logs test.go:114: [2026-05-20T18:57:20Z] Retrieving Pod Container test-ns-7k68m/raycluster-head-cddzt/kube-rbac-proxy logs test.go:114: [2026-05-20T18:57:20Z] Retrieving Pod Container test-ns-7k68m/raycluster-small-group-worker-fc4fb/ray-worker logs --- PASS: TestRayJobWithClusterSelector (42.35s) PASS ok github.com/ray-project/kuberay/ray-operator/test/e2e 776.683s DONE 23 tests in 776.692s