refactor(moonraker.sh): better conditions
- reword service description - reword ok messages Signed-off-by: Dominik Willner th33xitus@gmail.com
This commit is contained in:
@@ -1,7 +1,7 @@
|
|||||||
#Systemd Moonraker Service
|
#Systemd Moonraker Service
|
||||||
|
|
||||||
[Unit]
|
[Unit]
|
||||||
Description=Starts Moonraker %INST% on startup
|
Description=Systemd Moonraker Service for instance moonraker-%INST%
|
||||||
Documentation=https://moonraker.readthedocs.io/
|
Documentation=https://moonraker.readthedocs.io/
|
||||||
After=network.target
|
After=network.target
|
||||||
|
|
||||||
|
|||||||
@@ -66,7 +66,7 @@ function moonraker_setup_dialog(){
|
|||||||
top_border
|
top_border
|
||||||
printf "|${green}%-55s${white}|\n" " ${klipper_count} Klipper instances found!"
|
printf "|${green}%-55s${white}|\n" " ${klipper_count} Klipper instances found!"
|
||||||
for name in "${klipper_names[@]}"; do
|
for name in "${klipper_names[@]}"; do
|
||||||
printf "|${cyan}%-57s${white}|\n" " ● ${name}"
|
printf "|${cyan}%-57s${white}|\n" " ● klipper-${name}"
|
||||||
done
|
done
|
||||||
blank_line
|
blank_line
|
||||||
echo -e "| The setup will apply the same names to Moonraker! |"
|
echo -e "| The setup will apply the same names to Moonraker! |"
|
||||||
@@ -260,24 +260,24 @@ function write_moonraker_conf(){
|
|||||||
|
|
||||||
function create_moonraker_service(){
|
function create_moonraker_service(){
|
||||||
local input=("${@}")
|
local input=("${@}")
|
||||||
local instances=${input[0]} && unset "input[0]"
|
local moonraker_count=${input[0]} && unset "input[0]"
|
||||||
local names=("${input[@]}") && unset "input[@]"
|
local names=("${input[@]}") && unset "input[@]"
|
||||||
local i j cfg_dir cfg log service
|
local cfg_dir cfg log service
|
||||||
if (( instances == 1 )); then
|
|
||||||
|
if (( moonraker_count == 1 )) && [[ ${#names[@]} -eq 0 ]]; then
|
||||||
i=""
|
i=""
|
||||||
cfg_dir="${KLIPPER_CONFIG}"
|
cfg_dir="${KLIPPER_CONFIG}"
|
||||||
cfg="${cfg_dir}/moonraker.conf"
|
cfg="${cfg_dir}/moonraker.conf"
|
||||||
log="${HOME}/klipper_logs/moonraker.log"
|
log="${HOME}/klipper_logs/moonraker.log"
|
||||||
service="${SYSTEMD}/moonraker.service"
|
service="${SYSTEMD}/moonraker.service"
|
||||||
### write single instance service
|
### write single instance service
|
||||||
write_moonraker_service "${i}" "${cfg_dir}" "${cfg}" "${log}" "${service}"
|
write_moonraker_service "" "${cfg_dir}" "${cfg}" "${log}" "${service}"
|
||||||
ok_msg "Single Moonraker instance created!"
|
ok_msg "Moonraker instance created!"
|
||||||
|
|
||||||
elif (( instances > 1 )); then
|
elif (( moonraker_count > 1 )) && [[ ${#names[@]} -gt 0 ]]; then
|
||||||
local i=1 j=0 re="^[1-9][0-9]*$"
|
local j=0 re="^[1-9][0-9]*$"
|
||||||
|
|
||||||
while (( i <= instances )); do
|
|
||||||
|
|
||||||
|
for ((i=1; i <= moonraker_count; i++)); do
|
||||||
### overwrite config folder if name is only a number
|
### overwrite config folder if name is only a number
|
||||||
if [[ ${names[j]} =~ ${re} ]]; then
|
if [[ ${names[j]} =~ ${re} ]]; then
|
||||||
cfg_dir="${KLIPPER_CONFIG}/printer_${names[${j}]}"
|
cfg_dir="${KLIPPER_CONFIG}/printer_${names[${j}]}"
|
||||||
@@ -289,11 +289,9 @@ function create_moonraker_service(){
|
|||||||
log="${HOME}/klipper_logs/moonraker-${names[${j}]}.log"
|
log="${HOME}/klipper_logs/moonraker-${names[${j}]}.log"
|
||||||
service="${SYSTEMD}/moonraker-${names[${j}]}.service"
|
service="${SYSTEMD}/moonraker-${names[${j}]}.service"
|
||||||
### write multi instance service
|
### write multi instance service
|
||||||
write_moonraker_service "${i}(${names[${j}]})" "${cfg_dir}" "${cfg}" "${log}" "${service}"
|
write_moonraker_service "${names[${j}]}" "${cfg_dir}" "${cfg}" "${log}" "${service}"
|
||||||
ok_msg "Moonraker instance #${i}(${names[${j}]}) created!"
|
ok_msg "Moonraker instance 'moonraker-${names[${j}]}' created!"
|
||||||
i=$((i+1))
|
|
||||||
j=$((j+1))
|
j=$((j+1))
|
||||||
|
|
||||||
done && unset i
|
done && unset i
|
||||||
|
|
||||||
### enable mainsails remoteMode if mainsail is found
|
### enable mainsails remoteMode if mainsail is found
|
||||||
@@ -317,7 +315,7 @@ function write_moonraker_service(){
|
|||||||
status_msg "Creating Moonraker Service ${i} ..."
|
status_msg "Creating Moonraker Service ${i} ..."
|
||||||
sudo cp "${service_template}" "${service}"
|
sudo cp "${service_template}" "${service}"
|
||||||
|
|
||||||
[ -z "${i}" ] && sudo sed -i "s|instance %INST% ||" "${service}"
|
[ -z "${i}" ] && sudo sed -i "s| for instance moonraker-%INST%||" "${service}"
|
||||||
[ -n "${i}" ] && sudo sed -i "s|%INST%|${i}|" "${service}"
|
[ -n "${i}" ] && sudo sed -i "s|%INST%|${i}|" "${service}"
|
||||||
sudo sed -i "s|%USER%|${USER}|; s|%ENV%|${MOONRAKER_ENV}|; s|%DIR%|${MOONRAKER_DIR}|" "${service}"
|
sudo sed -i "s|%USER%|${USER}|; s|%ENV%|${MOONRAKER_ENV}|; s|%DIR%|${MOONRAKER_DIR}|" "${service}"
|
||||||
sudo sed -i "s|%CFG%|${cfg}|; s|%LOG%|${log}|" "${service}"
|
sudo sed -i "s|%CFG%|${cfg}|; s|%LOG%|${log}|" "${service}"
|
||||||
|
|||||||
Reference in New Issue
Block a user