These options allow setting the notification target for package update
notifications, node fencing notifications and replication notifications.

Also, fencing and replication has now new options that allow disabling
notifications altogether.

Signed-off-by: Lukas Wagner <l.wag...@proxmox.com>
---
 src/PVE/DataCenterConfig.pm | 63 +++++++++++++++++++++++++++++++++++--
 1 file changed, 61 insertions(+), 2 deletions(-)

diff --git a/src/PVE/DataCenterConfig.pm b/src/PVE/DataCenterConfig.pm
index 3d24e78..09be6eb 100644
--- a/src/PVE/DataCenterConfig.pm
+++ b/src/PVE/DataCenterConfig.pm
@@ -49,13 +49,72 @@ my $notification_format = {
     'package-updates' => {
        type => 'string',
        enum => ['auto', 'always', 'never'],
-       description => "Control when the daily update job should send out 
notification mails.",
-       verbose_description => "Control how often the daily update job should 
send out notification mails:\n"
+       description => "Control when the daily update job should send out 
notifications.",
+       verbose_description => "Control how often the daily update job should 
send out notifications:\n"
            ."* 'auto' daily for systems with a valid subscription, as those 
are assumed to be "
            ." production-ready and thus should know about pending updates.\n"
            ."* 'always' every update, if there are new pending updates.\n"
            ."* 'never' never send a notification for new pending updates.\n",
        default => 'auto',
+       optional => 1,
+    },
+    'target-package-updates' => {
+       type => 'string',
+       format_description => 'TARGET',
+       description => "Control where notifications about available updates 
should be sent to.",
+       verbose_description => "Control where notifications about available"
+           . " updates should be sent to."
+           . " Has to be the name of a notification target (endpoint or 
notification group)."
+           . " If the 'target-package-updates' parameter is not set, the 
system will send mails"
+           . " to root via a 'sendmail' notification endpoint.",
+       optional => 1,
+    },
+    'fencing' => {
+       type => 'string',
+       enum => ['always', 'never'],
+       description => "Control if notifications about node fencing should be 
sent.",
+       verbose_description => "Control if notifications about node fencing 
should be sent.\n"
+           . "* 'always' always send out notifications\n"
+           . "* 'never' never send out notifications.\n"
+           . "For production systems, turning off node fencing notifications 
is not"
+           . "recommended!\n",
+       default => 'always',
+       optional => 1,
+    },
+    'target-fencing' => {
+       type => 'string',
+       format_description => 'TARGET',
+       description => "Control where notifications about fenced cluster nodes 
should be sent to.",
+       verbose_description => "Control where notifications about fenced 
cluster nodes"
+           . " should be sent to."
+           . " Has to be the name of a notification target (endpoint or 
notification group)."
+           . " If the 'target-fencing' parameter is not set, the system will 
send mails"
+           . " to root via a 'sendmail' notification endpoint.",
+       optional => 1,
+    },
+    'replication' => {
+       type => 'string',
+       enum => ['always', 'never'],
+       description => "Control if notifications for replication failures 
should be sent.",
+       verbose_description => "Control if notifications for replication 
failures should be sent.\n"
+           . "* 'always' always send out notifications\n"
+           . "* 'never' never send out notifications.\n"
+           . "For production systems, turning off replication notifications is 
not"
+           . "recommended!\n",
+       default => 'always',
+       optional => 1,
+    },
+    'target-replication' => {
+       type => 'string',
+       format_description => 'TARGET',
+       description => "Control where notifications for failed storage 
replication jobs should"
+           . " be sent to.",
+       verbose_description => "Control where notifications for failed storage 
replication jobs"
+           . " should be sent to."
+           . " Has to be the name of a notification target (endpoint or 
notification group)."
+           . " If the 'target-replication' parameter is not set, the system 
will send mails"
+           . " to root via a 'sendmail' notification endpoint.",
+       optional => 1,
     },
 };
 
-- 
2.39.2



_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel

Reply via email to