module SchemaEvolutionManager::SemInfo

Public Class Methods

tag(args) click to toggle source
# File lib/schema-evolution-manager/sem_info.rb, line 9
def SemInfo.tag(args)
  valid = ['exists', 'latest', 'next']

  subcommand = args.shift.to_s.strip

  if subcommand == "exists"
    tag = args.shift.to_s.strip
    if tag.empty?
      puts "ERROR: Missing tag."
      exit(3)
    elsif ::SchemaEvolutionManager::Library.tag_exists?(tag)
      puts "true"
    else
      puts "false"
    end

  elsif subcommand == "latest"
    if latest = ::SchemaEvolutionManager::SemInfo::Tag.latest
      latest.to_version_string
    else
      nil
    end

  elsif subcommand == "next"
    ::SchemaEvolutionManager::SemInfo::Tag.next(args).to_version_string

  elsif subcommand.empty?
    puts "ERROR: Missing tag subcommand. Must be one of: %s" % valid.join(", ")
    exit(3)

  else
    puts "ERROR: Invalid tag subcommand[%s]. Must be one of: %s" % [subcommand, valid.join(", ")]
    exit(4)
  end
end
version(args=nil) click to toggle source
# File lib/schema-evolution-manager/sem_info.rb, line 5
def SemInfo.version(args=nil)
  SchemaEvolutionManager::SemVersion::VERSION.dup
end