2022-01-12 18:04:55 +00:00
|
|
|
#!/usr/bin/env bash
|
2020-11-20 19:50:43 +00:00
|
|
|
|
2021-02-17 18:30:31 +00:00
|
|
|
set -ex
|
|
|
|
|
2020-11-20 19:50:43 +00:00
|
|
|
SCRIPT_FOLDER="`dirname \"$0\"`"
|
|
|
|
REPO_FOLDER="${SCRIPT_FOLDER}/../"
|
|
|
|
GARAGE_DEBUG="${REPO_FOLDER}/target/debug/"
|
|
|
|
GARAGE_RELEASE="${REPO_FOLDER}/target/release/"
|
2021-10-04 16:27:57 +00:00
|
|
|
NIX_RELEASE="${REPO_FOLDER}/result/bin/"
|
|
|
|
PATH="${GARAGE_DEBUG}:${GARAGE_RELEASE}:${NIX_RELEASE}:$PATH"
|
2020-11-20 19:50:43 +00:00
|
|
|
|
2021-02-17 18:30:31 +00:00
|
|
|
sleep 5
|
2021-10-04 16:27:57 +00:00
|
|
|
RETRY=120
|
2021-10-19 14:16:10 +00:00
|
|
|
until garage -c /tmp/config.1.toml status 2>&1|grep -q HEALTHY ; do
|
2021-10-04 16:27:57 +00:00
|
|
|
(( RETRY-- ))
|
|
|
|
if (( RETRY <= 0 )); then
|
|
|
|
echo "garage did not start in time, failing."
|
|
|
|
exit 1
|
|
|
|
fi
|
2020-11-29 16:03:08 +00:00
|
|
|
echo "cluster starting..."
|
|
|
|
sleep 1
|
|
|
|
done
|
|
|
|
|
2021-10-19 14:16:10 +00:00
|
|
|
garage -c /tmp/config.1.toml status \
|
|
|
|
| grep 'NO ROLE' \
|
2020-11-20 19:50:43 +00:00
|
|
|
| grep -Po '^[0-9a-f]+' \
|
|
|
|
| while read id; do
|
2022-11-08 14:13:37 +00:00
|
|
|
garage -c /tmp/config.1.toml layout assign $id -z dc1 -c 1G
|
2020-11-20 19:50:43 +00:00
|
|
|
done
|
|
|
|
|
2022-11-08 14:13:37 +00:00
|
|
|
garage -c /tmp/config.1.toml layout config -r 1
|
2021-11-09 11:24:04 +00:00
|
|
|
garage -c /tmp/config.1.toml layout apply --version 1
|