Please review pull request #19: Add options to generate opened by (zenchild)
Description:
This is basically a feature request for the 'generate' method. I prefer to use the generator from rspec-puppet so I've added the following options:
Add option to generate RSpec via rspec-puppet (-R).
Add option to exclude RSpec tests (-X).
Let me know if this looks OK. If not, no big deal...
Cheers,
Dan Wanek
- Opened: Thu Apr 26 15:35:21 UTC 2012
- Based on: puppetlabs:master (f37170eff4cf2fea876c0c754cae71fddc0d6989)
- Requested merge: zenchild:master (db9d9f80aea99da47ad161fc9ac3784de74191c0)
Diff follows:
diff --git a/lib/puppet/module/tool/applications/generator.rb b/lib/puppet/module/tool/applications/generator.rb
index 1b3a5a1..ee0a449 100644
--- a/lib/puppet/module/tool/applications/generator.rb
+++ b/lib/puppet/module/tool/applications/generator.rb
@@ -33,6 +33,8 @@ def run
if path == skeleton
destination.mkpath
else
+ next if (path.fnmatch?('*/spec*') &&
+ (@options[:exclude_spec] || @options[:rspec_puppet_generator]))
node = Node.on(path, self)
if node
node.install!
@@ -42,6 +44,13 @@ def run
end
end
end
+ if(@options[:rspec_puppet_generator])
+ old_pwd = Dir.pwd
+ Dir.chdir destination
+ require 'rspec-puppet'
+ RSpec::Puppet::Setup.run
+ Dir.chdir old_pwd
+ end
end
def destination
diff --git a/lib/puppet/module/tool/cli.rb b/lib/puppet/module/tool/cli.rb
index 52fb306..d063417 100644
--- a/lib/puppet/module/tool/cli.rb
+++ b/lib/puppet/module/tool/cli.rb
@@ -19,7 +19,9 @@ def version
say Puppet::Module::Tool.version
end
- desc "generate USERNAME-MODNAME", "Generate boilerplate for a new module"
+ desc "generate USERNAME-MODNAME [OPTIONS]", "Generate boilerplate for a new module"
+ method_option :exclude_spec, :aliases => '-X', :type => :boolean, :desc => "Exclude RSpec tests."
+ method_option :rspec_puppet_generator, :aliases => '-R', :type => :boolean, :desc => "Use rspec-puppet generator."
method_option_repository
def generate(name)
Puppet::Module::Tool::Applications::Generator.run(name, options)
-- You received this message because you are subscribed to the Google Groups "Puppet Developers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to [email protected].
For more options, visit this group at http://groups.google.com/group/puppet-dev?hl=en.
