67 lines
1.6 KiB
Bash
67 lines
1.6 KiB
Bash
|
#!/bin/bash
|
||
|
|
||
|
stage() {
|
||
|
echo "================================================================================"
|
||
|
echo "$@"
|
||
|
echo "================================================================================"
|
||
|
}
|
||
|
|
||
|
die() {
|
||
|
echo "$@" 1>&2
|
||
|
exit 1
|
||
|
}
|
||
|
|
||
|
runBlockchain() {
|
||
|
stage "Starting the blockchain"
|
||
|
|
||
|
/usr/bin/privnet-entrypoint.sh node --config-path /config --privnet &
|
||
|
|
||
|
while [[ "$(curl -s -o /dev/null -w %{http_code} localhost:30333)" != "422" ]];
|
||
|
do
|
||
|
sleep 2;
|
||
|
done
|
||
|
}
|
||
|
|
||
|
configure() {
|
||
|
stage "Configuring the blockchain"
|
||
|
|
||
|
/usr/bin/frostfs-adm morph init --config /config/frostfs-adm.yml --contracts /config/contracts || die "Failed to initialize Alphabet wallets"
|
||
|
|
||
|
/usr/bin/frostfs-adm morph refill-gas --config /config/frostfs-adm.yml --storage-wallet /config/wallet-sn.json --gas 10.0 || die "Failed to transfer GAS to alphabet wallets"
|
||
|
}
|
||
|
|
||
|
runServices() {
|
||
|
stage "Running services"
|
||
|
|
||
|
/usr/bin/frostfs-ir --config /config/config-ir.yaml &
|
||
|
|
||
|
while [[ -z "$(/usr/bin/frostfs-cli control healthcheck --ir --endpoint localhost:16512 -c /config/cli-cfg-ir.yaml | grep 'Health status: READY')" ]];
|
||
|
do
|
||
|
sleep 2;
|
||
|
done
|
||
|
|
||
|
set -m
|
||
|
/usr/bin/frostfs-node --config /config/config-sn.yaml &
|
||
|
|
||
|
while [[ -z "$(/usr/bin/frostfs-cli control healthcheck --endpoint localhost:16513 -c /config/cli-cfg-sn.yaml | grep 'Health status: READY')" ]];
|
||
|
do
|
||
|
./bin/tick.sh
|
||
|
sleep 5;
|
||
|
done
|
||
|
|
||
|
/usr/bin/frostfs-s3-gw --config /config/s3-gw-config.yaml &
|
||
|
/usr/bin/frostfs-http-gw --config /config/http-gw-config.yaml &
|
||
|
}
|
||
|
|
||
|
|
||
|
if [ ! -e "/data/chain/morph.bolt" ];
|
||
|
then
|
||
|
runBlockchain
|
||
|
configure
|
||
|
else
|
||
|
runBlockchain
|
||
|
fi
|
||
|
runServices
|
||
|
stage "aio container started"
|
||
|
fg
|