global-functions: $ScriptInstallUpdate: reload configuration later

This commit is contained in:
Christian Hesse 2021-06-02 23:51:11 +02:00
parent 2315d6bc59
commit f9a2afdeda

View file

@ -710,6 +710,7 @@
:local ExpectedConfigVersionBefore $ExpectedConfigVersion; :local ExpectedConfigVersionBefore $ExpectedConfigVersion;
:local ReloadGlobalFunctions false; :local ReloadGlobalFunctions false;
:local ReloadGlobalConfig false;
:local ScriptInstallUpdateBefore [ :tostr $ScriptInstallUpdate ]; :local ScriptInstallUpdateBefore [ :tostr $ScriptInstallUpdate ];
:foreach Script in=[ / system script find where source~"^#!rsc( by RouterOS)\?\n" ] do={ :foreach Script in=[ / system script find where source~"^#!rsc( by RouterOS)\?\n" ] do={
@ -760,13 +761,7 @@
/ system script set owner=($ScriptVal->"name") source=$SourceNew \ / system script set owner=($ScriptVal->"name") source=$SourceNew \
dont-require-permissions=$DontRequirePermissions $Script; dont-require-permissions=$DontRequirePermissions $Script;
:if ($ScriptVal->"name" = "global-config") do={ :if ($ScriptVal->"name" = "global-config") do={
$LogPrintExit2 info $0 ("Reloading global configuration and overlay.") false; :set ReloadGlobalConfig true;
:do {
/ system script { run global-config; run global-config-overlay; }
} on-error={
$LogPrintExit2 error $0 ("Reloading global configuration and overlay failed!" . \
" Syntax error or missing overlay\?") false;
}
} }
:if ($ScriptVal->"name" ~ "^global-functions(\$|\\.d/.)") do={ :if ($ScriptVal->"name" ~ "^global-functions(\$|\\.d/.)") do={
:set ReloadGlobalFunctions true; :set ReloadGlobalFunctions true;
@ -796,6 +791,16 @@
} }
} }
:if ($ReloadGlobalConfig = true) do={
$LogPrintExit2 info $0 ("Reloading global configuration and overlay.") false;
:do {
/ system script { run global-config; run global-config-overlay; }
} on-error={
$LogPrintExit2 error $0 ("Reloading global configuration and overlay failed!" . \
" Syntax error or missing overlay\?") false;
}
}
:if ($ExpectedConfigVersionBefore != $ExpectedConfigVersion) do={ :if ($ExpectedConfigVersionBefore != $ExpectedConfigVersion) do={
:global GlobalConfigChanges; :global GlobalConfigChanges;
:global GlobalConfigMigration; :global GlobalConfigMigration;