Implement `` condition keyword (shell cmd status)

This commit is contained in:
Thibault Jouan
2014-03-08 19:43:41 +00:00
parent a2ca62e7f8
commit 7c6ac4c9d8
6 changed files with 85 additions and 0 deletions

View File

@@ -21,6 +21,7 @@ require 'producer/core/tests/has_dir'
require 'producer/core/tests/has_env'
require 'producer/core/tests/has_executable'
require 'producer/core/tests/has_file'
require 'producer/core/tests/shell_command_status'
require 'producer/core/cli'
require 'producer/core/condition'

View File

@@ -13,6 +13,7 @@ module Producer
end
end
define_test :`, Tests::ShellCommandStatus
define_test :file_contains, Tests::FileContains
define_test :has_env, Tests::HasEnv
define_test :has_executable, Tests::HasExecutable

View File

@@ -0,0 +1,18 @@
module Producer
module Core
module Tests
class ShellCommandStatus < Test
def verify
remote.execute(command)
true
rescue RemoteCommandExecutionError
false
end
def command
arguments.first
end
end
end
end
end