class PuppetGenerator::Middleware::CreateModuleDirectories

Public Class Methods

new(app) click to toggle source
# File lib/puppet_generator/middleware/create_module_directories.rb, line 4
def initialize(app)
  @app = app
end

Public Instance Methods

call(task) click to toggle source
# File lib/puppet_generator/middleware/create_module_directories.rb, line 8
      def call(task)
        module_name = task.meta[:module]
        module_dirs = %w[ manifests files ].collect { |d| File.join(module_name, d) }
        module_file =  File.join(module_name, 'manifests', 'init.pp')

        PuppetGenerator.logger.info(self.class.name) { "Create the module directory for module \"#{module_name}\" at \"#{Dir.pwd}\"." }

        mkdir module_name
        mkdir module_dirs
        mkfile module_file, <<-EOF
class #{module_name} {

}
        EOF

      end

Private Instance Methods

mkdir(*dirs) click to toggle source
# File lib/puppet_generator/middleware/create_module_directories.rb, line 27
def mkdir(*dirs)
  FileUtils.mkdir_p( dirs.flatten.collect { |d| File.join(root_path, d ) } )
end
mkfile(file, content) click to toggle source
# File lib/puppet_generator/middleware/create_module_directories.rb, line 31
def mkfile(file, content)
  File.open(file, "w") do |f|
    f.write content
  end
end
root_path() click to toggle source
# File lib/puppet_generator/middleware/create_module_directories.rb, line 37
def root_path
  Dir.pwd
end