This commit changes the code style of subroutine `write_ceph_config` to match our style guide [0] more.
Furthermore, the repeated calls to the inner subroutine are replaced with a loop, while the regular expressions used by the inner `sub` are now quoted with `qr` to prevent any accidental mis-quotings in the future. [0]: https://pve.proxmox.com/wiki/Perl_Style_Guide Signed-off-by: Max Carrara <m.carr...@proxmox.com> --- Changes v2 --> v3: * new; initial style changes moved from patch 06 of series v2 * `qr` operator for regexes to avoid character escaping issues * call `$cond_write_sec` in loop Changes v3 --> v4: * use postfix deref ($hashref->%* instead of %$hashref) * rebased due to previous changes Changes v4 --> v5: * reorder commit (makes rebasing etc. in remaining patches easier) src/PVE/CephConfig.pm | 31 +++++++++++++++++++------------ 1 file changed, 19 insertions(+), 12 deletions(-) diff --git a/src/PVE/CephConfig.pm b/src/PVE/CephConfig.pm index 6b10d46..9934fd5 100644 --- a/src/PVE/CephConfig.pm +++ b/src/PVE/CephConfig.pm @@ -65,28 +65,35 @@ sub write_ceph_config { my $cond_write_sec = sub { my $re = shift; - foreach my $section (sort keys %$cfg) { + for my $section (sort keys $cfg->%*) { next if $section !~ m/^$re$/; + $out .= "[$section]\n"; - foreach my $key (sort keys %{$cfg->{$section}}) { + for my $key (sort keys $cfg->{$section}->%*) { $out .= "\t $key = $cfg->{$section}->{$key}\n"; } $out .= "\n"; } }; - &$cond_write_sec('global'); - &$cond_write_sec('client'); + my @rexprs = ( + qr/global/, + qr/client/, + + qr/mds/, + qr/mon/, + qr/osd/, + qr/mgr/, - &$cond_write_sec('mds'); - &$cond_write_sec('mon'); - &$cond_write_sec('osd'); - &$cond_write_sec('mgr'); + qr/mds\..*/, + qr/mon\..*/, + qr/osd\..*/, + qr/mgr\..*/, + ); - &$cond_write_sec('mds\..*'); - &$cond_write_sec('mon\..*'); - &$cond_write_sec('osd\..*'); - &$cond_write_sec('mgr\..*'); + for my $re (@rexprs) { + $cond_write_sec->($re); + } return $out; } -- 2.39.2 _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel