...

Text file src/go.mongodb.org/mongo-driver/.evergreen/run-tests.sh

Documentation: go.mongodb.org/mongo-driver/.evergreen

     1#!/bin/bash
     2
     3set -o errexit
     4
     5export GOPATH=$(dirname $(dirname $(dirname `pwd`)))
     6export GOCACHE="$(pwd)/.cache"
     7export DRIVERS_TOOLS=${DRIVERS_TOOLS:-""}
     8
     9if [ -z $DRIVERS_TOOLS ]; then
    10  export DRIVERS_TOOLS="$(dirname $(dirname $(dirname `pwd`)))/drivers-tools"
    11fi
    12
    13if [ "Windows_NT" = "${OS:-}" ]; then
    14    export GOPATH=$(cygpath -m $GOPATH)
    15    export GOCACHE=$(cygpath -m $GOCACHE)
    16    export DRIVERS_TOOLS=$(cygpath -m $DRIVERS_TOOLS)
    17fi
    18
    19export GOROOT="${GOROOT}"
    20export PATH="${GOROOT}/bin:${GCC_PATH}:$GOPATH/bin:$PATH"
    21export PROJECT="${project}"
    22
    23if [ "$(uname -s)" = "Darwin" ]; then
    24  export PKG_CONFIG_PATH=$(pwd)/install/libmongocrypt/lib/pkgconfig
    25  export DYLD_FALLBACK_LIBRARY_PATH=$(pwd)/install/libmongocrypt/lib
    26else
    27  export PKG_CONFIG_PATH=$(pwd)/install/libmongocrypt/lib64/pkgconfig
    28  export LD_LIBRARY_PATH=$(pwd)/install/libmongocrypt/lib64
    29fi
    30
    31export GOFLAGS=-mod=vendor
    32
    33SSL=${SSL:-nossl}
    34if [ "$SSL" != "nossl" -a -z "${SERVERLESS+x}" ]; then
    35    export MONGO_GO_DRIVER_CA_FILE="${DRIVERS_TOOLS}/.evergreen/x509gen/ca.pem"
    36    export MONGO_GO_DRIVER_KEY_FILE="${DRIVERS_TOOLS}/.evergreen/x509gen/client.pem"
    37    export MONGO_GO_DRIVER_PKCS8_ENCRYPTED_KEY_FILE="${DRIVERS_TOOLS}/.evergreen/x509gen/client-pkcs8-encrypted.pem"
    38    export MONGO_GO_DRIVER_PKCS8_UNENCRYPTED_KEY_FILE="${DRIVERS_TOOLS}/.evergreen/x509gen/client-pkcs8-unencrypted.pem"
    39
    40    if [ "Windows_NT" = "$OS" ]; then
    41        export MONGO_GO_DRIVER_CA_FILE=$(cygpath -m $MONGO_GO_DRIVER_CA_FILE)
    42        export MONGO_GO_DRIVER_KEY_FILE=$(cygpath -m $MONGO_GO_DRIVER_KEY_FILE)
    43        export MONGO_GO_DRIVER_PKCS8_ENCRYPTED_KEY_FILE=$(cygpath -m $MONGO_GO_DRIVER_PKCS8_ENCRYPTED_KEY_FILE)
    44        export MONGO_GO_DRIVER_PKCS8_UNENCRYPTED_KEY_FILE=$(cygpath -m $MONGO_GO_DRIVER_PKCS8_UNENCRYPTED_KEY_FILE)
    45    fi
    46fi
    47
    48if [ -f "secrets-export.sh" ]; then
    49    source $(pwd)/secrets-export.sh
    50fi
    51
    52# If GO_BUILD_TAGS is not set, set the default Go build tags to "cse" to enable
    53# client-side encryption, which requires linking the libmongocrypt C library.
    54if [ -z ${GO_BUILD_TAGS+x} ]; then
    55  GO_BUILD_TAGS="cse"
    56fi
    57
    58if [[ $GO_BUILD_TAGS == *"cse"* ]]; then
    59  if [ "Windows_NT" = "$OS" ]; then
    60    if [ ! -d /cygdrive/c/libmongocrypt/bin ]; then
    61      bash $(pwd)/etc/install-libmongocrypt.sh
    62    fi
    63    export PATH=$PATH:/cygdrive/c/libmongocrypt/bin
    64  elif [ ! -d "$PKG_CONFIG_PATH" ]; then
    65    bash $(pwd)/etc/install-libmongocrypt.sh
    66  fi
    67fi
    68
    69if [ "${SKIP_CRYPT_SHARED_LIB}" = "true" ]; then
    70  CRYPT_SHARED_LIB_PATH=""
    71  echo "crypt_shared library is skipped"
    72elif [ -z "${CRYPT_SHARED_LIB_PATH}" ]; then
    73  echo "crypt_shared library path is empty"
    74else
    75  CRYPT_SHARED_LIB_PATH=${CRYPT_SHARED_LIB_PATH}
    76  echo "crypt_shared library will be loaded from path: $CRYPT_SHARED_LIB_PATH"
    77fi
    78
    79if [ -z ${MAKEFILE_TARGET+x} ]; then
    80  if [ "$(uname -s)" = "Darwin" ]; then
    81      # Run a subset of the tests on Darwin
    82      MAKEFILE_TARGET="evg-test-load-balancers"
    83  else
    84    MAKEFILE_TARGET="evg-test"
    85  fi
    86fi
    87
    88AUTH=${AUTH} \
    89SSL=${SSL} \
    90MONGO_GO_DRIVER_CA_FILE=${MONGO_GO_DRIVER_CA_FILE} \
    91MONGO_GO_DRIVER_KEY_FILE=${MONGO_GO_DRIVER_KEY_FILE} \
    92MONGO_GO_DRIVER_PKCS8_ENCRYPTED_KEY_FILE=${MONGO_GO_DRIVER_PKCS8_ENCRYPTED_KEY_FILE} \
    93MONGO_GO_DRIVER_PKCS8_UNENCRYPTED_KEY_FILE=${MONGO_GO_DRIVER_PKCS8_UNENCRYPTED_KEY_FILE} \
    94MONGODB_URI="${MONGODB_URI}" \
    95TOPOLOGY=${TOPOLOGY} \
    96MONGO_GO_DRIVER_COMPRESSOR=${MONGO_GO_DRIVER_COMPRESSOR} \
    97BUILD_TAGS="${RACE} -tags=${GO_BUILD_TAGS}" \
    98CRYPT_SHARED_LIB_PATH=$CRYPT_SHARED_LIB_PATH \
    99PKG_CONFIG_PATH=$PKG_CONFIG_PATH \
   100LD_LIBRARY_PATH=$LD_LIBRARY_PATH \
   101MACOS_LIBRARY_PATH=$DYLD_FALLBACK_LIBRARY_PATH \
   102make $MAKEFILE_TARGET

View as plain text