use DEV as bridge for kvm if specified
authorDobrica Pavlinusic <dpavlin@rot13.org>
Wed, 21 Jul 2010 19:01:46 +0000 (19:01 +0000)
committerDobrica Pavlinusic <dpavlin@rot13.org>
Wed, 21 Jul 2010 19:01:46 +0000 (19:01 +0000)
lib/PXElator/kvm.pm

index 2582581..d3d933d 100644 (file)
@@ -50,10 +50,14 @@ sub start {
        my $mac = sprintf('AC:DE:48:00:00:%02x', $nr);
        my $mon = port(10000,':');
        my $ser = port(11000,':');
+       my $ip = client::ip_from_mac $mac;
+
+       my $bridge = client::conf( $ip, 'kvm.bridge', default => 'virtual' );
+       $bridge = $ENV{DEV} if $ENV{DEV};
 
        my $ifname = 'kvm' . $nr;
 
-       warn "# kvm start $nr $mac $mon $ser $ifname";
+       warn "# kvm $ip start $nr $mac $mon $ser $ifname $bridge";
 
 #      system "ifconfig $ifname down";
 #      system "brctl delif virtual $ifname";
@@ -66,11 +70,9 @@ sub start {
                unless $ifconfig =~ m{$ifname};
        system "ifconfig $ifname up"
                unless $ifconfig =~ m{UP};
-       system "brctl addif virtual $ifname"
+       system "brctl addif $bridge $ifname"
                unless `brctl show` =~ m{$ifname};
 
-       my $ip = client::ip_from_mac $mac;
-
        my $name = client::conf( $ip, 'hostname' );
        $name ||= $nr;