mortar 0.13.1 → 0.13.2
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/lib/mortar/local/controller.rb +42 -6
- data/lib/mortar/version.rb +1 -1
- data/spec/mortar/local/controller_spec.rb +65 -3
- metadata +41 -17
- checksums.yaml +0 -7
| @@ -13,6 +13,7 @@ | |
| 13 13 | 
             
            #
         | 
| 14 14 |  | 
| 15 15 | 
             
            require "mortar/helpers"
         | 
| 16 | 
            +
            require "mortar/auth"
         | 
| 16 17 | 
             
            require "mortar/pigversion"
         | 
| 17 18 | 
             
            require "mortar/local/pig"
         | 
| 18 19 | 
             
            require "mortar/local/java"
         | 
| @@ -45,12 +46,25 @@ https://pypi.python.org/pypi/virtualenv | |
| 45 46 | 
             
            EOF
         | 
| 46 47 |  | 
| 47 48 | 
             
              NO_AWS_KEYS_ERROR_MESSAGE = <<EOF
         | 
| 48 | 
            -
             | 
| 49 | 
            -
            and your AWS secret key via environment variable AWS_SECRET_KEY, e.g.:
         | 
| 49 | 
            +
            You have not set AWS access keys, which will often prevent you from accessing input data.  You can either:
         | 
| 50 50 |  | 
| 51 | 
            -
             | 
| 51 | 
            +
            - Login to your Mortar account to automatically sync your AWS keys from Mortar when running commands ("mortar login")
         | 
| 52 | 
            +
             | 
| 53 | 
            +
            -  *or*, set your AWS keys via environment variables:
         | 
| 54 | 
            +
             | 
| 55 | 
            +
              export AWS_ACCESS_KEY="XXXXXXXXXXXX" 
         | 
| 52 56 | 
             
              export AWS_SECRET_KEY="XXXXXXXXXXXX"
         | 
| 53 57 |  | 
| 58 | 
            +
            If your script does not need AWS S3 access, you can leave those values as XXXXXXXXXXXX.
         | 
| 59 | 
            +
            EOF
         | 
| 60 | 
            +
             | 
| 61 | 
            +
              API_CONFIG_ERROR_MESSAGE = <<EOF
         | 
| 62 | 
            +
            We were unable to sync your AWS keys from Mortar.  
         | 
| 63 | 
            +
            To continue, please specify your amazon AWS access key via environment variable AWS_ACCESS_KEY and your AWS secret key via environment variable AWS_SECRET_KEY, e.g.:
         | 
| 64 | 
            +
              
         | 
| 65 | 
            +
              export AWS_ACCESS_KEY="XXXXXXXXXXXX"
         | 
| 66 | 
            +
              export AWS_SECRET_KEY="XXXXXXXXXXXX"
         | 
| 67 | 
            +
              
         | 
| 54 68 | 
             
            If your script does not need AWS S3 access, you can set these variables to XXXXXXXXXXXX.
         | 
| 55 69 | 
             
            EOF
         | 
| 56 70 |  | 
| @@ -68,13 +82,35 @@ EOF | |
| 68 82 | 
             
                end
         | 
| 69 83 | 
             
              end
         | 
| 70 84 |  | 
| 71 | 
            -
              #  | 
| 72 | 
            -
              def require_aws_keys()
         | 
| 85 | 
            +
              # Asks to sync with AWS if user has not setup their aws keys
         | 
| 86 | 
            +
              def require_aws_keys()        
         | 
| 73 87 | 
             
                unless verify_aws_keys()
         | 
| 74 | 
            -
                   | 
| 88 | 
            +
                  auth = Mortar::Auth
         | 
| 89 | 
            +
                  if !auth.has_credentials                      
         | 
| 90 | 
            +
                    error(NO_AWS_KEYS_ERROR_MESSAGE)
         | 
| 91 | 
            +
                  else
         | 
| 92 | 
            +
                    vars = fetch_aws_keys(auth, Mortar::Command::Base.new)
         | 
| 93 | 
            +
                    if vars['aws_access_key_id'] && vars['aws_secret_access_key']
         | 
| 94 | 
            +
                      set_aws_keys(vars['aws_access_key_id'], vars['aws_secret_access_key'])
         | 
| 95 | 
            +
                    else
         | 
| 96 | 
            +
                      error(API_CONFIG_ERROR_MESSAGE)
         | 
| 97 | 
            +
                    end
         | 
| 98 | 
            +
                  end 
         | 
| 75 99 | 
             
                end
         | 
| 76 100 | 
             
              end
         | 
| 77 101 |  | 
| 102 | 
            +
              # Fetches AWS Keys based on auth
         | 
| 103 | 
            +
              def fetch_aws_keys(auth, base)    
         | 
| 104 | 
            +
                project = base.project    
         | 
| 105 | 
            +
                project_name = base.options[:project] || project.name    
         | 
| 106 | 
            +
                return auth.api.get_config_vars(project_name).body['config']
         | 
| 107 | 
            +
              end
         | 
| 108 | 
            +
             | 
| 109 | 
            +
              def set_aws_keys(aws_access_key, aws_secret_key)    
         | 
| 110 | 
            +
                ENV['AWS_ACCESS_KEY'] = aws_access_key
         | 
| 111 | 
            +
                ENV['AWS_SECRET_KEY'] = aws_secret_key    
         | 
| 112 | 
            +
              end
         | 
| 113 | 
            +
              
         | 
| 78 114 | 
             
              # Main entry point to perform installation and configuration necessary
         | 
| 79 115 | 
             
              # to run pig on the users local machine
         | 
| 80 116 | 
             
              def install_and_configure(pig_version=nil)
         | 
    
        data/lib/mortar/version.rb
    CHANGED
    
    
| @@ -17,21 +17,26 @@ | |
| 17 17 | 
             
            require 'spec_helper'
         | 
| 18 18 | 
             
            require 'fakefs/spec_helpers'
         | 
| 19 19 | 
             
            require 'mortar/local/controller'
         | 
| 20 | 
            +
            require 'mortar/auth'
         | 
| 21 | 
            +
            require 'mortar/command/base'
         | 
| 20 22 | 
             
            require 'launchy'
         | 
| 23 | 
            +
            require 'excon'
         | 
| 21 24 |  | 
| 22 25 | 
             
            module Mortar::Local
         | 
| 23 26 | 
             
              describe Controller do
         | 
| 24 27 |  | 
| 25 28 | 
             
                before do
         | 
| 29 | 
            +
                  stub_core
         | 
| 26 30 | 
             
                  ENV['AWS_ACCESS_KEY'] = "foo"
         | 
| 27 31 | 
             
                  ENV['AWS_SECRET_KEY'] = "BAR"
         | 
| 28 32 | 
             
                end
         | 
| 29 33 |  | 
| 30 | 
            -
                context("aws keys") do
         | 
| 31 | 
            -
                  it "exits if they are not present" do
         | 
| 34 | 
            +
                context("aws keys") do        
         | 
| 35 | 
            +
                  it "exits if they are not present and not logged in" do
         | 
| 32 36 | 
             
                    ENV.delete('AWS_ACCESS_KEY')
         | 
| 33 37 | 
             
                    ctrl = Mortar::Local::Controller.new
         | 
| 34 38 | 
             
                    previous_stderr, $stderr = $stderr, StringIO.new
         | 
| 39 | 
            +
                    mock(Mortar::Auth).has_credentials{false}
         | 
| 35 40 | 
             
                    begin
         | 
| 36 41 | 
             
                      expect { ctrl.require_aws_keys }.to raise_error(SystemExit)
         | 
| 37 42 | 
             
                      $stderr.string.should eq(Mortar::Local::Controller::NO_AWS_KEYS_ERROR_MESSAGE.gsub(/^/, " !    "))
         | 
| @@ -40,6 +45,21 @@ module Mortar::Local | |
| 40 45 | 
             
                    end
         | 
| 41 46 | 
             
                  end
         | 
| 42 47 |  | 
| 48 | 
            +
                  it "exits if keys are not present, not logged in and api fails to return keys" do 
         | 
| 49 | 
            +
                    ENV.delete('AWS_ACCESS_KEY')
         | 
| 50 | 
            +
                    ctrl = Mortar::Local::Controller.new
         | 
| 51 | 
            +
                    previous_stderr, $stderr = $stderr, StringIO.new
         | 
| 52 | 
            +
                    mock(Mortar::Auth).has_credentials{true}
         | 
| 53 | 
            +
                    stub(Mortar::Command::Base).new {'base'}
         | 
| 54 | 
            +
                    mock(ctrl).fetch_aws_keys(Mortar::Auth, 'base'){{}}
         | 
| 55 | 
            +
                    begin
         | 
| 56 | 
            +
                      expect { ctrl.require_aws_keys }.to raise_error(SystemExit)
         | 
| 57 | 
            +
                      $stderr.string.should eq(Mortar::Local::Controller::API_CONFIG_ERROR_MESSAGE.gsub(/^/, " !    "))
         | 
| 58 | 
            +
                    ensure
         | 
| 59 | 
            +
                      $stderr = previous_stderr
         | 
| 60 | 
            +
                    end
         | 
| 61 | 
            +
                  end
         | 
| 62 | 
            +
             | 
| 43 63 | 
             
                  it "returns if they are present" do
         | 
| 44 64 | 
             
                    ctrl = Mortar::Local::Controller.new
         | 
| 45 65 | 
             
                    previous_stderr, $stderr = $stderr, StringIO.new
         | 
| @@ -50,6 +70,48 @@ module Mortar::Local | |
| 50 70 | 
             
                      $stderr = previous_stderr
         | 
| 51 71 | 
             
                    end
         | 
| 52 72 | 
             
                  end
         | 
| 73 | 
            +
                  
         | 
| 74 | 
            +
                  it "sets fetches and sets aws keys if missing and logged in" do
         | 
| 75 | 
            +
                    ENV.delete('AWS_ACCESS_KEY')
         | 
| 76 | 
            +
                    ctrl = Mortar::Local::Controller.new
         | 
| 77 | 
            +
                    stub(Mortar::Command::Base).new {'base'}
         | 
| 78 | 
            +
                    stub(Mortar::Auth).has_credentials{true}
         | 
| 79 | 
            +
                    previous_stderr, $stderr = $stderr, StringIO.new
         | 
| 80 | 
            +
                    mock(ctrl).fetch_aws_keys(Mortar::Auth, 'base'){ 
         | 
| 81 | 
            +
                      {
         | 
| 82 | 
            +
                        "aws_access_key_id"=>"key_id", 
         | 
| 83 | 
            +
                        "aws_secret_access_key"=>"secret"
         | 
| 84 | 
            +
                      }
         | 
| 85 | 
            +
                    }
         | 
| 86 | 
            +
                    begin
         | 
| 87 | 
            +
                      ctrl.require_aws_keys()
         | 
| 88 | 
            +
                      $stderr.string.should eq("")
         | 
| 89 | 
            +
                      ENV['AWS_ACCESS_KEY'].should eq("key_id")
         | 
| 90 | 
            +
                      ENV['AWS_SECRET_KEY'].should eq("secret")
         | 
| 91 | 
            +
                    ensure
         | 
| 92 | 
            +
                      $stderr = previous_stderr
         | 
| 93 | 
            +
                    end
         | 
| 94 | 
            +
                  end
         | 
| 95 | 
            +
             | 
| 96 | 
            +
             | 
| 97 | 
            +
                
         | 
| 98 | 
            +
                  it "fetches aws keys" do
         | 
| 99 | 
            +
                    ctrl = Mortar::Local::Controller.new
         | 
| 100 | 
            +
                    auth = Mortar::Auth        
         | 
| 101 | 
            +
                    
         | 
| 102 | 
            +
             | 
| 103 | 
            +
                    with_blank_project do
         | 
| 104 | 
            +
                      base = Mortar::Command::Base.new             
         | 
| 105 | 
            +
                      with_git_initialized_project do |p|
         | 
| 106 | 
            +
                        # stub api request
         | 
| 107 | 
            +
                        configs = {}
         | 
| 108 | 
            +
                        mock(Mortar::Auth.api).get_config_vars("myproject").returns(Excon::Response.new(:body => {"config" => configs}))
         | 
| 109 | 
            +
                        
         | 
| 110 | 
            +
                        ctrl.fetch_aws_keys(auth,base).should eq(configs)
         | 
| 111 | 
            +
                      end          
         | 
| 112 | 
            +
                    end        
         | 
| 113 | 
            +
                  end
         | 
| 114 | 
            +
             | 
| 53 115 |  | 
| 54 116 | 
             
                  it "returns if they are not present but override is in place" do
         | 
| 55 117 | 
             
                    ENV.delete('AWS_ACCESS_KEY')
         | 
| @@ -62,7 +124,7 @@ module Mortar::Local | |
| 62 124 | 
             
                    ensure
         | 
| 63 125 | 
             
                      $stderr = previous_stderr
         | 
| 64 126 | 
             
                    end
         | 
| 65 | 
            -
                  end
         | 
| 127 | 
            +
                  end      
         | 
| 66 128 |  | 
| 67 129 | 
             
                end
         | 
| 68 130 |  | 
    
        metadata
    CHANGED
    
    | @@ -1,32 +1,36 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification
         | 
| 2 2 | 
             
            name: mortar
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version
         | 
| 4 | 
            -
              version: 0.13. | 
| 4 | 
            +
              version: 0.13.2
         | 
| 5 | 
            +
              prerelease: 
         | 
| 5 6 | 
             
            platform: ruby
         | 
| 6 7 | 
             
            authors:
         | 
| 7 8 | 
             
            - Mortar Data
         | 
| 8 9 | 
             
            autorequire: 
         | 
| 9 10 | 
             
            bindir: bin
         | 
| 10 11 | 
             
            cert_chain: []
         | 
| 11 | 
            -
            date: 2014-01- | 
| 12 | 
            +
            date: 2014-01-21 00:00:00.000000000 Z
         | 
| 12 13 | 
             
            dependencies:
         | 
| 13 14 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 14 15 | 
             
              name: rdoc
         | 
| 15 16 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 17 | 
            +
                none: false
         | 
| 16 18 | 
             
                requirements:
         | 
| 17 | 
            -
                - - '>='
         | 
| 19 | 
            +
                - - ! '>='
         | 
| 18 20 | 
             
                  - !ruby/object:Gem::Version
         | 
| 19 21 | 
             
                    version: 4.0.0
         | 
| 20 22 | 
             
              type: :runtime
         | 
| 21 23 | 
             
              prerelease: false
         | 
| 22 24 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 25 | 
            +
                none: false
         | 
| 23 26 | 
             
                requirements:
         | 
| 24 | 
            -
                - - '>='
         | 
| 27 | 
            +
                - - ! '>='
         | 
| 25 28 | 
             
                  - !ruby/object:Gem::Version
         | 
| 26 29 | 
             
                    version: 4.0.0
         | 
| 27 30 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 28 31 | 
             
              name: mortar-api-ruby
         | 
| 29 32 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 33 | 
            +
                none: false
         | 
| 30 34 | 
             
                requirements:
         | 
| 31 35 | 
             
                - - ~>
         | 
| 32 36 | 
             
                  - !ruby/object:Gem::Version
         | 
| @@ -34,6 +38,7 @@ dependencies: | |
| 34 38 | 
             
              type: :runtime
         | 
| 35 39 | 
             
              prerelease: false
         | 
| 36 40 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 41 | 
            +
                none: false
         | 
| 37 42 | 
             
                requirements:
         | 
| 38 43 | 
             
                - - ~>
         | 
| 39 44 | 
             
                  - !ruby/object:Gem::Version
         | 
| @@ -41,6 +46,7 @@ dependencies: | |
| 41 46 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 42 47 | 
             
              name: netrc
         | 
| 43 48 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 49 | 
            +
                none: false
         | 
| 44 50 | 
             
                requirements:
         | 
| 45 51 | 
             
                - - ~>
         | 
| 46 52 | 
             
                  - !ruby/object:Gem::Version
         | 
| @@ -48,6 +54,7 @@ dependencies: | |
| 48 54 | 
             
              type: :runtime
         | 
| 49 55 | 
             
              prerelease: false
         | 
| 50 56 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 57 | 
            +
                none: false
         | 
| 51 58 | 
             
                requirements:
         | 
| 52 59 | 
             
                - - ~>
         | 
| 53 60 | 
             
                  - !ruby/object:Gem::Version
         | 
| @@ -55,6 +62,7 @@ dependencies: | |
| 55 62 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 56 63 | 
             
              name: launchy
         | 
| 57 64 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 65 | 
            +
                none: false
         | 
| 58 66 | 
             
                requirements:
         | 
| 59 67 | 
             
                - - ~>
         | 
| 60 68 | 
             
                  - !ruby/object:Gem::Version
         | 
| @@ -62,6 +70,7 @@ dependencies: | |
| 62 70 | 
             
              type: :runtime
         | 
| 63 71 | 
             
              prerelease: false
         | 
| 64 72 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 73 | 
            +
                none: false
         | 
| 65 74 | 
             
                requirements:
         | 
| 66 75 | 
             
                - - ~>
         | 
| 67 76 | 
             
                  - !ruby/object:Gem::Version
         | 
| @@ -69,6 +78,7 @@ dependencies: | |
| 69 78 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 70 79 | 
             
              name: parseconfig
         | 
| 71 80 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 81 | 
            +
                none: false
         | 
| 72 82 | 
             
                requirements:
         | 
| 73 83 | 
             
                - - ~>
         | 
| 74 84 | 
             
                  - !ruby/object:Gem::Version
         | 
| @@ -76,6 +86,7 @@ dependencies: | |
| 76 86 | 
             
              type: :runtime
         | 
| 77 87 | 
             
              prerelease: false
         | 
| 78 88 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 89 | 
            +
                none: false
         | 
| 79 90 | 
             
                requirements:
         | 
| 80 91 | 
             
                - - ~>
         | 
| 81 92 | 
             
                  - !ruby/object:Gem::Version
         | 
| @@ -83,6 +94,7 @@ dependencies: | |
| 83 94 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 84 95 | 
             
              name: excon
         | 
| 85 96 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 97 | 
            +
                none: false
         | 
| 86 98 | 
             
                requirements:
         | 
| 87 99 | 
             
                - - ~>
         | 
| 88 100 | 
             
                  - !ruby/object:Gem::Version
         | 
| @@ -90,6 +102,7 @@ dependencies: | |
| 90 102 | 
             
              type: :development
         | 
| 91 103 | 
             
              prerelease: false
         | 
| 92 104 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 105 | 
            +
                none: false
         | 
| 93 106 | 
             
                requirements:
         | 
| 94 107 | 
             
                - - ~>
         | 
| 95 108 | 
             
                  - !ruby/object:Gem::Version
         | 
| @@ -97,6 +110,7 @@ dependencies: | |
| 97 110 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 98 111 | 
             
              name: fakefs
         | 
| 99 112 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 113 | 
            +
                none: false
         | 
| 100 114 | 
             
                requirements:
         | 
| 101 115 | 
             
                - - ~>
         | 
| 102 116 | 
             
                  - !ruby/object:Gem::Version
         | 
| @@ -104,6 +118,7 @@ dependencies: | |
| 104 118 | 
             
              type: :development
         | 
| 105 119 | 
             
              prerelease: false
         | 
| 106 120 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 121 | 
            +
                none: false
         | 
| 107 122 | 
             
                requirements:
         | 
| 108 123 | 
             
                - - ~>
         | 
| 109 124 | 
             
                  - !ruby/object:Gem::Version
         | 
| @@ -111,57 +126,65 @@ dependencies: | |
| 111 126 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 112 127 | 
             
              name: gem-release
         | 
| 113 128 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 129 | 
            +
                none: false
         | 
| 114 130 | 
             
                requirements:
         | 
| 115 | 
            -
                - - '>='
         | 
| 131 | 
            +
                - - ! '>='
         | 
| 116 132 | 
             
                  - !ruby/object:Gem::Version
         | 
| 117 133 | 
             
                    version: '0'
         | 
| 118 134 | 
             
              type: :development
         | 
| 119 135 | 
             
              prerelease: false
         | 
| 120 136 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 137 | 
            +
                none: false
         | 
| 121 138 | 
             
                requirements:
         | 
| 122 | 
            -
                - - '>='
         | 
| 139 | 
            +
                - - ! '>='
         | 
| 123 140 | 
             
                  - !ruby/object:Gem::Version
         | 
| 124 141 | 
             
                    version: '0'
         | 
| 125 142 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 126 143 | 
             
              name: rake
         | 
| 127 144 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 145 | 
            +
                none: false
         | 
| 128 146 | 
             
                requirements:
         | 
| 129 | 
            -
                - - '>='
         | 
| 147 | 
            +
                - - ! '>='
         | 
| 130 148 | 
             
                  - !ruby/object:Gem::Version
         | 
| 131 149 | 
             
                    version: '0'
         | 
| 132 150 | 
             
              type: :development
         | 
| 133 151 | 
             
              prerelease: false
         | 
| 134 152 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 153 | 
            +
                none: false
         | 
| 135 154 | 
             
                requirements:
         | 
| 136 | 
            -
                - - '>='
         | 
| 155 | 
            +
                - - ! '>='
         | 
| 137 156 | 
             
                  - !ruby/object:Gem::Version
         | 
| 138 157 | 
             
                    version: '0'
         | 
| 139 158 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 140 159 | 
             
              name: rr
         | 
| 141 160 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 161 | 
            +
                none: false
         | 
| 142 162 | 
             
                requirements:
         | 
| 143 | 
            -
                - - '>='
         | 
| 163 | 
            +
                - - ! '>='
         | 
| 144 164 | 
             
                  - !ruby/object:Gem::Version
         | 
| 145 165 | 
             
                    version: '0'
         | 
| 146 166 | 
             
              type: :development
         | 
| 147 167 | 
             
              prerelease: false
         | 
| 148 168 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 169 | 
            +
                none: false
         | 
| 149 170 | 
             
                requirements:
         | 
| 150 | 
            -
                - - '>='
         | 
| 171 | 
            +
                - - ! '>='
         | 
| 151 172 | 
             
                  - !ruby/object:Gem::Version
         | 
| 152 173 | 
             
                    version: '0'
         | 
| 153 174 | 
             
            - !ruby/object:Gem::Dependency
         | 
| 154 175 | 
             
              name: rspec
         | 
| 155 176 | 
             
              requirement: !ruby/object:Gem::Requirement
         | 
| 177 | 
            +
                none: false
         | 
| 156 178 | 
             
                requirements:
         | 
| 157 | 
            -
                - - '>='
         | 
| 179 | 
            +
                - - ! '>='
         | 
| 158 180 | 
             
                  - !ruby/object:Gem::Version
         | 
| 159 181 | 
             
                    version: '0'
         | 
| 160 182 | 
             
              type: :development
         | 
| 161 183 | 
             
              prerelease: false
         | 
| 162 184 | 
             
              version_requirements: !ruby/object:Gem::Requirement
         | 
| 185 | 
            +
                none: false
         | 
| 163 186 | 
             
                requirements:
         | 
| 164 | 
            -
                - - '>='
         | 
| 187 | 
            +
                - - ! '>='
         | 
| 165 188 | 
             
                  - !ruby/object:Gem::Version
         | 
| 166 189 | 
             
                    version: '0'
         | 
| 167 190 | 
             
            description: Client library and command-line tool to interact with the Mortar service.
         | 
| @@ -296,25 +319,26 @@ files: | |
| 296 319 | 
             
            - spec/support/display_message_matcher.rb
         | 
| 297 320 | 
             
            homepage: http://mortardata.com/
         | 
| 298 321 | 
             
            licenses: []
         | 
| 299 | 
            -
            metadata: {}
         | 
| 300 322 | 
             
            post_install_message: 
         | 
| 301 323 | 
             
            rdoc_options: []
         | 
| 302 324 | 
             
            require_paths:
         | 
| 303 325 | 
             
            - lib
         | 
| 304 326 | 
             
            required_ruby_version: !ruby/object:Gem::Requirement
         | 
| 327 | 
            +
              none: false
         | 
| 305 328 | 
             
              requirements:
         | 
| 306 | 
            -
              - - '>='
         | 
| 329 | 
            +
              - - ! '>='
         | 
| 307 330 | 
             
                - !ruby/object:Gem::Version
         | 
| 308 331 | 
             
                  version: 1.8.7
         | 
| 309 332 | 
             
            required_rubygems_version: !ruby/object:Gem::Requirement
         | 
| 333 | 
            +
              none: false
         | 
| 310 334 | 
             
              requirements:
         | 
| 311 | 
            -
              - - '>='
         | 
| 335 | 
            +
              - - ! '>='
         | 
| 312 336 | 
             
                - !ruby/object:Gem::Version
         | 
| 313 337 | 
             
                  version: '0'
         | 
| 314 338 | 
             
            requirements: []
         | 
| 315 339 | 
             
            rubyforge_project: 
         | 
| 316 | 
            -
            rubygems_version:  | 
| 340 | 
            +
            rubygems_version: 1.8.24
         | 
| 317 341 | 
             
            signing_key: 
         | 
| 318 | 
            -
            specification_version:  | 
| 342 | 
            +
            specification_version: 3
         | 
| 319 343 | 
             
            summary: Client library and CLI to interact with the Mortar service.
         | 
| 320 344 | 
             
            test_files: []
         | 
    
        checksums.yaml
    DELETED
    
    | @@ -1,7 +0,0 @@ | |
| 1 | 
            -
            ---
         | 
| 2 | 
            -
            SHA1:
         | 
| 3 | 
            -
              metadata.gz: 67d3ed5faec8d91449aa2ff2a655473b299751b2
         | 
| 4 | 
            -
              data.tar.gz: f89c8144659270c49215daba688bd29396bc3f8e
         | 
| 5 | 
            -
            SHA512:
         | 
| 6 | 
            -
              metadata.gz: b24095b9ad94d8393fcd388fecab1be47bc91d63ab8054e5142598a73a3f52447c4b7a8138c890623f937afa160c88f36a365b67690b540ccf955c301ebe16c1
         | 
| 7 | 
            -
              data.tar.gz: dd41a82424d176336eb5525a15d1399f940e6fe4b5d6721474d751134f1565781585253456882ed3c3964ad34780217566625717f95ff92a1537ab6d7c577dbf
         |