--- lib/PXElator/config.pm 2009/08/27 17:43:05 310 +++ lib/PXElator/config.pm 2009/09/29 19:28:54 444 @@ -8,12 +8,13 @@ use pxelinux; use client; use file; +use ssh; use File::Slurp; our $mounted; -sub available { qw/debian_live webconverger debirf tinycore nfsroot openvz_host openvz_ve printer/ }; +sub available { qw/debian_live webconverger debirf tinycore nfsroot openvz printer wrt/ }; sub debian_live { my ($ip) = @_; @@ -50,17 +51,21 @@ sub webconverger { my ($ip) = @_; - $mounted->{"webconverger/$ip"} ||= upstream::iso( 'http://download.webconverger.com/webc-5.2.iso' ); + $mounted->{"webconverger/$ip"} ||= upstream::iso( 'http://download.webconverger.com/webc-5.5.iso' ); - my $homepage = client::conf( $ip => 'homepage', default => "http://${server::ip}:7777/client" ); my $hostname = client::conf( $ip => 'hostname' ) || 'webconverger'; + my $homepage = client::conf( $ip => 'webconverger/homepage' + , default => "http://${server::ip}:7777/client" ); + my $fetch = client::conf( $ip => 'webconverger/fetch' + , default => "http://${server::ip}:7777/webconverger/iso/live/filesystem.squashfs" ); + pxelinux::config_for_ip( $ip, qq{ default webconverger label webconverger kernel iso/live/vmlinuz-2.6.30-backports.1-486 - append initrd=iso/live/initrd.img-2.6.30-backports.1-486 fetch=http://${server::ip}:7777/webconverger/iso/live/filesystem.squashfs boot=live quiet nosudo splash video=vesa:ywrap,mtrr vga=788 nopersistent username=webc hostname=$hostname union=aufs homepage=$homepage locale=hr + append initrd=iso/live/initrd.img-2.6.30-backports.1-486 fetch=$fetch boot=live quiet nosudo splash video=vesa:ywrap,mtrr vga=788 nopersistent username=webc hostname=$hostname union=aufs homepage=$homepage locale=hr }); @@ -183,14 +188,17 @@ }); } -sub openvz_host {} -sub openvz_ve {} +sub openvz { + my $ip = shift; + ssh::shell( $ip, 'cat /proc/vz/veinfo', 'vzlist -a', 'uptime', 'free', 'df', 'zfs list' ); +} sub printer {} +sub wrt {} sub for_ip { my $ip = shift || return; - my $deploy = client::conf( $ip => 'deploy' ) || return; - eval $deploy . '($ip)'; + my $config = client::conf( $ip => 'config' ) || return; + eval $config . '($ip)'; # $tftp::dir = "$server::base_dir/tftp/$pxelinux::path_prefix"; }