From: Dominik Csapak <d.csapak@proxmox.com>
To: pbs-devel@lists.proxmox.com
Subject: [pbs-devel] [PATCH proxmox-backup v2 1/2] tape/send_load_media_email: move to server/email_notifications
Date: Thu, 11 Mar 2021 09:24:52 +0100 [thread overview]
Message-ID: <20210311082453.17920-1-d.csapak@proxmox.com> (raw)
and reuse 'send_job_status_mail' there so that we get consistent
formatted mails from pbs (e.g. html part and author)
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
---
changes from v1:
* better commit subject/message
* move code to email related module
* do not make send_job_status_mail pub
src/server/email_notifications.rs | 24 +++++++++++++++++++++
src/tape/changer/email.rs | 36 -------------------------------
src/tape/changer/mod.rs | 3 ---
src/tape/drive/mod.rs | 6 ++++--
4 files changed, 28 insertions(+), 41 deletions(-)
delete mode 100644 src/tape/changer/email.rs
diff --git a/src/server/email_notifications.rs b/src/server/email_notifications.rs
index 306e84d0..229443f6 100644
--- a/src/server/email_notifications.rs
+++ b/src/server/email_notifications.rs
@@ -448,6 +448,30 @@ pub fn send_tape_backup_status(
Ok(())
}
+/// Send email to a person to request a manual media change
+pub fn send_load_media_email(
+ drive: &str,
+ label_text: &str,
+ to: &str,
+ reason: Option<String>,
+) -> Result<(), Error> {
+
+ let subject = format!("Load Media '{}' request for drive '{}'", label_text, drive);
+
+ let mut text = String::new();
+
+ if let Some(reason) = reason {
+ text.push_str(&format!("The drive has the wrong or no tape inserted. Error:\n{}\n\n", reason));
+ }
+
+ text.push_str("Please insert the requested media into the backup drive.\n\n");
+
+ text.push_str(&format!("Drive: {}\n", drive));
+ text.push_str(&format!("Media: {}\n", label_text));
+
+ send_job_status_mail(to, &subject, &text)
+}
+
fn get_server_url() -> (String, usize) {
// user will surely request that they can change this
diff --git a/src/tape/changer/email.rs b/src/tape/changer/email.rs
deleted file mode 100644
index abd7ead8..00000000
--- a/src/tape/changer/email.rs
+++ /dev/null
@@ -1,36 +0,0 @@
-use anyhow::Error;
-
-use proxmox::tools::email::sendmail;
-
-/// Send email to a person to request a manual media change
-pub fn send_load_media_email(
- drive: &str,
- label_text: &str,
- to: &str,
- reason: Option<String>,
-) -> Result<(), Error> {
-
- let subject = format!("Load Media '{}' request for drive '{}'", label_text, drive);
-
- let mut text = String::new();
-
- if let Some(reason) = reason {
- text.push_str(&format!("The drive has the wrong or no tape inserted. Error:\n{}\n\n", reason));
- }
-
- text.push_str("Please insert the requested media into the backup drive.\n\n");
-
- text.push_str(&format!("Drive: {}\n", drive));
- text.push_str(&format!("Media: {}\n", label_text));
-
- sendmail(
- &[to],
- &subject,
- Some(&text),
- None,
- None,
- None,
- )?;
-
- Ok(())
-}
diff --git a/src/tape/changer/mod.rs b/src/tape/changer/mod.rs
index 1e58a437..a25df49b 100644
--- a/src/tape/changer/mod.rs
+++ b/src/tape/changer/mod.rs
@@ -1,8 +1,5 @@
//! Media changer implementation (SCSI media changer)
-mod email;
-pub use email::*;
-
pub mod sg_pt_changer;
pub mod mtx;
diff --git a/src/tape/drive/mod.rs b/src/tape/drive/mod.rs
index a386abf8..1267a481 100644
--- a/src/tape/drive/mod.rs
+++ b/src/tape/drive/mod.rs
@@ -51,7 +51,10 @@ use crate::{
VirtualTapeDrive,
LinuxTapeDrive,
},
- server::WorkerTask,
+ server::{
+ send_load_media_email,
+ WorkerTask,
+ },
tape::{
TapeWrite,
TapeRead,
@@ -66,7 +69,6 @@ use crate::{
changer::{
MediaChange,
MtxMediaChanger,
- send_load_media_email,
},
},
};
--
2.20.1
next reply other threads:[~2021-03-11 8:25 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-03-11 8:24 Dominik Csapak [this message]
2021-03-11 8:24 ` [pbs-devel] [PATCH proxmox-backup v2 2/2] server/worker_task: improve endtime for unknown tasks Dominik Csapak
2021-03-11 8:58 ` [pbs-devel] applied: " Thomas Lamprecht
2021-03-11 8:58 ` [pbs-devel] applied: [PATCH proxmox-backup v2 1/2] tape/send_load_media_email: move to server/email_notifications Thomas Lamprecht
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=20210311082453.17920-1-d.csapak@proxmox.com \
--to=d.csapak@proxmox.com \
--cc=pbs-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