mirror of
https://github.com/status-im/status-go.git
synced 2025-01-11 07:07:24 +00:00
ebd77aabe2
* static: updates Whisper test (to work with Geth 1.6.1) * jail: VM persistence implemented * jail: sendMessage/showSuggestions minor fixes (to be squashed) * node: CHT and boot nodes auto-load implemented * Replaced CHT data file from farazdagi's to tiabc's * Rewrote config_test.go using testify having reduced it twice in size * Increased SyncTime and panic timeout in tests * Fixed test - remove go default test to testify/suite (#207) * Add flag setup for RPCEnabled and add comment (#225) * jail: register method handlers before running initial js in jail (#226) * Console Jail Mod #179 (#228) * Added ./statusd-data into .gitignore * Increased log level for the test node from INFO to ERROR * Add call to loop.Run to evaluate all setTimeout/setIntervals methods. (#208) * Rebase onto geth1.6.7 (#232) * Got back sync duration from 60s to 30s, updated bindata.go
99 lines
1.6 KiB
Bash
Executable File
99 lines
1.6 KiB
Bash
Executable File
#!/bin/bash
|
|
#
|
|
# A script to shutdown a dev swarm cluster.
|
|
|
|
set -e
|
|
|
|
ROOT="$(cd "$(dirname "$0")/../../.." && pwd)"
|
|
source "${ROOT}/swarm/dev/scripts/util.sh"
|
|
|
|
DEFAULT_BASE_DIR="${ROOT}/swarm/dev/cluster"
|
|
|
|
usage() {
|
|
cat >&2 <<USAGE
|
|
usage: $0 [options]
|
|
|
|
Shutdown a dev swarm cluster.
|
|
|
|
OPTIONS:
|
|
-d, --dir DIR Base directory [default: ${DEFAULT_BASE_DIR}]
|
|
-h, --help Show this message
|
|
USAGE
|
|
}
|
|
|
|
main() {
|
|
local base_dir="${DEFAULT_BASE_DIR}"
|
|
|
|
parse_args "$@"
|
|
|
|
local pid_dir="${base_dir}/pids"
|
|
|
|
stop_swarm_nodes
|
|
stop_node "geth"
|
|
stop_node "bootnode"
|
|
delete_network
|
|
}
|
|
|
|
parse_args() {
|
|
while true; do
|
|
case "$1" in
|
|
-h | --help)
|
|
usage
|
|
exit 0
|
|
;;
|
|
-d | --dir)
|
|
if [[ -z "$2" ]]; then
|
|
fail "--dir flag requires an argument"
|
|
fi
|
|
base_dir="$2"
|
|
shift 2
|
|
;;
|
|
*)
|
|
break
|
|
;;
|
|
esac
|
|
done
|
|
|
|
if [[ $# -ne 0 ]]; then
|
|
usage
|
|
fail "ERROR: invalid arguments: $@"
|
|
fi
|
|
}
|
|
|
|
stop_swarm_nodes() {
|
|
for name in $(ls "${pid_dir}" | grep -oP 'swarm\d+'); do
|
|
stop_node "${name}"
|
|
done
|
|
}
|
|
|
|
stop_node() {
|
|
local name=$1
|
|
local pid_file="${pid_dir}/${name}.pid"
|
|
|
|
if [[ -e "${pid_file}" ]]; then
|
|
info "stopping ${name}"
|
|
start-stop-daemon \
|
|
--stop \
|
|
--pidfile "${pid_file}" \
|
|
--remove-pidfile \
|
|
--oknodo \
|
|
--retry 15
|
|
fi
|
|
|
|
if ip netns list | grep -qF "${name}"; then
|
|
ip netns delete "${name}"
|
|
fi
|
|
|
|
if ip link show "veth${name}0" &>/dev/null; then
|
|
ip link delete dev "veth${name}0"
|
|
fi
|
|
}
|
|
|
|
delete_network() {
|
|
if ip link show "swarmbr0" &>/dev/null; then
|
|
ip link delete dev "swarmbr0"
|
|
fi
|
|
}
|
|
|
|
main "$@"
|