summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--FS/FS/part_export/bind.pm2
-rwxr-xr-xbin/bind.export19
2 files changed, 12 insertions, 9 deletions
diff --git a/FS/FS/part_export/bind.pm b/FS/FS/part_export/bind.pm
index 1ef7b6598..dd60b2a28 100644
--- a/FS/FS/part_export/bind.pm
+++ b/FS/FS/part_export/bind.pm
@@ -11,6 +11,8 @@ tie %options, 'Tie::IxHash',
default=> '/etc/bind/named.conf' },
'zonepath' => { label => 'path to zone files',
default=> '/etc/bind/', },
+ 'local_zonepath'=>{ label => 'path to zone files in named.conf (optional override)',
+ },
'bind_release' => { label => 'ISC BIND Release',
type => 'select',
options => [qw(BIND8 BIND9)],
diff --git a/bin/bind.export b/bin/bind.export
index a3bbd1ac5..9c5130b11 100755
--- a/bin/bind.export
+++ b/bin/bind.export
@@ -20,10 +20,10 @@ mkdir $spooldir, 0700 unless -d $spooldir;
my @exports = qsearch('part_export', { 'exporttype' => 'bind' } );
my @sexports = qsearch('part_export', { 'exporttype' => 'bind_slave' } );
-my $rsync = File::Rsync->new({
+my $rsync = File::Rsync->new(
rsh => 'ssh',
# dry_run => 1,
-});
+);
foreach my $export ( @exports ) {
@@ -50,7 +50,8 @@ foreach my $export ( @exports ) {
close CONF_HEADER;
}
- my $zonepath = $export->option('zonepath');
+ my $zonepath = $export->option('local_zonepath')
+ || $export->option('zonepath');
$zonepath =~ s/\/$//;
my @svc_domain = $export->svc_x;
@@ -112,18 +113,18 @@ END
}
- $rsync->exec( {
+ $rsync->exec(
src => "$prefix/",
recursive => 1,
dest => "root\@$machine:$zonepath/",
exclude => [qw( *.import named.conf.HEADER named.conf )],
- } ) or die "rsync to $machine failed: ". join(" / ", $rsync->err);
+ ) or die "rsync to $machine failed: ". join(" / ", $rsync->err);
# warn $rsync->out;
- $rsync->exec( {
+ $rsync->exec(
src => "$prefix/named.conf",
dest => "root\@$machine:". $export->option('named_conf'),
- } ) or die "rsync to $machine failed: ". join(" / ", $rsync->err);
+ ) or die "rsync to $machine failed: ". join(" / ", $rsync->err);
# warn $rsync->out;
ssh("root\@$machine", "$ndc_cmd reload");
@@ -177,10 +178,10 @@ END
}
- $rsync->exec( {
+ $rsync->exec(
src => "$prefix/named.conf",
dest => "root\@$machine:". $sexport->option('named_conf'),
- } ) or die "rsync to $machine failed: ". join(" / ", $rsync->err);
+ ) or die "rsync to $machine failed: ". join(" / ", $rsync->err);
# warn $rsync->out;
ssh("root\@$machine", "$ndc_cmd reload");