From: Lukas Wagner <l.wagner@proxmox.com>
To: pve-devel@lists.proxmox.com
Subject: [pve-devel] [PATCH proxmox 03/11] notify: introduce Error::Generic
Date: Thu, 31 Aug 2023 13:06:13 +0200 [thread overview]
Message-ID: <20230831110621.340832-4-l.wagner@proxmox.com> (raw)
In-Reply-To: <20230831110621.340832-1-l.wagner@proxmox.com>
... as leaf error-type for anything for which we do not necessarily
want a separate enum variant.
Signed-off-by: Lukas Wagner <l.wagner@proxmox.com>
---
proxmox-notify/src/lib.rs | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/proxmox-notify/src/lib.rs b/proxmox-notify/src/lib.rs
index 7500778..f7d480c 100644
--- a/proxmox-notify/src/lib.rs
+++ b/proxmox-notify/src/lib.rs
@@ -25,13 +25,22 @@ mod config;
#[derive(Debug)]
pub enum Error {
+ /// There was an error serializing the config
ConfigSerialization(Box<dyn StdError + Send + Sync>),
+ /// There was an error deserializing the config
ConfigDeserialization(Box<dyn StdError + Send + Sync>),
+ /// An endpoint failed to send a notification
NotifyFailed(String, Box<dyn StdError + Send + Sync>),
+ /// A target does not exist
TargetDoesNotExist(String),
+ /// Testing one or more notification targets failed
TargetTestFailed(Vec<Box<dyn StdError + Send + Sync>>),
+ /// A filter could not be applied
FilterFailed(String),
+ /// The notification's template string could not be rendered
RenderError(Box<dyn StdError + Send + Sync>),
+ /// Generic error for anything else
+ Generic(String),
}
impl Display for Error {
@@ -60,6 +69,7 @@ impl Display for Error {
write!(f, "could not apply filter: {message}")
}
Error::RenderError(err) => write!(f, "could not render notification template: {err}"),
+ Error::Generic(message) => f.write_str(message),
}
}
}
@@ -74,6 +84,7 @@ impl StdError for Error {
Error::TargetTestFailed(errs) => Some(&*errs[0]),
Error::FilterFailed(_) => None,
Error::RenderError(err) => Some(&**err),
+ Error::Generic(_) => None,
}
}
}
--
2.39.2
next prev parent reply other threads:[~2023-08-31 11:06 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-08-31 11:06 [pve-devel] [PATCH many 00/11] notifications: feed system mails into proxmox_notify Lukas Wagner
2023-08-31 11:06 ` [pve-devel] [PATCH debcargo-conf 01/11] package mail-parser 0.8.2 Lukas Wagner
2023-08-31 11:06 ` [pve-devel] [PATCH proxmox 02/11] sys: email: add `forward` Lukas Wagner
2023-08-31 11:06 ` Lukas Wagner [this message]
2023-08-31 11:06 ` [pve-devel] [PATCH proxmox 04/11] notify: add mechanisms for email message forwarding Lukas Wagner
2023-08-31 11:06 ` [pve-devel] [PATCH proxmox 05/11] notify: add PVE/PBS context Lukas Wagner
2023-08-31 11:06 ` [pve-devel] [PATCH proxmox-perl-rs 06/11] notify: construct Notification via constructor Lukas Wagner
2023-08-31 11:06 ` [pve-devel] [PATCH proxmox-perl-rs 07/11] pve-rs: notify: remove notify_context for PVE Lukas Wagner
2023-08-31 11:06 ` [pve-devel] [PATCH pve-cluster 08/11] datacenter config: add new parameters for system mail forwarding Lukas Wagner
2023-08-31 11:06 ` [pve-devel] [PATCH pve-manager 09/11] ui: notify: add system-mail settings, configuring " Lukas Wagner
2023-08-31 11:06 ` [pve-devel] [PATCH proxmox-mail-forward 10/11] feed forwarded mails into proxmox_notify Lukas Wagner
2023-08-31 11:06 ` [pve-devel] [PATCH pve-docs 11/11] notification: add docs for system mail forwarding Lukas Wagner
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20230831110621.340832-4-l.wagner@proxmox.com \
--to=l.wagner@proxmox.com \
--cc=pve-devel@lists.proxmox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal