fix: rollback function

This commit is contained in:
th33xitus
2020-08-22 23:21:26 +02:00
parent 612a4225be
commit 613e0d779f

View File

@@ -33,43 +33,51 @@ save_klipper_state(){
load_klipper_state(){ load_klipper_state(){
source_ini source_ini
print_branch print_branch
CURR_COMM=$(git rev-parse --short=8 HEAD) cd $KLIPPER_DIR
if [ "$GET_BRANCH" = "origin/master" ]; then CURRENT_COMMIT=$(git rev-parse --short=8 HEAD)
PREV_COMM=$previous_origin_state if [ "$GET_BRANCH" = "origin/master" ] || [ "$GET_BRANCH" = "origin" ]; then
PREVIOUS_COMMIT=$previous_origin_state
elif [ "$GET_BRANCH" = "dmbutyugin/scurve-shaping" ]; then elif [ "$GET_BRANCH" = "dmbutyugin/scurve-shaping" ]; then
PREV_COMM=$previous_shaping_state PREVIOUS_COMMIT=$previous_shaping_state
elif [ "$GET_BRANCH" = "dmbutyugin/scurve-smoothing" ]; then elif [ "$GET_BRANCH" = "dmbutyugin/scurve-smoothing" ]; then
PREV_COMM=$previous_smoothing_state PREVIOUS_COMMIT=$previous_smoothing_state
elif [ "$GET_BRANCH" = "Arksine/work-web_server-20200131" ]; then elif [ "$GET_BRANCH" = "Arksine/work-web_server-20200131" ]; then
PREV_COMM=$previous_moonraker_state PREVIOUS_COMMIT=$previous_moonraker_state
elif [ "$GET_BRANCH" = "Arksine/dev-moonraker-testing" ]; then elif [ "$GET_BRANCH" = "Arksine/dev-moonraker-testing" ]; then
PREV_COMM=$previous_dev_moonraker_state PREVIOUS_COMMIT=$previous_dev_moonraker_state
fi fi
PREV_COMM_DATE=$(git show -s --format=%cd --date=short $PREV_COMM) CURRENT_COMMIT_DATE=$(git show -s --format=%cd --date=short $CURRENT_COMMIT)
CURR_COMM_DATE=$(git show -s --format=%cd --date=short $CURR_COMM) if [ "$PREVIOUS_COMMIT" != "0" ]; then
if [ $CURR_COMM = $PREV_COMM ]; then PREVIOUS_COMMIT_DATE=$(git show -s --format=%cd --date=short $PREVIOUS_COMMIT)
CURR_UI=$(echo -e "${green}$CURR_COMM from $CURR_COMM_DATE${default}") fi
PREV_UI=$(echo -e "${green}$PREV_COMM from $PREV_COMM_DATE${default}") if [ "$PREVIOUS_COMMIT" = "0" ]; then
CURR_UI=$(echo -e "${green}$CURRENT_COMMIT from $CURRENT_COMMIT_DATE${default}")
PREV_UI=$(echo -e "${red}None${default} ")
else else
CURR_UI=$(echo -e "${yellow}$CURR_COMM from $CURR_COMM_DATE${default}") if [ "$CURRENT_COMMIT" = "$PREVIOUS_COMMIT" ]; then
PREV_UI=$(echo -e "${yellow}$PREV_COMM from $PREV_COMM_DATE${default}") CURR_UI=$(echo -e "${green}$CURRENT_COMMIT from $CURRENT_COMMIT_DATE${default}")
PREV_UI=$(echo -e "${green}$PREVIOUS_COMMIT from $PREVIOUS_COMMIT_DATE${default}")
else
CURR_UI=$(echo -e "${yellow}$CURRENT_COMMIT from $CURRENT_COMMIT_DATE${default}")
PREV_UI=$(echo -e "${yellow}$PREVIOUS_COMMIT from $PREVIOUS_COMMIT_DATE${default}")
fi
fi fi
rollback_ui rollback_ui
rollback_klipper rollback_klipper
} }
rollback_klipper(){ rollback_klipper(){
if [ "$CURR_COMM" != "$PREV_COMM" ]; then if [ "$PREVIOUS_COMMIT" != "0" ] && [ "$CURRENT_COMMIT" != "$PREVIOUS_COMMIT" ]; then
while true; do while true; do
echo -e "${cyan}" echo -e "${cyan}"
read -p "###### Do you want to rollback to $PREV_COMM? (Y/n): " yn read -p "###### Do you want to rollback to $PREVIOUS_COMMIT? (Y/n): " yn
echo -e "${default}" echo -e "${default}"
case "$yn" in case "$yn" in
Y|y|Yes|yes|"") Y|y|Yes|yes|"")
clear clear
print_header print_header
status_msg "Rolling back to $PREV_COMM ..." status_msg "Rolling back to $PREVIOUS_COMMIT ..."
git reset --hard $PREV_COMM -q git reset --hard $PREVIOUS_COMMIT -q
ok_msg "Rollback complete!"; echo ok_msg "Rollback complete!"; echo
load_klipper_state load_klipper_state
break;; break;;