From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <pve-devel-bounces@lists.proxmox.com>
Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68])
	by lore.proxmox.com (Postfix) with ESMTPS id 18CC81FF16B
	for <inbox@lore.proxmox.com>; Thu, 20 Feb 2025 10:31:30 +0100 (CET)
Received: from firstgate.proxmox.com (localhost [127.0.0.1])
	by firstgate.proxmox.com (Proxmox) with ESMTP id D1996CADF;
	Thu, 20 Feb 2025 10:31:23 +0100 (CET)
Message-ID: <0208192d-f5b0-4067-9172-f3b6910b54fd@proxmox.com>
Date: Thu, 20 Feb 2025 10:31:20 +0100
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
To: Fiona Ebner <f.ebner@proxmox.com>,
 Proxmox VE development discussion <pve-devel@lists.proxmox.com>
References: <20250211160825.254167-1-d.kral@proxmox.com>
 <20250211160825.254167-4-d.kral@proxmox.com>
 <a61d4129-190a-46a8-82fc-8e1ae9419335@proxmox.com>
Content-Language: en-US
From: Daniel Kral <d.kral@proxmox.com>
In-Reply-To: <a61d4129-190a-46a8-82fc-8e1ae9419335@proxmox.com>
X-SPAM-LEVEL: Spam detection results:  0
 AWL 0.008 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
 RCVD_IN_VALIDITY_CERTIFIED_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to
 Validity was blocked. See
 https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more
 information.
 RCVD_IN_VALIDITY_RPBL_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to
 Validity was blocked. See
 https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more
 information.
 RCVD_IN_VALIDITY_SAFE_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to
 Validity was blocked. See
 https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more
 information.
 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] [PATCH pve-storage v2 3/5] tree-wide: make use of
 content type assertion helper
X-BeenThere: pve-devel@lists.proxmox.com
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Proxmox VE development discussion <pve-devel.lists.proxmox.com>
List-Unsubscribe: <https://lists.proxmox.com/cgi-bin/mailman/options/pve-devel>, 
 <mailto:pve-devel-request@lists.proxmox.com?subject=unsubscribe>
List-Archive: <http://lists.proxmox.com/pipermail/pve-devel/>
List-Post: <mailto:pve-devel@lists.proxmox.com>
List-Help: <mailto:pve-devel-request@lists.proxmox.com?subject=help>
List-Subscribe: <https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel>, 
 <mailto:pve-devel-request@lists.proxmox.com?subject=subscribe>
Reply-To: Proxmox VE development discussion <pve-devel@lists.proxmox.com>
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset="us-ascii"; Format="flowed"
Errors-To: pve-devel-bounces@lists.proxmox.com
Sender: "pve-devel" <pve-devel-bounces@lists.proxmox.com>

On 2/19/25 16:16, Fiona Ebner wrote:
> Am 11.02.25 um 17:07 schrieb Daniel Kral:
>> Make any code path with an existent content type assertion use the newly
>> introduced content type assertion helper.
>>
>> As those code paths must perform actions on the storage anyway, the
>> `storage_check_enabled` in the helper subroutine adds an additional
>> precondition check without breaking the existing APIs with a new error.
>>
> 
> So here you do talk about storage_check_enabled(). Did you maybe send an
> incorrect version of the previous patch ;)?

That was an oversight, but as mentioned in the previous response, I'd 
hope to be able to make the `storage_config` to a 
`storage_check_enabled` in a v3 if there's nothing breaking about this 
when replacing the existing checks :).

> 
>> Signed-off-by: Daniel Kral <d.kral@proxmox.com>
> 
> With the previous patch fixed:
> 
> Reviewed-by: Fiona Ebner <f.ebner@proxmox.com>
> 
> However, see below:
> 
>> ---
>> changes since v1:
>> - new!
>>
>>   src/PVE/API2/Storage/Status.pm | 6 ++----
>>   src/PVE/Storage.pm             | 3 ++-
>>   2 files changed, 4 insertions(+), 5 deletions(-)
>>
>> diff --git a/src/PVE/API2/Storage/Status.pm b/src/PVE/API2/Storage/Status.pm
>> index c854b53..e5652f4 100644
>> --- a/src/PVE/API2/Storage/Status.pm
>> +++ b/src/PVE/API2/Storage/Status.pm
>> @@ -478,8 +478,7 @@ __PACKAGE__->register_method ({
>>   	    raise_param_exc({ content => "upload content type '$content' not allowed" });
>>   	}
>>   
>> -	die "storage '$storage' does not support '$content' content\n"
>> -	    if !$scfg->{content}->{$content};
>> +	PVE::Storage::assert_content_type_supported($cfg, $storage, $content, $node);
> 
> Above here is already a storage_check_enabled() check that would become
> superfluous and could be removed. While it doesn't hurt to keep, I'm
> wondering if we can better encode the semantics for the new helper in
> its name and get rid of the duplicate check after all. Also to make it
> easier for future usages to remember that the enabled check is already
> done too. Maybe calling the helper assert_content_type_available() or to
> be rather explicit assert_storage_ready_for_content_type() would make it
> clear that it means that both, the storage is enabled on the node and
> the content type is configured for the storage? Other suggestions are
> welcome!

Agreed, a better name would be good here, so it doesn't add confusion! I 
think I'd go for the first suggestion in a v3, but I'll think about 
it... The second suggestion is great, but I'd like to keep most helpers 
in one line if possible - but this shouldn't be more important than 
clarity of course.


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