Class: Papers::ManifestGenerator

Inherits:
Object
  • Object
show all
Defined in:
lib/papers/manifest_generator.rb

Instance Method Summary collapse

Instance Method Details

#generate!(args = ARGV) ⇒ Object



19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# File 'lib/papers/manifest_generator.rb', line 19

def generate!(args = ARGV)
  @manifest_path = File.join('config','papers_manifest.yml')

  raise Papers::FileExistsError.new(@manifest_path) if manifest_exists?

  begin
    if FileUtils.mkdir_p(File.dirname(@manifest_path))
      File.open(@manifest_path, 'w') do |file|
        file.write(build_header)
        file.write(YAML.dump(build_manifest))
      end
      puts "Created #{@manifest_path}!"
    end
  rescue RuntimeError => e
    warn "Failure! #{e}"
  end
end