2014-05-07 11:49:25 +02:00
|
|
|
#! /usr/bin/env ruby -S rspec
|
2014-03-05 21:43:58 +01:00
|
|
|
module PuppetSpec::Modules
|
|
|
|
class << self
|
|
|
|
def create(name, dir, options = {})
|
|
|
|
module_dir = File.join(dir, name)
|
|
|
|
FileUtils.mkdir_p(module_dir)
|
|
|
|
|
|
|
|
environment = options[:environment]
|
|
|
|
|
|
|
|
if metadata = options[:metadata]
|
|
|
|
metadata[:source] ||= 'github'
|
|
|
|
metadata[:author] ||= 'puppetlabs'
|
|
|
|
metadata[:version] ||= '9.9.9'
|
|
|
|
metadata[:license] ||= 'to kill'
|
|
|
|
metadata[:dependencies] ||= []
|
|
|
|
|
|
|
|
metadata[:name] = "#{metadata[:author]}/#{name}"
|
|
|
|
|
|
|
|
File.open(File.join(module_dir, 'metadata.json'), 'w') do |f|
|
|
|
|
f.write(metadata.to_pson)
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
Puppet::Module.new(name, module_dir, environment)
|
|
|
|
end
|
|
|
|
end
|
|
|
|
end
|