#!/bin/bash export LANG=zh_CN.utf8 export LC_ALL=zh_CN.utf8 #改变工作目录到当前脚本所在路径 if [[ "$0" =~ / ]]; then cd "${0%/*}"; fi #通过env文件配置环境变量 if [[ -f "./env" ]]; then . ./env fi export CGO_ENABLED=1 if [[ `uname` = "Darwin" ]]; then export CGO_CFLAGS="-g -O1 -Qunused-arguments -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_FTS5 -DSQLITE_SOUNDEX -DSQLITE_ENABLE_GEOPOLY -DSQLITE_USE_ALLOCA -DUHAHA_GOODIES" export CGO_LDFLAGS="-g -O2 -Qunused-arguments" elif [[ `uname` = "Linux" ]]; then export CC=/opt/musl/bin/musl-gcc export CGO_CFLAGS="-g -O1 -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_FTS5 -DSQLITE_SOUNDEX -DSQLITE_ENABLE_GEOPOLY -DSQLITE_USE_ALLOCA -DUHAHA_GOODIES" export CGO_LDFLAGS='-g -O2' else export CGO_CFLAGS="-g -O1 -DSQLITE_ENABLE_JSON1 -DSQLITE_ENABLE_RTREE -DSQLITE_ENABLE_FTS5 -DSQLITE_SOUNDEX -DSQLITE_ENABLE_GEOPOLY -DSQLITE_USE_ALLOCA -DUHAHA_GOODIES" export CGO_LDFLAGS="-g -O2" fi if [[ "$ETCDPATH" = "" ]]; then export ETCDPATH=47.92.151.165:2379 fi if [[ "$ETCDUSER" = "" ]]; then #// ETCDUSER=root export ETCDUSER= fi if [[ "$ETCDPASS" = "" ]]; then #// ETCDPASS=VXOrp3iEqNBlSTp8LR3nSg== export ETCDPASS= fi if [[ "$CASSANDRAPATH" = "" ]]; then export CASSANDRAPATH=47.92.151.165 fi if [[ "$CASSANDRALOOKUP" = "" ]]; then #// 默认为false,跨域连接时需要置true export CASSANDRALOOKUP=true fi if [[ "$NATSPATH" = "" ]]; then export NATSPATH=nats://user:N5JbKeT1C3uOUh317OVXjg==@47.92.151.165:4222 fi testunit=TestAll if [[ "$1" != "" ]]; then testunit="$1" fi export CASSANDRAKEYSPACE= if [[ "$2" != "" ]]; then export CASSANDRAKEYSPACE="$2" fi export shadow=1 if [[ "$3" != "" ]]; then export shadow="$3" fi export Name="test" if [[ "$4" != "" ]]; then export Name="$4" fi if [[ "$DC" != "" ]]; then export DC="${Name}dc${shadow}" fi export LOG_LEVEL=WARN if [[ "$5" != "" ]]; then export LOG_LEVEL="$5" fi if [[ ${CASSANDRAKEYSPACE} == "" ]]; then echo "usage: "$0" <测试点,空表示所有> <集群节点数,默认 1> <节点名,默认test> <日志级别,默认 WARN>" exit 1 fi echo "测试点: "${testunit} echo "Keyspace: "${CASSANDRAKEYSPACE} echo "节点名: "${Name} echo "DC: "${DC} echo "集群节点数: "${shadow} echo "日志级别: "${LOG_LEVEL} echo "ETCDPATH: "$ETCDPATH echo "ETCDUSER: "$ETCDUSER echo "ETCDPASS: "$ETCDPASS echo "CASSANDRAPATH: "$CASSANDRAPATH echo "CASSANDRALOOKUP: "$CASSANDRALOOKUP echo "NATSPATH: "$NATSPATH # if [[ `uname` = "Linux" ]]; then # go test --ldflags '-linkmode external -extldflags "-static"' -timeout 36000s --count=1 -v -run ^${testunit}$ git.wecise.com/wecise/odbserver/test/unit -args test.shadow=${shadow} log.consolelevel=${LOG_LEVEL} # else # go test -timeout 36000s -v --count=1 -run ^${testunit}$ git.wecise.com/wecise/odbserver/test/unit -args test.shadow=${shadow} log.consolelevel=${LOG_LEVEL} # fi export CGO_ENABLED=0 go test -timeout 36000s -v --count=1 -run ^${testunit}$ git.wecise.com/wecise/odbserver/test/unit -args test.shadow=${shadow} log.consolelevel=${LOG_LEVEL}