[pve-devel] [PATCH storage] Add write_config, drop cfs_read_file
Fabian Grünbichler
f.gruenbichler at proxmox.com
Fri Mar 25 15:07:24 CET 2016
Use PVE::Storage::config() and the new
PVE::Storage::write_config() instead of cfs_read_file and
cfs_write_file with a hardcoded filename.
---
PVE/API2/Storage/Config.pm | 16 ++++++++--------
PVE/API2/Storage/Content.pm | 12 ++++++------
PVE/API2/Storage/Status.pm | 8 ++++----
PVE/Storage.pm | 8 +++++++-
4 files changed, 25 insertions(+), 19 deletions(-)
diff --git a/PVE/API2/Storage/Config.pm b/PVE/API2/Storage/Config.pm
index b9fdc0e..4668af6 100755
--- a/PVE/API2/Storage/Config.pm
+++ b/PVE/API2/Storage/Config.pm
@@ -70,7 +70,7 @@ __PACKAGE__->register_method ({
my $rpcenv = PVE::RPCEnvironment::get();
my $authuser = $rpcenv->get_user();
- my $cfg = cfs_read_file("storage.cfg");
+ my $cfg = PVE::Storage::config();
my @sids = PVE::Storage::storage_ids($cfg);
@@ -105,7 +105,7 @@ __PACKAGE__->register_method ({
code => sub {
my ($param) = @_;
- my $cfg = cfs_read_file("storage.cfg");
+ my $cfg = PVE::Storage::config();
return &$api_storage_config($cfg, $param->{storage});
}});
@@ -137,7 +137,7 @@ __PACKAGE__->register_method ({
PVE::Storage::lock_storage_config(
sub {
- my $cfg = cfs_read_file('storage.cfg');
+ my $cfg = PVE::Storage::config();
if (my $scfg = PVE::Storage::storage_config($cfg, $storeid, 1)) {
die "storage ID '$storeid' already defined\n";
@@ -170,7 +170,7 @@ __PACKAGE__->register_method ({
PVE::Storage::activate_storage($cfg, $storeid);
}
- cfs_write_file('storage.cfg', $cfg);
+ PVE::Storage::write_config($cfg);
}, "create storage failed");
@@ -197,7 +197,7 @@ __PACKAGE__->register_method ({
PVE::Storage::lock_storage_config(
sub {
- my $cfg = cfs_read_file('storage.cfg');
+ my $cfg = PVE::Storage::config();
PVE::SectionConfig::assert_if_modified($cfg, $digest);
@@ -210,7 +210,7 @@ __PACKAGE__->register_method ({
$scfg->{$k} = $opts->{$k};
}
- cfs_write_file('storage.cfg', $cfg);
+ PVE::Storage::write_config($cfg);
}, "update storage failed");
@@ -243,7 +243,7 @@ __PACKAGE__->register_method ({
PVE::Storage::lock_storage_config(
sub {
- my $cfg = cfs_read_file('storage.cfg');
+ my $cfg = PVE::Storage::config();
die "storage '$storeid' does not exist\n"
if !($cfg->{ids}->{$storeid});
@@ -253,7 +253,7 @@ __PACKAGE__->register_method ({
delete $cfg->{ids}->{$storeid};
- cfs_write_file('storage.cfg', $cfg);
+ PVE::Storage::write_config($cfg);
}, "delete storage failed");
diff --git a/PVE/API2/Storage/Content.pm b/PVE/API2/Storage/Content.pm
index 03f9b26..47ef03b 100644
--- a/PVE/API2/Storage/Content.pm
+++ b/PVE/API2/Storage/Content.pm
@@ -5,7 +5,7 @@ use warnings;
use Data::Dumper;
use PVE::SafeSyslog;
-use PVE::Cluster qw(cfs_read_file);
+use PVE::Cluster;
use PVE::Storage;
use PVE::INotify;
use PVE::Exception qw(raise_param_exc);
@@ -66,7 +66,7 @@ __PACKAGE__->register_method ({
my $storeid = $param->{storage};
- my $cfg = cfs_read_file("storage.cfg");
+ my $cfg = PVE::Storage::config();
my $vollist = PVE::Storage::volume_list($cfg, $storeid, $param->{vmid}, $param->{content});
@@ -150,7 +150,7 @@ __PACKAGE__->register_method ({
$param->{format} = $fmt;
}
- my $cfg = cfs_read_file('storage.cfg');
+ my $cfg = PVE::Storage::config();
my $volid = PVE::Storage::vdisk_alloc ($cfg, $storeid, $param->{vmid},
$param->{format},
@@ -217,7 +217,7 @@ __PACKAGE__->register_method ({
my ($volid, $storeid) = &$real_volume_id($param->{storage}, $param->{volume});
- my $cfg = cfs_read_file('storage.cfg');
+ my $cfg = PVE::Storage::config();
$rpcenv->check_volume_access($authuser, $cfg, undef, $volid);
@@ -267,7 +267,7 @@ __PACKAGE__->register_method ({
my $rpcenv = PVE::RPCEnvironment::get();
my $authuser = $rpcenv->get_user();
- my $cfg = cfs_read_file('storage.cfg');
+ my $cfg = PVE::Storage::config();
my ($volid, $storeid) = &$real_volume_id($param->{storage}, $param->{volume});
@@ -331,7 +331,7 @@ __PACKAGE__->register_method ({
print "DEBUG: COPY $src_volid TO $dst_volid\n";
- my $cfg = cfs_read_file('storage.cfg');
+ my $cfg = PVE::Storage::config();
# do all parameter checks first
diff --git a/PVE/API2/Storage/Status.pm b/PVE/API2/Storage/Status.pm
index 49bb58c..ddd2fa4 100644
--- a/PVE/API2/Storage/Status.pm
+++ b/PVE/API2/Storage/Status.pm
@@ -7,7 +7,7 @@ use File::Path;
use File::Basename;
use PVE::Tools;
use PVE::INotify;
-use PVE::Cluster qw(cfs_read_file);
+use PVE::Cluster;
use PVE::Storage;
use PVE::API2::Storage::Content;
use PVE::RESTHandler;
@@ -85,7 +85,7 @@ __PACKAGE__->register_method ({
undef $target if $target && ($target eq $localnode || $target eq 'localhost');
- my $cfg = cfs_read_file("storage.cfg");
+ my $cfg = PVE::Storage::config();
my $info = PVE::Storage::storage_info($cfg, $param->{content});
@@ -182,7 +182,7 @@ __PACKAGE__->register_method ({
code => sub {
my ($param) = @_;
- my $cfg = cfs_read_file("storage.cfg");
+ my $cfg = PVE::Storage::config();
my $info = PVE::Storage::storage_info($cfg, $param->{content});
@@ -323,7 +323,7 @@ __PACKAGE__->register_method ({
my $user = $rpcenv->get_user();
- my $cfg = cfs_read_file("storage.cfg");
+ my $cfg = PVE::Storage::config();
my $node = $param->{node};
my $scfg = PVE::Storage::storage_check_enabled($cfg, $param->{storage}, $node);
diff --git a/PVE/Storage.pm b/PVE/Storage.pm
index 415301a..9d8c468 100755
--- a/PVE/Storage.pm
+++ b/PVE/Storage.pm
@@ -13,7 +13,7 @@ use Cwd 'abs_path';
use Socket;
use PVE::Tools qw(run_command file_read_firstline $IPV6RE);
-use PVE::Cluster qw(cfs_read_file cfs_lock_file);
+use PVE::Cluster qw(cfs_read_file cfs_write_file cfs_lock_file);
use PVE::Exception qw(raise_param_exc);
use PVE::JSONSchema;
use PVE::INotify;
@@ -56,6 +56,12 @@ sub config {
return cfs_read_file("storage.cfg");
}
+sub write_config {
+ my ($cfg) = @_;
+
+ cfs_write_file('storage.cfg', $cfg);
+}
+
sub lock_storage_config {
my ($code, $errmsg) = @_;
--
2.1.4
More information about the pve-devel
mailing list