From 1f5cc39b3cb388e69e479d8b2b1a774c2abde37d Mon Sep 17 00:00:00 2001 From: Christian Hesse Date: Tue, 7 Dec 2021 15:40:14 +0100 Subject: [PATCH] global-config: load overlay automatically --- README.d/06-run-and-schedule-scripts.png | Bin 5416 -> 4526 bytes README.md | 4 ++-- global-config | 8 ++++++++ global-functions | 8 ++++---- 4 files changed, 14 insertions(+), 6 deletions(-) diff --git a/README.d/06-run-and-schedule-scripts.png b/README.d/06-run-and-schedule-scripts.png index bd8aa9f0600c326a105db50e6c2db1175bf4b476..23b4d7b8017ba2f19dd30db30b3ca09281a145b9 100644 GIT binary patch delta 4461 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 delta 5358 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 M07*qoM6N<$f>y>utpET3 diff --git a/README.md b/README.md index f98cf6b..eea9014 100644 --- a/README.md +++ b/README.md @@ -99,8 +99,8 @@ Save changes and exit with `Ctrl-o`. And finally load configuration and functions and add the scheduler. - / system script { run global-config; run global-config-overlay; run global-functions; }; - / system scheduler add name="global-scripts" start-time=startup on-event="/ system script { run global-config; run global-config-overlay; run global-functions; }"; + / system script { run global-config; run global-functions; }; + / system scheduler add name="global-scripts" start-time=startup on-event="/ system script { run global-config; run global-functions; }"; ![screenshot: run and schedule scripts](README.d/06-run-and-schedule-scripts.png) diff --git a/global-config b/global-config index e03b5eb..522155e 100644 --- a/global-config +++ b/global-config @@ -193,3 +193,11 @@ "cert1-cn"="v3ry-s3cr3t"; "cert2-cn"="4n0th3r-s3cr3t"; } + +# load custom settings from overlay +# Warning: Do *NOT* copy this code to overlay! +:do { + / system script run global-config-overlay; +} on-error={ + :log error ("Loading configuration from overlay failed!"); +} diff --git a/global-functions b/global-functions index ba6419d..b313b70 100644 --- a/global-functions +++ b/global-functions @@ -777,11 +777,11 @@ } :if ($ReloadGlobalConfig = true) do={ - $LogPrintExit2 info $0 ("Reloading global configuration and overlay.") false; + $LogPrintExit2 info $0 ("Reloading global configuration.") false; :do { - / system script { run global-config; run global-config-overlay; } + / system script run global-config; } on-error={ - $LogPrintExit2 error $0 ("Reloading global configuration and overlay failed!" . \ + $LogPrintExit2 error $0 ("Reloading global configuration failed!" . \ " Syntax error or missing overlay\?") false; } } @@ -838,7 +838,7 @@ :local NotificationMessage ("Current configuration on " . $Identity . \ " is out of date. Please update global-config-overlay, then increase " . \ "\$GlobalConfigVersion (currently " . $GlobalConfigVersion . \ - ") to " . $ExpectedConfigVersion . " and re-run global-config-overlay."); + ") to " . $ExpectedConfigVersion . " and re-run global-config."); $LogPrintExit2 info $0 ($NotificationMessage) false; :if ([ :len $GlobalConfigChanges ] > 0) do={