<?xml version='1.0' encoding='utf-8'?>
<testsuites tests="41" failures="1" errors="0" skipped="4" time="3939.356"><testsuite name="Kubeflow Trainer E2E Suite" package="/workspace/source/src_code/test/e2e" tests="16" disabled="2" skipped="4" errors="0" failures="1" time="480.466" timestamp="2026-10-30T06:48:38">
          <properties>
              <property name="SuiteSucceeded" value="false" />
              <property name="SuiteHasProgrammaticFocus" value="false" />
              <property name="SpecialSuiteFailureReason" value="" />
              <property name="SuiteLabels" value="[]" />
              <property name="SuiteSemVerConstraints" value="[]" />
              <property name="SuiteComponentSemVerConstraints" value="[]" />
              <property name="RandomSeed" value="1793342858" />
              <property name="RandomizeAllSpecs" value="false" />
              <property name="LabelFilter" value="" />
              <property name="SemVerFilter" value="" />
              <property name="FocusStrings" value="" />
              <property name="SkipStrings" value="runtime status server instrumentation" />
              <property name="FocusFiles" value="" />
              <property name="SkipFiles" value="" />
              <property name="FailOnPending" value="false" />
              <property name="FailOnEmpty" value="false" />
              <property name="FailFast" value="false" />
              <property name="FlakeAttempts" value="0" />
              <property name="DryRun" value="false" />
              <property name="ParallelTotal" value="1" />
              <property name="OutputInterceptorMode" value="" />
          </properties>
          <testcase name="[BeforeSuite]" classname="Kubeflow Trainer E2E Suite" status="passed" time="0.001140455">
              <system-err>&gt; Enter [BeforeSuite] TOP-LEVEL - /workspace/source/src_code/test/e2e/suite_test.go:43 @ 10/30/26 06:48:38.013
&lt; Exit [BeforeSuite] TOP-LEVEL - /workspace/source/src_code/test/e2e/suite_test.go:43 @ 10/30/26 06:48:38.014 (1ms)
</system-err>
          </testcase>
          <testcase name="[It] TrainJob e2e when Creating TrainJob to perform the PyTorch workload should create TrainJob with PyTorch runtime reference" classname="Kubeflow Trainer E2E Suite" status="passed" time="244.854839868">
              <system-err>&gt; Enter [BeforeEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:61 @ 10/30/26 06:48:38.014
&lt; Exit [BeforeEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:61 @ 10/30/26 06:48:38.154 (140ms)
&gt; Enter [It] should create TrainJob with PyTorch runtime reference - /workspace/source/src_code/test/e2e/e2e_test.go:84 @ 10/30/26 06:48:38.154
STEP: Create a TrainJob with torch-distributed runtime reference - /workspace/source/src_code/test/e2e/e2e_test.go:93 @ 10/30/26 06:48:38.154
END STEP: Create a TrainJob with torch-distributed runtime reference - /workspace/source/src_code/test/e2e/e2e_test.go:93 @ 10/30/26 06:48:38.326 (173ms)
STEP: Wait for TrainJob jobs to become active - /workspace/source/src_code/test/e2e/e2e_test.go:98 @ 10/30/26 06:48:38.326
END STEP: Wait for TrainJob jobs to become active - /workspace/source/src_code/test/e2e/e2e_test.go:98 @ 10/30/26 06:48:38.863 (537ms)
STEP: Wait for TrainJob to be in Succeeded status with all jobs succeeded - /workspace/source/src_code/test/e2e/e2e_test.go:116 @ 10/30/26 06:48:38.863
END STEP: Wait for TrainJob to be in Succeeded status with all jobs succeeded - /workspace/source/src_code/test/e2e/e2e_test.go:116 @ 10/30/26 06:52:42.855 (4m3.991s)
&lt; Exit [It] should create TrainJob with PyTorch runtime reference - /workspace/source/src_code/test/e2e/e2e_test.go:84 @ 10/30/26 06:52:42.855 (4m4.701s)
&gt; Enter [AfterEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:76 @ 10/30/26 06:52:42.855
&lt; Exit [AfterEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:76 @ 10/30/26 06:52:42.869 (14ms)
</system-err>
          </testcase>
          <testcase name="[It] TrainJob e2e when Creating TrainJob to perform DeepSpeed workload should create TrainJob with DeepSpeed runtime reference" classname="Kubeflow Trainer E2E Suite" status="skipped" time="0.043349033">
              <skipped message="skipped - MPI runtime image is not available" />
              <system-err>&gt; Enter [BeforeEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:61 @ 10/30/26 06:52:42.869
&lt; Exit [BeforeEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:61 @ 10/30/26 06:52:42.897 (28ms)
&gt; Enter [It] should create TrainJob with DeepSpeed runtime reference - /workspace/source/src_code/test/e2e/e2e_test.go:145 @ 10/30/26 06:52:42.897
[SKIPPED] MPI runtime image is not available
In [It] at: /workspace/source/src_code/test/e2e/e2e_test.go:147 @ 10/30/26 06:52:42.897
&lt; Exit [It] should create TrainJob with DeepSpeed runtime reference - /workspace/source/src_code/test/e2e/e2e_test.go:145 @ 10/30/26 06:52:42.897 (0s)
&gt; Enter [AfterEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:76 @ 10/30/26 06:52:42.897
&lt; Exit [AfterEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:76 @ 10/30/26 06:52:42.913 (15ms)
</system-err>
          </testcase>
          <testcase name="[It] TrainJob e2e when Creating TrainJob to perform OpenMPI 4.0 workload should create TrainJob with DeepSpeed runtime reference and OpenMPI 4.0 image" classname="Kubeflow Trainer E2E Suite" status="failed" time="0.181697512">
              <failure message="Expected success, but got an error:&#10;    &lt;*errors.StatusError | 0x11906cd4d860&gt;: &#10;    admission webhook &quot;validator.trainjob.trainer.kubeflow.org&quot; denied the request: spec.runtimeRef: Invalid value: {&quot;name&quot;:&quot;deepspeed-distributed&quot;,&quot;apiGroup&quot;:&quot;trainer.kubeflow.org&quot;,&quot;kind&quot;:&quot;ClusterTrainingRuntime&quot;}: ClusterTrainingRuntime.trainer.kubeflow.org &quot;deepspeed-distributed&quot; not found: specified clusterTrainingRuntime must be created before the TrainJob is created&#10;    {&#10;        ErrStatus: {&#10;            TypeMeta: {Kind: &quot;&quot;, APIVersion: &quot;&quot;},&#10;            ListMeta: {&#10;                SelfLink: &quot;&quot;,&#10;                ResourceVersion: &quot;&quot;,&#10;                Continue: &quot;&quot;,&#10;                RemainingItemCount: nil,&#10;                ShardInfo: nil,&#10;            },&#10;            Status: &quot;Failure&quot;,&#10;            Message: &quot;admission webhook \&quot;validator.trainjob.trainer.kubeflow.org\&quot; denied the request: spec.runtimeRef: Invalid value: {\&quot;name\&quot;:\&quot;deepspeed-distributed\&quot;,\&quot;apiGroup\&quot;:\&quot;trainer.kubeflow.org\&quot;,\&quot;kind\&quot;:\&quot;ClusterTrainingRuntime\&quot;}: ClusterTrainingRuntime.trainer.kubeflow.org \&quot;deepspeed-distributed\&quot; not found: specified clusterTrainingRuntime must be created before the TrainJob is created&quot;,&#10;            Reason: &quot;Forbidden&quot;,&#10;            Details: nil,&#10;            Code: 403,&#10;        },&#10;    }" type="failed">[FAILED] Expected success, but got an error:
    &lt;*errors.StatusError | 0x11906cd4d860&gt;: 
    admission webhook "validator.trainjob.trainer.kubeflow.org" denied the request: spec.runtimeRef: Invalid value: {"name":"deepspeed-distributed","apiGroup":"trainer.kubeflow.org","kind":"ClusterTrainingRuntime"}: ClusterTrainingRuntime.trainer.kubeflow.org "deepspeed-distributed" not found: specified clusterTrainingRuntime must be created before the TrainJob is created
    {
        ErrStatus: {
            TypeMeta: {Kind: "", APIVersion: ""},
            ListMeta: {
                SelfLink: "",
                ResourceVersion: "",
                Continue: "",
                RemainingItemCount: nil,
                ShardInfo: nil,
            },
            Status: "Failure",
            Message: "admission webhook \"validator.trainjob.trainer.kubeflow.org\" denied the request: spec.runtimeRef: Invalid value: {\"name\":\"deepspeed-distributed\",\"apiGroup\":\"trainer.kubeflow.org\",\"kind\":\"ClusterTrainingRuntime\"}: ClusterTrainingRuntime.trainer.kubeflow.org \"deepspeed-distributed\" not found: specified clusterTrainingRuntime must be created before the TrainJob is created",
            Reason: "Forbidden",
            Details: nil,
            Code: 403,
        },
    }
In [It] at: /workspace/source/src_code/test/e2e/e2e_test.go:216 @ 10/30/26 06:52:43.079
</failure>
              <system-err>&gt; Enter [BeforeEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:61 @ 10/30/26 06:52:42.913
&lt; Exit [BeforeEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:61 @ 10/30/26 06:52:42.942 (30ms)
&gt; Enter [It] should create TrainJob with DeepSpeed runtime reference and OpenMPI 4.0 image - /workspace/source/src_code/test/e2e/e2e_test.go:203 @ 10/30/26 06:52:42.942
STEP: Create a TrainJob with deepspeed-distributed runtime reference and the OpenMPI 4.0 image - /workspace/source/src_code/test/e2e/e2e_test.go:215 @ 10/30/26 06:52:42.942
END STEP: Create a TrainJob with deepspeed-distributed runtime reference and the OpenMPI 4.0 image - /workspace/source/src_code/test/e2e/e2e_test.go:215 @ 10/30/26 06:52:43.079 (136ms)
[FAILED] Expected success, but got an error:
    &lt;*errors.StatusError | 0x11906cd4d860&gt;: 
    admission webhook "validator.trainjob.trainer.kubeflow.org" denied the request: spec.runtimeRef: Invalid value: {"name":"deepspeed-distributed","apiGroup":"trainer.kubeflow.org","kind":"ClusterTrainingRuntime"}: ClusterTrainingRuntime.trainer.kubeflow.org "deepspeed-distributed" not found: specified clusterTrainingRuntime must be created before the TrainJob is created
    {
        ErrStatus: {
            TypeMeta: {Kind: "", APIVersion: ""},
            ListMeta: {
                SelfLink: "",
                ResourceVersion: "",
                Continue: "",
                RemainingItemCount: nil,
                ShardInfo: nil,
            },
            Status: "Failure",
            Message: "admission webhook \"validator.trainjob.trainer.kubeflow.org\" denied the request: spec.runtimeRef: Invalid value: {\"name\":\"deepspeed-distributed\",\"apiGroup\":\"trainer.kubeflow.org\",\"kind\":\"ClusterTrainingRuntime\"}: ClusterTrainingRuntime.trainer.kubeflow.org \"deepspeed-distributed\" not found: specified clusterTrainingRuntime must be created before the TrainJob is created",
            Reason: "Forbidden",
            Details: nil,
            Code: 403,
        },
    }
In [It] at: /workspace/source/src_code/test/e2e/e2e_test.go:216 @ 10/30/26 06:52:43.079
&lt; Exit [It] should create TrainJob with DeepSpeed runtime reference and OpenMPI 4.0 image - /workspace/source/src_code/test/e2e/e2e_test.go:203 @ 10/30/26 06:52:43.079 (137ms)
&gt; Enter [AfterEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:76 @ 10/30/26 06:52:43.079
&lt; Exit [AfterEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:76 @ 10/30/26 06:52:43.094 (16ms)
</system-err>
          </testcase>
          <testcase name="[It] TrainJob e2e when Creating TrainJob to perform JAX workload should create TrainJob with JAX runtime reference" classname="Kubeflow Trainer E2E Suite" status="passed" time="132.604976039">
              <system-err>&gt; Enter [BeforeEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:61 @ 10/30/26 06:52:43.095
&lt; Exit [BeforeEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:61 @ 10/30/26 06:52:43.122 (27ms)
&gt; Enter [It] should create TrainJob with JAX runtime reference - /workspace/source/src_code/test/e2e/e2e_test.go:259 @ 10/30/26 06:52:43.122
STEP: Create a TrainJob with jax-distributed runtime reference - /workspace/source/src_code/test/e2e/e2e_test.go:265 @ 10/30/26 06:52:43.122
END STEP: Create a TrainJob with jax-distributed runtime reference - /workspace/source/src_code/test/e2e/e2e_test.go:265 @ 10/30/26 06:52:43.167 (45ms)
STEP: Wait for TrainJob jobs to become active - /workspace/source/src_code/test/e2e/e2e_test.go:270 @ 10/30/26 06:52:43.167
END STEP: Wait for TrainJob jobs to become active - /workspace/source/src_code/test/e2e/e2e_test.go:270 @ 10/30/26 06:52:43.704 (537ms)
STEP: Wait for TrainJob to be in Succeeded status with all jobs succeeded - /workspace/source/src_code/test/e2e/e2e_test.go:288 @ 10/30/26 06:52:43.704
END STEP: Wait for TrainJob to be in Succeeded status with all jobs succeeded - /workspace/source/src_code/test/e2e/e2e_test.go:288 @ 10/30/26 06:54:55.683 (2m11.98s)
&lt; Exit [It] should create TrainJob with JAX runtime reference - /workspace/source/src_code/test/e2e/e2e_test.go:259 @ 10/30/26 06:54:55.683 (2m12.561s)
&gt; Enter [AfterEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:76 @ 10/30/26 06:54:55.683
&lt; Exit [AfterEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:76 @ 10/30/26 06:54:55.7 (16ms)
</system-err>
          </testcase>
          <testcase name="[It] TrainJob e2e when Creating TrainJob to perform XGBoost workload should create TrainJob with XGBoost runtime reference" classname="Kubeflow Trainer E2E Suite" status="passed" time="45.158285418">
              <system-err>&gt; Enter [BeforeEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:61 @ 10/30/26 06:54:55.7
&lt; Exit [BeforeEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:61 @ 10/30/26 06:54:55.729 (29ms)
&gt; Enter [It] should create TrainJob with XGBoost runtime reference - /workspace/source/src_code/test/e2e/e2e_test.go:317 @ 10/30/26 06:54:55.729
STEP: Create a TrainJob with xgboost-distributed runtime reference - /workspace/source/src_code/test/e2e/e2e_test.go:323 @ 10/30/26 06:54:55.729
END STEP: Create a TrainJob with xgboost-distributed runtime reference - /workspace/source/src_code/test/e2e/e2e_test.go:323 @ 10/30/26 06:54:55.861 (132ms)
STEP: Wait for TrainJob jobs to become active - /workspace/source/src_code/test/e2e/e2e_test.go:328 @ 10/30/26 06:54:55.861
END STEP: Wait for TrainJob jobs to become active - /workspace/source/src_code/test/e2e/e2e_test.go:328 @ 10/30/26 06:54:56.401 (540ms)
STEP: Wait for TrainJob to be in Succeeded status with all jobs succeeded - /workspace/source/src_code/test/e2e/e2e_test.go:346 @ 10/30/26 06:54:56.401
END STEP: Wait for TrainJob to be in Succeeded status with all jobs succeeded - /workspace/source/src_code/test/e2e/e2e_test.go:346 @ 10/30/26 06:55:40.844 (44.443s)
&lt; Exit [It] should create TrainJob with XGBoost runtime reference - /workspace/source/src_code/test/e2e/e2e_test.go:317 @ 10/30/26 06:55:40.844 (45.115s)
&gt; Enter [AfterEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:76 @ 10/30/26 06:55:40.844
&lt; Exit [AfterEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:76 @ 10/30/26 06:55:40.858 (14ms)
</system-err>
          </testcase>
          <testcase name="[It] TrainJob e2e when Creating TrainJob to perform Flux workload should create TrainJob with Flux runtime reference" classname="Kubeflow Trainer E2E Suite" status="passed" time="28.754959532">
              <system-err>&gt; Enter [BeforeEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:61 @ 10/30/26 06:55:40.858
&lt; Exit [BeforeEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:61 @ 10/30/26 06:55:40.885 (27ms)
&gt; Enter [It] should create TrainJob with Flux runtime reference - /workspace/source/src_code/test/e2e/e2e_test.go:374 @ 10/30/26 06:55:40.885
STEP: Create a TrainJob with flux-distributed runtime reference - /workspace/source/src_code/test/e2e/e2e_test.go:393 @ 10/30/26 06:55:40.885
END STEP: Create a TrainJob with flux-distributed runtime reference - /workspace/source/src_code/test/e2e/e2e_test.go:393 @ 10/30/26 06:55:40.931 (47ms)
STEP: Wait for TrainJob jobs to become active - /workspace/source/src_code/test/e2e/e2e_test.go:397 @ 10/30/26 06:55:40.931
END STEP: Wait for TrainJob jobs to become active - /workspace/source/src_code/test/e2e/e2e_test.go:397 @ 10/30/26 06:55:41.469 (538ms)
STEP: Wait for TrainJob to be in Succeeded status with all jobs succeeded - /workspace/source/src_code/test/e2e/e2e_test.go:414 @ 10/30/26 06:55:41.469
END STEP: Wait for TrainJob to be in Succeeded status with all jobs succeeded - /workspace/source/src_code/test/e2e/e2e_test.go:414 @ 10/30/26 06:56:09.599 (28.13s)
&lt; Exit [It] should create TrainJob with Flux runtime reference - /workspace/source/src_code/test/e2e/e2e_test.go:374 @ 10/30/26 06:56:09.599 (28.715s)
&gt; Enter [AfterEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:76 @ 10/30/26 06:56:09.599
&lt; Exit [AfterEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:76 @ 10/30/26 06:56:09.613 (14ms)
</system-err>
          </testcase>
          <testcase name="[It] TrainJob e2e when Creating a TrainJob with RuntimePatches should preserve user-provided manager fields" classname="Kubeflow Trainer E2E Suite" status="passed" time="0.105367463">
              <system-err>&gt; Enter [BeforeEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:61 @ 10/30/26 06:56:09.613
&lt; Exit [BeforeEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:61 @ 10/30/26 06:56:09.64 (26ms)
&gt; Enter [It] should preserve user-provided manager fields - /workspace/source/src_code/test/e2e/e2e_test.go:442 @ 10/30/26 06:56:09.64
STEP: Create a TrainJob with RuntimePatches - /workspace/source/src_code/test/e2e/e2e_test.go:494 @ 10/30/26 06:56:09.64
END STEP: Create a TrainJob with RuntimePatches - /workspace/source/src_code/test/e2e/e2e_test.go:494 @ 10/30/26 06:56:09.69 (50ms)
STEP: Verify user-provided Time is preserved for test.io/manager-one and Time is set for kueue.k8s.io/manager - /workspace/source/src_code/test/e2e/e2e_test.go:498 @ 10/30/26 06:56:09.69
END STEP: Verify user-provided Time is preserved for test.io/manager-one and Time is set for kueue.k8s.io/manager - /workspace/source/src_code/test/e2e/e2e_test.go:498 @ 10/30/26 06:56:09.703 (12ms)
&lt; Exit [It] should preserve user-provided manager fields - /workspace/source/src_code/test/e2e/e2e_test.go:442 @ 10/30/26 06:56:09.703 (63ms)
&gt; Enter [AfterEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:76 @ 10/30/26 06:56:09.703
&lt; Exit [AfterEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:76 @ 10/30/26 06:56:09.719 (16ms)
</system-err>
          </testcase>
          <testcase name="[It] TrainJob e2e when Creating a TrainJob with RuntimePatches should update Time only for the changed patch on update" classname="Kubeflow Trainer E2E Suite" status="passed" time="1.17940347">
              <system-err>&gt; Enter [BeforeEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:61 @ 10/30/26 06:56:09.719
&lt; Exit [BeforeEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:61 @ 10/30/26 06:56:09.747 (29ms)
&gt; Enter [It] should update Time only for the changed patch on update - /workspace/source/src_code/test/e2e/e2e_test.go:512 @ 10/30/26 06:56:09.747
STEP: Create a suspended TrainJob with two RuntimePatches - /workspace/source/src_code/test/e2e/e2e_test.go:566 @ 10/30/26 06:56:09.747
END STEP: Create a suspended TrainJob with two RuntimePatches - /workspace/source/src_code/test/e2e/e2e_test.go:566 @ 10/30/26 06:56:09.795 (48ms)
STEP: Record the original Time values and verify user-provided Time is preserved - /workspace/source/src_code/test/e2e/e2e_test.go:571 @ 10/30/26 06:56:09.795
END STEP: Record the original Time values and verify user-provided Time is preserved - /workspace/source/src_code/test/e2e/e2e_test.go:571 @ 10/30/26 06:56:09.807 (12ms)
STEP: Update the second RuntimePatch and add two new patches - /workspace/source/src_code/test/e2e/e2e_test.go:588 @ 10/30/26 06:56:10.807
END STEP: Update the second RuntimePatch and add two new patches - /workspace/source/src_code/test/e2e/e2e_test.go:588 @ 10/30/26 06:56:10.872 (65ms)
STEP: Verify Time behaviour for all patches after update - /workspace/source/src_code/test/e2e/e2e_test.go:607 @ 10/30/26 06:56:10.872
END STEP: Verify Time behaviour for all patches after update - /workspace/source/src_code/test/e2e/e2e_test.go:607 @ 10/30/26 06:56:10.884 (12ms)
&lt; Exit [It] should update Time only for the changed patch on update - /workspace/source/src_code/test/e2e/e2e_test.go:512 @ 10/30/26 06:56:10.884 (1.137s)
&gt; Enter [AfterEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:76 @ 10/30/26 06:56:10.884
&lt; Exit [AfterEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:76 @ 10/30/26 06:56:10.898 (14ms)
</system-err>
          </testcase>
          <testcase name="[It] TrainJob e2e when Creating a TrainJob managed by an external controller should not be reconciled by the built-in controller" classname="Kubeflow Trainer E2E Suite" status="passed" time="15.086856585">
              <system-err>&gt; Enter [BeforeEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:61 @ 10/30/26 06:56:10.898
&lt; Exit [BeforeEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:61 @ 10/30/26 06:56:10.925 (27ms)
&gt; Enter [It] should not be reconciled by the built-in controller - /workspace/source/src_code/test/e2e/e2e_test.go:629 @ 10/30/26 06:56:10.925
STEP: Create a TrainJob managed by MultiKueue - /workspace/source/src_code/test/e2e/e2e_test.go:636 @ 10/30/26 06:56:10.925
END STEP: Create a TrainJob managed by MultiKueue - /workspace/source/src_code/test/e2e/e2e_test.go:636 @ 10/30/26 06:56:10.968 (43ms)
STEP: Ensuring the built-in controller neither creates a JobSet nor sets any status - /workspace/source/src_code/test/e2e/e2e_test.go:640 @ 10/30/26 06:56:10.968
END STEP: Ensuring the built-in controller neither creates a JobSet nor sets any status - /workspace/source/src_code/test/e2e/e2e_test.go:640 @ 10/30/26 06:56:25.969 (15.001s)
&lt; Exit [It] should not be reconciled by the built-in controller - /workspace/source/src_code/test/e2e/e2e_test.go:629 @ 10/30/26 06:56:25.969 (15.044s)
&gt; Enter [AfterEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:76 @ 10/30/26 06:56:25.969
&lt; Exit [AfterEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:76 @ 10/30/26 06:56:25.985 (16ms)
</system-err>
          </testcase>
          <testcase name="[It] TrainJob e2e when Creating a TrainJob with Resource Timeouts should fail the TrainJob with DeadlineExceeded when active timeout expires" classname="Kubeflow Trainer E2E Suite" status="passed" time="10.09911255">
              <system-err>&gt; Enter [BeforeEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:61 @ 10/30/26 06:56:25.985
&lt; Exit [BeforeEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:61 @ 10/30/26 06:56:26.012 (26ms)
&gt; Enter [It] should fail the TrainJob with DeadlineExceeded when active timeout expires - /workspace/source/src_code/test/e2e/e2e_test.go:652 @ 10/30/26 06:56:26.012
STEP: Waiting for TrainJob to fail due to deadline - /workspace/source/src_code/test/e2e/e2e_test.go:667 @ 10/30/26 06:56:26.058
STEP: Ensuring the underlying JobSet is deleted - /workspace/source/src_code/test/e2e/e2e_test.go:674 @ 10/30/26 06:56:36.054
&lt; Exit [It] should fail the TrainJob with DeadlineExceeded when active timeout expires - /workspace/source/src_code/test/e2e/e2e_test.go:652 @ 10/30/26 06:56:36.066 (10.055s)
&gt; Enter [AfterEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:76 @ 10/30/26 06:56:36.066
&lt; Exit [AfterEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:76 @ 10/30/26 06:56:36.084 (18ms)
</system-err>
          </testcase>
          <testcase name="[It] TrainJob e2e when Creating TrainJob with runtime status server instrumentation should inject runtime configuration which allows the runtime status endpoint to be called" classname="Kubeflow Trainer E2E Suite" status="skipped" time="0">
              <skipped message="skipped" />
          </testcase>
          <testcase name="[It] TrainJob e2e when Updating a runtime a suspended TrainJob should use the original runtime configuration and not pick up the new configuration TrainingRuntime" classname="Kubeflow Trainer E2E Suite" status="passed" time="1.203580696">
              <system-err>&gt; Enter [BeforeEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:61 @ 10/30/26 06:56:36.084
&lt; Exit [BeforeEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:61 @ 10/30/26 06:56:36.11 (26ms)
&gt; Enter [It] TrainingRuntime - /workspace/source/src_code/test/e2e/e2e_test.go:905 @ 10/30/26 06:56:36.11
STEP: Creating a TrainingRuntime - /workspace/source/src_code/test/e2e/e2e_test.go:797 @ 10/30/26 06:56:36.11
END STEP: Creating a TrainingRuntime - /workspace/source/src_code/test/e2e/e2e_test.go:797 @ 10/30/26 06:56:36.192 (81ms)
STEP: Creating a TrainJob that references the TrainingRuntime - /workspace/source/src_code/test/e2e/e2e_test.go:810 @ 10/30/26 06:56:36.192
END STEP: Creating a TrainJob that references the TrainingRuntime - /workspace/source/src_code/test/e2e/e2e_test.go:810 @ 10/30/26 06:56:36.234 (43ms)
STEP: Waiting for TrainJob jobs to become active - /workspace/source/src_code/test/e2e/e2e_test.go:814 @ 10/30/26 06:56:36.234
END STEP: Waiting for TrainJob jobs to become active - /workspace/source/src_code/test/e2e/e2e_test.go:814 @ 10/30/26 06:56:36.509 (274ms)
STEP: Pausing the TrainJob - /workspace/source/src_code/test/e2e/e2e_test.go:825 @ 10/30/26 06:56:36.509
END STEP: Pausing the TrainJob - /workspace/source/src_code/test/e2e/e2e_test.go:825 @ 10/30/26 06:56:36.565 (56ms)
STEP: Waiting for TrainJob to be suspended - /workspace/source/src_code/test/e2e/e2e_test.go:834 @ 10/30/26 06:56:36.565
END STEP: Waiting for TrainJob to be suspended - /workspace/source/src_code/test/e2e/e2e_test.go:834 @ 10/30/26 06:56:36.84 (275ms)
STEP: Updating the runtime with a new container image - /workspace/source/src_code/test/e2e/e2e_test.go:847 @ 10/30/26 06:56:36.84
END STEP: Updating the runtime with a new container image - /workspace/source/src_code/test/e2e/e2e_test.go:847 @ 10/30/26 06:56:36.883 (44ms)
STEP: Restarting the TrainJob by unpausing it - /workspace/source/src_code/test/e2e/e2e_test.go:868 @ 10/30/26 06:56:36.883
END STEP: Restarting the TrainJob by unpausing it - /workspace/source/src_code/test/e2e/e2e_test.go:868 @ 10/30/26 06:56:36.941 (58ms)
STEP: Verifying the TrainJob jobs become active after resuming - /workspace/source/src_code/test/e2e/e2e_test.go:879 @ 10/30/26 06:56:36.941
END STEP: Verifying the TrainJob jobs become active after resuming - /workspace/source/src_code/test/e2e/e2e_test.go:879 @ 10/30/26 06:56:37.216 (275ms)
STEP: Verifying the Runtime snapshot is garbage collected - /workspace/source/src_code/test/e2e/e2e_test.go:891 @ 10/30/26 06:56:37.216
END STEP: Verifying the Runtime snapshot is garbage collected - /workspace/source/src_code/test/e2e/e2e_test.go:891 @ 10/30/26 06:56:37.253 (37ms)
&lt; Exit [It] TrainingRuntime - /workspace/source/src_code/test/e2e/e2e_test.go:905 @ 10/30/26 06:56:37.253 (1.142s)
&gt; Enter [AfterEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:76 @ 10/30/26 06:56:37.253
&lt; Exit [AfterEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:76 @ 10/30/26 06:56:37.273 (20ms)
&gt; Enter [DeferCleanup (Each)] a suspended TrainJob should use the original runtime configuration and not pick up the new configuration - /workspace/source/src_code/test/e2e/e2e_test.go:801 @ 10/30/26 06:56:37.273
&lt; Exit [DeferCleanup (Each)] a suspended TrainJob should use the original runtime configuration and not pick up the new configuration - /workspace/source/src_code/test/e2e/e2e_test.go:801 @ 10/30/26 06:56:37.288 (15ms)
</system-err>
          </testcase>
          <testcase name="[It] TrainJob e2e when Updating a runtime a suspended TrainJob should use the original runtime configuration and not pick up the new configuration ClusterTrainingRuntime" classname="Kubeflow Trainer E2E Suite" status="passed" time="1.192480204">
              <system-err>&gt; Enter [BeforeEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:61 @ 10/30/26 06:56:37.288
&lt; Exit [BeforeEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:61 @ 10/30/26 06:56:37.314 (26ms)
&gt; Enter [It] ClusterTrainingRuntime - /workspace/source/src_code/test/e2e/e2e_test.go:917 @ 10/30/26 06:56:37.314
STEP: Creating a ClusterTrainingRuntime - /workspace/source/src_code/test/e2e/e2e_test.go:797 @ 10/30/26 06:56:37.314
END STEP: Creating a ClusterTrainingRuntime - /workspace/source/src_code/test/e2e/e2e_test.go:797 @ 10/30/26 06:56:37.388 (74ms)
STEP: Creating a TrainJob that references the ClusterTrainingRuntime - /workspace/source/src_code/test/e2e/e2e_test.go:810 @ 10/30/26 06:56:37.388
END STEP: Creating a TrainJob that references the ClusterTrainingRuntime - /workspace/source/src_code/test/e2e/e2e_test.go:810 @ 10/30/26 06:56:37.431 (43ms)
STEP: Waiting for TrainJob jobs to become active - /workspace/source/src_code/test/e2e/e2e_test.go:814 @ 10/30/26 06:56:37.431
END STEP: Waiting for TrainJob jobs to become active - /workspace/source/src_code/test/e2e/e2e_test.go:814 @ 10/30/26 06:56:37.705 (274ms)
STEP: Pausing the TrainJob - /workspace/source/src_code/test/e2e/e2e_test.go:825 @ 10/30/26 06:56:37.705
END STEP: Pausing the TrainJob - /workspace/source/src_code/test/e2e/e2e_test.go:825 @ 10/30/26 06:56:37.762 (56ms)
STEP: Waiting for TrainJob to be suspended - /workspace/source/src_code/test/e2e/e2e_test.go:834 @ 10/30/26 06:56:37.762
END STEP: Waiting for TrainJob to be suspended - /workspace/source/src_code/test/e2e/e2e_test.go:834 @ 10/30/26 06:56:38.036 (275ms)
STEP: Updating the runtime with a new container image - /workspace/source/src_code/test/e2e/e2e_test.go:847 @ 10/30/26 06:56:38.036
END STEP: Updating the runtime with a new container image - /workspace/source/src_code/test/e2e/e2e_test.go:847 @ 10/30/26 06:56:38.08 (44ms)
STEP: Restarting the TrainJob by unpausing it - /workspace/source/src_code/test/e2e/e2e_test.go:868 @ 10/30/26 06:56:38.08
END STEP: Restarting the TrainJob by unpausing it - /workspace/source/src_code/test/e2e/e2e_test.go:868 @ 10/30/26 06:56:38.139 (59ms)
STEP: Verifying the TrainJob jobs become active after resuming - /workspace/source/src_code/test/e2e/e2e_test.go:879 @ 10/30/26 06:56:38.139
END STEP: Verifying the TrainJob jobs become active after resuming - /workspace/source/src_code/test/e2e/e2e_test.go:879 @ 10/30/26 06:56:38.413 (274ms)
STEP: Verifying the Runtime snapshot is garbage collected - /workspace/source/src_code/test/e2e/e2e_test.go:891 @ 10/30/26 06:56:38.413
END STEP: Verifying the Runtime snapshot is garbage collected - /workspace/source/src_code/test/e2e/e2e_test.go:891 @ 10/30/26 06:56:38.45 (36ms)
&lt; Exit [It] ClusterTrainingRuntime - /workspace/source/src_code/test/e2e/e2e_test.go:917 @ 10/30/26 06:56:38.45 (1.136s)
&gt; Enter [AfterEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:76 @ 10/30/26 06:56:38.45
&lt; Exit [AfterEach] TrainJob e2e - /workspace/source/src_code/test/e2e/e2e_test.go:76 @ 10/30/26 06:56:38.466 (16ms)
&gt; Enter [DeferCleanup (Each)] a suspended TrainJob should use the original runtime configuration and not pick up the new configuration - /workspace/source/src_code/test/e2e/e2e_test.go:801 @ 10/30/26 06:56:38.466
&lt; Exit [DeferCleanup (Each)] a suspended TrainJob should use the original runtime configuration and not pick up the new configuration - /workspace/source/src_code/test/e2e/e2e_test.go:801 @ 10/30/26 06:56:38.48 (14ms)
</system-err>
          </testcase>
          <testcase name="[It] OptimizationJob e2e when Creating OptimizationJob with random search algorithm should provision algorithm service, run trials to completion, record best result, and perform cleanup" classname="Kubeflow Trainer E2E Suite" status="pending" time="0">
              <skipped message="pending" />
          </testcase>
          <testcase name="[It] OptimizationJob e2e when Creating OptimizationJob with random search algorithm should fail if unsupported search algorithm is configured" classname="Kubeflow Trainer E2E Suite" status="pending" time="0">
              <skipped message="pending" />
          </testcase>
      </testsuite>
      <testsuite name="" package="/workspace/source/src_code/test/e2e/rhai" tests="0" disabled="0" skipped="0" errors="0" failures="0" time="0" timestamp="0001-01-01T00:00:00">
          <properties>
              <property name="SuiteSucceeded" value="false" />
              <property name="SuiteHasProgrammaticFocus" value="false" />
              <property name="SpecialSuiteFailureReason" value="Suite did not run because prior suites failed and --keep-going is not set" />
              <property name="SuiteLabels" value="[]" />
              <property name="SuiteSemVerConstraints" value="[]" />
              <property name="SuiteComponentSemVerConstraints" value="[]" />
              <property name="RandomSeed" value="1793342858" />
              <property name="RandomizeAllSpecs" value="false" />
              <property name="LabelFilter" value="" />
              <property name="SemVerFilter" value="" />
              <property name="FocusStrings" value="" />
              <property name="SkipStrings" value="runtime status server instrumentation" />
              <property name="FocusFiles" value="" />
              <property name="SkipFiles" value="" />
              <property name="FailOnPending" value="false" />
              <property name="FailOnEmpty" value="false" />
              <property name="FailFast" value="false" />
              <property name="FlakeAttempts" value="0" />
              <property name="DryRun" value="false" />
              <property name="ParallelTotal" value="1" />
              <property name="OutputInterceptorMode" value="" />
          </properties>
      </testsuite>
  <testsuite tests="3" failures="0" time="1.31" name="trainer" timestamp="2026-10-30T06:57:26Z" errors="0" skipped="0">
		<properties>
			<property name="go.version" value="go1.26.7 (Red Hat 1.26.7-1.el9_8) linux/amd64" />
		</properties>
		<testcase classname="tests/trainer" name="TestOpenMPICudaClusterTrainingRuntime" time="0.030000" />
		<testcase classname="tests/trainer" name="TestDefaultTrainingHubRuntimesMatchDefaultClusterRuntimes" time="0.030000" />
		<testcase classname="tests/trainer" name="TestDraFieldsOnTrainJobReachPods" time="1.250000" />
	</testsuite>
<testsuite tests="7" failures="0" time="861.43" name="trainer" timestamp="2026-10-30T06:57:30Z" errors="0" skipped="0">
		<properties>
			<property name="go.version" value="go1.26.7 (Red Hat 1.26.7-1.el9_8) linux/amd64" />
		</properties>
		<testcase classname="tests/trainer" name="TestRunTrainJobWithDefaultClusterTrainingRuntimes" time="496.950000" />
		<testcase classname="tests/trainer" name="TestJobSetWorkflow" time="109.940000" />
		<testcase classname="tests/trainer" name="TestKubeflowSdk" time="50.800000" />
		<testcase classname="tests/trainer" name="TestKubeflowSdkKueueIntegration" time="50.110000" />
		<testcase classname="tests/trainer" name="TestKueueWorkloadPreemptionSuspendsTrainJob" time="4.550000" />
		<testcase classname="tests/trainer" name="TestKueueSchedulingReachesTrainJobPods" time="1.430000" />
		<testcase classname="tests/trainer" name="TestMultiNodeOpenMPICpuTrainJob" time="147.650000" />
	</testsuite>
<testsuite tests="15" failures="0" time="2596.15" name="trainer" timestamp="2026-10-30T07:11:55Z" errors="0" skipped="0">
		<properties>
			<property name="go.version" value="go1.26.7 (Red Hat 1.26.7-1.el9_8) linux/amd64" />
		</properties>
		<testcase classname="tests/trainer" name="TestFailedJobSetWorkflow" time="18.650000" />
		<testcase classname="tests/trainer" name="TestRhaiTrainingProgressionCPU" time="525.250000" />
		<testcase classname="tests/trainer" name="TestRhaiJitCheckpointingCPU" time="613.670000" />
		<testcase classname="tests/trainer" name="TestRhaiFeaturesCPU" time="608.790000" />
		<testcase classname="tests/trainer" name="TestRhaiS3CheckpointingCPU" time="634.480000" />
		<testcase classname="tests/trainer" name="TestPyTorchDDPMultiNodeMultiCPUWithTorchCuda28" time="138.580000" />
		<testcase classname="tests/trainer" name="TestKueueWorkloadInadmissibleWithNonExistentLocalQueue" time="1.440000" />
		<testcase classname="tests/trainer" name="TestTrainerSecureServing" time="0.710000" />
		<testcase classname="tests/trainer" name="TestTrainerPrometheusScrape" time="0.360000" />
		<testcase classname="tests/trainer" name="TestTrainerNetworkPolicyBlocksIngressFromOtherNamespacesToMetrics" time="10.370000" />
		<testcase classname="tests/trainer" name="TestTrainerNetworkPolicyBlocksIngressFromOtherNamespacesToHealth" time="6.350000" />
		<testcase classname="tests/trainer" name="TestTrainerNetworkPolicyBlocksIngressFromOtherNamespacesToStatusServer" time="8.350000" />
		<testcase classname="tests/trainer" name="TestTrainerNetworkPolicyBlocksIngressFromOtherNamespacesToUnpublishedPort" time="8.280000" />
		<testcase classname="tests/trainer" name="TestTrainerNetworkPolicyBlocksIngressFromOtherNamespacesToWorkloadPort" time="9.440000" />
		<testcase classname="tests/trainer" name="TestTrainerNetworkPolicyBlocksIngressFromOtherWorkloadsToWorkloadPort" time="11.430000" />
	</testsuite>
<testsuite tests="0" failures="0" time="0" name="trainer" timestamp="2026-10-30T07:55:14Z" errors="0" skipped="0">
		<properties>
			<property name="go.version" value="go1.26.7 (Red Hat 1.26.7-1.el9_8) linux/amd64" />
		</properties>
	</testsuite>
</testsuites>