--- lib/PXElator/server.pm 2009/07/31 13:22:45 75 +++ lib/PXElator/server.pm 2009/08/05 23:22:17 153 @@ -3,16 +3,37 @@ 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'; + +use Module::Refresh qw//; +sub refresh { Module::Refresh->refresh }; -use config; +mkdir $_ foreach grep { ! -e $_ } map { "$base_dir/conf/$server::ip/$_" } ( 'ip', 'mac', 'hostname', 'deploy' ); -our $debug; -sub debug { $debug = config::shared('debug', @_) || 0 } +use File::Slurp; +sub shared { + my ($name, $value) = @_; + + my $path ="$base_dir/conf/$server::ip/$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;