| #!/bin/sh -e |
| set -x |
| set -e |
| |
| # 1. build etcd binaries |
| [ -f bin/etcd ] || ./build |
| |
| # 2. build agent & tester |
| [ -f bin/etcd-agent -a -f bin/etcd-tester ] || ./tools/functional-tester/build |
| |
| # 3. build docker image (alpine based) |
| mkdir -p ./tools/functional-tester/docker/bin |
| cp -v bin/etcd-agent bin/etcd-tester bin/etcd ./tools/functional-tester/docker/bin |
| docker-compose -f tools/functional-tester/docker/docker-compose.yml build |
| |
| # 4. create network (assumption - no overlaps) |
| docker network ls | grep etcd-functional || docker network create --subnet 172.20.0.0/16 etcd-functional |
| |
| # 5. run cluster and tester (assumption - agents'll get first ip addresses) |
| docker-compose -f tools/functional-tester/docker/docker-compose.yml up -d a1 a2 a3 |
| |
| # 6. run tester |
| docker-compose -f tools/functional-tester/docker/docker-compose.yml run tester |