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 ADFD21FF2AF for ; Mon, 22 Jul 2024 09:30:36 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id CC1801CFCF; Mon, 22 Jul 2024 09:31:07 +0200 (CEST) Message-ID: <27efb361-4a4f-46fd-891f-210937554f74@proxmox.com> Date: Mon, 22 Jul 2024 09:30:27 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird To: Proxmox VE development discussion , Max Carrara , Proxmox Backup Server development discussion References: <20240712112755.123630-1-l.wagner@proxmox.com> <20240712112755.123630-2-l.wagner@proxmox.com> Content-Language: de-AT, en-US From: Lukas Wagner In-Reply-To: X-SPAM-LEVEL: Spam detection results: 0 AWL 0.007 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: Re: [pve-devel] [pbs-devel] [PATCH proxmox v2 01/12] notify: implement webhook targets 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" On 2024-07-17 17:35, Max Carrara wrote: >> + let handlebars = setup_handlebars(); >> + let body_template = self.base_64_decode(self.config.body.as_deref().unwrap_or_default())?; >> + >> + let body = handlebars >> + .render_template(&body_template, &data) >> + .map_err(|err| { >> + // TODO: Cleanup error types, they have become a bit messy. >> + // No user of the notify crate distinguish between the error types any way, so >> + // we can refactor without any issues.... >> + Error::Generic(format!("failed to render webhook body: {err}")) > > I'm curious, how would you clean up the error types in particular? > Right now, error handling is a bit messy... Some endpoints primarily use the `NotifyFailed` variant, which wraps another error, while in some places where I need a leaf error type that does not wrap any error I use the `Generic` variant, which only stores a string. I could have used the `NotifyFailed` variant here, but that one would not have allowed me to add additional context ("failed to render webhook ..."), unless wrapping another `Generic` variant... I don't have yet made any detailed plans on how to clean that up though. -- - Lukas _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel