Browse Source

functional-tester: update local test scripts with docker

Signed-off-by: Gyuho Lee <gyuhox@gmail.com>
Gyuho Lee 7 years ago
parent
commit
bb73145565

+ 4 - 20
tools/functional-tester/scripts/docker-local-agent.sh

@@ -13,7 +13,7 @@ if ! [[ "${0}" =~ "scripts/docker-local-agent.sh" ]]; then
 fi
 
 if [[ -z "${GO_VERSION}" ]]; then
-  GO_VERSION=1.10
+  GO_VERSION=1.10.1
 fi
 echo "Running with GO_VERSION:" ${GO_VERSION}
 
@@ -29,30 +29,14 @@ else
        exit 255 ;;
   esac
   AGENT_NAME="agent-${1}"
-  AGENT_PORT_FLAG="--port :${1}9027"
-  FAILPOINT_ADDR_FLAG="--failpoint-addr :738${1}"
+  AGENT_ADDR_FLAG="--network tcp --address 127.0.0.1:${1}9027"
 fi
 echo "AGENT_NAME:" ${AGENT_NAME}
-echo "AGENT_PORT_FLAG:" ${AGENT_PORT_FLAG}
-echo "FAILPOINT_ADDR_FLAG:" ${FAILPOINT_ADDR_FLAG}
+echo "AGENT_ADDR_FLAG:" ${AGENT_ADDR_FLAG}
 
-if [[ -z "${ETCD_EXEC_PATH}" ]]; then
-  ETCD_EXEC_PATH=/etcd
-elif [[ "${ETCD_EXEC_PATH}" != "/etcd-failpoints" ]]; then
-  echo "Cannot find etcd executable:" ${ETCD_EXEC_PATH}
-  exit 255
-fi
-echo "ETCD_EXEC_PATH:" ${ETCD_EXEC_PATH}
-
-rm -rf `pwd`/${AGENT_NAME} && mkdir -p `pwd`/${AGENT_NAME}
 docker run \
   --rm \
   --net=host \
   --name ${AGENT_NAME} \
-  --mount type=bind,source=`pwd`/${AGENT_NAME},destination=/${AGENT_NAME} \
   gcr.io/etcd-development/etcd-functional-tester:go${GO_VERSION} \
-  /bin/bash -c "/etcd-agent \
-    --etcd-path ${ETCD_EXEC_PATH} \
-    --etcd-log-dir /${AGENT_NAME} \
-    ${AGENT_PORT_FLAG} \
-    ${FAILPOINT_ADDR_FLAG}"
+  /bin/bash -c "./bin/etcd-agent ${AGENT_ADDR_FLAG}"

+ 2 - 49
tools/functional-tester/scripts/docker-local-tester.sh

@@ -1,65 +1,18 @@
 #!/usr/bin/env bash
 
-<<COMMENT
-# to run with different Go version
-# requires prebuilt Docker image
-#   GO_VERSION=1.10 make build-docker-functional-tester -f ./hack/scripts-dev/Makefile
-GO_VERSION=1.10 ./scripts/docker-local-tester.sh
-
-# to run only 1 tester round
-LIMIT=1 ./scripts/docker-local-tester.sh
-
-# to run long-running tests with no limit
-LIMIT=1 ./scripts/docker-local-tester.sh
-
-# to run only 1 tester round with election runner and others
-# default is STRESSER="keys,lease"
-LIMIT=1 \
-  STRESSER="keys,lease,election-runner,watch-runner,lock-racer-runner,lease-runner" \
-  ./scripts/docker-local-tester.sh
-
-# TODO: make stresser QPS configurable
-COMMENT
-
 if ! [[ "${0}" =~ "scripts/docker-local-tester.sh" ]]; then
   echo "must be run from tools/functional-tester"
   exit 255
 fi
 
 if [[ -z "${GO_VERSION}" ]]; then
-  GO_VERSION=1.10
+  GO_VERSION=1.10.1
 fi
 echo "Running with GO_VERSION:" ${GO_VERSION}
 
-if [[ "${LIMIT}" ]]; then
-  LIMIT_FLAG="--limit ${LIMIT}"
-  echo "Running with:" ${LIMIT_FLAG}
-else
-  echo "Running with no limit"
-fi
-
-if [[ "${STRESSER}" ]]; then
-  STRESSER_FLAG="--stresser ${STRESSER}"
-else
-  STRESSER_FLAG="--stresser keys,lease"
-fi
-echo "Running with:" ${STRESSER_FLAG}
-
 docker run \
   --rm \
   --net=host \
   --name tester \
   gcr.io/etcd-development/etcd-functional-tester:go${GO_VERSION} \
-  /bin/bash -c "/etcd-tester \
-    --agent-endpoints '127.0.0.1:19027,127.0.0.1:29027,127.0.0.1:39027' \
-    --client-ports 1379,2379,3379 \
-    --advertise-client-ports 13790,23790,33790 \
-    --peer-ports 1380,2380,3380 \
-    --advertise-peer-ports 13800,23800,33800 \
-    ${LIMIT_FLAG} \
-    --etcd-runner /etcd-runner \
-    --stress-qps=2500 \
-    --stress-key-txn-count 100 \
-    --stress-key-txn-ops 10 \
-    ${STRESSER_FLAG} \
-    --exit-on-failure"
+  /bin/bash -c "./bin/etcd-tester --config ./local-test.yaml"