Skip to content

Instantly share code, notes, and snippets.

@binarin
Created April 22, 2016 13:51
Show Gist options
  • Save binarin/edd4102b7262d53e2cf09c76d5ca8e9e to your computer and use it in GitHub Desktop.
Save binarin/edd4102b7262d53e2cf09c76d5ca8e9e to your computer and use it in GitHub Desktop.
#!/usr/bin/env bash
set -ex
run-ctl() {
RABBITMQ_LOG_BASE=./logs RABBITMQ_MNESIA_BASE=./mnesia RABBITMQ_NODENAME=dead-user-test@localhost RABBITMQ_NODE_PORT=11915 ERL_LIBS=./deps ./scripts/rabbitmqctl "$@"
}
run-server() {
RABBITMQ_LOG_BASE=./logs RABBITMQ_MNESIA_BASE=./mnesia RABBITMQ_NODENAME=dead-user-test@localhost RABBITMQ_NODE_PORT=11915 ERL_LIBS=./deps ./scripts/rabbitmq-server
}
dd if=/dev/zero of=small-partition bs=1M count=1
mkfs.ext4 small-partition
mkdir -p log-dir
trap "pkill -f 'beam.smp.*dead-user-test@localhost'; sleep 1; sudo umount log-dir" EXIT
sudo mount -o loop small-partition log-dir
sudo chmod a+rw -Rv log-dir
run-server > log-dir/startup_log 2>&1 &
PID=$!
sleep 10
dd if=/dev/zero of=log-dir/filler || true
for try_no in $(seq 1 20); do
if ! run-ctl stop_app; then
break
fi
if ! run-ctl start_app; then
break
fi
done
rm log-dir/filler
run-ctl stop_app || true
run-ctl start_app || true
sleep 100
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment