[pbs-devel] applied: [PATCH v2 proxmox-backup] fix #6185: client/docs: explicitly mention archive name restrictions

Wolfgang Bumiller w.bumiller at proxmox.com
Fri Feb 21 16:06:29 CET 2025


applied, and fixed up more >100col lines while also fixing the that the
entire #[api] block from the lower hunk from using *3* spaces to 4 for
its first indentation level...

On Thu, Feb 20, 2025 at 04:56:05PM +0100, Christian Ebner wrote:
> Mention in the docs and the api parameter description the limitations
> for archive name labels. They must contain alphanumerics, hyphens and
> underscores only to match the regex pattern.
> 
> By setting this in the api parameter description, it will be included
> in the man page for proxmox-backup-client.
> 
> Fixes: https://bugzilla.proxmox.com/show_bug.cgi?id=6185
> Signed-off-by: Christian Ebner <c.ebner at proxmox.com>
> ---
> changes since version 1:
> - Avoid newline in output by formatting multi-line string with backslash.
> 
>  docs/backup-client.rst                 |  1 +
>  pbs-client/src/backup_specification.rs | 10 ++++++----
>  proxmox-backup-client/src/main.rs      |  3 ++-
>  3 files changed, 9 insertions(+), 5 deletions(-)
> 
> diff --git a/docs/backup-client.rst b/docs/backup-client.rst
> index 1c2a98ed8..e11c0142a 100644
> --- a/docs/backup-client.rst
> +++ b/docs/backup-client.rst
> @@ -169,6 +169,7 @@ the client. The format is:
>  
>      <archive-name>.<type>:<source-path>
>  
> +The ``archive-name`` must contain alphanumerics, hyphens and underscores only.
>  Common types are ``.pxar`` for file archives and ``.img`` for block
>  device images. To create a backup of a block device, run the following command:
>  
> diff --git a/pbs-client/src/backup_specification.rs b/pbs-client/src/backup_specification.rs
> index b6fbc555c..e44d23d90 100644
> --- a/pbs-client/src/backup_specification.rs
> +++ b/pbs-client/src/backup_specification.rs
> @@ -7,10 +7,12 @@ const_regex! {
>      BACKUPSPEC_REGEX = r"^([a-zA-Z0-9_-]+\.(pxar|img|conf|log)):(.+)$";
>  }
>  
> -pub const BACKUP_SOURCE_SCHEMA: Schema =
> -    StringSchema::new("Backup source specification ([<label>:<path>]).")
> -        .format(&ApiStringFormat::Pattern(&BACKUPSPEC_REGEX))
> -        .schema();
> +pub const BACKUP_SOURCE_SCHEMA: Schema = StringSchema::new(
> +    "Backup source specification ([<label>:<path>]), the specification \
> +    'label' must contain alphanumerics, hyphens and underscores only.",
> +)
> +.format(&ApiStringFormat::Pattern(&BACKUPSPEC_REGEX))
> +.schema();
>  
>  pub enum BackupSpecificationType {
>      PXAR,
> diff --git a/proxmox-backup-client/src/main.rs b/proxmox-backup-client/src/main.rs
> index 589a097bb..9077f7bdf 100644
> --- a/proxmox-backup-client/src/main.rs
> +++ b/proxmox-backup-client/src/main.rs
> @@ -628,7 +628,8 @@ fn spawn_catalog_upload(
>         properties: {
>             backupspec: {
>                 type: Array,
> -               description: "List of backup source specifications ([<label.ext>:<path>] ...)",
> +               description: "List of backup source specifications ([<label.ext>:<path>] ...), the \
> +                    specifications 'label' must contain alphanumerics, hyphens and underscores only.",
>                 items: {
>                     schema: BACKUP_SOURCE_SCHEMA,
>                 }
> -- 
> 2.39.5




More information about the pbs-devel mailing list