• Kubernetes Submit Queue's avatar
    Merge pull request #30941 from Random-Liu/remove-fatal-in-e2e-suite · 5645ca74
    Kubernetes Submit Queue authored
    Automatic merge from submit-queue
    
    Node E2E: Remove fatal error in e2e_node_suite_test.go
    
    Addresses https://github.com/kubernetes/kubernetes/issues/30779#issuecomment-240532190.
    
    Currently we run node e2e test in parallel, and ginkgo makes sure that we only initialize test framework in the first test node.
    However, because we throw out some fatal error during the initialization. Once there is an fatal error, the first test node will die immediately without reporting any error, and the other nodes will exit because the first node is gone with meaningless error.
    
    If kubelet start fails, we'll get something like:
    ```
    ------------------------------
    Failure [132.485 seconds]
    [BeforeSuite] BeforeSuite 
    /usr/local/google/home/lantaol/workspace/src/k8s.io/kubernetes/test/e2e_node/e2e_node_suite_test.go:138
    
      BeforeSuite on Node 1 failed
    
      /usr/local/google/home/lantaol/workspace/src/k8s.io/kubernetes/test/e2e_node/e2e_node_suite_test.go:138
    ------------------------------
    ......
    ------------------------------
    Failure [132.465 seconds]
    [BeforeSuite] BeforeSuite 
    /usr/local/google/home/lantaol/workspace/src/k8s.io/kubernetes/test/e2e_node/e2e_node_suite_test.go:138
    
      BeforeSuite on Node 1 failed
    
      /usr/local/google/home/lantaol/workspace/src/k8s.io/kubernetes/test/e2e_node/e2e_node_suite_test.go:138
    ```
    
    This PR replaces these fatal errors with gomega assertion, with this PR, we'll get:
    ```
    Failure [132.482 seconds]
    [BeforeSuite] BeforeSuite 
    /usr/local/google/home/lantaol/workspace/src/k8s.io/kubernetes/test/e2e_node/e2e_node_suite_test.go:138
    
      should be able to start node services.
      Expected success, but got an error:
          <*errors.errorString | 0xc8203351b0>: {
              s: "failed to run server start command \"/tmp/ginkgo869068712/e2e_node.test --run-services-mode --server-start-timeout 2m0s --report-dir  --node-name lantaol0.mtv.corp.google.com --disable-kubenet=true --cgroups-per-qos=false --manifest-path /tmp/node-e2e-pod221291440 --eviction-hard memory.available<250Mi\": exit status 255",
          }
          failed to run server start command "/tmp/ginkgo869068712/e2e_node.test --run-services-mode --server-start-timeout 2m0s --report-dir  --node-name lantaol0.mtv.corp.google.com --disable-kubenet=true --cgroups-per-qos=false --manifest-path /tmp/node-e2e-pod221291440 --eviction-hard memory.available<250Mi": exit status 255
    
      /usr/local/google/home/lantaol/workspace/src/k8s.io/kubernetes/test/e2e_node/e2e_node_suite_test.go:117
    ------------------------------
    Failure [132.485 seconds]
    [BeforeSuite] BeforeSuite 
    /usr/local/google/home/lantaol/workspace/src/k8s.io/kubernetes/test/e2e_node/e2e_node_suite_test.go:138
    
      BeforeSuite on Node 1 failed
    
      /usr/local/google/home/lantaol/workspace/src/k8s.io/kubernetes/test/e2e_node/e2e_node_suite_test.go:138
    ------------------------------
    ......
    ------------------------------
    Failure [132.465 seconds]
    [BeforeSuite] BeforeSuite 
    /usr/local/google/home/lantaol/workspace/src/k8s.io/kubernetes/test/e2e_node/e2e_node_suite_test.go:138
    
      BeforeSuite on Node 1 failed
    
      /usr/local/google/home/lantaol/workspace/src/k8s.io/kubernetes/test/e2e_node/e2e_node_suite_test.go:138
    ```
    
    This is much more informative.
    
    /cc @kubernetes/sig-node
    5645ca74
Name
Last commit
Last update
..
environment Loading commit data...
jenkins Loading commit data...
runner Loading commit data...
OWNERS Loading commit data...
README.md Loading commit data...
apiserver.go Loading commit data...
apparmor_test.go Loading commit data...
benchmark_util.go Loading commit data...
cgroup_manager_test.go Loading commit data...
container.go Loading commit data...
container_manager_test.go Loading commit data...
density_test.go Loading commit data...
disk_eviction_test.go Loading commit data...
doc.go Loading commit data...
e2e_build.go Loading commit data...
e2e_node_suite_test.go Loading commit data...
e2e_remote.go Loading commit data...
e2e_service.go Loading commit data...
etcd.go Loading commit data...
gubernator.sh Loading commit data...
image.go Loading commit data...
image_conformance_test.go Loading commit data...
image_list.go Loading commit data...
kubelet_test.go Loading commit data...
memory_eviction_test.go Loading commit data...
mirror_pod_test.go Loading commit data...
namespace_controller.go Loading commit data...
resource_collector.go Loading commit data...
resource_usage_test.go Loading commit data...
runtime_conformance_test.go Loading commit data...
util.go Loading commit data...