all lists on lists.proxmox.com
 help / color / mirror / Atom feed
From: Christian Ebner <c.ebner@proxmox.com>
To: pbs-devel@lists.proxmox.com
Subject: [PATCH proxmox{,-backup} v2 0/6] fix #7078: Add quirk for providers not supporting deleteObjects
Date: Wed,  4 Mar 2026 14:59:16 +0100	[thread overview]
Message-ID: <20260304135922.717714-1-c.ebner@proxmox.com> (raw)

These patches provide a workaround to users which would like to
use the S3 datastore backend with object store API's not implementing
the deleteObjects API method, such as e.g. Google Cloud Storage.

When the quirk is set via the S3 client options, delete objects calls
are performed as individual delete object calls instead.

Patches therefore restructure the s3-client code such that the delete
objects response can be generated and the deletion is performed by
looping over the delete list, performing single object deletions.

On the Proxmox Backup Server side the new, additional quirk is exposed
by reworking the advanced section in the s3 endpoint edit window
to use a fieldset of checkboxes instead of the dropdown selector,
with the intend to improve usability.

Link to the bugtracker issue:
https://bugzilla.proxmox.com/show_bug.cgi?id=7078

Changes since version 1 (thanks @Fabian for review):
- Improve error handling for delete object(s) api calls.
- Retrieved and log delete errors on PBS side.


proxmox:

Christian Ebner (4):
  s3-client: parse and return headers for delete object response
  s3-client: return dedicated error type for delete object response
  s3-client: extend provider quirks by delete objects via delete object
  s3-client: return list of errors when deleting by prefix

 proxmox-s3-client/src/api_types.rs       |  2 +
 proxmox-s3-client/src/client.rs          | 82 +++++++++++++++++++-----
 proxmox-s3-client/src/lib.rs             |  2 +
 proxmox-s3-client/src/response_reader.rs | 54 ++++++++++++++--
 4 files changed, 120 insertions(+), 20 deletions(-)


proxmox-backup:

Christian Ebner (2):
  datastore: s3: modify delete objects api and log exposed errors
  fix #7078: ui: exponse DeleteObjects via DeleteObject provider quirk

 pbs-datastore/src/backup_info.rs |  8 +++--
 pbs-datastore/src/datastore.rs   |  6 ++--
 pbs-datastore/src/s3.rs          | 26 ++++++++++++++-
 www/window/S3ClientEdit.js       | 57 ++++++++++++++++++++++++--------
 4 files changed, 77 insertions(+), 20 deletions(-)


Summary over all repositories:
  8 files changed, 197 insertions(+), 40 deletions(-)

-- 
Generated by murpp 0.9.0




             reply	other threads:[~2026-03-04 13:58 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-03-04 13:59 Christian Ebner [this message]
2026-03-04 13:59 ` [PATCH proxmox v2 1/4] s3-client: parse and return headers for delete object response Christian Ebner
2026-03-04 13:59 ` [PATCH proxmox v2 2/4] s3-client: return dedicated error type " Christian Ebner
2026-03-04 13:59 ` [PATCH proxmox v2 3/4] s3-client: extend provider quirks by delete objects via delete object Christian Ebner
2026-03-04 13:59 ` [PATCH proxmox v2 4/4] s3-client: return list of errors when deleting by prefix Christian Ebner
2026-03-04 13:59 ` [PATCH proxmox-backup v2 1/2] datastore: s3: modify delete objects api and log exposed errors Christian Ebner
2026-03-04 13:59 ` [PATCH proxmox-backup v2 2/2] fix #7078: ui: exponse DeleteObjects via DeleteObject provider quirk Christian Ebner

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=20260304135922.717714-1-c.ebner@proxmox.com \
    --to=c.ebner@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