vitess.io/vitess@v0.16.2/tools/e2e_test_cluster.sh (about)

     1  #!/bin/bash
     2  
     3  # Copyright 2019 The Vitess Authors.
     4  #
     5  # Licensed under the Apache License, Version 2.0 (the "License");
     6  # you may not use this file except in compliance with the License.
     7  # You may obtain a copy of the License at
     8  #
     9  #     http://www.apache.org/licenses/LICENSE-2.0
    10  #
    11  # Unless required by applicable law or agreed to in writing, software
    12  # distributed under the License is distributed on an "AS IS" BASIS,
    13  # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    14  # See the License for the specific language governing permissions and
    15  # limitations under the License.
    16  
    17  # These test uses excutables and launch them as process
    18  # After that all tests run, here we are testing those
    19  
    20  # All Go packages with test files.
    21  # Output per line: <full Go package name> <all _test.go files in the package>*
    22  
    23  source build.env
    24  
    25  packages_with_tests=$(go list -f '{{if len .TestGoFiles}}{{.ImportPath}} {{join .TestGoFiles " "}}{{end}}{{if len .XTestGoFiles}}{{.ImportPath}} {{join .XTestGoFiles " "}}{{end}}' ./go/.../endtoend/... | sort)
    26  
    27  cluster_tests=$(echo "$packages_with_tests" | grep -E "go/test/endtoend" | cut -d" " -f1)
    28  
    29  # Run cluster test sequentially
    30  echo "running cluster tests $cluster_tests"
    31  echo "$cluster_tests" | xargs go test -v -p=1
    32  if [ $? -ne 0 ]; then
    33    echo "ERROR: Go cluster tests failed. See above for errors."
    34    echo
    35    echo "This should NOT happen. Did you introduce a flaky unit test?"
    36    echo "If so, please rename it to the suffix _flaky_test.go."
    37    exit 1
    38  fi