5
0
mirror of git://git.proxmox.com/git/pve-storage.git synced 2025-01-24 02:04:13 +03:00

config: use relative paths for content overrides

Remove the requirement for paths to start with a /, as it might be
confusing to users.

Signed-off-by: Leo Nunner <l.nunner@proxmox.com>
This commit is contained in:
Leo Nunner 2023-03-14 14:14:54 +01:00 committed by Thomas Lamprecht
parent 574fb9ad11
commit a3c30c6871
2 changed files with 5 additions and 5 deletions

View File

@ -355,7 +355,7 @@ PVE::JSONSchema::register_format('pve-dir-override', \&verify_dir_override);
sub verify_dir_override {
my ($value, $noerr) = @_;
if ($value =~ m/^([-a-z]+)=\/.+$/ && verify_content($1, $noerr)) {
if ($value =~ m/^([a-z]+)=[^.]+$/ && verify_content($1, $noerr)) {
return $value;
}
@ -658,9 +658,9 @@ sub get_subdir {
die "storage definition has no path\n" if !$path;
die "unknown vtype '$vtype'\n" if !exists($vtype_subdirs->{$vtype});
my $subdir = $scfg->{"content-dirs"}->{$vtype} // "/".$vtype_subdirs->{$vtype};
my $subdir = $scfg->{"content-dirs"}->{$vtype} // $vtype_subdirs->{$vtype};
return $path.$subdir;
return "$path/$subdir";
}
sub filesystem_path {

View File

@ -29,9 +29,9 @@ foreach my $type (keys %$vtype_subdirs) {
# creates additional tests for overrides
foreach my $type (keys %$vtype_subdirs) {
my $override = "/${type}_override";
my $override = "${type}_override";
my $scfg_with_override = { path => '/some/path', 'content-dirs' => { $type => $override } };
push @$tests, [ $scfg_with_override, $type, "$scfg_with_override->{path}$scfg_with_override->{'content-dirs'}->{$type}" ];
push @$tests, [ $scfg_with_override, $type, "$scfg_with_override->{path}/$scfg_with_override->{'content-dirs'}->{$type}" ];
}
plan tests => scalar @$tests;