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 k8s.io/apimachinery v0.34.1 go: downloading k8s.io/client-go v0.34.1 go: downloading github.com/onsi/gomega v1.37.0 go: downloading k8s.io/api v0.34.1 go: downloading github.com/stretchr/testify v1.11.0 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/onsi/ginkgo/v2 v2.23.4 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/evanphx/json-patch/v5 v5.9.11 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 go.yaml.in/yaml/v2 v2.4.2 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 sigs.k8s.io/json v0.0.0-20250730193827-2d320260d730 go: downloading golang.org/x/net v0.43.0 go: downloading gopkg.in/yaml.v3 v3.0.1 go: downloading k8s.io/kube-openapi v0.0.0-20250814151709-d7b6acb124c3 go: downloading github.com/prometheus/client_golang v1.23.0 go: downloading gomodules.xyz/jsonpatch/v2 v2.4.0 go: downloading github.com/spf13/pflag v1.0.7 go: downloading github.com/json-iterator/go v1.1.12 go: downloading k8s.io/apiextensions-apiserver v0.34.1 go: downloading github.com/google/gnostic-models v0.7.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 github.com/google/uuid v1.6.0 go: downloading golang.org/x/sys v0.35.0 go: downloading github.com/fxamacker/cbor/v2 v2.9.0 go: downloading golang.org/x/text v0.28.0 go: downloading github.com/google/btree v1.1.3 go: downloading golang.org/x/sync v0.16.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 google.golang.org/protobuf v1.36.8 go: downloading github.com/go-openapi/jsonpointer v0.21.2 go: downloading github.com/beorn7/perks v1.0.1 go: downloading github.com/prometheus/client_model v0.6.2 go: downloading github.com/prometheus/common v0.65.0 go: downloading github.com/prometheus/procfs v0.17.0 go: downloading github.com/cespare/xxhash/v2 v2.3.0 go: downloading github.com/mailru/easyjson v0.9.0 go: downloading github.com/blang/semver/v4 v4.0.0 go: downloading go.opentelemetry.io/otel/trace v1.35.0 go: downloading github.com/x448/float16 v0.8.4 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 golang.org/x/time v0.12.0 go: downloading github.com/moby/spdystream v0.5.0 go: downloading golang.org/x/oauth2 v0.30.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 go.opentelemetry.io/otel v1.35.0 go: downloading github.com/josharian/intern v1.0.0 === RUN TestRayClusterAuthentication raycluster_auth_test.go:34: [2026-06-05T09:30:41Z] Created RayCluster test-ns-69tjt/raycluster-auth with authentication enabled raycluster_auth_test.go:36: [2026-06-05T09:30:41Z] Waiting for RayCluster test-ns-69tjt/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-06-05T09:35:06Z] 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-06-05T09:35:06Z] Command stdout: STATUS:401 core.go:101: [2026-06-05T09:35:06Z] Command stderr: --- PASS: TestRayClusterAuthentication/Unauthenticated_request_to_auth_proxy_is_rejected (0.16s) test.go:114: [2026-06-05T09:35:06Z] Retrieving Pod Container test-ns-69tjt/raycluster-auth-head-k2fq2/ray-head logs test.go:102: [2026-06-05T09:35:06Z] Creating ephemeral output directory as KUBERAY_TEST_OUTPUT_DIR env variable is unset test.go:105: [2026-06-05T09:35:06Z] Output directory has been created at: /tmp/TestRayClusterAuthentication946992008/001 test.go:114: [2026-06-05T09:35:06Z] Retrieving Pod Container test-ns-69tjt/raycluster-auth-head-k2fq2/kube-rbac-proxy logs test.go:114: [2026-06-05T09:35:06Z] Retrieving Pod Container test-ns-69tjt/raycluster-auth-small-group-worker-w5wpq/ray-worker logs --- PASS: TestRayClusterAuthentication (264.80s) === RUN TestRayJobWithClusterSelector rayjob_cluster_selector_test.go:27: [2026-06-05T09:35:06Z] Created ConfigMap test-ns-rfwvh/jobs successfully rayjob_cluster_selector_test.go:35: [2026-06-05T09:35:06Z] Created RayCluster test-ns-rfwvh/raycluster successfully rayjob_cluster_selector_test.go:37: [2026-06-05T09:35:06Z] Waiting for RayCluster test-ns-rfwvh/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-06-05T09:39:02Z] Created ConfigMap test-ns-l4cdh/jobs successfully === RUN TestRayJobLightWeightMode/Successful_RayJob rayjob_lightweight_test.go:56: [2026-06-05T09:39:02Z] Created RayJob test-ns-l4cdh/counter successfully rayjob_lightweight_test.go:58: [2026-06-05T09:39:02Z] Waiting for RayJob test-ns-l4cdh/counter to complete --- PASS: TestRayJobLightWeightMode/Successful_RayJob (27.19s) === RUN TestRayJobLightWeightMode/Failing_RayJob_without_cluster_shutdown_after_finished rayjob_lightweight_test.go:90: [2026-06-05T09:39:29Z] Created RayJob test-ns-l4cdh/fail successfully rayjob_lightweight_test.go:92: [2026-06-05T09:39:29Z] Waiting for RayJob test-ns-l4cdh/fail to complete --- PASS: TestRayJobLightWeightMode/Failing_RayJob_without_cluster_shutdown_after_finished (30.21s) === RUN TestRayJobLightWeightMode/Should_transition_to_'Complete'_if_the_Ray_job_has_stopped. rayjob_lightweight_test.go:121: [2026-06-05T09:40:00Z] Created RayJob test-ns-l4cdh/stop successfully rayjob_lightweight_test.go:123: [2026-06-05T09:40:00Z] Waiting for RayJob test-ns-l4cdh/stop to be 'Running' rayjob_lightweight_test.go:127: [2026-06-05T09:40:39Z] Waiting for RayJob test-ns-l4cdh/stop to be 'Complete' rayjob_lightweight_test.go:137: [2026-06-05T09:41:04Z] Deleted RayJob test-ns-l4cdh/stop successfully --- PASS: TestRayJobLightWeightMode/Should_transition_to_'Complete'_if_the_Ray_job_has_stopped. (64.39s) test.go:114: [2026-06-05T09:41:04Z] Retrieving Pod Container test-ns-l4cdh/fail-d7vcr-head-8br8s/ray-head logs test.go:102: [2026-06-05T09:41:04Z] Creating ephemeral output directory as KUBERAY_TEST_OUTPUT_DIR env variable is unset test.go:105: [2026-06-05T09:41:04Z] Output directory has been created at: /tmp/TestRayJobLightWeightMode1590921131/001 test.go:114: [2026-06-05T09:41:04Z] Retrieving Pod Container test-ns-l4cdh/fail-d7vcr-head-8br8s/kube-rbac-proxy logs test.go:114: [2026-06-05T09:41:04Z] Retrieving Pod Container test-ns-l4cdh/fail-d7vcr-small-group-worker-crtnw/ray-worker logs test.go:114: [2026-06-05T09:41:04Z] Retrieving Pod Container test-ns-l4cdh/stop-mmlfk-head-7pzr6/ray-head logs test.go:114: [2026-06-05T09:41:04Z] Retrieving Pod Container test-ns-l4cdh/stop-mmlfk-head-7pzr6/kube-rbac-proxy logs test.go:114: [2026-06-05T09:41:04Z] Retrieving Pod Container test-ns-l4cdh/stop-mmlfk-small-group-worker-26zt6/ray-worker logs --- PASS: TestRayJobLightWeightMode (121.91s) === RUN TestRayJobSuspend rayjob_suspend_test.go:27: [2026-06-05T09:41:04Z] Created ConfigMap test-ns-t5s4r/jobs successfully === RUN TestRayJobSuspend/Suspend_the_RayJob_when_its_status_is_'Running',_and_then_resume_it. rayjob_suspend_test.go:41: [2026-06-05T09:41:04Z] Created RayJob test-ns-t5s4r/long-running successfully rayjob_suspend_test.go:43: [2026-06-05T09:41:04Z] Waiting for RayJob test-ns-t5s4r/long-running to be 'Running' rayjob_suspend_test.go:47: [2026-06-05T09:41:30Z] Suspend the RayJob test-ns-t5s4r/long-running rayjob_suspend_test.go:52: [2026-06-05T09:41:30Z] Waiting for RayJob test-ns-t5s4r/long-running to be 'Suspended' rayjob_suspend_test.go:68: [2026-06-05T09:41:31Z] Resume the RayJob by updating `suspend` to false. rayjob_suspend_test.go:78: [2026-06-05T09:43:02Z] Deleted RayJob test-ns-t5s4r/long-running successfully --- PASS: TestRayJobSuspend/Suspend_the_RayJob_when_its_status_is_'Running',_and_then_resume_it. (117.70s) === RUN TestRayJobSuspend/Create_a_suspended_RayJob,_and_then_resume_it. rayjob_suspend_test.go:97: [2026-06-05T09:43:02Z] Created RayJob test-ns-t5s4r/counter successfully rayjob_suspend_test.go:99: [2026-06-05T09:43:02Z] Waiting for RayJob test-ns-t5s4r/counter to be 'Suspended' rayjob_suspend_test.go:103: [2026-06-05T09:43:03Z] Resume the RayJob by updating `suspend` to false. rayjob_suspend_test.go:108: [2026-06-05T09:43:03Z] Waiting for RayJob test-ns-t5s4r/counter to complete rayjob_suspend_test.go:123: [2026-06-05T09:43:51Z] Deleted RayJob test-ns-t5s4r/counter successfully --- PASS: TestRayJobSuspend/Create_a_suspended_RayJob,_and_then_resume_it. (52.35s) test.go:102: [2026-06-05T09:43:54Z] Creating ephemeral output directory as KUBERAY_TEST_OUTPUT_DIR env variable is unset test.go:105: [2026-06-05T09:43:54Z] Output directory has been created at: /tmp/TestRayJobSuspend2979206535/001 --- PASS: TestRayJobSuspend (170.20s) === RUN TestRayJob rayjob_test.go:29: [2026-06-05T09:43:54Z] Created ConfigMap test-ns-thrrw/jobs successfully === RUN TestRayJob/Successful_RayJob rayjob_test.go:46: [2026-06-05T09:43:54Z] Created RayJob test-ns-thrrw/counter successfully rayjob_test.go:48: [2026-06-05T09:43:54Z] Waiting for RayJob test-ns-thrrw/counter to complete rayjob_test.go:64: [2026-06-05T09:44:41Z] Checking that the RayJob status info has been set correctly. rayjob_test.go:81: [2026-06-05T09:44:41Z] Update `suspend` to true. However, since the RayJob is completed, the status should not be updated to `Suspended`. rayjob_test.go:91: [2026-06-05T09:45:11Z] Deleted RayJob test-ns-thrrw/counter successfully --- PASS: TestRayJob/Successful_RayJob (76.33s) === RUN TestRayJob/Failing_RayJob_without_cluster_shutdown_after_finished rayjob_test.go:105: [2026-06-05T09:45:11Z] Created RayJob test-ns-thrrw/fail successfully rayjob_test.go:107: [2026-06-05T09:45:11Z] Waiting for RayJob test-ns-thrrw/fail to complete rayjob_test.go:130: [2026-06-05T09:45:57Z] Deleted RayJob test-ns-thrrw/fail successfully --- PASS: TestRayJob/Failing_RayJob_without_cluster_shutdown_after_finished (47.31s) === RUN TestRayJob/Failing_submitter_K8s_Job rayjob_test.go:158: [2026-06-05T09:45:58Z] Created RayJob test-ns-thrrw/fail-k8s-job successfully rayjob_test.go:160: [2026-06-05T09:45:58Z] Waiting for RayJob test-ns-thrrw/fail-k8s-job to complete rayjob_test.go:183: [2026-06-05T09:48:25Z] Deleted RayJob test-ns-thrrw/fail-k8s-job successfully --- PASS: TestRayJob/Failing_submitter_K8s_Job (146.84s) === RUN TestRayJob/Should_transition_to_'Complete'_if_the_Ray_job_has_stopped. rayjob_test.go:197: [2026-06-05T09:48:25Z] Created RayJob test-ns-thrrw/stop successfully rayjob_test.go:199: [2026-06-05T09:48:25Z] Waiting for RayJob test-ns-thrrw/stop to be 'Running' rayjob_test.go:203: [2026-06-05T09:48:51Z] Waiting for RayJob test-ns-thrrw/stop to be 'Complete' rayjob_test.go:213: [2026-06-05T09:49:28Z] Deleted RayJob test-ns-thrrw/stop successfully --- PASS: TestRayJob/Should_transition_to_'Complete'_if_the_Ray_job_has_stopped. (63.41s) === RUN TestRayJob/RuntimeEnvYAML_is_not_a_valid_YAML_string rayjob_test.go:225: [2026-06-05T09:49:28Z] Created RayJob test-ns-thrrw/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-06-05T09:49:33Z] Created RayJob test-ns-thrrw/long-running successfully rayjob_test.go:247: [2026-06-05T09:49:33Z] Waiting for RayJob test-ns-thrrw/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-06-05T09:49:40Z] Created RayJob test-ns-thrrw/managed-externally successfully rayjob_test.go:296: [2026-06-05T09:49:40Z] Deleted RayJob test-ns-thrrw/managed-externally successfully --- PASS: TestRayJob/RayJob_should_be_created,_but_not_updated_when_managed_externally (0.04s) test.go:114: [2026-06-05T09:49:40Z] Retrieving Pod Container test-ns-thrrw/long-running-wg4gd-head-jwf4t/ray-head logs test.go:114: [2026-06-05T09:49:40Z] Error getting logs from container test-ns-thrrw/long-running-wg4gd-head-jwf4t/ray-head test.go:114: [2026-06-05T09:49:40Z] Retrieving Pod Container test-ns-thrrw/long-running-wg4gd-head-jwf4t/kube-rbac-proxy logs test.go:114: [2026-06-05T09:49:40Z] Error getting logs from container test-ns-thrrw/long-running-wg4gd-head-jwf4t/kube-rbac-proxy test.go:114: [2026-06-05T09:49:40Z] Retrieving Pod Container test-ns-thrrw/long-running-wg4gd-small-group-worker-p2rz8/ray-worker logs test.go:114: [2026-06-05T09:49:40Z] Error getting logs from container test-ns-thrrw/long-running-wg4gd-small-group-worker-p2rz8/ray-worker test.go:102: [2026-06-05T09:49:40Z] Creating ephemeral output directory as KUBERAY_TEST_OUTPUT_DIR env variable is unset test.go:105: [2026-06-05T09:49:40Z] Output directory has been created at: /tmp/TestRayJob842150991/001 --- PASS: TestRayJob (346.09s) === CONT TestRayJobWithClusterSelector rayjob_cluster_selector_test.go:109: [2026-06-05T09:49:40Z] Created RayJob test-ns-rfwvh/managed-externally successfully --- PASS: TestRayJobWithClusterSelector/RayJob_should_be_created_but_not_to_be_updated_when_managed_externally (641.22s) === 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-06-05T09:49:43Z] Created RayJob test-ns-rfwvh/counter successfully rayjob_cluster_selector_test.go:59: [2026-06-05T09:49:43Z] Waiting for RayJob test-ns-rfwvh/counter to complete --- PASS: TestRayJobWithClusterSelector/Successful_RayJob (19.11s) === CONT TestRayJobWithClusterSelector/Failing_RayJob rayjob_cluster_selector_test.go:81: [2026-06-05T09:50:03Z] Created RayJob test-ns-rfwvh/fail successfully rayjob_cluster_selector_test.go:83: [2026-06-05T09:50:03Z] Waiting for RayJob test-ns-rfwvh/fail to complete --- PASS: TestRayJobWithClusterSelector/Failing_RayJob (9.06s) test.go:114: [2026-06-05T09:50:12Z] Retrieving Pod Container test-ns-rfwvh/counter-x5wcp/ray-job-submitter logs test.go:102: [2026-06-05T09:50:12Z] Creating ephemeral output directory as KUBERAY_TEST_OUTPUT_DIR env variable is unset test.go:105: [2026-06-05T09:50:12Z] Output directory has been created at: /tmp/TestRayJobWithClusterSelector707214632/001 test.go:114: [2026-06-05T09:50:12Z] Retrieving Pod Container test-ns-rfwvh/fail-zjxrw/ray-job-submitter logs test.go:114: [2026-06-05T09:50:12Z] Retrieving Pod Container test-ns-rfwvh/raycluster-head-vjd7d/ray-head logs test.go:114: [2026-06-05T09:50:12Z] Retrieving Pod Container test-ns-rfwvh/raycluster-head-vjd7d/kube-rbac-proxy logs test.go:114: [2026-06-05T09:50:12Z] Retrieving Pod Container test-ns-rfwvh/raycluster-small-group-worker-j9pbw/ray-worker logs --- PASS: TestRayJobWithClusterSelector (239.51s) PASS ok github.com/ray-project/kuberay/ray-operator/test/e2e 1170.706s DONE 23 tests in 1170.714s