Module: Aka::Upgrader::FromV1ToV2

Defined in:
lib/aka/upgrader.rb

Class Method Summary collapse

Class Method Details

.run(aka_yml) ⇒ Object



23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
# File 'lib/aka/upgrader.rb', line 23

def self.run(aka_yml)
  v1 = YAML::load_file(aka_yml)

  v2 = v1.merge(:version => '2')
  links = v2.delete(:links)
  v2[:links] = new_links = {}
  if links
    index = 0
    links.each do |element|
      index += 1
      new_links[index] = element
    end
  end

  FileUtils.cp(aka_yml, "#{aka_yml}.backup")
  puts "Backed up to #{aka_yml}.backup."

  File.open(aka_yml, 'w+') do |f|
    f.write v2.to_yaml
  end
  puts "Upgraded #{aka_yml}."
end