Class: TomlVersioner
- Inherits:
-
Object
- Object
- TomlVersioner
- Defined in:
- lib/rake-extensions.rb
Instance Method Summary collapse
- #get_current_version ⇒ Object
- #get_next_version(jump) ⇒ Object
- #increment_version(jump) ⇒ Object
-
#initialize(version_dir) ⇒ TomlVersioner
constructor
A new instance of TomlVersioner.
- #update_version(new_version) ⇒ Object
Constructor Details
#initialize(version_dir) ⇒ TomlVersioner
Returns a new instance of TomlVersioner.
71 72 73 |
# File 'lib/rake-extensions.rb', line 71 def initialize(version_dir) @version_dir = version_dir end |
Instance Method Details
#get_current_version ⇒ Object
79 80 81 82 83 84 85 86 87 88 89 90 |
# File 'lib/rake-extensions.rb', line 79 def get_current_version() current_version = nil FileUtils.cd @version_dir, :verbose => false do ['Cargo.toml'].each do |file| text = File.read(file) if match = text.match(/^version\s=\s\"(.*)\"/i) current_version = match.captures[0] end end end current_version end |
#get_next_version(jump) ⇒ Object
74 75 76 77 78 |
# File 'lib/rake-extensions.rb', line 74 def get_next_version(jump) current_version = get_current_version() v = Version.new(current_version) v.send(jump) end |
#increment_version(jump) ⇒ Object
91 92 93 94 95 |
# File 'lib/rake-extensions.rb', line 91 def increment_version(jump) next_version = get_next_version(jump) puts "increment version from #{get_current_version} ==> #{next_version}" update_version(next_version) end |
#update_version(new_version) ⇒ Object
96 97 98 99 100 101 102 103 104 |
# File 'lib/rake-extensions.rb', line 96 def update_version(new_version) FileUtils.cd @version_dir, :verbose => false do ['Cargo.toml'].each do |file| text = File.read(file) new_contents = text.gsub(/^version\s=\s\"\d+\.\d+\.\d+\"/, "version = \"#{new_version}\"") File.open(file, "w") { |f| f.puts new_contents } end end end |