mirror of
https://github.com/etcd-io/etcd.git
synced 2024-09-27 06:25:44 +00:00

- making sure the DRY_RUN mode can finish e2e, so e.g. commits to local copy of repository are OK in dry-run (while git pushes are NOT). - better interaction with ./test_lib.sh script. - more consistent logging - bringing back s390x architecture that on go 1.14.3 seems to work as expected.
26 lines
867 B
Markdown
26 lines
867 B
Markdown
# etcd local-tester
|
|
|
|
The etcd local-tester runs a fault injected cluster using local processes. It sets up an etcd cluster with unreliable network bridges on its peer and client interfaces. The cluster runs with a constant stream of `Put` requests to simulate client usage. A fault injection script periodically kills cluster members and disrupts bridge connectivity.
|
|
|
|
# Requirements
|
|
|
|
local-tester depends on `goreman` to manage its processes and `bash` to run fault injection.
|
|
|
|
# Building
|
|
|
|
local-tester needs `etcd`, `benchmark`, and `bridge` binaries. To build these binaries, run the following from the etcd repository root:
|
|
|
|
```sh
|
|
./build.sh
|
|
pushd tools/benchmark/ && go build && popd
|
|
pushd tools/local-tester/bridge && go build && popd
|
|
```
|
|
|
|
# Running
|
|
|
|
The fault injected cluster is invoked with `goreman`:
|
|
|
|
```sh
|
|
goreman -f tools/local-tester/Procfile start
|
|
```
|