Class: Expectacle::ThrowerBase

Inherits:
Object
  • Object
show all
Defined in:
lib/expectacle/thrower_base.rb,
lib/expectacle/thrower_base_io.rb,
lib/expectacle/thrower_base_params.rb

Overview

Basic state setup/management

Direct Known Subclasses

Thrower

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(timeout: 60, verbose: true, base_dir: Dir.pwd, logger: $stdout) ⇒ Expectacle::ThrowerBase

Constructor

Parameters:

  • timeout (Integer) (defaults to: 60)

    Seconds to timeout. (default: 60sec)

  • verbose (Boolean) (defaults to: true)

    Flag to enable verbose output. (default: true)

  • base_dir (String) (defaults to: Dir.pwd)

    Base directory to find files. (default: Dir.pwd)

  • logger (IO, String, Symbol) (defaults to: $stdout)

    IO Object (default $stdout), File name, or :syslog to logging.



23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# File 'lib/expectacle/thrower_base.rb', line 23

def initialize(timeout: 60, verbose: true,
               base_dir: Dir.pwd, logger: $stdout)
  # default
  @host_param = {}
  # remote connection timeout (sec)
  @timeout = timeout
  # cli mode flag
  @enable_mode = false
  # debug (use debug print to stdout)
  $expect_verbose = verbose
  # base dir
  @base_dir = File.expand_path(base_dir)
  # logger
  setup_default_logger(logger)
end

Instance Attribute Details

#base_dirString (readonly)

Returns Base directory path to find params/hosts/commands file.

Returns:

  • (String)

    Base directory path to find params/hosts/commands file.



12
13
14
# File 'lib/expectacle/thrower_base.rb', line 12

def base_dir
  @base_dir
end

#loggerLogger

Returns Logger instance.

Returns:

  • (Logger)

    Logger instance.



11
12
13
# File 'lib/expectacle/thrower_base_io.rb', line 11

def logger
  @logger
end

Instance Method Details

#commands_dirString

Path to command list file directory.

Returns:

  • (String)


53
54
55
# File 'lib/expectacle/thrower_base.rb', line 53

def commands_dir
  File.join @base_dir, 'commands'
end

#hosts_dirString

Path to host list file directory.

Returns:

  • (String)


47
48
49
# File 'lib/expectacle/thrower_base.rb', line 47

def hosts_dir
  File.join @base_dir, 'hosts'
end

#opts_dirString

Path to span command options file directory.

Returns:

  • (String)


59
60
61
# File 'lib/expectacle/thrower_base.rb', line 59

def opts_dir
  File.join @base_dir, 'opts'
end

#prompts_dirString

Path to prompt file directory.

Returns:

  • (String)


41
42
43
# File 'lib/expectacle/thrower_base.rb', line 41

def prompts_dir
  File.join @base_dir, 'prompts'
end