Module: TestLab::Network::Actions
- Included in:
- TestLab::Network
- Defined in:
- lib/testlab/network/actions.rb
Instance Method Summary collapse
-
#create ⇒ Object
Create the network.
-
#destroy ⇒ Object
Destroy the network.
-
#down ⇒ Object
Stop the network.
-
#up ⇒ Object
Start the network.
Instance Method Details
#create ⇒ Object
Create the network
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/testlab/network/actions.rb', line 7 def create @ui.logger.debug { "Network Create: #{self.id} " } self.node.alive? or return false please_wait(:ui => @ui, :message => format_object_action(self, 'Create', :green)) do self.node.bootstrap("set -x\ngrep '\#{def_tag}' /etc/network/interfaces && exit 0\ncat <<EOI | tee -a /etc/network/interfaces\n\#{def_tag}\nauto \#{self.bridge}\niface \#{self.bridge} inet static\nbridge_ports none\nbridge_stp off\nbridge_fd 0\naddress \#{self.ip}\nbroadcast \#{self.broadcast}\nnetmask \#{self.netmask}\n\#{end_tag}\nEOI\nbrctl addbr \#{self.bridge}\nbrctl stp \#{self.bridge} off\nbrctl setfd \#{self.bridge} 0\n EOF\n\n do_provisioner_callbacks(self, :create, @ui)\n end\n\n true\nend\n", :ignore_exit_status => true) |
#destroy ⇒ Object
Destroy the network
40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 |
# File 'lib/testlab/network/actions.rb', line 40 def destroy @ui.logger.debug { "Network Destroy: #{self.id} " } self.node.alive? or return false please_wait(:ui => @ui, :message => format_object_action(self, 'Destroy', :red)) do self.node.bootstrap("set -x\nsed -i '/\#{def_tag}/,/\#{end_tag}/d' /etc/network/interfaces\nbrctl delbr \#{self.bridge}\n EOF\n\n do_provisioner_callbacks(self, :destroy, @ui)\n end\n\n true\nend\n", :ignore_exit_status => true) |
#down ⇒ Object
Stop the network
77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 |
# File 'lib/testlab/network/actions.rb', line 77 def down @ui.logger.debug { "Network Down: #{self.id} " } self.node.alive? or return false please_wait(:ui => @ui, :message => format_object_action(self, 'Down', :red)) do self.node.bootstrap("set -x\nifconfig \#{self.bridge} down\n EOF\n\n do_provisioner_callbacks(self, :down, @ui)\n end\n\n true\nend\n", :ignore_exit_status => true) |
#up ⇒ Object
Start the network
59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 |
# File 'lib/testlab/network/actions.rb', line 59 def up @ui.logger.debug { "Network Up: #{self.id} " } self.node.alive? or return false please_wait(:ui => @ui, :message => format_object_action(self, 'Up', :green)) do self.node.bootstrap("set -x\nifconfig \#{self.bridge} \#{self.ip} netmask \#{self.netmask} broadcast \#{self.broadcast} up\n EOF\n\n do_provisioner_callbacks(self, :up, @ui)\n end\n\n true\nend\n", :ignore_exit_status => true) |