diff options
author | Joachim Tingvold <joachim@tingvold.com> | 2015-03-21 18:45:16 +0100 |
---|---|---|
committer | Joachim Tingvold <joachim@tingvold.com> | 2015-03-21 18:45:16 +0100 |
commit | 6c6d3763980179ef02554c2f4b0afb3065262e7b (patch) | |
tree | d16e4bc4ecb8cdee10bd9850629f6d3997029414 /tools | |
parent | d5c0e6ac02bd4bb1832434ef3fa502a21ac48432 (diff) |
Move rest of the bootstrap-files.
Diffstat (limited to 'tools')
-rwxr-xr-x | tools/fetch-debinstall.sh | 17 | ||||
-rwxr-xr-x | tools/make-bind-include.pl | 51 | ||||
-rwxr-xr-x | tools/make-dhcpd-include.pl | 18 | ||||
-rwxr-xr-x | tools/make-missing-conf.pl | 176 |
4 files changed, 0 insertions, 262 deletions
diff --git a/tools/fetch-debinstall.sh b/tools/fetch-debinstall.sh deleted file mode 100755 index 069e39a..0000000 --- a/tools/fetch-debinstall.sh +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/bash -xe -INSTALLER_DEST=$1 -DEBINSTROOT=http://ftp.no.debian.org/debian/dists - -mkdir -p ${INSTALLER_DEST}/{squeeze,wheezy}/{amd64,i386} -for DIST in squeeze wheezy -do - for ARCH in i386 amd64; - do - for FILE in initrd.gz linux - do - wget ${DEBINSTROOT}/${DIST}/main/installer-${ARCH}/current/images/netboot/debian-installer/${ARCH}/${FILE} \ - -O ${INSTALLER_DEST}/${DIST}/${ARCH}/${FILE} - done - done -done - diff --git a/tools/make-bind-include.pl b/tools/make-bind-include.pl deleted file mode 100755 index d688dec..0000000 --- a/tools/make-bind-include.pl +++ /dev/null @@ -1,51 +0,0 @@ -#!/usr/bin/perl -I /root/tgmanage - -# TODO: Port this to the "master|slave base" parameter syntax! - -use strict; - -unless ( (($#ARGV == 0 ) || ( $#ARGV == 1)) - && (( $ARGV[0] eq "master" ) || ( $ARGV[0] eq "slave" )) ) -{ - print STDERR "Invalid usage!\ncat netnames.txt | $0 <master|slave> [basedir]\n"; - exit 1; -} - -my $role = $ARGV[0]; - -my $base = "/etc"; -$base = $ARGV[1] if $#ARGV == 1; -$base .= "/" if not $base =~ m/\/$/ and not $base eq ""; - -my $bind_base = $base . "bind/"; -my $masterinclude = $bind_base . "named.master-include.conf"; -my $slaveinclude = $bind_base . "named.slave-include.conf"; - -my $glob; -my @configs; - -if ( $role eq "master" ) -{ - $glob = $bind_base . "conf-master/*.conf"; - @configs = glob($glob); - - open CONF, ">" . $masterinclude or die ( $! . " " . $masterinclude); - foreach my $config ( @configs ) - { - print CONF "include \"" . $config . "\";\n"; - } - close CONF; -} - -if ( $role eq "slave" ) -{ - $glob = $bind_base . "conf-slave/*.conf"; - @configs = glob($glob); - - open CONF, ">" . $slaveinclude or die ( $! . " " . $slaveinclude); - foreach my $config ( @configs ) - { - print CONF "include \"" . $config . "\";\n"; - } - close CONF; -} diff --git a/tools/make-dhcpd-include.pl b/tools/make-dhcpd-include.pl deleted file mode 100755 index ded5551..0000000 --- a/tools/make-dhcpd-include.pl +++ /dev/null @@ -1,18 +0,0 @@ -#!/usr/bin/perl -I /root/tgmanage -use strict; -my $base = "/etc"; -$base = $ARGV[0] if $#ARGV > -1; -$base .= "/" if not $base =~ m/\/$/ and not $base eq ""; - -my $dhcpd_base = $base . "dhcp/"; -my $includeconfig = $dhcpd_base . "generated-include.conf"; - -my $glob = $dhcpd_base . "conf.d/*.conf"; -my @configs = glob($glob); - -open CONF, ">" . $includeconfig or die ( $! . " " . $includeconfig); -foreach my $config ( @configs ) -{ - print CONF "include \"" . $config . "\";\n"; -} -close CONF; diff --git a/tools/make-missing-conf.pl b/tools/make-missing-conf.pl deleted file mode 100755 index 598964f..0000000 --- a/tools/make-missing-conf.pl +++ /dev/null @@ -1,176 +0,0 @@ -#!/usr/bin/perl -I /root/tgmanage -use strict; - -BEGIN { - require "include/config.pm"; - eval { - require "include/config.local.pm"; - }; -} - - -use Net::IP; -use Net::IP qw(:PROC); - -my $serial = strftime("%Y%m%d", localtime(time())) . "01"; - -unless ( (($#ARGV == 0 ) || ( $#ARGV == 1)) - && (( $ARGV[0] eq "master" ) || ( $ARGV[0] eq "slave" )) ) -{ - print STDERR "Invalid usage!\ncat netnames.txt | $0 <master|slave> [basedir]\n"; - exit 1; -} - -my $role = $ARGV[0]; - -my $base = "/etc"; -$base = $ARGV[1] if $#ARGV == 1; -$base .= "/" if not $base =~ m/\/$/ and not $base eq ""; - - -print STDERR "Role is " . $role . "\n"; -print STDERR "Base dir is " . $base . "\n"; - -my $bind_base = $base . "bind/"; -my $dhcpd_base = $base . "dhcp/"; - -my $dhcp_dynconf_dir = $dhcpd_base . "conf.d/"; -my $bind_conf_master = $bind_base . "conf-master/"; -my $bind_conf_slave = $bind_base . "conf-slave/"; - -my $tgname = $nms::config::tgname; - -my $pri_hostname = $nms::config::pri_hostname; -my $pri_v4 = $nms::config::pri_v4; -my $pri_v6 = $nms::config::pri_v6; - -my $sec_hostname = $nms::config::sec_hostname; -my $sec_v4 = $nms::config::sec_v4; -my $sec_v6 = $nms::config::sec_v6; - -my $ddns_key = $nms::config::ddns_key; - -my $ddns_to = $nms::config::ddns_to; - -my $base_ipv4 = new Net::IP( $nms::config::base_ipv4net ); -my ($cp_oct, $cs_oct, $ct_oct) = ($nms::config::base_ipv4net =~ m/^(\d+)\.(\d+)\.(\d+)\..*/); - -while ( <STDIN> ) -{ - next if ( $_ =~ m/^#/); - my $line = $_; - chomp $line; - die ("Invalid format on input") if not $line =~ m/^(\d+)\.(\d+)\.(\d+)\.(\d+)\s+(\d+)\s+([\w|-]+)\s*.*/; - my ( $p_oct, $s_oct, $t_oct, $f_oct, $size, $name ) = ( $1, $2, $3, $4, $5, $6 ); - - - my $dhconfig = $dhcp_dynconf_dir . $name . ".conf"; - my $master_config = $bind_conf_master . $name . ".conf"; - my $slave_config = $bind_conf_slave . $name . ".conf"; - my $zone_file = $bind_base . "dynamic/$name.$tgname.gathering.org.zone"; - - my $net_base = $p_oct . "." . $s_oct . "." . $t_oct; - my $net = $net_base . "." . $f_oct; - my $range = new Net::IP( $net . "/" . $size ) or die ("oopxos"); - - # Create configuration files for DHCP on master/primary - if ( ( not -f $dhconfig ) && ( $role eq "master" ) ) - { - print STDERR "Creating file " . $dhconfig . "\n"; - my $numhosts = $range->size(); - my $mask = $range->mask(); - my $router = $net_base . "." . ($f_oct+1); - my $first = $net_base . "." . ( $f_oct + 5 ); - - my $last = $first; - if ( $size < 24 ) - { - # Net::IP iteration is crazyslow. So, we stopped using iterations. - my $last_ip = $range->last_ip(); - $last_ip =~ m/(\d+)\.(\d+)\.(\d+)\.(\d+)/; - $last = sprintf("%d.%d.%d.%d", $1, $2, $3, $4-2); - } - else { $last = $net_base . "." . ( $f_oct + $numhosts - 2 ); } - - #print STDERR "Name : " . $name . "\n"; - #print STDERR "Net : " . $net . "\n"; - #print STDERR "Mask : " . $mask . "\n"; - #print STDERR "Router : " . $router . "\n"; - #print STDERR "Size : " . $size . "\n"; - #print STDERR "Numhosts : " . $numhosts . "\n"; - #print STDERR "First : " . $first . "\n"; - #print STDERR "Last : " . $last . "\n"; - - open DFILE, ">" . $dhconfig or die ( $! . " " . $dhconfig); - - print DFILE "zone $name.$tgname.gathering.org {\n"; - print DFILE " primary $ddns_to;\n"; - print DFILE " key DHCP_UPDATER;\n"; - print DFILE "}\n\n"; - - print DFILE "subnet $net netmask $mask {\n"; - print DFILE " authoritative;\n"; - print DFILE " option routers $router;\n"; - print DFILE " option domain-name \"$name.$tgname.gathering.org\";\n"; - print DFILE " ddns-domainname \"$name.$tgname.gathering.org\";\n"; - print DFILE " range $first $last;\n"; - print DFILE " ignore client-updates;\n"; - print DFILE "}\n\n"; - - close DFILE; - } - - # Create zone files for bind9 on master/primary - if ( ( not -f $zone_file ) && ( $role eq "master" ) ) - { - print STDERR "Creating file " . $zone_file . "\n"; - open ZFILE, ">" . $zone_file or die ( $! . " " . $zone_file); - print ZFILE << "EOF"; -; Base reverse zones are updated from dhcpd -- DO NOT TOUCH! -\$TTL 3600 -@ IN SOA $pri_hostname.$tgname.gathering.org. abuse.gathering.org. ( - $serial ; serial - 3600 ; refresh - 1800 ; retry - 608400 ; expire - 3600 ) ; minimum and default TTL - - IN NS $pri_hostname.$tgname.gathering.org. - IN NS $sec_hostname.$tgname.gathering.org. -\$ORIGIN $name.$tgname.gathering.org. -EOF - close ZFILE; - } - - - # Create bind9 configuration files for zones. - my $bind_file = ""; - $bind_file = $master_config if ( $role eq "master"); - $bind_file = $slave_config if ( $role eq "slave"); - die ("WTF, role does not match 'master' or 'slave'" ) if ( $bind_file eq ""); - - if ( not -f $bind_file ) - { - print STDERR "Creating file " . $bind_file . "\n"; - open NFILE, ">" . $bind_file or die ( $! . " " . $bind_file); - - print NFILE "zone \"$name.$tgname.gathering.org\" {\n"; - if ( $role eq "master" ) { - print NFILE " type master;\n"; - print NFILE " notify yes;\n"; - print NFILE " allow-update { key DHCP_UPDATER; };\n"; - print NFILE " file \"dynamic/$name.$tgname.gathering.org.zone\";\n"; - } - else - { - print NFILE " type slave;\n"; - print NFILE " notify no;\n"; - print NFILE " masters { bootstrap; };\n"; - print NFILE " file \"slave/$name.$tgname.gathering.org.zone\";\n"; - } - print NFILE " allow-transfer { ns-xfr; };\n"; - print NFILE "};\n"; - - close NFILE; - } -} |