class RakeRack::SemverVersioning

Public Class Methods

current_version() click to toggle source
# File lib/semver_versioning.rb, line 4
def self.current_version
  if File.exist? SemVer.file_name
    SemVer.find
  else
    version = SemVer.new
    version.save SemVer.file_name
    version
  end
end
inc_major() click to toggle source
# File lib/semver_versioning.rb, line 14
def self.inc_major
  v = current_version
  v.major = v.major.to_i + 1
  v.minor = '0'
  v.patch = '0'
  v.save
end
inc_minor() click to toggle source
# File lib/semver_versioning.rb, line 22
def self.inc_minor
  v = current_version
  v.minor = v.minor.to_i + 1
  v.patch = '0'
  v.save
end
inc_patch() click to toggle source
# File lib/semver_versioning.rb, line 29
def self.inc_patch
  v = current_version
  v.patch = v.patch.to_i + 1
  v.save
end
inc_prerelease(s) click to toggle source
# File lib/semver_versioning.rb, line 41
def self.inc_prerelease s
  inc_major
  v = current_version
  v.special = s
  v.save
end
prerelease(s) click to toggle source
# File lib/semver_versioning.rb, line 35
def self.prerelease s
  v = current_version
  v.special = s
  v.save
end
release() click to toggle source
# File lib/semver_versioning.rb, line 48
def self.release
  v = current_version
  v.special = ''
  v.save
end
tag() click to toggle source
# File lib/semver_versioning.rb, line 54
def self.tag
  v = current_version.to_s
  `git add .semver && git commit -m 'Increment version to #{v}' && git tag #{v}`
  branch = `git symbolic-ref HEAD`[%r{.*/(.*)}, 1]
  puts "To push the new tag, use 'git push origin #{branch} --tags'"
end