--- lib/PXElator/server.pm 2009/07/31 13:22:45 75 +++ lib/PXElator/server.pm 2009/08/06 15:15:53 156 @@ -3,16 +3,40 @@ use warnings; use strict; + our $ip = '172.16.10.1'; our $netmask = '255.255.255.0'; our ( $ip_from, $ip_to ) = ( 10, 100 ); -our $base_dir = '/home/dpavlin/llin/pxelator'; +our $domain_name = 'pxelator.lan'; + +our $base_dir = '/srv/pxelator'; + +our $conf = "$base_dir/conf/$ip"; + +use Module::Refresh qw//; +sub refresh { Module::Refresh->refresh }; -use config; -our $debug; -sub debug { $debug = config::shared('debug', @_) || 0 } +mkdir $_ foreach grep { ! -d $_ } map { "$conf/$_" } ( 'ip', 'mac' ); + +use File::Slurp; +sub shared { + my ($name, $value) = @_; + + my $path ="$conf/$name"; + if ( defined $value ) { + write_file $path, $value; + warn "update $path = $value"; + } else { + $value = read_file $path if -e $path; + } + return $value; +} + +sub debug { shared('debug', @_) || 0 } warn "loaded"; + +1;