script: add service menu

This commit is contained in:
Yifei Ding
2021-11-13 00:42:53 -08:00
parent 00fa372e0c
commit e7873fd057

62
scripts/ui/service_menu.sh Normal file → Executable file
View File

@@ -1,18 +1,48 @@
#!/bin/bash #!/bin/bash
# while true; do service_menu(){
# read -p "${cyan}Perform action:${default} " action; echo local menu_options=(
# case "$action" in "1" "Start Klipper"
# "start klipper") do_action_service "start" "klipper"; main_ui;; "2" "Stop Klipper"
# "stop klipper") do_action_service "stop" "klipper"; main_ui;; "3" "Restart Klipper"
# "restart klipper") do_action_service "restart" "klipper"; main_ui;; "4" "Start Moonraker"
# "start moonraker") do_action_service "start" "moonraker"; main_ui;; "5" "Stop Moonraker"
# "stop moonraker") do_action_service "stop" "moonraker"; main_ui;; "6" "Restart Moonraker"
# "restart moonraker")do_action_service "restart" "moonraker"; main_ui;; "7" "Start Duet Web Control"
# "start dwc") do_action_service "start" "dwc"; main_ui;; "8" "Stop Duet Web Control"
# "stop dwc") do_action_service "stop" "dwc"; main_ui;; "9" "Restart Duet Web Control"
# "restart dwc") do_action_service "restart" "dwc"; main_ui;; "10" "Start Octoprint"
# "start octoprint") do_action_service "start" "octoprint"; main_ui;; "11" "Stop Octoprint"
# "stop octoprint") do_action_service "stop" "octoprint"; main_ui;; "12" "Restart Octoprint"
# "restart octoprint") do_action_service "restart" "octoprint"; main_ui;; )
# update) do_action "update_kiauh" "main_ui";;
local menu_str="Start/stop/restart services"
while true; do
local menu
menu=$(whiptail --title "Service Menu" --cancel-button "Back" --notags --menu "$menu_str\n\nPerform Action:" \
"$KIAUH_WHIPTAIL_NORMAL_HEIGHT" "$KIAUH_WHIPTAIL_NORMAL_WIDTH" 8 "${menu_options[@]}" 3>&1 1>&2 2>&3)
local out=$?
if [ $out -eq 1 ]; then
break
elif [ $out -eq 0 ]; then
case "$menu" in
1) do_action_service "start" "klipper";;
2) do_action_service "stop" "klipper";;
3) do_action_service "restart" "klipper";;
4) do_action_service "start" "moonraker";;
5) do_action_service "stop" "moonraker";;
6) do_action_service "restart" "moonraker";;
7)do_action_service "start" "dwc";;
8)do_action_service "stop" "dwc";;
9)do_action_service "restart" "dwc";;
10)do_action_service "start" "octoprint";;
11)do_action_service "stop" "octoprint";;
12)do_action_service "restart" "octoprint";;
esac
else
# Unexpected event, no clue what happened
exit 1
fi
done
}