/[pxelator]/lib/PXElator/config.pm
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /lib/PXElator/config.pm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 276 by dpavlin, Wed Aug 19 23:12:18 2009 UTC revision 277 by dpavlin, Thu Aug 20 19:00:13 2009 UTC
# Line 50  L<http://webconverger.org/> Line 50  L<http://webconverger.org/>
50  sub webconverger {  sub webconverger {
51          my ($ip) = @_;          my ($ip) = @_;
52    
53          $mounted->{$ip} ||= upstream::iso( 'http://download.webconverger.com/webc-5.2.iso' );          $mounted->{"webconverger/$ip"} ||= upstream::iso( 'http://download.webconverger.com/webc-5.2.iso' );
54    
55          my $homepage = client::conf( $ip => 'homepage', default => "http://${server::ip}:7777/client" );          my $homepage = client::conf( $ip => 'homepage', default => "http://${server::ip}:7777/client" );
56          my $hostname = client::conf( $ip => 'hostname' ) || 'webconverger';          my $hostname = client::conf( $ip => 'hostname' ) || 'webconverger';
# Line 109  sub in_chroot { Line 109  sub in_chroot {
109  }  }
110    
111  sub nfsroot {  sub nfsroot {
112          my $ip = shift;          my $ip = shift || die "no ip?";
113    
114          my $nfsroot = "$server::base_dir/tftp/nfsroot";          my $nfsroot = "$server::base_dir/tftp/nfsroot";
115          my $debian_mirror = server::conf_default( 'debian_mirror', 'http://ftp.debian.org/debian' );          my $debian_mirror = server::conf_default( 'debian_mirror', 'http://ftp.debian.org/debian' );
# Line 133  sub nfsroot { Line 133  sub nfsroot {
133                  file::change("$debootstrap/etc/initramfs-tools/initramfs.conf",  'BOOT=local' => 'BOOT=nfs' ) &&                  file::change("$debootstrap/etc/initramfs-tools/initramfs.conf",  'BOOT=local' => 'BOOT=nfs' ) &&
134                  in_chroot     $debootstrap => 'update-initramfs -u';                  in_chroot     $debootstrap => 'update-initramfs -u';
135    
                 file::append "$debootstrap/etc/rsyslog.d/pxelator.conf", "*.*\t\@$server::ip\n";  
                 file::append "$debootstrap/etc/network/interfaces", qq{  
   
 auto lo  
 iface lo inet loopback  
   
 allow-hotplug eth0  
 iface eth0 inet dhcp  
   
                 };  
   
136          }          }
137    
138          my $export = "$nfsroot/$ip";          my $export = "$nfsroot/$ip";
139          my $br     = "$nfsroot/br/$ip";          my $br     = "$nfsroot/br/$ip";
140    
141          my $m = $mounted->{$ip} ||= `mount | grep $export`;          $mounted->{"nfsroot/$ip"} ||= `mount | grep $export`;
142          if ( ! $m ) {  
143            if ( ! $mounted->{"nfsroot/$ip"} ) {
144                  warn "mounting $export";                  warn "mounting $export";
145    
146                  mkdir "$nfsroot/br"     unless -e "$nfsroot/br";                  mkdir "$nfsroot/br"     unless -e "$nfsroot/br";
# Line 160  iface eth0 inet dhcp Line 150  iface eth0 inet dhcp
150                  system "sudo mount -t aufs -o br:$br:$debootstrap none $export";                  system "sudo mount -t aufs -o br:$br:$debootstrap none $export";
151                  system "sudo exportfs -i -o rw,async,no_root_squash,no_subtree_check,fsid=999 $ip:$export";                  system "sudo exportfs -i -o rw,async,no_root_squash,no_subtree_check,fsid=999 $ip:$export";
152                    
                 my $hostname = client::conf( $ip => 'hostname' ) || 'nfsroot';  
                 write_file "$export/etc/hostname", $hostname;  
                 file::append "$export/hosts", '127.0.0.1';  
153          }          }
154    
155            my $hostname = client::conf( $ip => 'hostname' ) || 'nfsroot';
156            file::replace "$export/etc/hostname", $hostname;
157            file::replace "$export/etc/hosts", "127.0.0.1\tlocalhost $hostname\n";
158            file::replace "$export/etc/resolv.conf", "domain $server::domain_name\nnameserver $server::ip\n";
159            file::replace "$export/etc/rsyslog.d/pxelator.conf", "*.*\t\@$server::ip\n";
160    
161            file::append "$debootstrap/etc/network/interfaces", qq{
162    
163    auto lo
164    iface lo inet loopback
165    
166    allow-hotplug eth0
167    iface eth0 inet dhcp
168    
169            };
170    
171    
172          pxelinux::config_for_ip( $ip, qq{          pxelinux::config_for_ip( $ip, qq{
173    

Legend:
Removed from v.276  
changed lines
  Added in v.277

  ViewVC Help
Powered by ViewVC 1.1.26