shelly 0.1.23 → 0.1.24.pre
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/CHANGELOG.md +2 -0
- data/README.md +0 -4
- data/lib/shelly/app.rb +1 -2
- data/lib/shelly/cli/backup.rb +1 -1
- data/lib/shelly/cli/command.rb +9 -1
- data/lib/shelly/cli/config.rb +1 -2
- data/lib/shelly/cli/main.rb +11 -13
- data/lib/shelly/version.rb +1 -1
- data/lib/thor/options.rb +2 -3
- data/lib/thor/thor.rb +40 -6
- data/shelly.gemspec +1 -3
- data/spec/shelly/cli/files_spec.rb +0 -1
- data/spec/shelly/cli/main_spec.rb +36 -32
- data/spec/spec_helper.rb +1 -1
- metadata +8 -42
- data/Guardfile +0 -6
- data/lib/thor/basic.rb +0 -9
    
        data/CHANGELOG.md
    CHANGED
    
    
    
        data/README.md
    CHANGED
    
    
    
        data/lib/shelly/app.rb
    CHANGED
    
    | @@ -9,8 +9,7 @@ module Shelly | |
| 9 9 | 
             
                SERVER_SIZES = %w(small large)
         | 
| 10 10 |  | 
| 11 11 | 
             
                attr_accessor :code_name, :databases, :ruby_version, :environment,
         | 
| 12 | 
            -
                  :git_url, :domains, :web_server_ip, : | 
| 13 | 
            -
                  :redeem_code
         | 
| 12 | 
            +
                  :git_url, :domains, :web_server_ip, :size, :thin, :redeem_code
         | 
| 14 13 |  | 
| 15 14 | 
             
                def initialize(code_name = nil)
         | 
| 16 15 | 
             
                  self.code_name = code_name
         | 
    
        data/lib/shelly/cli/backup.rb
    CHANGED
    
    
    
        data/lib/shelly/cli/command.rb
    CHANGED
    
    | @@ -4,13 +4,21 @@ require "thor/thor" | |
| 4 4 | 
             
            require "thor/group"
         | 
| 5 5 | 
             
            require "thor/options"
         | 
| 6 6 | 
             
            require "thor/arguments"
         | 
| 7 | 
            -
            require "thor/basic"
         | 
| 8 7 |  | 
| 9 8 | 
             
            module Shelly
         | 
| 10 9 | 
             
              module CLI
         | 
| 11 10 | 
             
                class Command < Thor
         | 
| 12 11 | 
             
                  include Helpers
         | 
| 13 12 | 
             
                  class_option :debug, :type => :boolean, :desc => "Show debug information"
         | 
| 13 | 
            +
                  class_option :help, :type => :boolean, :aliases => "-h", :desc => "Describe available tasks or one specific task"
         | 
| 14 | 
            +
             | 
| 15 | 
            +
                  def initialize(*)
         | 
| 16 | 
            +
                    super
         | 
| 17 | 
            +
                    if options[:help]
         | 
| 18 | 
            +
                      help(self.class.send(:retrieve_task_name, ARGV.dup))
         | 
| 19 | 
            +
                      exit(0)
         | 
| 20 | 
            +
                    end
         | 
| 21 | 
            +
                  end
         | 
| 14 22 | 
             
                end
         | 
| 15 23 | 
             
              end
         | 
| 16 24 | 
             
            end
         | 
    
        data/lib/shelly/cli/config.rb
    CHANGED
    
    | @@ -79,8 +79,7 @@ module Shelly | |
| 79 79 | 
             
                  end
         | 
| 80 80 |  | 
| 81 81 | 
             
                  desc "delete PATH", "Delete configuration file"
         | 
| 82 | 
            -
                  def delete(path | 
| 83 | 
            -
                    say_error "No configuration file specified" unless path
         | 
| 82 | 
            +
                  def delete(path)
         | 
| 84 83 | 
             
                    app = multiple_clouds(options[:cloud], "delete #{path}")
         | 
| 85 84 | 
             
                    answer = yes?("Are you sure you want to delete 'path' (yes/no): ")
         | 
| 86 85 | 
             
                    if answer
         | 
    
        data/lib/shelly/cli/main.rb
    CHANGED
    
    | @@ -19,7 +19,6 @@ module Shelly | |
| 19 19 |  | 
| 20 20 | 
             
                  check_unknown_options!(:except => :rake)
         | 
| 21 21 |  | 
| 22 | 
            -
                  # FIXME: it should be possible to pass single symbol, instead of one element array
         | 
| 23 22 | 
             
                  before_hook :logged_in?, :only => [:add, :status, :list, :start, :stop, :logs, :delete, :info, :ip, :logout, :execute, :rake, :setup, :console, :dbconsole]
         | 
| 24 23 | 
             
                  before_hook :inside_git_repository?, :only => [:add, :setup, :check]
         | 
| 25 24 |  | 
| @@ -134,7 +133,7 @@ module Shelly | |
| 134 133 | 
             
                        end
         | 
| 135 134 | 
             
                        [app["code_name"], "|  #{state.humanize}#{msg}"]
         | 
| 136 135 | 
             
                      end
         | 
| 137 | 
            -
                      print_table(apps_table, : | 
| 136 | 
            +
                      print_table(apps_table, :indent => 2)
         | 
| 138 137 | 
             
                    else
         | 
| 139 138 | 
             
                      say "You have no clouds yet", :green
         | 
| 140 139 | 
             
                    end
         | 
| @@ -149,22 +148,21 @@ module Shelly | |
| 149 148 | 
             
                      " (deployment log: `shelly deploys show last -c #{app}`)"
         | 
| 150 149 | 
             
                    end
         | 
| 151 150 | 
             
                    say "Cloud #{app}:", msg.present? ? :red : :green
         | 
| 152 | 
            -
                    print_wrapped "State: #{app.state}#{msg}", : | 
| 151 | 
            +
                    print_wrapped "State: #{app.state}#{msg}", :indent => 2
         | 
| 153 152 | 
             
                    say_new_line
         | 
| 154 | 
            -
                    print_wrapped "Deployed commit sha: #{app.git_info["deployed_commit_sha"]}", : | 
| 155 | 
            -
                    print_wrapped "Deployed commit message: #{app.git_info["deployed_commit_message"]}", : | 
| 156 | 
            -
                    print_wrapped "Deployed by: #{app.git_info["deployed_push_author"]}", : | 
| 153 | 
            +
                    print_wrapped "Deployed commit sha: #{app.git_info["deployed_commit_sha"]}", :indent => 2
         | 
| 154 | 
            +
                    print_wrapped "Deployed commit message: #{app.git_info["deployed_commit_message"]}", :indent => 2
         | 
| 155 | 
            +
                    print_wrapped "Deployed by: #{app.git_info["deployed_push_author"]}", :indent => 2
         | 
| 157 156 | 
             
                    say_new_line
         | 
| 158 | 
            -
                    print_wrapped "Repository URL: #{app.git_info["repository_url"]}", : | 
| 159 | 
            -
                    print_wrapped "Web server IP: #{app.web_server_ip}", : | 
| 160 | 
            -
                    print_wrapped "Mail server IP: #{app.mail_server_ip}", :ident => 2
         | 
| 157 | 
            +
                    print_wrapped "Repository URL: #{app.git_info["repository_url"]}", :indent => 2
         | 
| 158 | 
            +
                    print_wrapped "Web server IP: #{app.web_server_ip}", :indent => 2
         | 
| 161 159 | 
             
                    say_new_line
         | 
| 162 160 | 
             
                    if app.statistics.present?
         | 
| 163 | 
            -
                      print_wrapped "Statistics:", : | 
| 161 | 
            +
                      print_wrapped "Statistics:", :indent => 2
         | 
| 164 162 | 
             
                      app.statistics.each do |stat|
         | 
| 165 | 
            -
                        print_wrapped "#{stat['name']}:", : | 
| 166 | 
            -
                        print_wrapped "Load average: 1m: #{stat['load']['avg01']}, 5m: #{stat['load']['avg05']}, 15m: #{stat['load']['avg15']}", : | 
| 167 | 
            -
                        print_wrapped "CPU: #{stat['cpu']['wait']}%, MEM: #{stat['memory']['percent']}%, SWAP: #{stat['swap']['percent']}%", : | 
| 163 | 
            +
                        print_wrapped "#{stat['name']}:", :indent => 4
         | 
| 164 | 
            +
                        print_wrapped "Load average: 1m: #{stat['load']['avg01']}, 5m: #{stat['load']['avg05']}, 15m: #{stat['load']['avg15']}", :indent => 6
         | 
| 165 | 
            +
                        print_wrapped "CPU: #{stat['cpu']['wait']}%, MEM: #{stat['memory']['percent']}%, SWAP: #{stat['swap']['percent']}%", :indent => 6
         | 
| 168 166 | 
             
                      end
         | 
| 169 167 | 
             
                    end
         | 
| 170 168 | 
             
                  rescue Client::GatewayTimeoutException
         | 
    
        data/lib/shelly/version.rb
    CHANGED
    
    
    
        data/lib/thor/options.rb
    CHANGED
    
    | @@ -1,11 +1,10 @@ | |
| 1 1 | 
             
            class Thor
         | 
| 2 2 | 
             
              class Options < Arguments
         | 
| 3 | 
            -
             | 
| 4 3 | 
             
                def check_unknown!
         | 
| 4 | 
            +
                  unknown = @extra.select { |str| str =~ /^--?(?:(?!--).)*$/ }
         | 
| 5 5 | 
             
                  raise UnknownArgumentError, "shelly: unrecognized option '#{@unknown.join(', ')}'\n" +
         | 
| 6 6 | 
             
                    "Usage: shelly [COMMAND]... [OPTIONS]\n" +
         | 
| 7 | 
            -
                    "Try 'shelly --help' for more information" unless  | 
| 7 | 
            +
                    "Try 'shelly --help' for more information" unless unknown.empty?
         | 
| 8 8 | 
             
                end
         | 
| 9 | 
            -
             | 
| 10 9 | 
             
              end
         | 
| 11 10 | 
             
            end
         | 
    
        data/lib/thor/thor.rb
    CHANGED
    
    | @@ -2,7 +2,7 @@ class Thor | |
| 2 2 | 
             
              class << self
         | 
| 3 3 | 
             
                def before_hook(method, options = {})
         | 
| 4 4 | 
             
                  @hook = {} unless @hook
         | 
| 5 | 
            -
                  @hook[method] = options
         | 
| 5 | 
            +
                  @hook[method] = {:only => Array(options[:only])}
         | 
| 6 6 | 
             
                end
         | 
| 7 7 |  | 
| 8 8 | 
             
                def hooks
         | 
| @@ -12,9 +12,9 @@ class Thor | |
| 12 12 | 
             
                def send(*args)
         | 
| 13 13 | 
             
                  if args.first == :dispatch && !args[2].empty?
         | 
| 14 14 | 
             
                    running_task = args[2].first
         | 
| 15 | 
            -
             | 
| 15 | 
            +
                    help = args[2].include?('--help') || args[2].include?('-h')
         | 
| 16 16 | 
             
                    @hook.each do |method, options|
         | 
| 17 | 
            -
                      if options[:only].include?(running_task.to_sym)
         | 
| 17 | 
            +
                      if options[:only].include?(running_task.to_sym) && !help
         | 
| 18 18 | 
             
                        new.send(method)
         | 
| 19 19 | 
             
                      end
         | 
| 20 20 | 
             
                    end
         | 
| @@ -28,12 +28,46 @@ class Thor | |
| 28 28 | 
             
                rescue Thor::Error => e
         | 
| 29 29 | 
             
                  ENV["THOR_DEBUG"] == "1" ? (raise e) : config[:shell].error(e.message)
         | 
| 30 30 | 
             
                  exit(1) if exit_on_failure?
         | 
| 31 | 
            +
                rescue Errno::EPIPE
         | 
| 32 | 
            +
                  # This happens if a thor task is piped to something like `head`,
         | 
| 33 | 
            +
                  # which closes the pipe when it's done reading. This will also
         | 
| 34 | 
            +
                  # mean that if the pipe is closed, further unnecessary
         | 
| 35 | 
            +
                  # computation will not occur.
         | 
| 36 | 
            +
                  exit(0)
         | 
| 31 37 | 
             
                end
         | 
| 32 38 |  | 
| 33 | 
            -
                # We overwrite this method so namespace is  | 
| 39 | 
            +
                # We overwrite this method so namespace is shown
         | 
| 34 40 | 
             
                # shelly *backup* restore FILENAME
         | 
| 35 | 
            -
                def handle_argument_error(task, error)
         | 
| 36 | 
            -
                   | 
| 41 | 
            +
                def handle_argument_error(task, error, arity = nil)
         | 
| 42 | 
            +
                  banner = self.banner(task, nil, self.to_s != 'Shelly::CLI::Main')
         | 
| 43 | 
            +
                  raise InvocationError, "#{task.name.inspect} was called incorrectly. Call as `#{banner}`"
         | 
| 44 | 
            +
                end
         | 
| 45 | 
            +
             | 
| 46 | 
            +
                protected
         | 
| 47 | 
            +
                # this has to overwritten so that in tests args are passed correctly
         | 
| 48 | 
            +
                # only change is the commented line
         | 
| 49 | 
            +
                # its for some edge cases when boolean options are passed in some
         | 
| 50 | 
            +
                # strange order
         | 
| 51 | 
            +
                def dispatch(meth, given_args, given_opts, config) #:nodoc:
         | 
| 52 | 
            +
                  meth ||= retrieve_task_name(given_args)
         | 
| 53 | 
            +
                  task = all_tasks[normalize_task_name(meth)]
         | 
| 54 | 
            +
             | 
| 55 | 
            +
                  if task
         | 
| 56 | 
            +
                    args, opts = Thor::Options.split(given_args)
         | 
| 57 | 
            +
                  else
         | 
| 58 | 
            +
                    args, opts = given_args, nil
         | 
| 59 | 
            +
                    task = Thor::DynamicTask.new(meth)
         | 
| 60 | 
            +
                  end
         | 
| 61 | 
            +
             | 
| 62 | 
            +
                  opts = given_opts || opts || []
         | 
| 63 | 
            +
                  config.merge!(:current_task => task, :task_options => task.options)
         | 
| 64 | 
            +
             | 
| 65 | 
            +
                  instance = new(args, opts, config)
         | 
| 66 | 
            +
                  yield instance if block_given?
         | 
| 67 | 
            +
                  # args = instance.args
         | 
| 68 | 
            +
                  trailing = args[Range.new(arguments.size, -1)]
         | 
| 69 | 
            +
             | 
| 70 | 
            +
                  instance.invoke_task(task, trailing || [])
         | 
| 37 71 | 
             
                end
         | 
| 38 72 | 
             
              end
         | 
| 39 73 | 
             
            end
         | 
    
        data/shelly.gemspec
    CHANGED
    
    | @@ -14,8 +14,6 @@ Gem::Specification.new do |s| | |
| 14 14 | 
             
              s.rubyforge_project = "shelly"
         | 
| 15 15 | 
             
              s.add_development_dependency "rspec", "~> 2.11.0"
         | 
| 16 16 | 
             
              s.add_development_dependency "rake"
         | 
| 17 | 
            -
              s.add_development_dependency "guard"
         | 
| 18 | 
            -
              s.add_development_dependency "guard-rspec"
         | 
| 19 17 | 
             
              s.add_development_dependency "simplecov"
         | 
| 20 18 | 
             
              if RUBY_PLATFORM =~ /darwin/
         | 
| 21 19 | 
             
                s.add_development_dependency "ruby_gntp"
         | 
| @@ -23,7 +21,7 @@ Gem::Specification.new do |s| | |
| 23 21 | 
             
              end
         | 
| 24 22 | 
             
              s.add_development_dependency "fakefs"
         | 
| 25 23 | 
             
              s.add_development_dependency "fakeweb"
         | 
| 26 | 
            -
              s.add_runtime_dependency " | 
| 24 | 
            +
              s.add_runtime_dependency "thor", "~> 0.15.4"
         | 
| 27 25 | 
             
              s.add_runtime_dependency "rest-client"
         | 
| 28 26 | 
             
              s.add_runtime_dependency "json"
         | 
| 29 27 | 
             
              s.add_runtime_dependency "progressbar"
         | 
| @@ -29,7 +29,6 @@ describe Shelly::CLI::Files do | |
| 29 29 |  | 
| 30 30 | 
             
                it "should exit if rsync isn't installed" do
         | 
| 31 31 | 
             
                  FakeFS::File.stub(:executable?).and_return(false)
         | 
| 32 | 
            -
             | 
| 33 32 | 
             
                  $stdout.should_receive(:puts).with(red "You need to install rsync in order to upload and download files")
         | 
| 34 33 | 
             
                  lambda { invoke(@cli_files, :upload, "some/path") }.should raise_error(SystemExit)
         | 
| 35 34 | 
             
                end
         | 
| @@ -25,38 +25,34 @@ describe Shelly::CLI::Main do | |
| 25 25 |  | 
| 26 26 | 
             
              describe "#help" do
         | 
| 27 27 | 
             
                it "should display available commands" do
         | 
| 28 | 
            -
                  expected = <<-OUT
         | 
| 29 | 
            -
            Tasks:
         | 
| 30 | 
            -
              shelly add                # Add a new cloud
         | 
| 31 | 
            -
              shelly backup <command>   # Manage database backups
         | 
| 32 | 
            -
              shelly check              # Check if application fulfills Shelly Cloud requirements
         | 
| 33 | 
            -
              shelly config <command>   # Manage application configuration files
         | 
| 34 | 
            -
              shelly console            # Open application console
         | 
| 35 | 
            -
              shelly dbconsole          # Run rails dbconsole
         | 
| 36 | 
            -
              shelly delete             # Delete the cloud
         | 
| 37 | 
            -
              shelly deploys <command>  # View deploy logs
         | 
| 38 | 
            -
              shelly files <command>    # Upload and download files to and from persistent storage
         | 
| 39 | 
            -
              shelly help [TASK]        # Describe available tasks or one specific task
         | 
| 40 | 
            -
              shelly info               # Show basic information about cloud
         | 
| 41 | 
            -
              shelly list               # List available clouds
         | 
| 42 | 
            -
              shelly login [EMAIL]      # Log into Shelly Cloud
         | 
| 43 | 
            -
              shelly logout             # Logout from Shelly Cloud
         | 
| 44 | 
            -
              shelly logs               # Show latest application logs
         | 
| 45 | 
            -
              shelly open               # Open application page in browser
         | 
| 46 | 
            -
              shelly rake TASK          # Run rake task
         | 
| 47 | 
            -
              shelly redeploy           # Redeploy application
         | 
| 48 | 
            -
              shelly register [EMAIL]   # Register new account
         | 
| 49 | 
            -
              shelly setup              # Set up git remotes for deployment on Shelly Cloud
         | 
| 50 | 
            -
              shelly start              # Start the cloud
         | 
| 51 | 
            -
              shelly stop               # Shutdown the cloud
         | 
| 52 | 
            -
              shelly user <command>     # Manage collaborators
         | 
| 53 | 
            -
              shelly version            # Display shelly version
         | 
| 54 | 
            -
             | 
| 55 | 
            -
            Options:
         | 
| 56 | 
            -
              [--debug]  # Show debug information
         | 
| 57 | 
            -
            OUT
         | 
| 58 28 | 
             
                  out = IO.popen("bin/shelly --debug").read.strip
         | 
| 59 | 
            -
                  out.should  | 
| 29 | 
            +
                  out.should include("Tasks:")
         | 
| 30 | 
            +
                  out.should include("shelly add                # Add a new cloud")
         | 
| 31 | 
            +
                  out.should include("shelly backup <command>   # Manage database backups")
         | 
| 32 | 
            +
                  out.should include("shelly check              # Check if application fulfills Shelly Cloud requirements")
         | 
| 33 | 
            +
                  out.should include("shelly config <command>   # Manage application configuration files")
         | 
| 34 | 
            +
                  out.should include("shelly console            # Open application console")
         | 
| 35 | 
            +
                  out.should include("shelly dbconsole          # Run rails dbconsole")
         | 
| 36 | 
            +
                  out.should include("shelly delete             # Delete the cloud")
         | 
| 37 | 
            +
                  out.should include("shelly deploys <command>  # View deploy logs")
         | 
| 38 | 
            +
                  out.should include("shelly files <command>    # Upload and download files to and from persistent storage")
         | 
| 39 | 
            +
                  out.should include("shelly help [TASK]        # Describe available tasks or one specific task")
         | 
| 40 | 
            +
                  out.should include("shelly info               # Show basic information about cloud")
         | 
| 41 | 
            +
                  out.should include("shelly list               # List available clouds")
         | 
| 42 | 
            +
                  out.should include("shelly login [EMAIL]      # Log into Shelly Cloud")
         | 
| 43 | 
            +
                  out.should include("shelly logout             # Logout from Shelly Cloud")
         | 
| 44 | 
            +
                  out.should include("shelly logs               # Show latest application logs")
         | 
| 45 | 
            +
                  out.should include("shelly open               # Open application page in browser")
         | 
| 46 | 
            +
                  out.should include("shelly rake TASK          # Run rake task")
         | 
| 47 | 
            +
                  out.should include("shelly redeploy           # Redeploy application")
         | 
| 48 | 
            +
                  out.should include("shelly register [EMAIL]   # Register new account")
         | 
| 49 | 
            +
                  out.should include("shelly setup              # Set up git remotes for deployment on Shelly Cloud")
         | 
| 50 | 
            +
                  out.should include("shelly start              # Start the cloud")
         | 
| 51 | 
            +
                  out.should include("shelly stop               # Shutdown the cloud")
         | 
| 52 | 
            +
                  out.should include("shelly user <command>     # Manage collaborators")
         | 
| 53 | 
            +
                  out.should include("Options")
         | 
| 54 | 
            +
                  out.should include("[--debug]  # Show debug information")
         | 
| 55 | 
            +
                  out.should include("-h, [--help]   # Describe available tasks or one specific task")
         | 
| 60 56 | 
             
                end
         | 
| 61 57 |  | 
| 62 58 | 
             
                it "should display options in help for logs" do
         | 
| @@ -68,6 +64,14 @@ OUT | |
| 68 64 | 
             
                  out.should include("[--from=FROM]      # Time from which to find the logs")
         | 
| 69 65 | 
             
                  out.should include("[--debug]          # Show debug information")
         | 
| 70 66 | 
             
                end
         | 
| 67 | 
            +
             | 
| 68 | 
            +
                it "should display help when user is not logged in" do
         | 
| 69 | 
            +
                  out = IO.popen("bin/shelly list --help").read.strip
         | 
| 70 | 
            +
                  out.should include("Usage:")
         | 
| 71 | 
            +
                  out.should include("shelly list")
         | 
| 72 | 
            +
                  out.should include("List available clouds")
         | 
| 73 | 
            +
                  out.should_not include("You are not logged in. To log in use: `shelly login`")
         | 
| 74 | 
            +
                end
         | 
| 71 75 | 
             
              end
         | 
| 72 76 |  | 
| 73 77 | 
             
              describe "#register" do
         | 
| @@ -848,7 +852,7 @@ We have been notified about it. We will be adding new resources shortly") | |
| 848 852 | 
             
                      "repository_url" => "git@winniecloud.net:example-cloud",
         | 
| 849 853 | 
             
                      "deployed_push_author" => "megan@example.com"
         | 
| 850 854 | 
             
                    },
         | 
| 851 | 
            -
                    "web_server_ip" => "22.22.22.22" | 
| 855 | 
            +
                    "web_server_ip" => "22.22.22.22"}.merge(options)
         | 
| 852 856 | 
             
                end
         | 
| 853 857 | 
             
              end
         | 
| 854 858 |  | 
    
        data/spec/spec_helper.rb
    CHANGED
    
    
    
        metadata
    CHANGED
    
    | @@ -1,15 +1,15 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: shelly
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0.1. | 
| 5 | 
            -
              prerelease: 
         | 
| 4 | 
            +
              version: 0.1.24.pre
         | 
| 5 | 
            +
              prerelease: 7
         | 
| 6 6 | 
             
            platform: ruby
         | 
| 7 7 | 
             
            authors:
         | 
| 8 8 | 
             
            - Shelly Cloud team
         | 
| 9 9 | 
             
            autorequire: 
         | 
| 10 10 | 
             
            bindir: bin
         | 
| 11 11 | 
             
            cert_chain: []
         | 
| 12 | 
            -
            date: 2012-08- | 
| 12 | 
            +
            date: 2012-08-14 00:00:00.000000000 Z
         | 
| 13 13 | 
             
            dependencies:
         | 
| 14 14 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 15 15 | 
             
              name: rspec
         | 
| @@ -43,38 +43,6 @@ dependencies: | |
| 43 43 | 
             
                - - ! '>='
         | 
| 44 44 | 
             
                  - !ruby/object:Gem::Version
         | 
| 45 45 | 
             
                    version: '0'
         | 
| 46 | 
            -
            - !ruby/object:Gem::Dependency
         | 
| 47 | 
            -
              name: guard
         | 
| 48 | 
            -
              requirement: !ruby/object:Gem::Requirement
         | 
| 49 | 
            -
                none: false
         | 
| 50 | 
            -
                requirements:
         | 
| 51 | 
            -
                - - ! '>='
         | 
| 52 | 
            -
                  - !ruby/object:Gem::Version
         | 
| 53 | 
            -
                    version: '0'
         | 
| 54 | 
            -
              type: :development
         | 
| 55 | 
            -
              prerelease: false
         | 
| 56 | 
            -
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 57 | 
            -
                none: false
         | 
| 58 | 
            -
                requirements:
         | 
| 59 | 
            -
                - - ! '>='
         | 
| 60 | 
            -
                  - !ruby/object:Gem::Version
         | 
| 61 | 
            -
                    version: '0'
         | 
| 62 | 
            -
            - !ruby/object:Gem::Dependency
         | 
| 63 | 
            -
              name: guard-rspec
         | 
| 64 | 
            -
              requirement: !ruby/object:Gem::Requirement
         | 
| 65 | 
            -
                none: false
         | 
| 66 | 
            -
                requirements:
         | 
| 67 | 
            -
                - - ! '>='
         | 
| 68 | 
            -
                  - !ruby/object:Gem::Version
         | 
| 69 | 
            -
                    version: '0'
         | 
| 70 | 
            -
              type: :development
         | 
| 71 | 
            -
              prerelease: false
         | 
| 72 | 
            -
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 73 | 
            -
                none: false
         | 
| 74 | 
            -
                requirements:
         | 
| 75 | 
            -
                - - ! '>='
         | 
| 76 | 
            -
                  - !ruby/object:Gem::Version
         | 
| 77 | 
            -
                    version: '0'
         | 
| 78 46 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 79 47 | 
             
              name: simplecov
         | 
| 80 48 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| @@ -156,13 +124,13 @@ dependencies: | |
| 156 124 | 
             
                  - !ruby/object:Gem::Version
         | 
| 157 125 | 
             
                    version: '0'
         | 
| 158 126 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 159 | 
            -
              name:  | 
| 127 | 
            +
              name: thor
         | 
| 160 128 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 161 129 | 
             
                none: false
         | 
| 162 130 | 
             
                requirements:
         | 
| 163 131 | 
             
                - - ~>
         | 
| 164 132 | 
             
                  - !ruby/object:Gem::Version
         | 
| 165 | 
            -
                    version: 0. | 
| 133 | 
            +
                    version: 0.15.4
         | 
| 166 134 | 
             
              type: :runtime
         | 
| 167 135 | 
             
              prerelease: false
         | 
| 168 136 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| @@ -170,7 +138,7 @@ dependencies: | |
| 170 138 | 
             
                requirements:
         | 
| 171 139 | 
             
                - - ~>
         | 
| 172 140 | 
             
                  - !ruby/object:Gem::Version
         | 
| 173 | 
            -
                    version: 0. | 
| 141 | 
            +
                    version: 0.15.4
         | 
| 174 142 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 175 143 | 
             
              name: rest-client
         | 
| 176 144 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| @@ -279,7 +247,6 @@ files: | |
| 279 247 | 
             
            - .travis.yml
         | 
| 280 248 | 
             
            - CHANGELOG.md
         | 
| 281 249 | 
             
            - Gemfile
         | 
| 282 | 
            -
            - Guardfile
         | 
| 283 250 | 
             
            - README.md
         | 
| 284 251 | 
             
            - Rakefile
         | 
| 285 252 | 
             
            - bin/shelly
         | 
| @@ -307,7 +274,6 @@ files: | |
| 307 274 | 
             
            - lib/shelly/user.rb
         | 
| 308 275 | 
             
            - lib/shelly/version.rb
         | 
| 309 276 | 
             
            - lib/thor/arguments.rb
         | 
| 310 | 
            -
            - lib/thor/basic.rb
         | 
| 311 277 | 
             
            - lib/thor/options.rb
         | 
| 312 278 | 
             
            - lib/thor/thor.rb
         | 
| 313 279 | 
             
            - scrolls/shellycloud.rb
         | 
| @@ -346,9 +312,9 @@ required_ruby_version: !ruby/object:Gem::Requirement | |
| 346 312 | 
             
            required_rubygems_version: !ruby/object:Gem::Requirement
         | 
| 347 313 | 
             
              none: false
         | 
| 348 314 | 
             
              requirements:
         | 
| 349 | 
            -
              - - ! ' | 
| 315 | 
            +
              - - ! '>'
         | 
| 350 316 | 
             
                - !ruby/object:Gem::Version
         | 
| 351 | 
            -
                  version:  | 
| 317 | 
            +
                  version: 1.3.1
         | 
| 352 318 | 
             
            requirements: []
         | 
| 353 319 | 
             
            rubyforge_project: shelly
         | 
| 354 320 | 
             
            rubygems_version: 1.8.24
         | 
    
        data/Guardfile
    DELETED