Class: ConvenientService::Examples::Standard::Gemfile::Services::RunShellCommand

Inherits:
Object
  • Object
show all
Includes:
Service::Configs::Standard
Defined in:
lib/convenient_service/examples/standard/gemfile/services/run_shell_command.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Service::Configs::Standard

service?, service_class?

Methods included from Config

included

Constructor Details

#initialize(command:, debug: false) ⇒ RunShellCommand

Returns a new instance of RunShellCommand.



28
29
30
31
# File 'lib/convenient_service/examples/standard/gemfile/services/run_shell_command.rb', line 28

def initialize(command:, debug: false)
  @command = command
  @debug = debug
end

Instance Attribute Details

#commandObject (readonly)

Returns the value of attribute command.



16
17
18
# File 'lib/convenient_service/examples/standard/gemfile/services/run_shell_command.rb', line 16

def command
  @command
end

#debugObject (readonly)

Returns the value of attribute debug.



16
17
18
# File 'lib/convenient_service/examples/standard/gemfile/services/run_shell_command.rb', line 16

def debug
  @debug
end

Instance Method Details

#resultObject



33
34
35
36
37
38
39
40
41
42
43
44
# File 'lib/convenient_service/examples/standard/gemfile/services/run_shell_command.rb', line 33

def result
  ##
  # NOTE: When the command exit code is 0, `system` return `true`, and `false` otherwise.
  # - https://ruby-doc.org/core-3.1.2/Kernel.html#method-i-system
  # - https://stackoverflow.com/a/37329716/12201472
  #
  if system(command)
    success
  else
    error("#{command} returned non-zero exit code")
  end
end