producer-core 0.5.8 → 0.5.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/producer/core/version.rb +1 -1
- metadata +21 -202
- data/.gitignore +0 -3
- data/.travis.yml +0 -14
- data/Gemfile +0 -5
- data/Guardfile +0 -14
- data/LICENSE +0 -30
- data/Rakefile +0 -19
- data/config/cucumber.yaml +0 -2
- data/features/actions/echo.feature +0 -11
- data/features/actions/file_append.feature +0 -15
- data/features/actions/file_replace_content.feature +0 -24
- data/features/actions/file_write.feature +0 -21
- data/features/actions/mkdir.feature +0 -31
- data/features/actions/sh.feature +0 -43
- data/features/actions/yaml_write.feature +0 -14
- data/features/cli/debug.feature +0 -19
- data/features/cli/dry_run.feature +0 -22
- data/features/cli/error_reporting.feature +0 -32
- data/features/cli/target.feature +0 -15
- data/features/cli/usage.feature +0 -13
- data/features/cli/verbose.feature +0 -48
- data/features/condition/negated_test.feature +0 -47
- data/features/condition/target.feature +0 -15
- data/features/recipe/compose_macro.feature +0 -29
- data/features/recipe/errors.feature +0 -9
- data/features/recipe/macro.feature +0 -50
- data/features/recipe/registry.feature +0 -82
- data/features/recipe/source.feature +0 -17
- data/features/recipe/target.feature +0 -23
- data/features/recipe/test_macro.feature +0 -50
- data/features/ssh/config.feature +0 -25
- data/features/steps/environment_steps.rb +0 -3
- data/features/support/env.rb +0 -1
- data/features/task/ask.feature +0 -23
- data/features/task/condition.feature +0 -13
- data/features/task/nested_tasks.feature +0 -20
- data/features/task/recipe_argv.feature +0 -13
- data/features/task/target.feature +0 -11
- data/features/task/template.feature +0 -49
- data/features/tests/dir.feature +0 -21
- data/features/tests/env.feature +0 -47
- data/features/tests/executable.feature +0 -26
- data/features/tests/file.feature +0 -21
- data/features/tests/file_contains.feature +0 -26
- data/features/tests/file_eq.feature +0 -26
- data/features/tests/file_match.feature +0 -26
- data/features/tests/shell_command_status.feature +0 -46
- data/features/tests/yaml_eq.feature +0 -26
- data/producer-core.gemspec +0 -28
- data/spec/fixtures/recipes/empty.rb +0 -1
- data/spec/fixtures/recipes/raise.rb +0 -1
- data/spec/fixtures/recipes/some_recipe.rb +0 -5
- data/spec/fixtures/recipes/throw.rb +0 -1
- data/spec/fixtures/templates/basic.erb +0 -1
- data/spec/fixtures/templates/basic_yaml.yaml +0 -1
- data/spec/fixtures/templates/variables.erb +0 -1
- data/spec/producer/core/action_spec.rb +0 -46
- data/spec/producer/core/actions/echo_spec.rb +0 -20
- data/spec/producer/core/actions/file_append_spec.rb +0 -49
- data/spec/producer/core/actions/file_replace_content_spec.rb +0 -42
- data/spec/producer/core/actions/file_writer_spec.rb +0 -52
- data/spec/producer/core/actions/mkdir_spec.rb +0 -71
- data/spec/producer/core/actions/shell_command_spec.rb +0 -45
- data/spec/producer/core/actions/yaml_writer_spec.rb +0 -25
- data/spec/producer/core/cli_spec.rb +0 -211
- data/spec/producer/core/condition_spec.rb +0 -198
- data/spec/producer/core/env_spec.rb +0 -196
- data/spec/producer/core/error_formatter_spec.rb +0 -86
- data/spec/producer/core/logger_formatter_spec.rb +0 -26
- data/spec/producer/core/prompter_spec.rb +0 -40
- data/spec/producer/core/recipe/file_evaluator_spec.rb +0 -22
- data/spec/producer/core/recipe_spec.rb +0 -126
- data/spec/producer/core/remote/environment_spec.rb +0 -19
- data/spec/producer/core/remote/fs_spec.rb +0 -144
- data/spec/producer/core/remote_spec.rb +0 -168
- data/spec/producer/core/task_spec.rb +0 -198
- data/spec/producer/core/template_spec.rb +0 -41
- data/spec/producer/core/test_spec.rb +0 -7
- data/spec/producer/core/testing/mock_remote_spec.rb +0 -66
- data/spec/producer/core/tests/condition_test_spec.rb +0 -55
- data/spec/producer/core/tests/file_contains_spec.rb +0 -46
- data/spec/producer/core/tests/file_eq_spec.rb +0 -45
- data/spec/producer/core/tests/file_match_spec.rb +0 -46
- data/spec/producer/core/tests/has_dir_spec.rb +0 -25
- data/spec/producer/core/tests/has_env_spec.rb +0 -75
- data/spec/producer/core/tests/has_executable_spec.rb +0 -29
- data/spec/producer/core/tests/has_file_spec.rb +0 -25
- data/spec/producer/core/tests/shell_command_status_spec.rb +0 -34
- data/spec/producer/core/tests/yaml_eq_spec.rb +0 -47
- data/spec/producer/core/worker_spec.rb +0 -88
- data/spec/spec_helper.rb +0 -13
- data/spec/support/exit_helpers.rb +0 -6
- data/spec/support/fixtures_helpers.rb +0 -7
- data/spec/support/net_ssh_story_helpers.rb +0 -36
- data/spec/support/shared_action.rb +0 -44
- data/spec/support/shared_test.rb +0 -82
- data/spec/support/test_env_helpers.rb +0 -44
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6abf15a14a7656837e1432e02ce8aa7562c48b16
|
4
|
+
data.tar.gz: db753a5ed68fae34c359d81ada37194979a24d60
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f7f977ec6df499b54d5238abebb6e23677ce0ff01e8a33d35de096f5020341f3fef0465fbdd2e4166f3a494758a52b711d0fb2caabc066c96db2eb84e81e5157
|
7
|
+
data.tar.gz: a60cb9978b7b440c1aa6372c8ef41ce29a8cf6ab49b13fe3a9644ce2484778b2c00c8d46e70c4179972e435544f86cb20db468b06e5138195ec3197acd1b1d08
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: producer-core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Thibault Jouan
|
@@ -39,19 +39,19 @@ dependencies:
|
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '2.1'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
|
-
name:
|
42
|
+
name: aruba
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
|
-
version: '
|
47
|
+
version: '0.8'
|
48
48
|
type: :development
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
52
|
- - "~>"
|
53
53
|
- !ruby/object:Gem::Version
|
54
|
-
version: '
|
54
|
+
version: '0.8'
|
55
55
|
- !ruby/object:Gem::Dependency
|
56
56
|
name: cucumber
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
@@ -67,104 +67,59 @@ dependencies:
|
|
67
67
|
- !ruby/object:Gem::Version
|
68
68
|
version: '2.0'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
|
-
name:
|
70
|
+
name: cucumber-sshd
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
72
72
|
requirements:
|
73
73
|
- - "~>"
|
74
74
|
- !ruby/object:Gem::Version
|
75
|
-
version:
|
75
|
+
version: 1.1.1
|
76
76
|
type: :development
|
77
77
|
prerelease: false
|
78
78
|
version_requirements: !ruby/object:Gem::Requirement
|
79
79
|
requirements:
|
80
80
|
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
|
-
version:
|
82
|
+
version: 1.1.1
|
83
83
|
- !ruby/object:Gem::Dependency
|
84
|
-
name:
|
84
|
+
name: rake
|
85
85
|
requirement: !ruby/object:Gem::Requirement
|
86
86
|
requirements:
|
87
87
|
- - "~>"
|
88
88
|
- !ruby/object:Gem::Version
|
89
|
-
version:
|
89
|
+
version: '10.1'
|
90
90
|
type: :development
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
94
|
- - "~>"
|
95
95
|
- !ruby/object:Gem::Version
|
96
|
-
version:
|
96
|
+
version: '10.1'
|
97
97
|
- !ruby/object:Gem::Dependency
|
98
|
-
name:
|
98
|
+
name: rspec
|
99
99
|
requirement: !ruby/object:Gem::Requirement
|
100
100
|
requirements:
|
101
101
|
- - "~>"
|
102
102
|
- !ruby/object:Gem::Version
|
103
|
-
version: '
|
103
|
+
version: '3.1'
|
104
104
|
type: :development
|
105
105
|
prerelease: false
|
106
106
|
version_requirements: !ruby/object:Gem::Requirement
|
107
107
|
requirements:
|
108
108
|
- - "~>"
|
109
109
|
- !ruby/object:Gem::Version
|
110
|
-
version: '
|
111
|
-
description: |
|
112
|
-
|
110
|
+
version: '3.1'
|
111
|
+
description: |2
|
112
|
+
Software provisioning and configuration management tool, providing a
|
113
|
+
DSL to write "recipes".
|
113
114
|
email: tj@a13.fr
|
114
115
|
executables:
|
115
116
|
- producer
|
116
117
|
extensions: []
|
117
|
-
extra_rdoc_files:
|
118
|
+
extra_rdoc_files:
|
119
|
+
- README.md
|
118
120
|
files:
|
119
|
-
- ".gitignore"
|
120
|
-
- ".travis.yml"
|
121
|
-
- Gemfile
|
122
|
-
- Guardfile
|
123
|
-
- LICENSE
|
124
121
|
- README.md
|
125
|
-
- Rakefile
|
126
122
|
- bin/producer
|
127
|
-
- config/cucumber.yaml
|
128
|
-
- features/actions/echo.feature
|
129
|
-
- features/actions/file_append.feature
|
130
|
-
- features/actions/file_replace_content.feature
|
131
|
-
- features/actions/file_write.feature
|
132
|
-
- features/actions/mkdir.feature
|
133
|
-
- features/actions/sh.feature
|
134
|
-
- features/actions/yaml_write.feature
|
135
|
-
- features/cli/debug.feature
|
136
|
-
- features/cli/dry_run.feature
|
137
|
-
- features/cli/error_reporting.feature
|
138
|
-
- features/cli/target.feature
|
139
|
-
- features/cli/usage.feature
|
140
|
-
- features/cli/verbose.feature
|
141
|
-
- features/condition/negated_test.feature
|
142
|
-
- features/condition/target.feature
|
143
|
-
- features/recipe/compose_macro.feature
|
144
|
-
- features/recipe/errors.feature
|
145
|
-
- features/recipe/macro.feature
|
146
|
-
- features/recipe/registry.feature
|
147
|
-
- features/recipe/source.feature
|
148
|
-
- features/recipe/target.feature
|
149
|
-
- features/recipe/test_macro.feature
|
150
|
-
- features/ssh/config.feature
|
151
|
-
- features/steps/environment_steps.rb
|
152
|
-
- features/support/env.rb
|
153
|
-
- features/task/ask.feature
|
154
|
-
- features/task/condition.feature
|
155
|
-
- features/task/nested_tasks.feature
|
156
|
-
- features/task/recipe_argv.feature
|
157
|
-
- features/task/target.feature
|
158
|
-
- features/task/template.feature
|
159
|
-
- features/tests/dir.feature
|
160
|
-
- features/tests/env.feature
|
161
|
-
- features/tests/executable.feature
|
162
|
-
- features/tests/file.feature
|
163
|
-
- features/tests/file_contains.feature
|
164
|
-
- features/tests/file_eq.feature
|
165
|
-
- features/tests/file_match.feature
|
166
|
-
- features/tests/shell_command_status.feature
|
167
|
-
- features/tests/yaml_eq.feature
|
168
123
|
- lib/producer/core.rb
|
169
124
|
- lib/producer/core/action.rb
|
170
125
|
- lib/producer/core/actions/echo.rb
|
@@ -211,57 +166,9 @@ files:
|
|
211
166
|
- lib/producer/core/tests/yaml_eq.rb
|
212
167
|
- lib/producer/core/version.rb
|
213
168
|
- lib/producer/core/worker.rb
|
214
|
-
- producer-core.gemspec
|
215
|
-
- spec/fixtures/recipes/empty.rb
|
216
|
-
- spec/fixtures/recipes/raise.rb
|
217
|
-
- spec/fixtures/recipes/some_recipe.rb
|
218
|
-
- spec/fixtures/recipes/throw.rb
|
219
|
-
- spec/fixtures/templates/basic.erb
|
220
|
-
- spec/fixtures/templates/basic_yaml.yaml
|
221
|
-
- spec/fixtures/templates/variables.erb
|
222
|
-
- spec/producer/core/action_spec.rb
|
223
|
-
- spec/producer/core/actions/echo_spec.rb
|
224
|
-
- spec/producer/core/actions/file_append_spec.rb
|
225
|
-
- spec/producer/core/actions/file_replace_content_spec.rb
|
226
|
-
- spec/producer/core/actions/file_writer_spec.rb
|
227
|
-
- spec/producer/core/actions/mkdir_spec.rb
|
228
|
-
- spec/producer/core/actions/shell_command_spec.rb
|
229
|
-
- spec/producer/core/actions/yaml_writer_spec.rb
|
230
|
-
- spec/producer/core/cli_spec.rb
|
231
|
-
- spec/producer/core/condition_spec.rb
|
232
|
-
- spec/producer/core/env_spec.rb
|
233
|
-
- spec/producer/core/error_formatter_spec.rb
|
234
|
-
- spec/producer/core/logger_formatter_spec.rb
|
235
|
-
- spec/producer/core/prompter_spec.rb
|
236
|
-
- spec/producer/core/recipe/file_evaluator_spec.rb
|
237
|
-
- spec/producer/core/recipe_spec.rb
|
238
|
-
- spec/producer/core/remote/environment_spec.rb
|
239
|
-
- spec/producer/core/remote/fs_spec.rb
|
240
|
-
- spec/producer/core/remote_spec.rb
|
241
|
-
- spec/producer/core/task_spec.rb
|
242
|
-
- spec/producer/core/template_spec.rb
|
243
|
-
- spec/producer/core/test_spec.rb
|
244
|
-
- spec/producer/core/testing/mock_remote_spec.rb
|
245
|
-
- spec/producer/core/tests/condition_test_spec.rb
|
246
|
-
- spec/producer/core/tests/file_contains_spec.rb
|
247
|
-
- spec/producer/core/tests/file_eq_spec.rb
|
248
|
-
- spec/producer/core/tests/file_match_spec.rb
|
249
|
-
- spec/producer/core/tests/has_dir_spec.rb
|
250
|
-
- spec/producer/core/tests/has_env_spec.rb
|
251
|
-
- spec/producer/core/tests/has_executable_spec.rb
|
252
|
-
- spec/producer/core/tests/has_file_spec.rb
|
253
|
-
- spec/producer/core/tests/shell_command_status_spec.rb
|
254
|
-
- spec/producer/core/tests/yaml_eq_spec.rb
|
255
|
-
- spec/producer/core/worker_spec.rb
|
256
|
-
- spec/spec_helper.rb
|
257
|
-
- spec/support/exit_helpers.rb
|
258
|
-
- spec/support/fixtures_helpers.rb
|
259
|
-
- spec/support/net_ssh_story_helpers.rb
|
260
|
-
- spec/support/shared_action.rb
|
261
|
-
- spec/support/shared_test.rb
|
262
|
-
- spec/support/test_env_helpers.rb
|
263
169
|
homepage: https://rubygems.org/gems/producer-core
|
264
|
-
licenses:
|
170
|
+
licenses:
|
171
|
+
- BSD-3-Clause
|
265
172
|
metadata: {}
|
266
173
|
post_install_message:
|
267
174
|
rdoc_options: []
|
@@ -283,92 +190,4 @@ rubygems_version: 2.4.5
|
|
283
190
|
signing_key:
|
284
191
|
specification_version: 4
|
285
192
|
summary: Provisioning tool
|
286
|
-
test_files:
|
287
|
-
- features/actions/echo.feature
|
288
|
-
- features/actions/file_append.feature
|
289
|
-
- features/actions/file_replace_content.feature
|
290
|
-
- features/actions/file_write.feature
|
291
|
-
- features/actions/mkdir.feature
|
292
|
-
- features/actions/sh.feature
|
293
|
-
- features/actions/yaml_write.feature
|
294
|
-
- features/cli/debug.feature
|
295
|
-
- features/cli/dry_run.feature
|
296
|
-
- features/cli/error_reporting.feature
|
297
|
-
- features/cli/target.feature
|
298
|
-
- features/cli/usage.feature
|
299
|
-
- features/cli/verbose.feature
|
300
|
-
- features/condition/negated_test.feature
|
301
|
-
- features/condition/target.feature
|
302
|
-
- features/recipe/compose_macro.feature
|
303
|
-
- features/recipe/errors.feature
|
304
|
-
- features/recipe/macro.feature
|
305
|
-
- features/recipe/registry.feature
|
306
|
-
- features/recipe/source.feature
|
307
|
-
- features/recipe/target.feature
|
308
|
-
- features/recipe/test_macro.feature
|
309
|
-
- features/ssh/config.feature
|
310
|
-
- features/steps/environment_steps.rb
|
311
|
-
- features/support/env.rb
|
312
|
-
- features/task/ask.feature
|
313
|
-
- features/task/condition.feature
|
314
|
-
- features/task/nested_tasks.feature
|
315
|
-
- features/task/recipe_argv.feature
|
316
|
-
- features/task/target.feature
|
317
|
-
- features/task/template.feature
|
318
|
-
- features/tests/dir.feature
|
319
|
-
- features/tests/env.feature
|
320
|
-
- features/tests/executable.feature
|
321
|
-
- features/tests/file.feature
|
322
|
-
- features/tests/file_contains.feature
|
323
|
-
- features/tests/file_eq.feature
|
324
|
-
- features/tests/file_match.feature
|
325
|
-
- features/tests/shell_command_status.feature
|
326
|
-
- features/tests/yaml_eq.feature
|
327
|
-
- spec/fixtures/recipes/empty.rb
|
328
|
-
- spec/fixtures/recipes/raise.rb
|
329
|
-
- spec/fixtures/recipes/some_recipe.rb
|
330
|
-
- spec/fixtures/recipes/throw.rb
|
331
|
-
- spec/fixtures/templates/basic.erb
|
332
|
-
- spec/fixtures/templates/basic_yaml.yaml
|
333
|
-
- spec/fixtures/templates/variables.erb
|
334
|
-
- spec/producer/core/action_spec.rb
|
335
|
-
- spec/producer/core/actions/echo_spec.rb
|
336
|
-
- spec/producer/core/actions/file_append_spec.rb
|
337
|
-
- spec/producer/core/actions/file_replace_content_spec.rb
|
338
|
-
- spec/producer/core/actions/file_writer_spec.rb
|
339
|
-
- spec/producer/core/actions/mkdir_spec.rb
|
340
|
-
- spec/producer/core/actions/shell_command_spec.rb
|
341
|
-
- spec/producer/core/actions/yaml_writer_spec.rb
|
342
|
-
- spec/producer/core/cli_spec.rb
|
343
|
-
- spec/producer/core/condition_spec.rb
|
344
|
-
- spec/producer/core/env_spec.rb
|
345
|
-
- spec/producer/core/error_formatter_spec.rb
|
346
|
-
- spec/producer/core/logger_formatter_spec.rb
|
347
|
-
- spec/producer/core/prompter_spec.rb
|
348
|
-
- spec/producer/core/recipe/file_evaluator_spec.rb
|
349
|
-
- spec/producer/core/recipe_spec.rb
|
350
|
-
- spec/producer/core/remote/environment_spec.rb
|
351
|
-
- spec/producer/core/remote/fs_spec.rb
|
352
|
-
- spec/producer/core/remote_spec.rb
|
353
|
-
- spec/producer/core/task_spec.rb
|
354
|
-
- spec/producer/core/template_spec.rb
|
355
|
-
- spec/producer/core/test_spec.rb
|
356
|
-
- spec/producer/core/testing/mock_remote_spec.rb
|
357
|
-
- spec/producer/core/tests/condition_test_spec.rb
|
358
|
-
- spec/producer/core/tests/file_contains_spec.rb
|
359
|
-
- spec/producer/core/tests/file_eq_spec.rb
|
360
|
-
- spec/producer/core/tests/file_match_spec.rb
|
361
|
-
- spec/producer/core/tests/has_dir_spec.rb
|
362
|
-
- spec/producer/core/tests/has_env_spec.rb
|
363
|
-
- spec/producer/core/tests/has_executable_spec.rb
|
364
|
-
- spec/producer/core/tests/has_file_spec.rb
|
365
|
-
- spec/producer/core/tests/shell_command_status_spec.rb
|
366
|
-
- spec/producer/core/tests/yaml_eq_spec.rb
|
367
|
-
- spec/producer/core/worker_spec.rb
|
368
|
-
- spec/spec_helper.rb
|
369
|
-
- spec/support/exit_helpers.rb
|
370
|
-
- spec/support/fixtures_helpers.rb
|
371
|
-
- spec/support/net_ssh_story_helpers.rb
|
372
|
-
- spec/support/shared_action.rb
|
373
|
-
- spec/support/shared_test.rb
|
374
|
-
- spec/support/test_env_helpers.rb
|
193
|
+
test_files: []
|
data/.gitignore
DELETED
data/.travis.yml
DELETED
@@ -1,14 +0,0 @@
|
|
1
|
-
sudo: false
|
2
|
-
language: ruby
|
3
|
-
cache: bundler
|
4
|
-
rvm:
|
5
|
-
- 2.2
|
6
|
-
- ruby-head
|
7
|
-
- 2.1
|
8
|
-
script: bundle exec rake ci
|
9
|
-
before_script:
|
10
|
-
- ssh-keygen -f ~/.ssh/id_rsa -t rsa -N ''
|
11
|
-
- cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
|
12
|
-
- chmod 600 ~/.ssh/authorized_keys
|
13
|
-
- eval `ssh-agent -s`
|
14
|
-
- ssh-add ~/.ssh/id_rsa
|
data/Gemfile
DELETED
data/Guardfile
DELETED
@@ -1,14 +0,0 @@
|
|
1
|
-
directories %w[features lib spec]
|
2
|
-
|
3
|
-
guard :cucumber, cli: '--format pretty --quiet', all_on_start: false do
|
4
|
-
watch(%r{\Afeatures/.+\.feature\z})
|
5
|
-
watch(%r{\Afeatures/support/.+\.rb\z}) { 'features' }
|
6
|
-
watch(%r{\Afeatures/step_definitions/.+_steps\.rb\z}) { 'features' }
|
7
|
-
end
|
8
|
-
|
9
|
-
guard :rspec, cmd: 'bundle exec rspec -f doc' do
|
10
|
-
watch(%r{\Aspec/.+_spec\.rb\z})
|
11
|
-
watch(%r{\Alib/(.+)\.rb\z}) { |m| "spec/#{m[1]}_spec.rb" }
|
12
|
-
watch('spec/spec_helper.rb') { 'spec' }
|
13
|
-
watch(%r{\Aspec/support/.+\.rb\z}) { 'spec' }
|
14
|
-
end
|
data/LICENSE
DELETED
@@ -1,30 +0,0 @@
|
|
1
|
-
Copyright 2013 Thibault Jouan. All rights reserved.
|
2
|
-
|
3
|
-
Redistribution and use in source and binary forms, with or without
|
4
|
-
modification, are permitted provided that the following conditions are
|
5
|
-
met:
|
6
|
-
|
7
|
-
* Redistributions of source code must retain the above copyright
|
8
|
-
notice, this list of conditions and the following disclaimer.
|
9
|
-
|
10
|
-
* Redistributions in binary form must reproduce the above copyright
|
11
|
-
notice, this list of conditions and the following disclaimer in
|
12
|
-
the documentation and/or other materials provided with the
|
13
|
-
distribution.
|
14
|
-
|
15
|
-
* Neither the name of the software nor the names of its contributors
|
16
|
-
may be used to endorse or promote products derived from this
|
17
|
-
software without specific prior written permission.
|
18
|
-
|
19
|
-
|
20
|
-
THIS SOFTWARE IS PROVIDED BY THE AUTHORS AND CONTRIBUTORS "AS IS" AND
|
21
|
-
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
22
|
-
IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
23
|
-
PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS
|
24
|
-
BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
25
|
-
CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
26
|
-
SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
|
27
|
-
BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
28
|
-
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
|
29
|
-
OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
|
30
|
-
IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
data/Rakefile
DELETED
@@ -1,19 +0,0 @@
|
|
1
|
-
require 'cucumber/rake/task'
|
2
|
-
require 'rspec/core/rake_task'
|
3
|
-
|
4
|
-
task default: %i[features spec]
|
5
|
-
|
6
|
-
Cucumber::Rake::Task.new(:features)
|
7
|
-
|
8
|
-
Cucumber::Rake::Task.new(:features_ci) do |t|
|
9
|
-
t.instance_eval { @desc << ' excluding @ci_skip' }
|
10
|
-
t.cucumber_opts = '--tags ~@ci_skip'
|
11
|
-
t.profile = 'quiet' if ENV.key? 'TRAVIS'
|
12
|
-
end
|
13
|
-
|
14
|
-
RSpec::Core::RakeTask.new do |t|
|
15
|
-
t.rspec_opts = '--format progress' if ENV.key? 'TRAVIS'
|
16
|
-
end
|
17
|
-
|
18
|
-
desc 'Run CI test suite'
|
19
|
-
task ci: %i[features_ci spec]
|
data/config/cucumber.yaml
DELETED
@@ -1,15 +0,0 @@
|
|
1
|
-
@sshd
|
2
|
-
Feature: `file_append' task action
|
3
|
-
|
4
|
-
Background:
|
5
|
-
Given a remote file named "some_file" with "some content"
|
6
|
-
|
7
|
-
Scenario: appends given content to requested file
|
8
|
-
Given a recipe with:
|
9
|
-
"""
|
10
|
-
task :file_append_action do
|
11
|
-
file_append 'some_file', ' added'
|
12
|
-
end
|
13
|
-
"""
|
14
|
-
When I successfully execute the recipe on remote target
|
15
|
-
Then the remote file "some_file" must contain exactly "some content added"
|
@@ -1,24 +0,0 @@
|
|
1
|
-
@sshd
|
2
|
-
Feature: `file_replace_content' task action
|
3
|
-
|
4
|
-
Background:
|
5
|
-
Given a remote file named "some_file" with "some content"
|
6
|
-
And a remote file named "other_file" with "some content"
|
7
|
-
And a recipe with:
|
8
|
-
"""
|
9
|
-
task :file_replace_content_action_string do
|
10
|
-
file_replace_content 'some_file', 'content', 'other content'
|
11
|
-
end
|
12
|
-
|
13
|
-
task :file_replace_content_action_regexp do
|
14
|
-
file_replace_content 'other_file', /\w+\z/, 'other content'
|
15
|
-
end
|
16
|
-
"""
|
17
|
-
|
18
|
-
Scenario: replaces a string by another in the requested file
|
19
|
-
When I successfully execute the recipe on remote target
|
20
|
-
Then the remote file "some_file" must contain exactly "some other content"
|
21
|
-
|
22
|
-
Scenario: replaces a regular expression by a string in the requested file
|
23
|
-
When I successfully execute the recipe on remote target
|
24
|
-
Then the remote file "other_file" must contain exactly "some other content"
|
@@ -1,21 +0,0 @@
|
|
1
|
-
@sshd
|
2
|
-
Feature: `file_write' task action
|
3
|
-
|
4
|
-
Background:
|
5
|
-
Given a recipe with:
|
6
|
-
"""
|
7
|
-
task :file_write_action do
|
8
|
-
file_write 'some_file', 'some_content'
|
9
|
-
file_write 'some_file_0600', 'some_content', mode: 0600
|
10
|
-
file_write 'some_file_0700', 'some_content', mode: 0700
|
11
|
-
end
|
12
|
-
"""
|
13
|
-
|
14
|
-
Scenario: writes given data to given file path
|
15
|
-
When I successfully execute the recipe on remote target
|
16
|
-
Then the remote file "some_file" must contain "some_content"
|
17
|
-
|
18
|
-
Scenario: creates file with given permissions
|
19
|
-
When I successfully execute the recipe on remote target
|
20
|
-
Then the remote file "some_file_0600" must have 0600 mode
|
21
|
-
And the remote file "some_file_0700" must have 0700 mode
|
@@ -1,31 +0,0 @@
|
|
1
|
-
@sshd
|
2
|
-
Feature: `mkdir' task action
|
3
|
-
|
4
|
-
Background:
|
5
|
-
Given a recipe with:
|
6
|
-
"""
|
7
|
-
task :mkdir_action do
|
8
|
-
mkdir 'some_directory'
|
9
|
-
mkdir 'some_directory_0700', mode: 0700
|
10
|
-
mkdir 'some_directory_0711', mode: 0711
|
11
|
-
end
|
12
|
-
"""
|
13
|
-
|
14
|
-
Scenario: creates directory given as argument
|
15
|
-
When I successfully execute the recipe on remote target
|
16
|
-
Then the remote directory "some_directory" must exist
|
17
|
-
|
18
|
-
Scenario: creates directory with given attributes
|
19
|
-
When I successfully execute the recipe on remote target
|
20
|
-
Then the remote directory "some_directory_0700" must have 0700 mode
|
21
|
-
And the remote directory "some_directory_0711" must have 0711 mode
|
22
|
-
|
23
|
-
Scenario: creates directories recursively
|
24
|
-
Given a recipe with:
|
25
|
-
"""
|
26
|
-
task :mkdir_action do
|
27
|
-
mkdir 'some/directory'
|
28
|
-
end
|
29
|
-
"""
|
30
|
-
When I successfully execute the recipe on remote target
|
31
|
-
Then the remote directory "some/directory" must exist
|
data/features/actions/sh.feature
DELETED
@@ -1,43 +0,0 @@
|
|
1
|
-
@sshd
|
2
|
-
Feature: `sh' task action
|
3
|
-
|
4
|
-
Scenario: forwards standard ouput
|
5
|
-
Given a recipe with:
|
6
|
-
"""
|
7
|
-
task :sh_action do
|
8
|
-
sh '\echo hello from remote'
|
9
|
-
end
|
10
|
-
"""
|
11
|
-
When I successfully execute the recipe on remote target
|
12
|
-
Then the output must contain exactly "hello from remote\n"
|
13
|
-
|
14
|
-
Scenario: forwards error ouput
|
15
|
-
Given a recipe with:
|
16
|
-
"""
|
17
|
-
task :sh_action do
|
18
|
-
sh '\echo error from remote >&2'
|
19
|
-
end
|
20
|
-
"""
|
21
|
-
When I successfully execute the recipe on remote target
|
22
|
-
Then the error output must contain exactly "error from remote\n"
|
23
|
-
|
24
|
-
Scenario: aborts on failed command execution
|
25
|
-
Given a recipe with:
|
26
|
-
"""
|
27
|
-
task :sh_action_aborting do
|
28
|
-
sh '\false'
|
29
|
-
sh '\echo after_fail'
|
30
|
-
end
|
31
|
-
"""
|
32
|
-
When I execute the recipe on remote target
|
33
|
-
Then the output must not contain "after_fail"
|
34
|
-
|
35
|
-
Scenario: prints command when execution fail
|
36
|
-
Given a recipe with:
|
37
|
-
"""
|
38
|
-
task :sh_action_command_error do
|
39
|
-
sh '\false'
|
40
|
-
end
|
41
|
-
"""
|
42
|
-
When I execute the recipe on remote target
|
43
|
-
Then the output must match /\A\w+Error:\s+\\false/
|
@@ -1,14 +0,0 @@
|
|
1
|
-
@sshd
|
2
|
-
Feature: `yaml_write' task action
|
3
|
-
|
4
|
-
Background:
|
5
|
-
Given a recipe with:
|
6
|
-
"""
|
7
|
-
task :yaml_write_action do
|
8
|
-
yaml_write 'some_file', data: { foo: 'bar' }
|
9
|
-
end
|
10
|
-
"""
|
11
|
-
|
12
|
-
Scenario: writes given data as YAML
|
13
|
-
When I successfully execute the recipe on remote target
|
14
|
-
Then the remote file "some_file" must match /^:foo: bar$/
|
data/features/cli/debug.feature
DELETED
@@ -1,19 +0,0 @@
|
|
1
|
-
Feature: CLI debug option
|
2
|
-
|
3
|
-
Scenario: reports recipe errors with their cause
|
4
|
-
Given a recipe with an error
|
5
|
-
When I execute the recipe with option -d
|
6
|
-
Then the output must match /\ARecipeEvaluationError:.*\n\ncause:\nRuntimeError:/
|
7
|
-
|
8
|
-
Scenario: does not exclude anything from backtrace
|
9
|
-
Given a recipe using a remote
|
10
|
-
When I execute the recipe on unknown remote target with option -d
|
11
|
-
Then the output must contain "producer"
|
12
|
-
And the output must contain "net-ssh"
|
13
|
-
And the output must contain ruby lib directory
|
14
|
-
|
15
|
-
Scenario: enables debug mode from the environment
|
16
|
-
Given a recipe with an error
|
17
|
-
And I set the environment variable "PRODUCER_DEBUG"
|
18
|
-
When I execute the recipe
|
19
|
-
Then the output must contain "producer"
|
@@ -1,22 +0,0 @@
|
|
1
|
-
Feature: CLI dry run option
|
2
|
-
|
3
|
-
Background:
|
4
|
-
Given a recipe with:
|
5
|
-
"""
|
6
|
-
task :say_hello do
|
7
|
-
echo 'hello'
|
8
|
-
end
|
9
|
-
"""
|
10
|
-
|
11
|
-
Scenario: perfoms a trial run without applying actions
|
12
|
-
When I successfully execute the recipe with option -n
|
13
|
-
Then the output must not contain "hello"
|
14
|
-
|
15
|
-
Scenario: prints a warning before any output
|
16
|
-
When I successfully execute the recipe with option -n
|
17
|
-
Then the output must match /\AWarning: running in dry run mode, actions will NOT be applied/
|
18
|
-
|
19
|
-
Scenario: enables dry run mode from the environment
|
20
|
-
Given I set the environment variable "PRODUCER_DRYRUN"
|
21
|
-
When I successfully execute the recipe
|
22
|
-
Then the output must contain "running in dry run"
|
@@ -1,32 +0,0 @@
|
|
1
|
-
Feature: CLI error reporting
|
2
|
-
|
3
|
-
Scenario: reports recipe errors
|
4
|
-
Given a recipe with an error
|
5
|
-
When I execute the recipe
|
6
|
-
Then the exit status must be 70
|
7
|
-
And the output must match /\ARecipeEvaluationError: some error\n/
|
8
|
-
|
9
|
-
Scenario: reports errors with a backtrace
|
10
|
-
Given a recipe with an error
|
11
|
-
When I execute the recipe
|
12
|
-
Then the output must match /^\s+recipe\.rb:\d+:in /
|
13
|
-
|
14
|
-
Scenario: prepends recipe file path in the backtrace
|
15
|
-
Given a recipe with an error
|
16
|
-
When I execute the recipe
|
17
|
-
Then the output must match /^\s+recipe\.rb \(recipe\)\n\s+recipe\.rb:/
|
18
|
-
|
19
|
-
Scenario: excludes producer from backtrace
|
20
|
-
Given a recipe using a remote
|
21
|
-
When I execute the recipe on unknown remote target
|
22
|
-
Then the output must not contain "producer-core"
|
23
|
-
|
24
|
-
Scenario: excludes net-ssh from backtrace
|
25
|
-
Given a recipe using a remote
|
26
|
-
When I execute the recipe on unknown remote target
|
27
|
-
Then the output must not contain "net-ssh"
|
28
|
-
|
29
|
-
Scenario: excludes ruby standard library from backtrace
|
30
|
-
Given a recipe using a remote
|
31
|
-
When I execute the recipe on unknown remote target
|
32
|
-
Then the output must not contain ruby lib directory
|