trusty (3) ct_slave.3erl.gz

Provided by: erlang-manpages_16.b.3-dfsg-1ubuntu2.2_all bug

NAME

       ct_slave - Common Test Framework functions for starting and stopping nodes for Large Scale Testing.

DESCRIPTION

       Common Test Framework functions for starting and stopping nodes for Large Scale Testing.

       This  module  exports functions which are used by the Common Test Master to start and stop "slave" nodes.
       It is the default callback module for the {init, node_start} term of the Test Specification.

EXPORTS

       start(Node) -> Result

              Types:

                 Node = atom()
                 Result = {ok, NodeName} | {error, Reason, NodeName}
                 Reason  =  already_started  |   started_not_connected   |   boot_timeout   |   init_timeout   |
                 startup_timeout | not_alive
                 NodeName = atom()

              Starts an Erlang node with name Node on the local host.

              See also: start/3.

       start(HostOrNode, NodeOrOpts) -> Result

              Types:

                 HostOrNode = atom()
                 NodeOrOpts = atom() | list()
                 Result = {ok, NodeName} | {error, Reason, NodeName}
                 Reason   =   already_started   |   started_not_connected   |   boot_timeout  |  init_timeout  |
                 startup_timeout | not_alive
                 NodeName = atom()

              Starts an Erlang node with default options on  a  specified  host,  or  on  the  local  host  with
              specified  options. That is, the call is interpreted as start(Host, Node) when the second argument
              is atom-valued and start(Node, Opts) when it's list-valued.

              See also: start/3.

       start(Host, Node, Opts) -> Result

              Types:

                 Node = atom()
                 Host = atom()
                 Opts = [OptTuples]
                 OptTuples = {username,  Username}  |  {password,  Password}  |  {boot_timeout,  BootTimeout}  |
                 {init_timeout,   InitTimeout}   |   {startup_timeout,   StartupTimeout}  |  {startup_functions,
                 StartupFunctions} |  {monitor_master,  Monitor}  |  {kill_if_fail,  KillIfFail}  |  {erl_flags,
                 ErlangFlags} | {env, [{EnvVar, Value}]}
                 Username = string()
                 Password = string()
                 BootTimeout = integer()
                 InitTimeout = integer()
                 StartupTimeout = integer()
                 StartupFunctions = [StartupFunctionSpec]
                 StartupFunctionSpec = {Module, Function, Arguments}
                 Module = atom()
                 Function = atom()
                 Arguments = [term]
                 Monitor = bool()
                 KillIfFail = bool()
                 ErlangFlags = string()
                 EnvVar = string()
                 Value = string()
                 Result = {ok, NodeName} | {error, Reason, NodeName}
                 Reason   =   already_started   |   started_not_connected   |   boot_timeout  |  init_timeout  |
                 startup_timeout | not_alive
                 NodeName = atom()

              Starts an Erlang node with name Node on host Host as specified by the combination  of  options  in
              Opts.

              Options  Username  and  Password  will  be  used to log in onto the remote host Host. Username, if
              omitted, defaults to the current user name, and password is empty by default.

              A list of functions specified in the Startup option will be executed after startup  of  the  node.
              Note that all used modules should be present in the code path on the Host.

              The timeouts are applied as follows:

                * BootTimeout  -  time to start the Erlang node, in seconds. Defaults to 3 seconds. If node does
                  not become pingable within this time, the result {error, boot_timeout, NodeName} is returned;

                * InitTimeout - time to wait for  the  node  until  it  calls  the  internal  callback  function
                  informing  master  about  successfull  startup.  Defaults  to one second. In case of timed out
                  message the result {error, init_timeout, NodeName} is returned;

                * StartupTimeout - time to wait intil the node finishes to run the StartupFunctions. Defaults to
                  one second. If this timeout occurs, the result {error, startup_timeout, NodeName} is returned.

              Option  monitor_master specifies, if the slave node should be stopped in case of master node stop.
              Defaults to false.

              Option kill_if_fail specifies, if the slave node should be killed in  case  of  a  timeout  during
              initialization  or  startup.  Defaults to true. Note that node also may be still alive it the boot
              timeout occurred, but it will not be killed in this case.

              Option erlang_flags specifies, which flags will be added to the parameters of the erl executable.

              Option env specifies a list of environment variables that will extended the environment.

              Special return values are:

                * {error, already_started, NodeName} - if the node with the given name is already started  on  a
                  given host;

                * {error, started_not_connected, NodeName} - if node is started, but not connected to the master
                  node.

                * {error, not_alive, NodeName} - if node on which the ct_slave:start/3 is called, is not  alive.
                  Note that NodeName is the name of current node in this case.

       stop(Node) -> Result

              Types:

                 Node = atom()
                 Result = {ok, NodeName} | {error, Reason, NodeName}
                 Reason = not_started | not_connected | stop_timeout

              Stops the running Erlang node with name Node on the localhost.

       stop(Host, Node) -> Result

              Types:

                 Host = atom()
                 Node = atom()
                 Result = {ok, NodeName} | {error, Reason, NodeName}
                 Reason = not_started | not_connected | stop_timeout
                 NodeName = atom()

              Stops the running Erlang node with name Node on host Host.

AUTHORS

       <>

                                                common_test 1.7.4                                 ct_slave(3erl)