mirror of
https://github.com/eworm-de/routeros-scripts.git
synced 2024-05-11 05:55:19 +00:00
check-routeros-update: support installing patch updates automatically
This commit is contained in:
@@ -8,12 +8,14 @@
|
||||
|
||||
:global Identity;
|
||||
:global SafeUpdateUrl;
|
||||
:global SafeUpdatePatch;
|
||||
:global SentRouterosUpdateNotification;
|
||||
|
||||
:global DeviceInfo;
|
||||
:global LogPrintExit;
|
||||
:global ScriptFromTerminal;
|
||||
:global SendNotification;
|
||||
:global VersionToNum;
|
||||
|
||||
:local DoUpdate do={
|
||||
:if ([ / system script print count-only where name="packages-update" ] > 0) do={
|
||||
@@ -43,6 +45,18 @@
|
||||
}
|
||||
|
||||
:if ($Update->"installed-version" != $Update->"latest-version") do={
|
||||
:local NumInstalled [ $VersionToNum ($Update->"installed-version") ];
|
||||
:local NumLatest [ $VersionToNum ($Update->"latest-version") ];
|
||||
|
||||
:if ($SafeUpdatePatch = true && $NumInstalled < $NumLatest && \
|
||||
($NumInstalled & 0xffff0000) = ($NumLatest & 0xffff0000)) do={
|
||||
$LogPrintExit info ("Version " . $Update->"latest-version" . " is a patch release, updating...") false;
|
||||
$SendNotification ("RouterOS update") \
|
||||
("Version " . $Update->"latest-version" . " is a patch update for " . $Update->"channel" . \
|
||||
", updating on " . $Identity . "...") "" "true";
|
||||
$DoUpdate;
|
||||
}
|
||||
|
||||
:if ([ :len $SafeUpdateUrl ] > 0) do={
|
||||
:local Result;
|
||||
:do {
|
||||
|
@@ -46,6 +46,8 @@
|
||||
# The configured channel (bugfix, current, release-candidate) is appended.
|
||||
:global SafeUpdateUrl "";
|
||||
#:global SafeUpdateUrl "https://example.com/ros/safe-update/";
|
||||
# Allow to install patch updates automatically.
|
||||
:global SafeUpdatePatch false;
|
||||
|
||||
# These thresholds control when to send health notification
|
||||
# on temperature and voltage.
|
||||
|
Reference in New Issue
Block a user