Class: Expectacle::ThrowerBase

Inherits:
Object
  • Object
show all
Defined in:
lib/expectacle/thrower_base.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.



27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'lib/expectacle/thrower_base.rb', line 27

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.



16
17
18
# File 'lib/expectacle/thrower_base.rb', line 16

def base_dir
  @base_dir
end

#loggerLogger

Returns Logger instance.

Returns:

  • (Logger)

    Logger instance.



14
15
16
# File 'lib/expectacle/thrower_base.rb', line 14

def logger
  @logger
end

Instance Method Details

#commands_dirString

Path to command list file directory.

Returns:

  • (String)


57
58
59
# File 'lib/expectacle/thrower_base.rb', line 57

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

#hosts_dirString

Path to host list file directory.

Returns:

  • (String)


51
52
53
# File 'lib/expectacle/thrower_base.rb', line 51

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

#prompts_dirString

Path to prompt file directory.

Returns:

  • (String)


45
46
47
# File 'lib/expectacle/thrower_base.rb', line 45

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