From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68]) by lore.proxmox.com (Postfix) with ESMTPS id 1653D1FF38F for ; Tue, 21 May 2024 15:32:31 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id D0C6019E91; Tue, 21 May 2024 15:32:26 +0200 (CEST) From: Lukas Wagner To: pve-devel@lists.proxmox.com Date: Tue, 21 May 2024 15:31:40 +0200 Message-Id: <20240521133148.223266-1-l.wagner@proxmox.com> X-Mailer: git-send-email 2.39.2 MIME-Version: 1.0 X-SPAM-LEVEL: Spam detection results: 0 AWL 0.003 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Subject: [pve-devel] [PATCH many v3 0/8] notifications: move template strings to template files X-BeenThere: pve-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox VE development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Proxmox VE development discussion Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: pve-devel-bounces@lists.proxmox.com Sender: "pve-devel" These changes adapts the PVE notification stack to the changes introduced in proxmox-notify 0.4. The notification system uses handlebar templates to render the subject and the body of notifications. Previously, the template strings were defined inline at the call site. This patch series extracts the templates into template files and installs them at /usr/share/pve-manager/templates/default where they stored as -{body,subject}.{txt,html}.hbs The 'default' part in the path is a preparation for translated notifications and/or overridable notification templates. Future work could provide notifications translated to e.g. German in `templates/de` or similar. This will be a first for having translated strings on the backend-side, so there is need for further research. Folke kindly did some off-list testing before this was posted, hence his T-bs were included. Bumps/dependencies: - libproxmox-rs-perl needs to have its proxmox-notify dep updated to 0.4 and breaks old libpve-notify-perl (versioned break) - libpve-notify-perl breaks old pve-manager and old pve-ha-manager (versioned break) The versioned breaks are necessary due to changed semantics in the API (passing a template name instead of template strings) and due to changes in how templates are rendered (separate templates for HTML/plain text, whereas before both were rendered from the same template string, with some magic from handlebar helpers) Changes since v2: - Dropped already applied patches for 'proxmox' - Rebased, quick smoke-test to check if anything broke in the meanwhile Changes since v1: - Incorporated feedback from @Fiona and @Fabian - thanks! - most noteworthy: Change template path from /usr/share/proxmox-ve to /usr/share/pve-manager - apart from that mostly just cosmetics/style proxmox-perl-rs: Lukas Wagner (3): notify: use file based notification templates notify: don't pass config structs by reference notify: adapt to Option> to Vec changes in proxmox_notify common/src/notify.rs | 48 +++++++++++++++++++++----------------------- 1 file changed, 23 insertions(+), 25 deletions(-) pve-cluster: Lukas Wagner (1): notify: use named template instead of passing template strings src/PVE/Notify.pm | 29 ++++++++++++----------------- 1 file changed, 12 insertions(+), 17 deletions(-) pve-ha-manager: Lukas Wagner (1): env: notify: use named templates instead of passing template strings debian/pve-ha-manager.install | 3 +++ src/Makefile | 1 + src/PVE/HA/Env/PVE2.pm | 4 ++-- src/PVE/HA/NodeStatus.pm | 20 +------------------ src/PVE/HA/Sim/Env.pm | 3 ++- src/templates/Makefile | 10 ++++++++++ src/templates/default/fencing-body.html.hbs | 14 +++++++++++++ src/templates/default/fencing-body.txt.hbs | 11 ++++++++++ src/templates/default/fencing-subject.txt.hbs | 1 + 9 files changed, 45 insertions(+), 22 deletions(-) create mode 100644 src/templates/Makefile create mode 100644 src/templates/default/fencing-body.html.hbs create mode 100644 src/templates/default/fencing-body.txt.hbs create mode 100644 src/templates/default/fencing-subject.txt.hbs pve-manager: Lukas Wagner (3): gitignore: ignore any test artifacts tests: remove vzdump_notification test notifications: use named templates instead of in-code templates .gitignore | 2 + Makefile | 2 +- PVE/API2/APT.pm | 9 +- PVE/API2/Replication.pm | 20 +--- PVE/VZDump.pm | 20 +--- templates/Makefile | 24 +++++ .../default/package-updates-body.html.hbs | 6 ++ .../default/package-updates-body.txt.hbs | 3 + .../default/package-updates-subject.txt.hbs | 1 + templates/default/replication-body.html.hbs | 18 ++++ templates/default/replication-body.txt.hbs | 12 +++ templates/default/replication-subject.txt.hbs | 1 + templates/default/test-body.html.hbs | 1 + templates/default/test-body.txt.hbs | 1 + templates/default/test-subject.txt.hbs | 1 + templates/default/vzdump-body.html.hbs | 11 ++ templates/default/vzdump-body.txt.hbs | 10 ++ templates/default/vzdump-subject.txt.hbs | 1 + test/Makefile | 6 +- test/vzdump_notification_test.pl | 101 ------------------ 20 files changed, 98 insertions(+), 152 deletions(-) create mode 100644 templates/Makefile create mode 100644 templates/default/package-updates-body.html.hbs create mode 100644 templates/default/package-updates-body.txt.hbs create mode 100644 templates/default/package-updates-subject.txt.hbs create mode 100644 templates/default/replication-body.html.hbs create mode 100644 templates/default/replication-body.txt.hbs create mode 100644 templates/default/replication-subject.txt.hbs create mode 100644 templates/default/test-body.html.hbs create mode 100644 templates/default/test-body.txt.hbs create mode 100644 templates/default/test-subject.txt.hbs create mode 100644 templates/default/vzdump-body.html.hbs create mode 100644 templates/default/vzdump-body.txt.hbs create mode 100644 templates/default/vzdump-subject.txt.hbs delete mode 100755 test/vzdump_notification_test.pl Summary over all repositories: 31 files changed, 178 insertions(+), 216 deletions(-) -- Generated by git-murpp 0.7.1 _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel