Logo: Relish

  1. Sign in

Project: Trema

basic usage

Background
Given
I set the environment variables to:
variable value
TREMA_LOG_DIR .
TREMA_PID_DIR .
TREMA_SOCKET_DIR .
And
a file named "switch_disconnected_controller.rb" with:
class SwitchDisconnectedController < Trema::Controller
  def switch_disconnected(dpid)
    logger.info "Switch #{dpid.to_hex} is disconnected."
  end
end
And
a file named "trema.conf" with:
vswitch { datapath_id 0xabc }

vhost('host1') { ip '192.168.0.1' }
vhost('host2') { ip '192.168.0.2' }

link '0xabc', 'host1'
link '0xabc', 'host2'
And
I trema run "switch_disconnected_controller.rb" with the configuration "trema.conf"
Scenarios
  • @sudo
stop a switch
When
I successfully run trema stop 0xabc
And
sleep 10
Then
the file "SwitchDisconnectedController.log" should contain:
Switch 0xabc is disconnected.
  • @sudo
stop a host
When
I successfully run trema stop host1
And
sleep 5
Then
the file "vhost.host1.pid" should not exist
  • @sudo
stop NO_SUCH_NAME
When
I run trema stop NO_SUCH_NAME
Then
the exit status should not be 0
And
the output should contain:
"NO_SUCH_NAME" does not exist.

Last published about 5 years ago by Yasuhito Takamiya.