shadow_puppet 0.8.0 → 0.8.1.beta1
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 +5 -13
- data/.gitignore +7 -0
- data/.rubocop.yml +1 -0
- data/{README.rdoc → README.md} +9 -4
- data/Rakefile +6 -94
- data/bin/shadow_puppet +3 -0
- data/lib/shadow_puppet/manifest.rb +1 -1
- data/lib/shadow_puppet/version.rb +3 -0
- data/lib/shadow_puppet.rb +1 -0
- data/rubocop-todo.yml +275 -0
- data/shadow_puppet.gemspec +25 -110
- data/spec/fixtures/manifests.rb +18 -2
- data/spec/manifest_spec.rb +18 -2
- data/spec/test_spec.rb +7 -7
- data/spec/type_spec.rb +3 -3
- metadata +44 -117
checksums.yaml
CHANGED
@@ -1,15 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
|
5
|
-
data.tar.gz: !binary |-
|
6
|
-
OWI3OTE1ZTkzOGQ1MjY4ODRkOGZiYTFiOGRlOWQzNzNlYThiOGJiMg==
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 0a863e35bf8a6a7e04f70a41c7083c3afdc2b86b
|
4
|
+
data.tar.gz: 8a54957000fb239797e4425eb2391174661ea317
|
7
5
|
SHA512:
|
8
|
-
metadata.gz:
|
9
|
-
|
10
|
-
NjJlN2Y3ZGEyYTE3MjlhZDRiMzVkNTFjZDRmOGNhNGQzNzA4YTMzNGI1NDVk
|
11
|
-
NWJlY2U0ZTNhNmRhMmMyY2JlMjMxZWE5OWU1MGQ4NDQ4NDViOTE=
|
12
|
-
data.tar.gz: !binary |-
|
13
|
-
NmNhNzNjYWI4ZTdmNjhmYTU3YjcyOTY0MmY5YzJmNGFmODgxMjQ3MjMyZTQy
|
14
|
-
MzlmMzg4MzdlYmU1YzhmZDc3MmQ0NjFmNDI5YTFkMjU2OTA2NWVhMGY2YWE3
|
15
|
-
YmY0MzJlZjAxZThiMmI5Nzg3NzZmYzA0NjI3YjhiODE4MDI2MTA=
|
6
|
+
metadata.gz: 7cd48ab47ac2d5c2d9cffdcd99d0be9de6ab3859215f6ad639e50c5342a77dd312a47e7110072be9da4c745b75c017e987a6a815a92d3d18afc470c05d661cfc
|
7
|
+
data.tar.gz: 052647933bdfdab2f176165b6a822828e5f479dce260d5b8c94105b5904f4e3e868ef2ffa09cd947e3e9ebc80a987d7bdc6cb30f6bc7313adf4e17d657e2b09b
|
data/.gitignore
ADDED
data/.rubocop.yml
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
inherit_from: rubocop-todo.yml
|
data/{README.rdoc → README.md}
RENAMED
@@ -1,16 +1,16 @@
|
|
1
|
-
|
1
|
+
# ShadowPuppet
|
2
2
|
|
3
3
|
ShadowPuppet is a Ruby DSL for Puppet, extracted out of the work we at Rails
|
4
|
-
Machine are doing on Moonshine
|
4
|
+
Machine are doing on [Moonshine](http://blog.railsmachine.com/articles/2009/01/16/moonshine-configuration-management-and-deployment/).
|
5
5
|
|
6
6
|
ShadowPuppet provides a DSL for creating collections ("manifests") of Puppet
|
7
7
|
Resources in Ruby. For documentation on writing these manifests, please see
|
8
8
|
ShadowPuppet::Manifest.
|
9
9
|
|
10
|
-
A binary
|
10
|
+
A [binary](http://railsmachine.github.com/shadow_puppet/files/bin/shadow_puppet.html) is provided to parse and execute a
|
11
11
|
ShadowPuppet::Manifest.
|
12
12
|
|
13
|
-
|
13
|
+
## Running the Test Suite
|
14
14
|
|
15
15
|
First time:
|
16
16
|
|
@@ -26,3 +26,8 @@ Run against all versions of activesupport:
|
|
26
26
|
Run against a specific one, ie 3.2:
|
27
27
|
|
28
28
|
$ bundle exec rake appraisal:3.2 spec
|
29
|
+
|
30
|
+
|
31
|
+
***
|
32
|
+
|
33
|
+
All content copyright © 2014, [Rails Machine, LLC](http://railsmachine.com)
|
data/Rakefile
CHANGED
@@ -1,96 +1,8 @@
|
|
1
|
-
require
|
2
|
-
require
|
3
|
-
|
4
|
-
require 'appraisal'
|
1
|
+
require "bundler/gem_tasks"
|
2
|
+
require "rspec/core/rake_task"
|
3
|
+
require "rubocop/rake_task"
|
5
4
|
|
6
|
-
|
7
|
-
|
8
|
-
gem.name = "shadow_puppet"
|
9
|
-
gem.summary = %Q{A Ruby Puppet DSL}
|
10
|
-
gem.description = %Q{A Ruby Puppet DSL}
|
11
|
-
gem.email = "will@railsmachine.com"
|
12
|
-
gem.homepage = "http://railsmachine.github.com/shadow_puppet"
|
13
|
-
gem.rubyforge_project = "moonshine"
|
14
|
-
gem.authors = ["Jesse Newland", "Josh Nichols", "Eric Lindvall", "Lee Jones", "Will Farrington", "dreamcat4", "Patrick Schless", "Ches Martin", "Rob Lingle", "Scott Fleckenstein"]
|
5
|
+
RSpec::Core::RakeTask.new
|
6
|
+
Rubocop::RakeTask.new
|
15
7
|
|
16
|
-
|
17
|
-
|
18
|
-
gem.rdoc_options << '--inline-source' << '--webcvs=http://github.com/railsmachine/shadow_puppet/tree/master/'
|
19
|
-
|
20
|
-
# gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
|
21
|
-
end
|
22
|
-
Jeweler::GemcutterTasks.new
|
23
|
-
|
24
|
-
|
25
|
-
require 'rdoc/task'
|
26
|
-
Rake::RDocTask.new(:rdoc) do |rdoc|
|
27
|
-
rdoc.rdoc_files.include('lib/shadow_puppet/*.rb')
|
28
|
-
rdoc.rdoc_files.include('bin/shadow_puppet')
|
29
|
-
rdoc.rdoc_files.include('README.rdoc')
|
30
|
-
|
31
|
-
rdoc.main = "README.rdoc" # page to start on
|
32
|
-
rdoc.title = "ShadowPuppet documentation"
|
33
|
-
|
34
|
-
rdoc.rdoc_dir = 'doc' # rdoc output folder
|
35
|
-
rdoc.options << '--webcvs=http://github.com/railsmachine/shadow_puppet/tree/master/'
|
36
|
-
end
|
37
|
-
|
38
|
-
require 'rspec/core/rake_task'
|
39
|
-
|
40
|
-
desc 'Default: run specs.'
|
41
|
-
task :default => :spec
|
42
|
-
|
43
|
-
desc "Run specs"
|
44
|
-
RSpec::Core::RakeTask.new do |t|
|
45
|
-
t.pattern = "./spec/**/*_spec.rb" # don't need this, it's default.
|
46
|
-
# Put spec opts in a file named .rspec in root
|
47
|
-
end
|
48
|
-
|
49
|
-
task :build => :cleanup do
|
50
|
-
system "gem build *.gemspec"
|
51
|
-
end
|
52
|
-
|
53
|
-
task :install => :build do
|
54
|
-
system "sudo gem install *.gem"
|
55
|
-
end
|
56
|
-
|
57
|
-
task :uninstall do
|
58
|
-
system "sudo gem uninstall *.gem"
|
59
|
-
end
|
60
|
-
|
61
|
-
task :cleanup do
|
62
|
-
system "rm *.gem"
|
63
|
-
end
|
64
|
-
|
65
|
-
task :pull do
|
66
|
-
system "git pull origin master"
|
67
|
-
system "git pull github master"
|
68
|
-
end
|
69
|
-
|
70
|
-
task :_push do
|
71
|
-
system "git push origin master"
|
72
|
-
system "git push github master"
|
73
|
-
end
|
74
|
-
|
75
|
-
task :push => [:redoc, :pull, :spec, :_push]
|
76
|
-
|
77
|
-
task :redoc do
|
78
|
-
#clean
|
79
|
-
system "git checkout gh-pages && git pull origin gh-pages && git pull github gh-pages"
|
80
|
-
system "rm -rf doc"
|
81
|
-
system "git checkout master"
|
82
|
-
system "rm -rf doc"
|
83
|
-
|
84
|
-
#doc
|
85
|
-
Rake::Task['rdoc'].invoke
|
86
|
-
|
87
|
-
#switch branch
|
88
|
-
system "git checkout gh-pages"
|
89
|
-
|
90
|
-
#move it all to the root
|
91
|
-
system "cp -r doc/* . && rm -rf doc"
|
92
|
-
|
93
|
-
#commit and push
|
94
|
-
system "git commit -am 'regenerate rdocs' && git push origin gh-pages && git push github gh-pages"
|
95
|
-
system "git checkout master"
|
96
|
-
end
|
8
|
+
task :default => [:spec, :rubocop]
|
data/bin/shadow_puppet
CHANGED
@@ -28,6 +28,7 @@
|
|
28
28
|
#expected to contain a class named Foo that inherits from
|
29
29
|
#ShadowPuppet::Manifest. An instance of this class is created, and the
|
30
30
|
#<tt>execute</tt> method is called. All output is printed to the console.
|
31
|
+
require 'bundler'
|
31
32
|
|
32
33
|
def unindent(string)
|
33
34
|
indentation = string[/\A\s*/]
|
@@ -36,6 +37,7 @@ end
|
|
36
37
|
|
37
38
|
begin
|
38
39
|
require 'optparse'
|
40
|
+
require 'shadow_puppet/version'
|
39
41
|
|
40
42
|
ShadowPuppetOptions = Struct.new(:graph, :noop, :ignore)
|
41
43
|
options = ShadowPuppetOptions.new
|
@@ -45,6 +47,7 @@ begin
|
|
45
47
|
|
46
48
|
opts.separator ""
|
47
49
|
opts.separator "Specific options:"
|
50
|
+
opts.version = ShadowPuppet::VERSION
|
48
51
|
|
49
52
|
opts.on("--tutorial", "A simple tutorial for usage") do
|
50
53
|
puts unindent(<<-EOF)
|
@@ -112,8 +112,8 @@ module ShadowPuppet
|
|
112
112
|
# calls to recipe.
|
113
113
|
def self.recipe(*methods)
|
114
114
|
return nil if methods.nil? || methods == [] # TODO can probably replace with if methods.blank?
|
115
|
-
options = methods.extract_options!
|
116
115
|
methods.each do |meth|
|
116
|
+
options = methods.extract_options!
|
117
117
|
options = configuration[meth.to_sym] if options == {} # TODO can probably be replaced with options.blank?
|
118
118
|
options ||= {}
|
119
119
|
recipes << [meth.to_sym, options]
|
data/lib/shadow_puppet.rb
CHANGED
data/rubocop-todo.yml
ADDED
@@ -0,0 +1,275 @@
|
|
1
|
+
# This configuration was generated by `rubocop --auto-gen-config`
|
2
|
+
# on 2014-04-30 16:54:22 -0400 using RuboCop version 0.21.0.
|
3
|
+
# The point is for the user to remove these configuration records
|
4
|
+
# one by one as the offenses are removed from the code base.
|
5
|
+
# Note that changes in the inspected code, or installation of new
|
6
|
+
# versions of RuboCop, may require this file to be generated again.
|
7
|
+
|
8
|
+
# Offense count: 2
|
9
|
+
# Cop supports --auto-correct.
|
10
|
+
Alias:
|
11
|
+
Enabled: false
|
12
|
+
|
13
|
+
# Offense count: 12
|
14
|
+
# Cop supports --auto-correct.
|
15
|
+
# Configuration parameters: EnforcedStyle, SupportedStyles.
|
16
|
+
AlignParameters:
|
17
|
+
Enabled: false
|
18
|
+
|
19
|
+
# Offense count: 1
|
20
|
+
AmbiguousOperator:
|
21
|
+
Enabled: false
|
22
|
+
|
23
|
+
# Offense count: 3
|
24
|
+
# Cop supports --auto-correct.
|
25
|
+
AndOr:
|
26
|
+
Enabled: false
|
27
|
+
|
28
|
+
# Offense count: 2
|
29
|
+
# Configuration parameters: AllowSafeAssignment.
|
30
|
+
AssignmentInCondition:
|
31
|
+
Enabled: false
|
32
|
+
|
33
|
+
# Offense count: 1
|
34
|
+
BlockAlignment:
|
35
|
+
Enabled: false
|
36
|
+
|
37
|
+
# Offense count: 3
|
38
|
+
# Cop supports --auto-correct.
|
39
|
+
Blocks:
|
40
|
+
Enabled: false
|
41
|
+
|
42
|
+
# Offense count: 9
|
43
|
+
# Cop supports --auto-correct.
|
44
|
+
# Configuration parameters: EnforcedStyle, SupportedStyles.
|
45
|
+
BracesAroundHashParameters:
|
46
|
+
Enabled: false
|
47
|
+
|
48
|
+
# Offense count: 1
|
49
|
+
# Configuration parameters: EnforcedStyle, SupportedStyles.
|
50
|
+
ClassAndModuleChildren:
|
51
|
+
Enabled: false
|
52
|
+
|
53
|
+
# Offense count: 1
|
54
|
+
# Configuration parameters: CountComments.
|
55
|
+
ClassLength:
|
56
|
+
Max: 162
|
57
|
+
|
58
|
+
# Offense count: 4
|
59
|
+
# Cop supports --auto-correct.
|
60
|
+
# Configuration parameters: PreferredMethods.
|
61
|
+
CollectionMethods:
|
62
|
+
Enabled: false
|
63
|
+
|
64
|
+
# Offense count: 2
|
65
|
+
# Configuration parameters: Keywords.
|
66
|
+
CommentAnnotation:
|
67
|
+
Enabled: false
|
68
|
+
|
69
|
+
# Offense count: 1
|
70
|
+
# Cop supports --auto-correct.
|
71
|
+
DefWithParentheses:
|
72
|
+
Enabled: false
|
73
|
+
|
74
|
+
# Offense count: 18
|
75
|
+
Documentation:
|
76
|
+
Enabled: false
|
77
|
+
|
78
|
+
# Offense count: 1
|
79
|
+
# Cop supports --auto-correct.
|
80
|
+
EmptyLines:
|
81
|
+
Enabled: false
|
82
|
+
|
83
|
+
# Offense count: 1
|
84
|
+
EmptyLinesAroundAccessModifier:
|
85
|
+
Enabled: false
|
86
|
+
|
87
|
+
# Offense count: 7
|
88
|
+
# Cop supports --auto-correct.
|
89
|
+
EmptyLinesAroundBody:
|
90
|
+
Enabled: false
|
91
|
+
|
92
|
+
# Offense count: 1
|
93
|
+
# Cop supports --auto-correct.
|
94
|
+
EmptyLiteral:
|
95
|
+
Enabled: false
|
96
|
+
|
97
|
+
# Offense count: 88
|
98
|
+
# Cop supports --auto-correct.
|
99
|
+
# Configuration parameters: SupportedStyles.
|
100
|
+
HashSyntax:
|
101
|
+
EnforcedStyle: hash_rockets
|
102
|
+
|
103
|
+
# Offense count: 1
|
104
|
+
# Configuration parameters: MaxLineLength.
|
105
|
+
IfUnlessModifier:
|
106
|
+
Enabled: false
|
107
|
+
|
108
|
+
# Offense count: 1
|
109
|
+
# Cop supports --auto-correct.
|
110
|
+
# Configuration parameters: SupportedStyles.
|
111
|
+
IndentHash:
|
112
|
+
EnforcedStyle: consistent
|
113
|
+
|
114
|
+
# Offense count: 4
|
115
|
+
# Cop supports --auto-correct.
|
116
|
+
IndentationConsistency:
|
117
|
+
Enabled: false
|
118
|
+
|
119
|
+
# Offense count: 1
|
120
|
+
# Cop supports --auto-correct.
|
121
|
+
IndentationWidth:
|
122
|
+
Enabled: false
|
123
|
+
|
124
|
+
# Offense count: 17
|
125
|
+
# Cop supports --auto-correct.
|
126
|
+
LeadingCommentSpace:
|
127
|
+
Enabled: false
|
128
|
+
|
129
|
+
# Offense count: 73
|
130
|
+
LineLength:
|
131
|
+
Max: 134
|
132
|
+
|
133
|
+
# Offense count: 1
|
134
|
+
# Cop supports --auto-correct.
|
135
|
+
# Configuration parameters: EnforcedStyle, SupportedStyles.
|
136
|
+
MethodDefParentheses:
|
137
|
+
Enabled: false
|
138
|
+
|
139
|
+
# Offense count: 7
|
140
|
+
# Configuration parameters: CountComments.
|
141
|
+
MethodLength:
|
142
|
+
Max: 18
|
143
|
+
|
144
|
+
# Offense count: 2
|
145
|
+
# Cop supports --auto-correct.
|
146
|
+
Not:
|
147
|
+
Enabled: false
|
148
|
+
|
149
|
+
# Offense count: 2
|
150
|
+
# Cop supports --auto-correct.
|
151
|
+
# Configuration parameters: PreferredDelimiters.
|
152
|
+
PercentLiteralDelimiters:
|
153
|
+
Enabled: false
|
154
|
+
|
155
|
+
# Offense count: 2
|
156
|
+
# Cop supports --auto-correct.
|
157
|
+
PerlBackrefs:
|
158
|
+
Enabled: false
|
159
|
+
|
160
|
+
# Offense count: 3
|
161
|
+
# Cop supports --auto-correct.
|
162
|
+
RedundantSelf:
|
163
|
+
Enabled: false
|
164
|
+
|
165
|
+
# Offense count: 2
|
166
|
+
# Configuration parameters: MaxSlashes.
|
167
|
+
RegexpLiteral:
|
168
|
+
Enabled: false
|
169
|
+
|
170
|
+
# Offense count: 3
|
171
|
+
# Cop supports --auto-correct.
|
172
|
+
RescueException:
|
173
|
+
Enabled: false
|
174
|
+
|
175
|
+
# Offense count: 3
|
176
|
+
RescueModifier:
|
177
|
+
Enabled: false
|
178
|
+
|
179
|
+
# Offense count: 1
|
180
|
+
# Cop supports --auto-correct.
|
181
|
+
# Configuration parameters: AllowAsExpressionSeparator.
|
182
|
+
Semicolon:
|
183
|
+
Enabled: false
|
184
|
+
|
185
|
+
# Offense count: 1
|
186
|
+
ShadowingOuterLocalVariable:
|
187
|
+
Enabled: false
|
188
|
+
|
189
|
+
# Offense count: 6
|
190
|
+
# Cop supports --auto-correct.
|
191
|
+
SpaceAfterComma:
|
192
|
+
Enabled: false
|
193
|
+
|
194
|
+
# Offense count: 2
|
195
|
+
# Cop supports --auto-correct.
|
196
|
+
# Configuration parameters: EnforcedStyle, SupportedStyles.
|
197
|
+
SpaceAroundEqualsInParameterDefault:
|
198
|
+
Enabled: false
|
199
|
+
|
200
|
+
# Offense count: 2
|
201
|
+
# Cop supports --auto-correct.
|
202
|
+
SpaceAroundOperators:
|
203
|
+
Enabled: false
|
204
|
+
|
205
|
+
# Offense count: 4
|
206
|
+
# Cop supports --auto-correct.
|
207
|
+
# Configuration parameters: EnforcedStyle, SupportedStyles.
|
208
|
+
SpaceBeforeBlockBraces:
|
209
|
+
Enabled: false
|
210
|
+
|
211
|
+
# Offense count: 4
|
212
|
+
# Cop supports --auto-correct.
|
213
|
+
# Configuration parameters: EnforcedStyle, SupportedStyles, EnforcedStyleForEmptyBraces, SpaceBeforeBlockParameters.
|
214
|
+
SpaceInsideBlockBraces:
|
215
|
+
Enabled: true
|
216
|
+
|
217
|
+
# Offense count: 2
|
218
|
+
# Cop supports --auto-correct.
|
219
|
+
SpaceInsideBrackets:
|
220
|
+
Enabled: false
|
221
|
+
|
222
|
+
# Offense count: 18
|
223
|
+
# Cop supports --auto-correct.
|
224
|
+
# Configuration parameters: EnforcedStyle, EnforcedStyleForEmptyBraces, SupportedStyles.
|
225
|
+
SpaceInsideHashLiteralBraces:
|
226
|
+
Enabled: false
|
227
|
+
|
228
|
+
# Offense count: 1
|
229
|
+
# Cop supports --auto-correct.
|
230
|
+
SpecialGlobalVars:
|
231
|
+
Enabled: false
|
232
|
+
|
233
|
+
# Offense count: 138
|
234
|
+
# Cop supports --auto-correct.
|
235
|
+
# Configuration parameters: EnforcedStyle, SupportedStyles.
|
236
|
+
StringLiterals:
|
237
|
+
Enabled: false
|
238
|
+
|
239
|
+
# Offense count: 3
|
240
|
+
# Cop supports --auto-correct.
|
241
|
+
# Configuration parameters: EnforcedStyle, SupportedStyles.
|
242
|
+
TrailingBlankLines:
|
243
|
+
Enabled: false
|
244
|
+
|
245
|
+
# Offense count: 10
|
246
|
+
# Cop supports --auto-correct.
|
247
|
+
TrailingWhitespace:
|
248
|
+
Enabled: false
|
249
|
+
|
250
|
+
# Offense count: 1
|
251
|
+
# Cop supports --auto-correct.
|
252
|
+
# Configuration parameters: ExactNameMatch, AllowPredicates, AllowDSLWriters, Whitelist.
|
253
|
+
TrivialAccessors:
|
254
|
+
Enabled: false
|
255
|
+
|
256
|
+
# Offense count: 4
|
257
|
+
UnusedBlockArgument:
|
258
|
+
Enabled: false
|
259
|
+
|
260
|
+
# Offense count: 4
|
261
|
+
UnusedMethodArgument:
|
262
|
+
Enabled: false
|
263
|
+
|
264
|
+
# Offense count: 3
|
265
|
+
UselessAssignment:
|
266
|
+
Enabled: false
|
267
|
+
|
268
|
+
# Offense count: 13
|
269
|
+
Void:
|
270
|
+
Enabled: false
|
271
|
+
|
272
|
+
# Offense count: 1
|
273
|
+
# Cop supports --auto-correct.
|
274
|
+
WordArray:
|
275
|
+
MinSize: 2
|
data/shadow_puppet.gemspec
CHANGED
@@ -1,115 +1,30 @@
|
|
1
|
-
#
|
2
|
-
|
3
|
-
|
4
|
-
|
1
|
+
# coding: utf-8
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require 'shadow_puppet/version'
|
5
5
|
|
6
|
-
Gem::Specification.new do |
|
7
|
-
|
8
|
-
|
6
|
+
Gem::Specification.new do |spec|
|
7
|
+
spec.name = "shadow_puppet"
|
8
|
+
spec.version = ShadowPuppet::VERSION
|
9
|
+
spec.authors = ["Jesse Newland", "Josh Nichols", "Eric Lindvall", "Lee Jones", "Will Farrington", "dreamcat4", "Patrick Schless", "Ches Martin", "Rob Lingle", "Scott Fleckenstein", "Bryan Traywick"]
|
10
|
+
spec.email = ["bryan@railsmachine.com"]
|
11
|
+
spec.description = %q{A Ruby Puppet DSL}
|
12
|
+
spec.summary = %q{A Ruby Puppet DSL}
|
13
|
+
spec.homepage = "https://github.com/railsmachine/shadow_puppet/"
|
14
|
+
spec.license = "LGPL"
|
9
15
|
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
s.email = "will@railsmachine.com"
|
15
|
-
s.executables = ["shadow_puppet"]
|
16
|
-
s.extra_rdoc_files = [
|
17
|
-
"LICENSE",
|
18
|
-
"README.rdoc"
|
19
|
-
]
|
20
|
-
s.files = [
|
21
|
-
".gitmodules",
|
22
|
-
".rspec",
|
23
|
-
".travis.yml",
|
24
|
-
"Appraisals",
|
25
|
-
"Gemfile",
|
26
|
-
"LICENSE",
|
27
|
-
"README.rdoc",
|
28
|
-
"Rakefile",
|
29
|
-
"bin/shadow_puppet",
|
30
|
-
"examples/foo.rb",
|
31
|
-
"gemfiles/2.1.gemfile.lock",
|
32
|
-
"gemfiles/2.2.gemfile",
|
33
|
-
"gemfiles/2.2.gemfile.lock",
|
34
|
-
"gemfiles/2.3.11.gemfile.lock",
|
35
|
-
"gemfiles/2.3.gemfile",
|
36
|
-
"gemfiles/2.3.gemfile.lock",
|
37
|
-
"gemfiles/3.0.gemfile",
|
38
|
-
"gemfiles/3.0.gemfile.lock",
|
39
|
-
"gemfiles/3.1.gemfile",
|
40
|
-
"gemfiles/3.1.gemfile.lock",
|
41
|
-
"gemfiles/3.2.gemfile",
|
42
|
-
"gemfiles/3.2.gemfile.lock",
|
43
|
-
"lib/shadow_puppet.rb",
|
44
|
-
"lib/shadow_puppet/core_ext.rb",
|
45
|
-
"lib/shadow_puppet/manifest.rb",
|
46
|
-
"lib/shadow_puppet/test.rb",
|
47
|
-
"shadow_puppet.gemspec",
|
48
|
-
"spec/cli_spec.rb",
|
49
|
-
"spec/core_ext_spec.rb",
|
50
|
-
"spec/fixtures/cli_spec_manifest.rb",
|
51
|
-
"spec/fixtures/manifests.rb",
|
52
|
-
"spec/manifest_spec.rb",
|
53
|
-
"spec/spec_helper.rb",
|
54
|
-
"spec/test_spec.rb",
|
55
|
-
"spec/type_spec.rb"
|
56
|
-
]
|
57
|
-
s.homepage = "http://railsmachine.github.com/shadow_puppet"
|
58
|
-
s.rdoc_options = ["--inline-source", "--webcvs=http://github.com/railsmachine/shadow_puppet/tree/master/"]
|
59
|
-
s.require_paths = ["lib"]
|
60
|
-
s.rubyforge_project = "moonshine"
|
61
|
-
s.rubygems_version = "1.8.15"
|
62
|
-
s.summary = "A Ruby Puppet DSL"
|
16
|
+
spec.files = `git ls-files`.split($/)
|
17
|
+
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
18
|
+
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
19
|
+
spec.require_paths = ["lib"]
|
63
20
|
|
64
|
-
|
65
|
-
|
21
|
+
spec.add_runtime_dependency "puppet", "~> 3.5.1"
|
22
|
+
spec.add_runtime_dependency "facter", ["< 2", "> 1.6"]
|
23
|
+
spec.add_runtime_dependency "activesupport", ">= 2.2.0"
|
66
24
|
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
s.add_runtime_dependency(%q<activesupport>, [">= 2.2.0"])
|
73
|
-
s.add_runtime_dependency(%q<i18n>, [">= 0.5.0"])
|
74
|
-
s.add_development_dependency(%q<rake>, [">= 0"])
|
75
|
-
s.add_development_dependency(%q<appraisal>, [">= 0"])
|
76
|
-
s.add_development_dependency(%q<rspec>, ["~> 2.8.0"])
|
77
|
-
s.add_development_dependency(%q<rspec-core>, ["~> 2.8.0"])
|
78
|
-
s.add_development_dependency(%q<test-unit>, [">= 0"])
|
79
|
-
s.add_development_dependency(%q<jeweler>, ["~> 1.6.2"])
|
80
|
-
s.add_development_dependency(%q<rdoc>, [">= 0"])
|
81
|
-
s.add_development_dependency(%q<pry>, [">= 0"])
|
82
|
-
else
|
83
|
-
s.add_dependency(%q<puppet>, ["~> 3.5.1"])
|
84
|
-
s.add_dependency(%q<facter>, ["< 2", "> 1.6"])
|
85
|
-
s.add_dependency(%q<highline>, [">= 1.5.0"])
|
86
|
-
s.add_dependency(%q<builder>, [">= 2.1.2"])
|
87
|
-
s.add_dependency(%q<activesupport>, [">= 2.2.0"])
|
88
|
-
s.add_dependency(%q<i18n>, [">= 0.5.0"])
|
89
|
-
s.add_dependency(%q<rake>, [">= 0"])
|
90
|
-
s.add_dependency(%q<appraisal>, [">= 0"])
|
91
|
-
s.add_dependency(%q<rspec>, ["~> 2.8.0"])
|
92
|
-
s.add_dependency(%q<rspec-core>, ["~> 2.8.0"])
|
93
|
-
s.add_dependency(%q<test-unit>, [">= 0"])
|
94
|
-
s.add_dependency(%q<jeweler>, ["~> 1.6.2"])
|
95
|
-
s.add_dependency(%q<rdoc>, [">= 0"])
|
96
|
-
s.add_dependency(%q<pry>, [">= 0"])
|
97
|
-
end
|
98
|
-
else
|
99
|
-
s.add_dependency(%q<puppet>, ["~> 3.5.1"])
|
100
|
-
s.add_dependency(%q<facter>, ["< 2", "> 1.6"])
|
101
|
-
s.add_dependency(%q<highline>, [">= 1.5.0"])
|
102
|
-
s.add_dependency(%q<builder>, [">= 2.1.2"])
|
103
|
-
s.add_dependency(%q<activesupport>, [">= 2.2.0"])
|
104
|
-
s.add_dependency(%q<i18n>, [">= 0.5.0"])
|
105
|
-
s.add_dependency(%q<rake>, [">= 0"])
|
106
|
-
s.add_dependency(%q<appraisal>, [">= 0"])
|
107
|
-
s.add_dependency(%q<rspec>, ["~> 2.8.0"])
|
108
|
-
s.add_dependency(%q<rspec-core>, ["~> 2.8.0"])
|
109
|
-
s.add_dependency(%q<test-unit>, [">= 0"])
|
110
|
-
s.add_dependency(%q<jeweler>, ["~> 1.6.2"])
|
111
|
-
s.add_dependency(%q<rdoc>, [">= 0"])
|
112
|
-
s.add_dependency(%q<pry>, [">= 0"])
|
113
|
-
end
|
25
|
+
spec.add_development_dependency "bundler", "~> 1.3"
|
26
|
+
spec.add_development_dependency "rake"
|
27
|
+
spec.add_development_dependency "rspec", "~> 2.8.0"
|
28
|
+
spec.add_development_dependency "rspec-core", "~> 2.8.0"
|
29
|
+
spec.add_development_dependency "rubocop"
|
114
30
|
end
|
115
|
-
|
data/spec/fixtures/manifests.rb
CHANGED
@@ -58,7 +58,7 @@ class RequiresMetViaRecipeFromClassOfInstance < ShadowPuppet::Manifest
|
|
58
58
|
def bar
|
59
59
|
# other recipe stuff
|
60
60
|
end
|
61
|
-
|
61
|
+
|
62
62
|
def foo
|
63
63
|
recipe :bar
|
64
64
|
end
|
@@ -184,7 +184,7 @@ class CwdCoercionTest < ShadowPuppet::Manifest
|
|
184
184
|
tmp = Pathname.new('/tmp')
|
185
185
|
exec 'true',
|
186
186
|
:cwd => tmp
|
187
|
-
file tmp
|
187
|
+
file tmp.join('foo'),
|
188
188
|
:ensure => :present
|
189
189
|
end
|
190
190
|
recipe :test
|
@@ -202,3 +202,19 @@ class DuplicateResourceTest < ShadowPuppet::Manifest
|
|
202
202
|
:logoutput => true
|
203
203
|
end
|
204
204
|
end
|
205
|
+
|
206
|
+
class MultipleRecipeConfigurationTest < ShadowPuppet::Manifest
|
207
|
+
configure({
|
208
|
+
:foo => {:man => 'chu'},
|
209
|
+
:bar => {:food => 'yummy'}
|
210
|
+
})
|
211
|
+
recipe :foo, :bar
|
212
|
+
|
213
|
+
def foo(options = {})
|
214
|
+
exec 'foo', :command => 'true'
|
215
|
+
end
|
216
|
+
|
217
|
+
def bar(options = {})
|
218
|
+
exec 'bar', :command => 'true'
|
219
|
+
end
|
220
|
+
end
|
data/spec/manifest_spec.rb
CHANGED
@@ -161,8 +161,8 @@ describe "A manifest" do
|
|
161
161
|
describe "when executed" do
|
162
162
|
|
163
163
|
it "calls evaluate_recipes and apply" do
|
164
|
-
@manifest.should_receive(:evaluate_recipes)
|
165
|
-
@manifest.should_receive(:apply)
|
164
|
+
@manifest.should_receive(:evaluate_recipes, &@manifest.method(:evaluate_recipes))
|
165
|
+
@manifest.should_receive(:apply, &@manifest.method(:apply))
|
166
166
|
@manifest.execute
|
167
167
|
end
|
168
168
|
|
@@ -321,4 +321,20 @@ describe "A manifest" do
|
|
321
321
|
@manifest.execute!
|
322
322
|
end
|
323
323
|
end
|
324
|
+
|
325
|
+
describe "when configure is used to configure multiple recipes" do
|
326
|
+
before(:each) do
|
327
|
+
@manifest = MultipleRecipeConfigurationTest.new
|
328
|
+
end
|
329
|
+
|
330
|
+
it "passes the appropriate options to each recipe" do
|
331
|
+
@manifest.should_receive(:foo).with({'man' => 'chu'})
|
332
|
+
@manifest.should_receive(:bar).with({'food' => 'yummy'})
|
333
|
+
@manifest.send(:evaluate_recipes)
|
334
|
+
end
|
335
|
+
|
336
|
+
it "returns true when executed" do
|
337
|
+
@manifest.execute!.should be_true
|
338
|
+
end
|
339
|
+
end
|
324
340
|
end
|
data/spec/test_spec.rb
CHANGED
@@ -1,21 +1,21 @@
|
|
1
1
|
describe "ShadowPuppet's test helpers" do
|
2
2
|
|
3
3
|
it "should be created when register_puppet_types_for_testing is called" do
|
4
|
-
Puppet::Type.newtype(:dummy){
|
5
|
-
Puppet::Type.type(:dummy).provide(:generic){
|
6
|
-
|
4
|
+
Puppet::Type.newtype(:dummy) {}
|
5
|
+
Puppet::Type.type(:dummy).provide(:generic) {}
|
6
|
+
|
7
7
|
BlankManifest.new.respond_to?(:dummies).should == false
|
8
8
|
ShadowPuppet::Manifest.register_puppet_types_for_testing
|
9
9
|
BlankManifest.new.respond_to?(:dummies).should == true
|
10
10
|
end
|
11
|
-
|
11
|
+
|
12
12
|
describe "when used in tests" do
|
13
13
|
|
14
14
|
before do
|
15
15
|
@manifest = TestHelpers.new
|
16
16
|
@manifest.foo
|
17
17
|
end
|
18
|
-
|
18
|
+
|
19
19
|
it "should allow simple resource lookup" do
|
20
20
|
@manifest.execs.keys.should == ['foo']
|
21
21
|
@manifest.packages.keys.should == ['bar']
|
@@ -23,8 +23,8 @@ describe "ShadowPuppet's test helpers" do
|
|
23
23
|
@manifest.crons.keys.should == []
|
24
24
|
end
|
25
25
|
|
26
|
-
# making sure that properties such as, e.g the :onlyif condition of Exec[foo]
|
27
|
-
# can be accessed simply as manifest.execs['foo'].onlyif rather than via the
|
26
|
+
# making sure that properties such as, e.g the :onlyif condition of Exec[foo]
|
27
|
+
# can be accessed simply as manifest.execs['foo'].onlyif rather than via the
|
28
28
|
# param hash
|
29
29
|
it "should allow referencing params directly" do
|
30
30
|
@manifest.execs['foo'].command.should == 'true'
|
data/spec/type_spec.rb
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
describe "ShadowPuppet's type loading mechanism" do
|
2
2
|
it "should create a new type helper methods when register_puppet_types is called" do
|
3
|
-
Puppet::Type.newtype(:dummy_1){
|
4
|
-
Puppet::Type.type(:dummy_1).provide(:generic){
|
5
|
-
|
3
|
+
Puppet::Type.newtype(:dummy_1) {}
|
4
|
+
Puppet::Type.type(:dummy_1).provide(:generic) {}
|
5
|
+
|
6
6
|
BlankManifest.new.respond_to?(:dummy_1).should == false
|
7
7
|
ShadowPuppet::Manifest.register_puppet_types
|
8
8
|
BlankManifest.new.respond_to?(:dummy_1).should == true
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: shadow_puppet
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.8.
|
4
|
+
version: 0.8.1.beta1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jesse Newland
|
@@ -14,10 +14,11 @@ authors:
|
|
14
14
|
- Ches Martin
|
15
15
|
- Rob Lingle
|
16
16
|
- Scott Fleckenstein
|
17
|
+
- Bryan Traywick
|
17
18
|
autorequire:
|
18
19
|
bindir: bin
|
19
20
|
cert_chain: []
|
20
|
-
date: 2014-04-
|
21
|
+
date: 2014-04-30 00:00:00.000000000 Z
|
21
22
|
dependencies:
|
22
23
|
- !ruby/object:Gem::Dependency
|
23
24
|
name: puppet
|
@@ -40,7 +41,7 @@ dependencies:
|
|
40
41
|
- - <
|
41
42
|
- !ruby/object:Gem::Version
|
42
43
|
version: '2'
|
43
|
-
- -
|
44
|
+
- - '>'
|
44
45
|
- !ruby/object:Gem::Version
|
45
46
|
version: '1.6'
|
46
47
|
type: :runtime
|
@@ -50,91 +51,49 @@ dependencies:
|
|
50
51
|
- - <
|
51
52
|
- !ruby/object:Gem::Version
|
52
53
|
version: '2'
|
53
|
-
- -
|
54
|
+
- - '>'
|
54
55
|
- !ruby/object:Gem::Version
|
55
56
|
version: '1.6'
|
56
|
-
- !ruby/object:Gem::Dependency
|
57
|
-
name: highline
|
58
|
-
requirement: !ruby/object:Gem::Requirement
|
59
|
-
requirements:
|
60
|
-
- - ! '>='
|
61
|
-
- !ruby/object:Gem::Version
|
62
|
-
version: 1.5.0
|
63
|
-
type: :runtime
|
64
|
-
prerelease: false
|
65
|
-
version_requirements: !ruby/object:Gem::Requirement
|
66
|
-
requirements:
|
67
|
-
- - ! '>='
|
68
|
-
- !ruby/object:Gem::Version
|
69
|
-
version: 1.5.0
|
70
|
-
- !ruby/object:Gem::Dependency
|
71
|
-
name: builder
|
72
|
-
requirement: !ruby/object:Gem::Requirement
|
73
|
-
requirements:
|
74
|
-
- - ! '>='
|
75
|
-
- !ruby/object:Gem::Version
|
76
|
-
version: 2.1.2
|
77
|
-
type: :runtime
|
78
|
-
prerelease: false
|
79
|
-
version_requirements: !ruby/object:Gem::Requirement
|
80
|
-
requirements:
|
81
|
-
- - ! '>='
|
82
|
-
- !ruby/object:Gem::Version
|
83
|
-
version: 2.1.2
|
84
57
|
- !ruby/object:Gem::Dependency
|
85
58
|
name: activesupport
|
86
59
|
requirement: !ruby/object:Gem::Requirement
|
87
60
|
requirements:
|
88
|
-
- -
|
61
|
+
- - '>='
|
89
62
|
- !ruby/object:Gem::Version
|
90
63
|
version: 2.2.0
|
91
64
|
type: :runtime
|
92
65
|
prerelease: false
|
93
66
|
version_requirements: !ruby/object:Gem::Requirement
|
94
67
|
requirements:
|
95
|
-
- -
|
68
|
+
- - '>='
|
96
69
|
- !ruby/object:Gem::Version
|
97
70
|
version: 2.2.0
|
98
71
|
- !ruby/object:Gem::Dependency
|
99
|
-
name:
|
100
|
-
requirement: !ruby/object:Gem::Requirement
|
101
|
-
requirements:
|
102
|
-
- - ! '>='
|
103
|
-
- !ruby/object:Gem::Version
|
104
|
-
version: 0.5.0
|
105
|
-
type: :runtime
|
106
|
-
prerelease: false
|
107
|
-
version_requirements: !ruby/object:Gem::Requirement
|
108
|
-
requirements:
|
109
|
-
- - ! '>='
|
110
|
-
- !ruby/object:Gem::Version
|
111
|
-
version: 0.5.0
|
112
|
-
- !ruby/object:Gem::Dependency
|
113
|
-
name: rake
|
72
|
+
name: bundler
|
114
73
|
requirement: !ruby/object:Gem::Requirement
|
115
74
|
requirements:
|
116
|
-
- -
|
75
|
+
- - ~>
|
117
76
|
- !ruby/object:Gem::Version
|
118
|
-
version: '
|
77
|
+
version: '1.3'
|
119
78
|
type: :development
|
120
79
|
prerelease: false
|
121
80
|
version_requirements: !ruby/object:Gem::Requirement
|
122
81
|
requirements:
|
123
|
-
- -
|
82
|
+
- - ~>
|
124
83
|
- !ruby/object:Gem::Version
|
125
|
-
version: '
|
84
|
+
version: '1.3'
|
126
85
|
- !ruby/object:Gem::Dependency
|
127
|
-
name:
|
86
|
+
name: rake
|
128
87
|
requirement: !ruby/object:Gem::Requirement
|
129
88
|
requirements:
|
130
|
-
- -
|
89
|
+
- - '>='
|
131
90
|
- !ruby/object:Gem::Version
|
132
91
|
version: '0'
|
133
92
|
type: :development
|
134
93
|
prerelease: false
|
135
94
|
version_requirements: !ruby/object:Gem::Requirement
|
136
95
|
requirements:
|
137
|
-
- -
|
96
|
+
- - '>='
|
138
97
|
- !ruby/object:Gem::Version
|
139
98
|
version: '0'
|
140
99
|
- !ruby/object:Gem::Dependency
|
@@ -166,77 +125,36 @@ dependencies:
|
|
166
125
|
- !ruby/object:Gem::Version
|
167
126
|
version: 2.8.0
|
168
127
|
- !ruby/object:Gem::Dependency
|
169
|
-
name:
|
170
|
-
requirement: !ruby/object:Gem::Requirement
|
171
|
-
requirements:
|
172
|
-
- - ! '>='
|
173
|
-
- !ruby/object:Gem::Version
|
174
|
-
version: '0'
|
175
|
-
type: :development
|
176
|
-
prerelease: false
|
177
|
-
version_requirements: !ruby/object:Gem::Requirement
|
178
|
-
requirements:
|
179
|
-
- - ! '>='
|
180
|
-
- !ruby/object:Gem::Version
|
181
|
-
version: '0'
|
182
|
-
- !ruby/object:Gem::Dependency
|
183
|
-
name: jeweler
|
184
|
-
requirement: !ruby/object:Gem::Requirement
|
185
|
-
requirements:
|
186
|
-
- - ~>
|
187
|
-
- !ruby/object:Gem::Version
|
188
|
-
version: 1.6.2
|
189
|
-
type: :development
|
190
|
-
prerelease: false
|
191
|
-
version_requirements: !ruby/object:Gem::Requirement
|
192
|
-
requirements:
|
193
|
-
- - ~>
|
194
|
-
- !ruby/object:Gem::Version
|
195
|
-
version: 1.6.2
|
196
|
-
- !ruby/object:Gem::Dependency
|
197
|
-
name: rdoc
|
198
|
-
requirement: !ruby/object:Gem::Requirement
|
199
|
-
requirements:
|
200
|
-
- - ! '>='
|
201
|
-
- !ruby/object:Gem::Version
|
202
|
-
version: '0'
|
203
|
-
type: :development
|
204
|
-
prerelease: false
|
205
|
-
version_requirements: !ruby/object:Gem::Requirement
|
206
|
-
requirements:
|
207
|
-
- - ! '>='
|
208
|
-
- !ruby/object:Gem::Version
|
209
|
-
version: '0'
|
210
|
-
- !ruby/object:Gem::Dependency
|
211
|
-
name: pry
|
128
|
+
name: rubocop
|
212
129
|
requirement: !ruby/object:Gem::Requirement
|
213
130
|
requirements:
|
214
|
-
- -
|
131
|
+
- - '>='
|
215
132
|
- !ruby/object:Gem::Version
|
216
133
|
version: '0'
|
217
134
|
type: :development
|
218
135
|
prerelease: false
|
219
136
|
version_requirements: !ruby/object:Gem::Requirement
|
220
137
|
requirements:
|
221
|
-
- -
|
138
|
+
- - '>='
|
222
139
|
- !ruby/object:Gem::Version
|
223
140
|
version: '0'
|
224
141
|
description: A Ruby Puppet DSL
|
225
|
-
email:
|
142
|
+
email:
|
143
|
+
- bryan@railsmachine.com
|
226
144
|
executables:
|
227
145
|
- shadow_puppet
|
228
146
|
extensions: []
|
229
|
-
extra_rdoc_files:
|
230
|
-
- LICENSE
|
231
|
-
- README.rdoc
|
147
|
+
extra_rdoc_files: []
|
232
148
|
files:
|
149
|
+
- .gitignore
|
233
150
|
- .gitmodules
|
234
151
|
- .rspec
|
152
|
+
- .rubocop.yml
|
235
153
|
- .travis.yml
|
236
154
|
- Appraisals
|
237
155
|
- Gemfile
|
238
156
|
- LICENSE
|
239
|
-
- README.
|
157
|
+
- README.md
|
240
158
|
- Rakefile
|
241
159
|
- bin/shadow_puppet
|
242
160
|
- examples/foo.rb
|
@@ -256,6 +174,8 @@ files:
|
|
256
174
|
- lib/shadow_puppet/core_ext.rb
|
257
175
|
- lib/shadow_puppet/manifest.rb
|
258
176
|
- lib/shadow_puppet/test.rb
|
177
|
+
- lib/shadow_puppet/version.rb
|
178
|
+
- rubocop-todo.yml
|
259
179
|
- shadow_puppet.gemspec
|
260
180
|
- spec/cli_spec.rb
|
261
181
|
- spec/core_ext_spec.rb
|
@@ -265,29 +185,36 @@ files:
|
|
265
185
|
- spec/spec_helper.rb
|
266
186
|
- spec/test_spec.rb
|
267
187
|
- spec/type_spec.rb
|
268
|
-
homepage:
|
269
|
-
licenses:
|
188
|
+
homepage: https://github.com/railsmachine/shadow_puppet/
|
189
|
+
licenses:
|
190
|
+
- LGPL
|
270
191
|
metadata: {}
|
271
192
|
post_install_message:
|
272
|
-
rdoc_options:
|
273
|
-
- --inline-source
|
274
|
-
- --webcvs=http://github.com/railsmachine/shadow_puppet/tree/master/
|
193
|
+
rdoc_options: []
|
275
194
|
require_paths:
|
276
195
|
- lib
|
277
196
|
required_ruby_version: !ruby/object:Gem::Requirement
|
278
197
|
requirements:
|
279
|
-
- -
|
198
|
+
- - '>='
|
280
199
|
- !ruby/object:Gem::Version
|
281
200
|
version: '0'
|
282
201
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
283
202
|
requirements:
|
284
|
-
- -
|
203
|
+
- - '>'
|
285
204
|
- !ruby/object:Gem::Version
|
286
|
-
version:
|
205
|
+
version: 1.3.1
|
287
206
|
requirements: []
|
288
|
-
rubyforge_project:
|
207
|
+
rubyforge_project:
|
289
208
|
rubygems_version: 2.2.2
|
290
209
|
signing_key:
|
291
|
-
specification_version:
|
210
|
+
specification_version: 4
|
292
211
|
summary: A Ruby Puppet DSL
|
293
|
-
test_files:
|
212
|
+
test_files:
|
213
|
+
- spec/cli_spec.rb
|
214
|
+
- spec/core_ext_spec.rb
|
215
|
+
- spec/fixtures/cli_spec_manifest.rb
|
216
|
+
- spec/fixtures/manifests.rb
|
217
|
+
- spec/manifest_spec.rb
|
218
|
+
- spec/spec_helper.rb
|
219
|
+
- spec/test_spec.rb
|
220
|
+
- spec/type_spec.rb
|