Module: Metadatajson2puppetfile

Defined in:
lib/metadatajson2puppetfile.rb,
lib/metadatajson2puppetfile/version.rb

Constant Summary collapse

METADATA =
"metadata.json"
VERSION =
"0.1.0"

Class Method Summary collapse

Class Method Details

.runObject



5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/metadatajson2puppetfile.rb', line 5

def self.run
  if File.exists?(METADATA)
    begin
      data = JSON.parse(File.readlines(METADATA).to_s)
      data["dependencies"].each { |pair|
        puts pair
        if dep["version_requirement"] =~ /\d+\.\d+\.\d+/
          version_string = dep["version_requirement"]
        else
          version_string = ":latest"
        end
        dep_string = "mod '#{dep['name']}', '#{version_string}'"
        puts dep_string
      }
      puts "done"
    rescue JSON::ParserError
      raise "syntax error in #{METADATA}"
    end

  else
    abort("#{METADATA} not found in current directory")
  end
end