Sha256: 4d47b6b112e7261892b9de2e84c42d50f862c62f93a0fa08af68650e5fddff9e

Contents?: true

Size: 930 Bytes

Versions: 1

Compression:

Stored size: 930 Bytes

Contents

require "json"
require "open-uri"
require "thor"

module Codelation
  VERSION = "0.0.15"

  class Cli < Thor
    desc "update", "Update codelation-cli to latest version"
    def update
      command = "gem install codelation-cli"
      puts "Running #{command}..."
      exec(command)
    end

    desc "version", "Show version information"
    def version
      gem_version = "v#{Codelation::VERSION}"

      # Grab the latest version of the RubyGem
      rubygems_json = open("https://rubygems.org/api/v1/gems/codelation-cli.json").read
      rubygems_version = "v#{JSON.parse(rubygems_json)['version'].strip}"

      upgrade_message = ""
      if gem_version != rubygems_version
        upgrade_message = " Run `codelation update` to install"
      end

      puts
      puts "Codelation CLI"
      puts "  Installed: #{gem_version}"
      puts "  Latest:    #{rubygems_version}#{upgrade_message}"
      puts
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
codelation-cli-0.0.15 lib/codelation/version.rb