Thibault Jouan
b67a32d27e
Change CLI#recipe as read-only attribute
2014-01-09 01:16:13 +00:00
Thibault Jouan
4c0a7f0fc7
Rename Interpreter class as Worker
2014-01-09 01:08:49 +00:00
Thibault Jouan
cdc3128727
Implement Action#remote (delegates to remote.fs)
2014-01-09 00:51:16 +00:00
Thibault Jouan
29c26ab961
Implement Action#remote (delegates to env.remote)
2014-01-09 00:45:26 +00:00
Thibault Jouan
e567c61e4e
Implement Action#output (delegates to env.output)
2014-01-09 00:43:01 +00:00
Thibault Jouan
103b9d1230
Rename Remote::FS#{has_,}file?
2014-01-08 22:30:52 +00:00
Thibault Jouan
19b091a15c
Rename Remote::Environment#{has_,}key?
2014-01-08 22:28:23 +00:00
Thibault Jouan
56ea377e31
Fix coding standards (empty blocks)
2014-01-08 22:16:51 +00:00
Thibault Jouan
9971283841
Improve Recipe::DSL#initialize spec
2014-01-08 22:14:16 +00:00
Thibault Jouan
352fcd37f8
Modify recipe DSL API to take env on initialization
2014-01-08 22:13:14 +00:00
Thibault Jouan
1d6ae126ed
Modify task DSL API to take env on initialization
2014-01-08 22:11:30 +00:00
Thibault Jouan
edca69ffad
Refactor Recipe specs:
...
* Use more classic specs for .evaluate_from_file;
* Fix coding standards.
2014-01-08 02:28:24 +00:00
Thibault Jouan
7dfbc3905b
Rewrite CLI#run:
...
* Rename #run! to #run;
* Add #load_recipe method;
* Remove most builder/accessor/memoizable methods.
2014-01-08 02:10:18 +00:00
Thibault Jouan
f7efd9c42f
Refactor CLI usage into CLI.run!:
...
* Add Producer::Core::CLI::ArgumentError class;
* Raise ArgumentError in CLI.new when recipe is missing;
* Remove #check_arguments! and #print_usage_and_exit, move code into
.run! method.
2014-01-07 21:06:14 +00:00
Thibault Jouan
dc9e7f1412
Improve CLI API related to standard output
2014-01-07 18:47:56 +00:00
Thibault Jouan
d670d5dbdd
Replace env.output interface with an IO like object
2013-12-23 23:31:15 +00:00
Thibault Jouan
012c776880
Simplify Remote::Environment with factory method:
...
* Implement .new_from_string factory class method;
* Rename private method #parse_from_string as class method
.string_to_hash;
* Remove argument kind detection logic in constructor.
2013-12-21 03:08:01 +00:00
Thibault Jouan
e8be44d1f0
Implement `macro' recipe keyword
2013-12-20 23:19:16 +00:00
Thibault Jouan
43a781dc78
Remove Task::DSL.evaluate method
2013-12-20 11:43:18 +00:00
Thibault Jouan
366c682152
Remove Recipe::DSL.evaluate method
2013-12-20 11:24:30 +00:00
Thibault Jouan
d83b11d07b
Remove Condition::DSL.evaluate method
2013-12-20 11:24:30 +00:00
Thibault Jouan
892a9862fc
Implement `file_write' action
2013-12-20 06:26:21 +00:00
Thibault Jouan
188ca2e08d
Fix coding standards in Remote::FS specs
2013-12-20 00:11:05 +00:00
Thibault Jouan
653a630645
Improve Env#target spec
2013-12-19 23:25:34 +00:00
Thibault Jouan
1ed17e6064
Fix Condition#! specs
2013-12-19 23:17:03 +00:00
Thibault Jouan
5fd4f3b371
Move Task::DSL#condition specs to better location
2013-12-19 22:49:20 +00:00
Thibault Jouan
921fc8d3f9
Refactor Remote::Environment spec
2013-12-19 22:49:20 +00:00
Thibault Jouan
ef0307fbb5
Improve small details in specs:
...
* Fix coding standards;
* Simplify some expectations (eq instead of be matcher);
* Expect identity on block instead of calling;
* Change some before call as oneliners;
* Avoid shadowing variable names;
* Improve wording where needed.
2013-12-19 22:46:56 +00:00
Thibault Jouan
f5224c7569
Improve wording in Env#initialize specs
2013-12-19 21:00:11 +00:00
Thibault Jouan
a80843699e
Improve Condition.evaluate specs
2013-12-19 20:57:05 +00:00
Thibault Jouan
fe1eb5bc1a
Simplify actions specs
2013-12-19 20:37:49 +00:00
Thibault Jouan
35621e1f5f
Implement condition DSL negated test prefix (no_*)
...
* Allow no_* to be used for every tests in condition DSL:
condition { no_has_env :shell, '/bin/sh' };
* Modify Test constructor to accept negated: named argument, implement
#negated? and #pass?;
* Rename #success? to #verify in all test classes.
2013-12-19 20:22:44 +00:00
Thibault Jouan
cfe9a009ae
Revert "Remove deprecated rspec option"
...
This reverts commit 5e6f5f4861c50c4450095f271943674885476d5f.
2013-12-19 20:21:24 +00:00
Thibault Jouan
b9e48a9cc4
Fix some wording issues in Test specs
2013-12-19 19:52:07 +00:00
Thibault Jouan
5e6f5f4861
Remove deprecated rspec option
2013-12-19 19:47:29 +00:00
Thibault Jouan
a692efe96d
Replace be_true' matchers with
be true' in specs
2013-12-19 19:46:32 +00:00
Thibault Jouan
3b3542fc66
Fix an example in Task::DSL.evaluate specs
2013-12-19 19:45:37 +00:00
Thibault Jouan
217b8a203a
Add missing empty line in test spec
2013-10-01 19:38:17 +00:00
Thibault Jouan
85a47df547
Use SSH user name configured for a given target:
...
When a user is configured for the targeted host name, use it for SSH
authentification instead of the name of current user logged in.
* Modify Remote#user_name to use configured user name.
2013-09-28 20:07:36 +00:00
Thibault Jouan
768a6755de
Implement Remote#config:
...
Load SSH configuration for targeted host name.
2013-09-26 19:22:07 +00:00
Thibault Jouan
9985fceb63
Extract logic for current target ssh user name:
...
Add Remote#user_name method, with code returning which user name
will be used for SSH authentication.
2013-09-26 18:34:19 +00:00
Thibault Jouan
868c502531
Remove multibyte char from Remote::FS spec
2013-09-26 01:00:06 +00:00
Thibault Jouan
2cbe1726f7
Implement `has_file' condition keyword
2013-09-26 00:28:40 +00:00
Thibault Jouan
3492382968
Implement Remote::FS#has_file?
2013-09-26 00:28:40 +00:00
Thibault Jouan
91f2bc3567
Implement Remote#fs
2013-09-26 00:28:40 +00:00
Thibault Jouan
99710b0df9
Implement Remote::FS#sftp
2013-09-26 00:28:40 +00:00
Thibault Jouan
d240df0281
Add Remote::FS class
2013-09-26 00:28:40 +00:00
Thibault Jouan
8531c49e6d
Implement NetSSHStoryHelpers#sftp_story
2013-09-26 00:28:39 +00:00
Thibault Jouan
0529fab3c2
Import Net::SSH::Test::Channel code from net-sftp:
...
This class is included in net-ssh, but net-sftp adds some new methods
that we need for our tests. This code resides in net-sftp test helper,
and can't be required dynamicaly, this change adds a copy of the code we
need, hardcoded in NetSSHStoryHelpers.
2013-09-26 00:28:39 +00:00
Thibault Jouan
9040420360
Improve net-ssh mock connection usage in specs
2013-09-24 21:08:01 +00:00