all lists on lists.proxmox.com
 help / color / mirror / Atom feed
* [pve-devel] [PATCH container v2] fix regression breaking container restore from PBS
@ 2025-11-17 13:52 Filip Schauer
  2025-11-17 15:19 ` Fabian Grünbichler
  2025-11-17 21:27 ` [pve-devel] applied: " Thomas Lamprecht
  0 siblings, 2 replies; 3+ messages in thread
From: Filip Schauer @ 2025-11-17 13:52 UTC (permalink / raw)
  To: pve-devel

This fixes a regression caused by an abs_filesystem_path call introduced
with OCI image support. When trying to restore a container from a
Proxmox Backup Server, this tried to resolve a path on a PBS datastore
as a local file system path. This is fixed by only calling
abs_filesystem_path on path-based storages.

Fixes: 2aed26d320ae ("add support for OCI images as container
templates")

Signed-off-by: Filip Schauer <f.schauer@proxmox.com>
---
 src/PVE/API2/LXC.pm | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/src/PVE/API2/LXC.pm b/src/PVE/API2/LXC.pm
index cffa17a..dd4fdc8 100644
--- a/src/PVE/API2/LXC.pm
+++ b/src/PVE/API2/LXC.pm
@@ -543,8 +543,12 @@ __PACKAGE__->register_method({
                 eval {
                     my $rootdir = PVE::LXC::mount_all($vmid, $storage_cfg, $conf, 1);
                     my $archivepath = '-';
-                    $archivepath = PVE::Storage::abs_filesystem_path($storage_cfg, $archive)
-                        if ($archive ne '-');
+                    if ($archive ne '-') {
+                        my $archive_sid = (PVE::Storage::parse_volume_id($archive))[0];
+                        my $scfg = PVE::Storage::storage_config($storage_cfg, $archive_sid);
+                        $archivepath = PVE::Storage::abs_filesystem_path($storage_cfg, $archive)
+                            if $scfg->{path};
+                    }
                     $bwlimit = PVE::Storage::get_bandwidth_limit(
                         'restore', [keys %used_storages], $bwlimit,
                     );
-- 
2.47.3



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


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [pve-devel] [PATCH container v2] fix regression breaking container restore from PBS
  2025-11-17 13:52 [pve-devel] [PATCH container v2] fix regression breaking container restore from PBS Filip Schauer
@ 2025-11-17 15:19 ` Fabian Grünbichler
  2025-11-17 21:27 ` [pve-devel] applied: " Thomas Lamprecht
  1 sibling, 0 replies; 3+ messages in thread
From: Fabian Grünbichler @ 2025-11-17 15:19 UTC (permalink / raw)
  To: Proxmox VE development discussion

Reviewed-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>

good enough as a stop-gap fix, but those helpers should move to
PVE::LXC::Create and be refactored a bit to avoid the unnecessary
$archivepath variable here..

On November 17, 2025 2:52 pm, Filip Schauer wrote:
> This fixes a regression caused by an abs_filesystem_path call introduced
> with OCI image support. When trying to restore a container from a
> Proxmox Backup Server, this tried to resolve a path on a PBS datastore
> as a local file system path. This is fixed by only calling
> abs_filesystem_path on path-based storages.
> 
> Fixes: 2aed26d320ae ("add support for OCI images as container
> templates")
> 
> Signed-off-by: Filip Schauer <f.schauer@proxmox.com>
> ---
>  src/PVE/API2/LXC.pm | 8 ++++++--
>  1 file changed, 6 insertions(+), 2 deletions(-)
> 
> diff --git a/src/PVE/API2/LXC.pm b/src/PVE/API2/LXC.pm
> index cffa17a..dd4fdc8 100644
> --- a/src/PVE/API2/LXC.pm
> +++ b/src/PVE/API2/LXC.pm
> @@ -543,8 +543,12 @@ __PACKAGE__->register_method({
>                  eval {
>                      my $rootdir = PVE::LXC::mount_all($vmid, $storage_cfg, $conf, 1);
>                      my $archivepath = '-';
> -                    $archivepath = PVE::Storage::abs_filesystem_path($storage_cfg, $archive)
> -                        if ($archive ne '-');
> +                    if ($archive ne '-') {
> +                        my $archive_sid = (PVE::Storage::parse_volume_id($archive))[0];
> +                        my $scfg = PVE::Storage::storage_config($storage_cfg, $archive_sid);
> +                        $archivepath = PVE::Storage::abs_filesystem_path($storage_cfg, $archive)
> +                            if $scfg->{path};
> +                    }
>                      $bwlimit = PVE::Storage::get_bandwidth_limit(
>                          'restore', [keys %used_storages], $bwlimit,
>                      );
> -- 
> 2.47.3
> 
> 
> 
> _______________________________________________
> pve-devel mailing list
> pve-devel@lists.proxmox.com
> https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel
> 
> 
> 


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

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [pve-devel] applied: [PATCH container v2] fix regression breaking container restore from PBS
  2025-11-17 13:52 [pve-devel] [PATCH container v2] fix regression breaking container restore from PBS Filip Schauer
  2025-11-17 15:19 ` Fabian Grünbichler
@ 2025-11-17 21:27 ` Thomas Lamprecht
  1 sibling, 0 replies; 3+ messages in thread
From: Thomas Lamprecht @ 2025-11-17 21:27 UTC (permalink / raw)
  To: pve-devel, Filip Schauer

On Mon, 17 Nov 2025 14:52:04 +0100, Filip Schauer wrote:
> This fixes a regression caused by an abs_filesystem_path call introduced
> with OCI image support. When trying to restore a container from a
> Proxmox Backup Server, this tried to resolve a path on a PBS datastore
> as a local file system path. This is fixed by only calling
> abs_filesystem_path on path-based storages.
> 
> Fixes: 2aed26d320ae ("add support for OCI images as container
> templates")
> 
> [...]

Applied, thanks!

[1/1] fix regression breaking container restore from PBS
      commit: a33cefb1b98311f2fcdff3d9b349c73166990559


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


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2025-11-17 21:28 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-11-17 13:52 [pve-devel] [PATCH container v2] fix regression breaking container restore from PBS Filip Schauer
2025-11-17 15:19 ` Fabian Grünbichler
2025-11-17 21:27 ` [pve-devel] applied: " Thomas Lamprecht

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