mirror of
https://github.com/eworm-de/routeros-scripts.git
synced 2026-01-21 08:29:33 +00:00
Merge branch 'ExitOnError' into next
This commit is contained in:
commit
9f1bd7b9d3
17 changed files with 43 additions and 32 deletions
|
|
@ -32,5 +32,5 @@
|
|||
:set ($Seen->$Mac) 1;
|
||||
}
|
||||
} do={
|
||||
:global ExitError; $ExitError false [ :jobname ] $Err;
|
||||
:global ExitOnError; $ExitOnError [ :jobname ] $Err;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -32,5 +32,5 @@
|
|||
:set ($Seen->$Mac) 1;
|
||||
}
|
||||
} do={
|
||||
:global ExitError; $ExitError false [ :jobname ] $Err;
|
||||
:global ExitOnError; $ExitOnError [ :jobname ] $Err;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -41,5 +41,5 @@
|
|||
:set ($Seen->$Mac) 1;
|
||||
}
|
||||
} do={
|
||||
:global ExitError; $ExitError false [ :jobname ] $Err;
|
||||
:global ExitOnError; $ExitOnError [ :jobname ] $Err;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -32,5 +32,5 @@
|
|||
:set ($Seen->$Mac) 1;
|
||||
}
|
||||
} do={
|
||||
:global ExitError; $ExitError false [ :jobname ] $Err;
|
||||
:global ExitOnError; $ExitOnError [ :jobname ] $Err;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -36,6 +36,7 @@
|
|||
:global EitherOr;
|
||||
:global EscapeForRegEx;
|
||||
:global ExitError;
|
||||
:global ExitOnError;
|
||||
:global FetchHuge;
|
||||
:global FetchUserAgentStr;
|
||||
:global FileExists;
|
||||
|
|
@ -473,20 +474,30 @@
|
|||
:return $Return;
|
||||
}
|
||||
|
||||
# simple macro to print error message on unintentional error
|
||||
# wrapper for $ExitOnError with additional parameter
|
||||
:set ExitError do={
|
||||
:local ExitOK [ :tostr $1 ];
|
||||
:local Name [ :tostr $2 ];
|
||||
:local Error [ :tostr $3 ];
|
||||
|
||||
:global ExitOnError;
|
||||
|
||||
:if ($ExitOK = "false") do={
|
||||
$ExitOnError $Name $Error;
|
||||
}
|
||||
}
|
||||
|
||||
# simple macro to print error message on unintentional error
|
||||
:set ExitOnError do={
|
||||
:local Name [ :tostr $1 ];
|
||||
:local Error [ :tostr $2 ];
|
||||
|
||||
:global IfThenElse;
|
||||
:global LogPrint;
|
||||
|
||||
:if ($ExitOK = "false") do={
|
||||
$LogPrint error $Name ([ $IfThenElse ([ :pick $Name 0 1 ] = "\$") \
|
||||
"Function" "Script" ] . " '" . $Name . "' exited with error" . \
|
||||
[ $IfThenElse (!($Error ~ "^(|true|false)\$")) (": " . $Error) "." ]);
|
||||
}
|
||||
$LogPrint error $Name ([ $IfThenElse ([ :pick $Name 0 1 ] = "\$") \
|
||||
"Function" "Script" ] . " '" . $Name . "' exited with error" . \
|
||||
[ $IfThenElse (!($Error ~ "^(|true|false)\$")) (": " . $Error) "." ]);
|
||||
}
|
||||
|
||||
# fetch huge data to file, read in chunks
|
||||
|
|
@ -1517,7 +1528,7 @@
|
|||
:set GlobalConfigMigration;
|
||||
}
|
||||
} do={
|
||||
:global ExitError; $ExitError false $0 $Err;
|
||||
:global ExitOnError; $ExitOnError $0 $Err;
|
||||
} }
|
||||
|
||||
# lock script against multiple invocation
|
||||
|
|
@ -1663,7 +1674,7 @@
|
|||
|
||||
$SendNotification2 ({ origin=$0; subject=$1; message=$2; link=$3; silent=$4 });
|
||||
} do={
|
||||
:global ExitError; $ExitError false $0 $Err;
|
||||
:global ExitOnError; $ExitOnError $0 $Err;
|
||||
} }
|
||||
|
||||
# send notification via NotificationFunctions - expects one array argument
|
||||
|
|
|
|||
|
|
@ -66,5 +66,5 @@
|
|||
/interface/ethernet/enable $InterfaceReEnable;
|
||||
}
|
||||
} do={
|
||||
:global ExitError; $ExitError false $0 $Err;
|
||||
:global ExitOnError; $ExitOnError $0 $Err;
|
||||
} }
|
||||
|
|
|
|||
|
|
@ -75,5 +75,5 @@
|
|||
/interface/ethernet/enable $InterfaceReEnable;
|
||||
}
|
||||
} do={
|
||||
:global ExitError; $ExitError false $0 $Err;
|
||||
:global ExitOnError; $ExitOnError $0 $Err;
|
||||
} }
|
||||
|
|
|
|||
|
|
@ -17,7 +17,7 @@
|
|||
|
||||
:put [ :tocrlf [ $InspectVarReturn $1 ] ];
|
||||
} do={
|
||||
:global ExitError; $ExitError false $0 $Err;
|
||||
:global ExitOnError; $ExitOnError $0 $Err;
|
||||
} }
|
||||
|
||||
# inspect variable and return formatted string
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@
|
|||
[ $FormatLine "HostMax" ($Values->"hostmax") ] . "\n" . \
|
||||
[ $FormatLine "Broadcast" ($Values->"broadcast") ]) ];
|
||||
} do={
|
||||
:global ExitError; $ExitError false $0 $Err;
|
||||
:global ExitOnError; $ExitOnError $0 $Err;
|
||||
} }
|
||||
|
||||
# calculate and return netmask, network, min host, max host and broadcast
|
||||
|
|
|
|||
|
|
@ -146,7 +146,7 @@
|
|||
/system/scheduler/set interval=(($SchedVal->"run-count") . "m") \
|
||||
comment="Waiting for retry..." $Scheduler;
|
||||
} do={
|
||||
:global ExitError; $ExitError false $0 $Err;
|
||||
:global ExitOnError; $ExitOnError $0 $Err;
|
||||
} }
|
||||
|
||||
# generate filter for log-forward
|
||||
|
|
@ -274,7 +274,7 @@
|
|||
|
||||
$SendEMail2 ({ origin=$0; subject=$1; message=$2; link=$3 });
|
||||
} do={
|
||||
:global ExitError; $ExitError false $0 $Err;
|
||||
:global ExitOnError; $ExitOnError $0 $Err;
|
||||
} }
|
||||
|
||||
# send notification via e-mail - expects one array argument
|
||||
|
|
|
|||
|
|
@ -54,7 +54,7 @@
|
|||
:set GotifyQueue;
|
||||
}
|
||||
} do={
|
||||
:global ExitError; $ExitError false $0 $Err;
|
||||
:global ExitOnError; $ExitOnError $0 $Err;
|
||||
} }
|
||||
|
||||
# send notification via Gotify - expects one array argument
|
||||
|
|
@ -126,7 +126,7 @@
|
|||
|
||||
$SendGotify2 ({ origin=$0; subject=$1; message=$2; link=$3; silent=$4 });
|
||||
} do={
|
||||
:global ExitError; $ExitError false $0 $Err;
|
||||
:global ExitOnError; $ExitOnError $0 $Err;
|
||||
} }
|
||||
|
||||
# send notification via Gotify - expects one array argument
|
||||
|
|
|
|||
|
|
@ -59,7 +59,7 @@
|
|||
:set MatrixQueue;
|
||||
}
|
||||
} do={
|
||||
:global ExitError; $ExitError false $0 $Err;
|
||||
:global ExitOnError; $ExitOnError $0 $Err;
|
||||
} }
|
||||
|
||||
# send notification via Matrix - expects one array argument
|
||||
|
|
@ -172,7 +172,7 @@
|
|||
|
||||
$SendMatrix2 ({ origin=$0; subject=$1; message=$2; link=$3 });
|
||||
} do={
|
||||
:global ExitError; $ExitError false $0 $Err;
|
||||
:global ExitOnError; $ExitOnError $0 $Err;
|
||||
} }
|
||||
|
||||
# send notification via Matrix - expects one array argument
|
||||
|
|
|
|||
|
|
@ -53,7 +53,7 @@
|
|||
:set NtfyQueue;
|
||||
}
|
||||
} do={
|
||||
:global ExitError; $ExitError false $0 $Err;
|
||||
:global ExitOnError; $ExitOnError $0 $Err;
|
||||
} }
|
||||
|
||||
# send notification via ntfy - expects one array argument
|
||||
|
|
@ -148,7 +148,7 @@
|
|||
|
||||
$SendNtfy2 ({ origin=$0; subject=$1; message=$2; link=$3; silent=$4 });
|
||||
} do={
|
||||
:global ExitError; $ExitError false $0 $Err;
|
||||
:global ExitOnError; $ExitOnError $0 $Err;
|
||||
} }
|
||||
|
||||
# send notification via ntfy - expects one array argument
|
||||
|
|
|
|||
|
|
@ -62,7 +62,7 @@
|
|||
:set TelegramQueue;
|
||||
}
|
||||
} do={
|
||||
:global ExitError; $ExitError false $0 $Err;
|
||||
:global ExitOnError; $ExitOnError $0 $Err;
|
||||
} }
|
||||
|
||||
# get the chat id
|
||||
|
|
@ -101,7 +101,7 @@
|
|||
$LogPrint info $0 ("The thread id is: " . ($Message->"message_thread_id"));
|
||||
}
|
||||
} do={
|
||||
:global ExitError; $ExitError false $0 $Err;
|
||||
:global ExitOnError; $ExitOnError $0 $Err;
|
||||
} }
|
||||
|
||||
# send notification via telegram - expects one array argument
|
||||
|
|
@ -237,7 +237,7 @@
|
|||
|
||||
$SendTelegram2 ({ origin=$0; subject=$1; message=$2; link=$3; silent=$4 });
|
||||
} do={
|
||||
:global ExitError; $ExitError false $0 $Err;
|
||||
:global ExitOnError; $ExitOnError $0 $Err;
|
||||
} }
|
||||
|
||||
# send notification via telegram - expects one array argument
|
||||
|
|
|
|||
|
|
@ -52,5 +52,5 @@
|
|||
:return true;
|
||||
}
|
||||
} do={
|
||||
:global ExitError; $ExitError false $0 $Err;
|
||||
:global ExitOnError; $ExitOnError $0 $Err;
|
||||
} }
|
||||
|
|
|
|||
|
|
@ -68,7 +68,7 @@
|
|||
:return false;
|
||||
}
|
||||
} do={
|
||||
:global ExitError; $ExitError false $0 $Err;
|
||||
:global ExitOnError; $ExitOnError $0 $Err;
|
||||
} }
|
||||
|
||||
# import keys from a file
|
||||
|
|
@ -110,5 +110,5 @@
|
|||
}
|
||||
}
|
||||
} do={
|
||||
:global ExitError; $ExitError false $0 $Err;
|
||||
:global ExitOnError; $ExitOnError $0 $Err;
|
||||
} }
|
||||
|
|
|
|||
|
|
@ -82,7 +82,7 @@
|
|||
$LogPrint info $FuncName ("No action defined for " . $Count . " mode-button presses.");
|
||||
}
|
||||
} do={
|
||||
:global ExitError; $ExitError false $0 $Err;
|
||||
:global ExitOnError; $ExitOnError $0 $Err;
|
||||
} }
|
||||
/system/scheduler/add name="_ModeButtonScheduler" \
|
||||
on-event=":global ModeButtonScheduler; \$ModeButtonScheduler;" interval=3s;
|
||||
|
|
@ -91,5 +91,5 @@
|
|||
/system/scheduler/set $Scheduler start-time=[ /system/clock/get time ];
|
||||
}
|
||||
} do={
|
||||
:global ExitError; $ExitError false [ :jobname ] $Err;
|
||||
:global ExitOnError; $ExitOnError [ :jobname ] $Err;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue