[pbs-devel] [PATCH proxmox{, -backup} v3 0/4] s3: extend config by provider-quirks and client options by feature list

Christian Ebner c.ebner at proxmox.com
Tue Aug 5 07:58:29 CEST 2025


On 8/4/25 10:17 PM, Thomas Lamprecht wrote:
> Am 04.08.25 um 08:54 schrieb Christian Ebner:
>> These patches extend the s3 client configuration by the additional
>> `provider-quirks` enum, allowing to switch to provider specific implementation
>> details. The provider specific quirks are then mapped to a list of features and
>> limitations, added to the s3 client options.
>>
>> As first use-case, the `If-None-Match` header is not set during put object
>> requests to Backblaze B2 or Infomaniak object stores, as these fail with an
>> error with status code 501, therefore chunk uploads will fail.
> 
> Why not expose the actual quirk (features) directly? Even if we'd like to
> have specific providers a user can select, that part could be a frontend
> only feature, and tbh. for starters I'd even skip that, maybe documenting
> provider to quirks in the PBS wiki might be a good option for now.
> 
> I'm just a bit wary of locking our backend in to those provider, as there
> are quite a few of S3 provider, and not all might be here with us forever,
> and having dozens of providers all mapping just to one or two actual
> quirks each seems a bit overkill to me.
> Sorry, I should have taken a closer check earlier to provider quicker
> feedback.

The intention was to have it easy for the user to select the required 
features, therefore the mapping from provider to features.

But you are absolutely right that this might introduce maintenance 
burden in the long run, as the list of providers is then backed into the 
config.

So I do agree, will move this over to only expose the features in the 
config and the single NoIfNoneMatchHeader in the UI for now (and maybe 
call them quirks, after all?)




More information about the pbs-devel mailing list