hard reset flag added to starter script
Signed-off-by: Uncle Stinky <uncle.stinky@ghostchain.io>
This commit is contained in:
parent
d575895841
commit
67fd48d500
@ -2,6 +2,7 @@
|
|||||||
|
|
||||||
set -Ee
|
set -Ee
|
||||||
|
|
||||||
|
HARD_RESET=false
|
||||||
CHECK_KEYS=false
|
CHECK_KEYS=false
|
||||||
INSERT_KEYS=false
|
INSERT_KEYS=false
|
||||||
UNIT_FILE=false
|
UNIT_FILE=false
|
||||||
@ -96,6 +97,7 @@ help() {
|
|||||||
echo -e "-s, --base-path\n\tPath to the folder with chain database ('/var/lib/ghost' is default)."
|
echo -e "-s, --base-path\n\tPath to the folder with chain database ('/var/lib/ghost' is default)."
|
||||||
echo -e "-c, --specification-path\n\tPath to specification ('/etc/ghost' is default)."
|
echo -e "-c, --specification-path\n\tPath to specification ('/etc/ghost' is default)."
|
||||||
echo -e "-n, --specification-name\n\tSpecification name to be used ('casper' is default)."
|
echo -e "-n, --specification-name\n\tSpecification name to be used ('casper' is default)."
|
||||||
|
echo -e "--hard-reset-i-know-what-im-doing\n\tWill completely remove ledger along with associated session keys."
|
||||||
echo -e "-h, --help\n\tPrints help information."
|
echo -e "-h, --help\n\tPrints help information."
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -163,6 +165,9 @@ while [ $# -gt 0 ]; do
|
|||||||
if [[ "$1" != *=* ]]; then shift; fi
|
if [[ "$1" != *=* ]]; then shift; fi
|
||||||
SPECIFICATION_NAME="${1#*=}"
|
SPECIFICATION_NAME="${1#*=}"
|
||||||
;;
|
;;
|
||||||
|
--hard-reset-i-know-what-im-doing)
|
||||||
|
HARD_RESET=true
|
||||||
|
;;
|
||||||
--help|-h)
|
--help|-h)
|
||||||
help
|
help
|
||||||
exit 0
|
exit 0
|
||||||
@ -175,6 +180,51 @@ while [ $# -gt 0 ]; do
|
|||||||
shift
|
shift
|
||||||
done
|
done
|
||||||
|
|
||||||
|
if [[ $HARD_RESET = true ]]; then
|
||||||
|
echo -e "\n"
|
||||||
|
echo "WARNING!!! THIS ACTION WILL COMPLETELY PURGE THE LEDGER AND REBUILD THE NODE USING THE LATEST"
|
||||||
|
echo "REPOSITORY VERSION. NOTE THAT THE VALIDATION PROCESS WILL BE LOST BECAUSE SESSION OF KEYS."
|
||||||
|
echo "THERE ARE TWO SCENARIOS IN WHICH YOU MIGHT NEED TO PROCEED:"
|
||||||
|
echo -e "\t- A new version of the network hsa been released, and a restart is neccessary"
|
||||||
|
echo -e "\t- There is a critical issue, and you require a hard reset of the node in a single command"
|
||||||
|
echo -e "\n"
|
||||||
|
if prompt "[?] do you understand all risks?"; then
|
||||||
|
echo "[+] you were warned, I hope you know what you're doing"
|
||||||
|
else
|
||||||
|
echo "[-] aborting hard reset"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
cd $PROJECT_FOLDER
|
||||||
|
# TODO: uncomment later
|
||||||
|
# echo "[+] fetching the latest ghost-node source code"
|
||||||
|
# git switch main
|
||||||
|
# git pull origin main
|
||||||
|
|
||||||
|
cd $PROJECT_FOLDER
|
||||||
|
echo "[+] starting build in 3 seconds..."
|
||||||
|
sleep 3
|
||||||
|
cargo build $RELEASE $FEATURES
|
||||||
|
|
||||||
|
echo "[+] trying to stop current ghost-node"
|
||||||
|
sudo systemctl stop ghost-node
|
||||||
|
echo "[+] trying to remove locally stored ledger"
|
||||||
|
sudo rm -rf "$BASE_PATH/chains/*"
|
||||||
|
|
||||||
|
cd $PROJECT_FOLDER
|
||||||
|
echo "[+] trying to copy executable to '$EXECUTABLE_PATH'"
|
||||||
|
sudo cp target/$TARGET/ghost $EXECUTABLE_PATH
|
||||||
|
cp service/chain-specs/$SPECIFICATION_NAME.json $SPECIFICATION_PATH
|
||||||
|
|
||||||
|
echo "[+] ghost executable copied in '$EXECUTABLE_PATH' from '$TARGET'"
|
||||||
|
echo "[+] specification '$SPECIFICATION_NAME.json' copied to '$SPECIFICATION_PATH'"
|
||||||
|
|
||||||
|
echo "[+] starting ghost-node"
|
||||||
|
sudo systemctl start ghost-node
|
||||||
|
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
if [[ $SET_ENVIRONMENT = true ]]; then
|
if [[ $SET_ENVIRONMENT = true ]]; then
|
||||||
echo -e "\n"
|
echo -e "\n"
|
||||||
echo "WARNING!!! THIS IS HIGHLY EXPERIMENTAL FLAG, USE IT ONLY ON YOUR"
|
echo "WARNING!!! THIS IS HIGHLY EXPERIMENTAL FLAG, USE IT ONLY ON YOUR"
|
||||||
@ -262,7 +312,7 @@ fi
|
|||||||
if [[ ! -z $RELEASE ]]; then
|
if [[ ! -z $RELEASE ]]; then
|
||||||
if prompt "[?] 'cargo build $RELEASE $FEATURES' is what you want?"; then
|
if prompt "[?] 'cargo build $RELEASE $FEATURES' is what you want?"; then
|
||||||
cd $PROJECT_FOLDER
|
cd $PROJECT_FOLDER
|
||||||
echo "[+] Starting build in 3 seconds..."
|
echo "[+] starting build in 3 seconds..."
|
||||||
sleep 3
|
sleep 3
|
||||||
cargo build $RELEASE $FEATURES
|
cargo build $RELEASE $FEATURES
|
||||||
fi
|
fi
|
||||||
@ -347,7 +397,6 @@ if [[ $ARGUMENTS = true ]]; then
|
|||||||
CLI_ARGS+=("--public-addr=$public_addr")
|
CLI_ARGS+=("--public-addr=$public_addr")
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|
||||||
# default for now
|
# default for now
|
||||||
CLI_ARGS+=("--telemetry-url='wss://telemetry.ghostchain.io/submit/ 9'")
|
CLI_ARGS+=("--telemetry-url='wss://telemetry.ghostchain.io/submit/ 9'")
|
||||||
CLI_ARGS+=("--base-path=$BASE_PATH")
|
CLI_ARGS+=("--base-path=$BASE_PATH")
|
||||||
|
Loading…
Reference in New Issue
Block a user