2015-07-15 13:15:18 +00:00
|
|
|
# copyright: 2015, Vulcano Security GmbH
|
2015-08-28 23:08:24 +00:00
|
|
|
# encoding: utf-8
|
2015-07-15 13:15:18 +00:00
|
|
|
# license: All rights reserved
|
|
|
|
|
2015-08-28 23:08:24 +00:00
|
|
|
class Command < Vulcano.resource(1)
|
|
|
|
name 'command'
|
|
|
|
def initialize(cmd)
|
|
|
|
@command = cmd
|
|
|
|
end
|
|
|
|
|
|
|
|
def result
|
2015-08-30 02:33:15 +00:00
|
|
|
@result ||= vulcano.run_command(@command)
|
2015-06-21 16:19:04 +00:00
|
|
|
end
|
2015-08-28 23:08:24 +00:00
|
|
|
|
|
|
|
def stdout
|
|
|
|
result.stdout
|
|
|
|
end
|
|
|
|
|
|
|
|
def stderr
|
|
|
|
result.stderr
|
|
|
|
end
|
|
|
|
|
|
|
|
def exit_status
|
|
|
|
result.exit_status.to_i
|
|
|
|
end
|
|
|
|
|
|
|
|
def exists?
|
2015-08-30 02:33:15 +00:00
|
|
|
res = vulcano.run_command("type \"#{@command}\" > /dev/null")
|
2015-08-28 23:08:24 +00:00
|
|
|
res.exit_status.to_i == 0
|
|
|
|
end
|
|
|
|
end
|