td 0.11.3 → 0.11.4
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.
- checksums.yaml +8 -8
 - data/ChangeLog +10 -0
 - data/lib/td/command/common.rb +17 -8
 - data/lib/td/command/job.rb +38 -1
 - data/lib/td/command/list.rb +1 -1
 - data/lib/td/command/query.rb +3 -1
 - data/lib/td/command/runner.rb +10 -0
 - data/lib/td/command/table.rb +8 -3
 - data/lib/td/config.rb +10 -0
 - data/lib/td/updater.rb +5 -6
 - data/lib/td/version.rb +1 -1
 - data/td.gemspec +1 -1
 - metadata +4 -4
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,15 +1,15 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            !binary "U0hBMQ==":
         
     | 
| 
       3 
3 
     | 
    
         
             
              metadata.gz: !binary |-
         
     | 
| 
       4 
     | 
    
         
            -
                 
     | 
| 
      
 4 
     | 
    
         
            +
                NTM4MDYwMmE3YThiODA3Njc0ZmVhMDA4ODY5Yjk5NmZiOWNiZDFhNQ==
         
     | 
| 
       5 
5 
     | 
    
         
             
              data.tar.gz: !binary |-
         
     | 
| 
       6 
     | 
    
         
            -
                 
     | 
| 
      
 6 
     | 
    
         
            +
                MzM2MDI0MjAxZjc0Mjk2M2QwZDEyYTM1Y2NmNzhlYzkyY2YyNDBmYQ==
         
     | 
| 
       7 
7 
     | 
    
         
             
            SHA512:
         
     | 
| 
       8 
8 
     | 
    
         
             
              metadata.gz: !binary |-
         
     | 
| 
       9 
     | 
    
         
            -
                 
     | 
| 
       10 
     | 
    
         
            -
                 
     | 
| 
       11 
     | 
    
         
            -
                 
     | 
| 
      
 9 
     | 
    
         
            +
                MGQ3YWY3NTRhMDJmNzU4OWMwY2M2YmY0ODliZTAwM2E3MTIwZGVkYjUxNWVk
         
     | 
| 
      
 10 
     | 
    
         
            +
                Y2ZiYjhiNDQxOGQ2YjExZTg0ZDU2NjRiZTQ4YTZmY2E1YTc2YWQzZDI0MGU3
         
     | 
| 
      
 11 
     | 
    
         
            +
                ZWM1OGZhZGU1NzQ2NTgzNzYyOTQwZWFjNzdiYmE0M2E5ZGJlZDg=
         
     | 
| 
       12 
12 
     | 
    
         
             
              data.tar.gz: !binary |-
         
     | 
| 
       13 
     | 
    
         
            -
                 
     | 
| 
       14 
     | 
    
         
            -
                 
     | 
| 
       15 
     | 
    
         
            -
                 
     | 
| 
      
 13 
     | 
    
         
            +
                MzRlMTE0NDdiNjE5YmMzNGEyN2MyZjRmNDgyNjIxYjU1MjllNTc2YjA5YmJh
         
     | 
| 
      
 14 
     | 
    
         
            +
                OTQ4OTY2M2QxNjEzNDQ3NThjMTE2NzdiZjFhODU5NGJjY2U1YzNjOGRjYmY2
         
     | 
| 
      
 15 
     | 
    
         
            +
                NDU1NDZlMzNkMTgwNDlhZDRhOWRhOGQ1Y2Y1OGE2NTliZTc5ZmI=
         
     | 
    
        data/ChangeLog
    CHANGED
    
    | 
         @@ -1,3 +1,13 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            == 2014-09-25 version 0.11.4
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            * Expand file path containing wildcards and not escaped by the underlying shell
         
     | 
| 
      
 4 
     | 
    
         
            +
            * Add a global '-r / --retry-post-requests' option to enable the td-client-ruby
         
     | 
| 
      
 5 
     | 
    
         
            +
              retrying mechanism for post request. 
         
     | 
| 
      
 6 
     | 
    
         
            +
              Note: -r option must be right after 'td' before subcommands like: td -r query
         
     | 
| 
      
 7 
     | 
    
         
            +
              WARNING: enabling this option can lead to unexpected results because the
         
     | 
| 
      
 8 
     | 
    
         
            +
              retrying mechanism can caused the creation of duplicated resources since the
         
     | 
| 
      
 9 
     | 
    
         
            +
              POST methods are not idempotent.
         
     | 
| 
      
 10 
     | 
    
         
            +
             
     | 
| 
       1 
11 
     | 
    
         
             
            == 2014-07-31 version 0.11.3
         
     | 
| 
       2 
12 
     | 
    
         | 
| 
       3 
13 
     | 
    
         
             
            * Support name updates for schedules using sched:update command
         
     | 
    
        data/lib/td/command/common.rb
    CHANGED
    
    | 
         @@ -32,6 +32,9 @@ module Command 
     | 
|
| 
       32 
32 
     | 
    
         
             
                unless opts.has_key?(:ssl)
         
     | 
| 
       33 
33 
     | 
    
         
             
                  opts[:ssl] = Config.secure
         
     | 
| 
       34 
34 
     | 
    
         
             
                end
         
     | 
| 
      
 35 
     | 
    
         
            +
                unless opts.has_key?(:retry_post_requests)
         
     | 
| 
      
 36 
     | 
    
         
            +
                  opts[:retry_post_requests] = Config.retry_post_requests
         
     | 
| 
      
 37 
     | 
    
         
            +
                end
         
     | 
| 
       35 
38 
     | 
    
         | 
| 
       36 
39 
     | 
    
         
             
                # apikey is mandatory
         
     | 
| 
       37 
40 
     | 
    
         
             
                apikey = Config.apikey
         
     | 
| 
         @@ -373,17 +376,23 @@ EOS 
     | 
|
| 
       373 
376 
     | 
    
         
             
                end
         
     | 
| 
       374 
377 
     | 
    
         | 
| 
       375 
378 
     | 
    
         
             
                def update(curr_size)
         
     | 
| 
       376 
     | 
    
         
            -
                   
     | 
| 
       377 
     | 
    
         
            -
             
     | 
| 
       378 
     | 
    
         
            -
                     (!@min_periodicity || (time = Time.now.to_i) - @last_time >= @min_periodicity)
         
     | 
| 
       379 
     | 
    
         
            -
                    msg = "\r#{@base_msg}: #{Command.humanize_bytesize(curr_size)} / #{ratio}%"
         
     | 
| 
       380 
     | 
    
         
            -
                    print "\r" + " " * (msg.length + 10)
         
     | 
| 
      
 379 
     | 
    
         
            +
                  if @size.nil? || @size == 0
         
     | 
| 
      
 380 
     | 
    
         
            +
                    msg = "\r#{@base_msg}: #{Command.humanize_bytesize(curr_size)}"
         
     | 
| 
       381 
381 
     | 
    
         
             
                    print msg
         
     | 
| 
       382 
     | 
    
         
            -
                    @last_perc_step = ratio
         
     | 
| 
       383 
     | 
    
         
            -
                    @last_time = time
         
     | 
| 
       384 
382 
     | 
    
         
             
                    true
         
     | 
| 
       385 
383 
     | 
    
         
             
                  else
         
     | 
| 
       386 
     | 
    
         
            -
                     
     | 
| 
      
 384 
     | 
    
         
            +
                    ratio = (curr_size.to_f * 100 / @size).round(1)
         
     | 
| 
      
 385 
     | 
    
         
            +
                    if ratio >= (@last_perc_step + @perc_step) &&
         
     | 
| 
      
 386 
     | 
    
         
            +
                       (!@min_periodicity || (time = Time.now.to_i) - @last_time >= @min_periodicity)
         
     | 
| 
      
 387 
     | 
    
         
            +
                      msg = "\r#{@base_msg}: #{Command.humanize_bytesize(curr_size)} / #{ratio}%"
         
     | 
| 
      
 388 
     | 
    
         
            +
                      print "\r" + " " * (msg.length + 10)
         
     | 
| 
      
 389 
     | 
    
         
            +
                      print msg
         
     | 
| 
      
 390 
     | 
    
         
            +
                      @last_perc_step = ratio
         
     | 
| 
      
 391 
     | 
    
         
            +
                      @last_time = time
         
     | 
| 
      
 392 
     | 
    
         
            +
                      true
         
     | 
| 
      
 393 
     | 
    
         
            +
                    else
         
     | 
| 
      
 394 
     | 
    
         
            +
                      false
         
     | 
| 
      
 395 
     | 
    
         
            +
                    end
         
     | 
| 
       387 
396 
     | 
    
         
             
                  end
         
     | 
| 
       388 
397 
     | 
    
         
             
                end
         
     | 
| 
       389 
398 
     | 
    
         | 
    
        data/lib/td/command/job.rb
    CHANGED
    
    | 
         @@ -116,6 +116,9 @@ module Command 
     | 
|
| 
       116 
116 
     | 
    
         
             
                  render_opts[:vertical] = b
         
     | 
| 
       117 
117 
     | 
    
         
             
                }
         
     | 
| 
       118 
118 
     | 
    
         
             
                op.on('-o', '--output PATH', 'write result to the file') {|s|
         
     | 
| 
      
 119 
     | 
    
         
            +
                  unless Dir.exist?(File.dirname(s))
         
     | 
| 
      
 120 
     | 
    
         
            +
                    s = File.expand_path(s)
         
     | 
| 
      
 121 
     | 
    
         
            +
                  end
         
     | 
| 
       119 
122 
     | 
    
         
             
                  output = s
         
     | 
| 
       120 
123 
     | 
    
         
             
                  format = 'tsv' if format.nil?
         
     | 
| 
       121 
124 
     | 
    
         
             
                }
         
     | 
| 
         @@ -190,14 +193,34 @@ module Command 
     | 
|
| 
       190 
193 
     | 
    
         
             
                  end
         
     | 
| 
       191 
194 
     | 
    
         
             
                end
         
     | 
| 
       192 
195 
     | 
    
         | 
| 
      
 196 
     | 
    
         
            +
                # up to 7 retries with exponential (base 2) back-off starting at 'retry_delay'
         
     | 
| 
      
 197 
     | 
    
         
            +
                retry_delay = 5
         
     | 
| 
      
 198 
     | 
    
         
            +
                max_cumul_retry_delay = 200
         
     | 
| 
      
 199 
     | 
    
         
            +
                cumul_retry_delay = 0
         
     | 
| 
      
 200 
     | 
    
         
            +
             
     | 
| 
       193 
201 
     | 
    
         
             
                if wait && !job.finished?
         
     | 
| 
       194 
202 
     | 
    
         
             
                  wait_job(job)
         
     | 
| 
       195 
203 
     | 
    
         
             
                  if [:hive, :pig, :impala, :presto].include?(job.type) && !exclude
         
     | 
| 
       196 
204 
     | 
    
         
             
                    puts "Result      :"
         
     | 
| 
      
 205 
     | 
    
         
            +
             
     | 
| 
       197 
206 
     | 
    
         
             
                    begin
         
     | 
| 
       198 
207 
     | 
    
         
             
                      show_result(job, output, limit, format, render_opts)
         
     | 
| 
       199 
208 
     | 
    
         
             
                    rescue TreasureData::NotFoundError => e
         
     | 
| 
       200 
209 
     | 
    
         
             
                      # Got 404 because result not found.
         
     | 
| 
      
 210 
     | 
    
         
            +
                    rescue TreasureData::APIError, # HTTP status code 500 or more
         
     | 
| 
      
 211 
     | 
    
         
            +
                           Errno::ECONNREFUSED, Errno::ECONNRESET, Timeout::Error, EOFError => e
         
     | 
| 
      
 212 
     | 
    
         
            +
                      # don't retry on 300 and 400 errors
         
     | 
| 
      
 213 
     | 
    
         
            +
                      if e.class == TreasureData::APIError && e.message !~ /^5\d\d:\s+/
         
     | 
| 
      
 214 
     | 
    
         
            +
                        raise e
         
     | 
| 
      
 215 
     | 
    
         
            +
                      end
         
     | 
| 
      
 216 
     | 
    
         
            +
                      if cumul_retry_delay > max_cumul_retry_delay
         
     | 
| 
      
 217 
     | 
    
         
            +
                        raise e
         
     | 
| 
      
 218 
     | 
    
         
            +
                      end
         
     | 
| 
      
 219 
     | 
    
         
            +
                      $stderr.puts "Error #{e.class}: #{e.message}. Retrying after #{retry_delay} seconds..."
         
     | 
| 
      
 220 
     | 
    
         
            +
                      sleep retry_delay
         
     | 
| 
      
 221 
     | 
    
         
            +
                      cumul_retry_delay += retry_delay
         
     | 
| 
      
 222 
     | 
    
         
            +
                      retry_delay *= 2
         
     | 
| 
      
 223 
     | 
    
         
            +
                      retry
         
     | 
| 
       201 
224 
     | 
    
         
             
                    end
         
     | 
| 
       202 
225 
     | 
    
         
             
                  end
         
     | 
| 
       203 
226 
     | 
    
         | 
| 
         @@ -208,6 +231,20 @@ module Command 
     | 
|
| 
       208 
231 
     | 
    
         
             
                      show_result(job, output, limit, format, render_opts)
         
     | 
| 
       209 
232 
     | 
    
         
             
                    rescue TreasureData::NotFoundError => e
         
     | 
| 
       210 
233 
     | 
    
         
             
                      # Got 404 because result not found.
         
     | 
| 
      
 234 
     | 
    
         
            +
                    rescue TreasureData::APIError,
         
     | 
| 
      
 235 
     | 
    
         
            +
                           Errno::ECONNREFUSED, Errno::ECONNRESET, Timeout::Error, EOFError => e
         
     | 
| 
      
 236 
     | 
    
         
            +
                      # don't retry on 300 and 400 errors
         
     | 
| 
      
 237 
     | 
    
         
            +
                      if e.class == TreasureData::APIError && e.message !~ /^5\d\d:\s+/
         
     | 
| 
      
 238 
     | 
    
         
            +
                        raise e
         
     | 
| 
      
 239 
     | 
    
         
            +
                      end
         
     | 
| 
      
 240 
     | 
    
         
            +
                      if cumul_retry_delay > max_cumul_retry_delay
         
     | 
| 
      
 241 
     | 
    
         
            +
                        raise e
         
     | 
| 
      
 242 
     | 
    
         
            +
                      end
         
     | 
| 
      
 243 
     | 
    
         
            +
                      $stderr.puts "Error #{e.class}: #{e.message}. Retrying after #{retry_delay} seconds..."
         
     | 
| 
      
 244 
     | 
    
         
            +
                      sleep retry_delay
         
     | 
| 
      
 245 
     | 
    
         
            +
                      cumul_retry_delay += retry_delay
         
     | 
| 
      
 246 
     | 
    
         
            +
                      retry_delay *= 2
         
     | 
| 
      
 247 
     | 
    
         
            +
                      retry
         
     | 
| 
       211 
248 
     | 
    
         
             
                    end
         
     | 
| 
       212 
249 
     | 
    
         
             
                  end
         
     | 
| 
       213 
250 
     | 
    
         | 
| 
         @@ -229,7 +266,7 @@ module Command 
     | 
|
| 
       229 
266 
     | 
    
         
             
                  end
         
     | 
| 
       230 
267 
     | 
    
         
             
                end
         
     | 
| 
       231 
268 
     | 
    
         | 
| 
       232 
     | 
    
         
            -
                puts " 
     | 
| 
      
 269 
     | 
    
         
            +
                puts "\rUse '-v' option to show detailed messages." + " " * 20 unless verbose
         
     | 
| 
       233 
270 
     | 
    
         
             
              end
         
     | 
| 
       234 
271 
     | 
    
         | 
| 
       235 
272 
     | 
    
         
             
              def job_status(op)
         
     | 
    
        data/lib/td/command/list.rb
    CHANGED
    
    | 
         @@ -303,7 +303,7 @@ module List 
     | 
|
| 
       303 
303 
     | 
    
         
             
              add_list 'user:apikey:list', %w[name], 'Show API keys of an user'
         
     | 
| 
       304 
304 
     | 
    
         
             
              add_list 'user:apikey:add', %w[name], 'Add an API key to an user'
         
     | 
| 
       305 
305 
     | 
    
         
             
              add_list 'user:apikey:remove', %w[name apikey], 'Remove an API key from an user'
         
     | 
| 
       306 
     | 
    
         
            -
              add_list 'user:password:change', %w[name], 'Change password'
         
     | 
| 
      
 306 
     | 
    
         
            +
              add_list 'user:password:change', %w[name], 'Change password for any user (must be an Administrator)'
         
     | 
| 
       307 
307 
     | 
    
         | 
| 
       308 
308 
     | 
    
         
             
              add_list 'acl:list', %w[], 'Show list of access controls'
         
     | 
| 
       309 
309 
     | 
    
         
             
              add_list 'acl:grant', %w[subject action scope], 'Grant an access control'
         
     | 
    
        data/lib/td/command/query.rb
    CHANGED
    
    | 
         @@ -1,4 +1,3 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
             
     | 
| 
       2 
1 
     | 
    
         
             
            module TreasureData
         
     | 
| 
       3 
2 
     | 
    
         
             
            module Command
         
     | 
| 
       4 
3 
     | 
    
         | 
| 
         @@ -28,6 +27,9 @@ module Command 
     | 
|
| 
       28 
27 
     | 
    
         
             
                  render_opts[:vertical] = b
         
     | 
| 
       29 
28 
     | 
    
         
             
                }
         
     | 
| 
       30 
29 
     | 
    
         
             
                op.on('-o', '--output PATH', 'write result to the file') {|s|
         
     | 
| 
      
 30 
     | 
    
         
            +
                  unless Dir.exist?(File.dirname(s))
         
     | 
| 
      
 31 
     | 
    
         
            +
                    s = File.expand_path(s)
         
     | 
| 
      
 32 
     | 
    
         
            +
                  end
         
     | 
| 
       31 
33 
     | 
    
         
             
                  output = s
         
     | 
| 
       32 
34 
     | 
    
         
             
                  format = 'tsv' if format.nil?
         
     | 
| 
       33 
35 
     | 
    
         
             
                }
         
     | 
    
        data/lib/td/command/runner.rb
    CHANGED
    
    | 
         @@ -74,6 +74,7 @@ EOF 
     | 
|
| 
       74 
74 
     | 
    
         
             
                insecure = nil
         
     | 
| 
       75 
75 
     | 
    
         
             
                $verbose = false
         
     | 
| 
       76 
76 
     | 
    
         
             
                #$debug = false
         
     | 
| 
      
 77 
     | 
    
         
            +
                retry_post_requests = false
         
     | 
| 
       77 
78 
     | 
    
         | 
| 
       78 
79 
     | 
    
         
             
                op.on('-c', '--config PATH', "path to the configuration file (default: ~/.td/td.conf)") {|s|
         
     | 
| 
       79 
80 
     | 
    
         
             
                  config_path = s
         
     | 
| 
         @@ -107,6 +108,12 @@ EOF 
     | 
|
| 
       107 
108 
     | 
    
         
             
                  return usage nil
         
     | 
| 
       108 
109 
     | 
    
         
             
                }
         
     | 
| 
       109 
110 
     | 
    
         | 
| 
      
 111 
     | 
    
         
            +
                op.on('-r', '--retry-post-requests', "retry on failed post requests.",
         
     | 
| 
      
 112 
     | 
    
         
            +
                                                     "Warning: can cause resource duplication, such as duplicated job submissions.",
         
     | 
| 
      
 113 
     | 
    
         
            +
                                                     TrueClass) {|b|
         
     | 
| 
      
 114 
     | 
    
         
            +
                  retry_post_requests = b
         
     | 
| 
      
 115 
     | 
    
         
            +
                }
         
     | 
| 
      
 116 
     | 
    
         
            +
             
     | 
| 
       110 
117 
     | 
    
         
             
                op.on('--version', "show version") {
         
     | 
| 
       111 
118 
     | 
    
         
             
                  puts op.version
         
     | 
| 
       112 
119 
     | 
    
         
             
                  return 0
         
     | 
| 
         @@ -134,6 +141,9 @@ EOF 
     | 
|
| 
       134 
141 
     | 
    
         
             
                  if insecure
         
     | 
| 
       135 
142 
     | 
    
         
             
                    Config.secure = false
         
     | 
| 
       136 
143 
     | 
    
         
             
                  end
         
     | 
| 
      
 144 
     | 
    
         
            +
                  if retry_post_requests
         
     | 
| 
      
 145 
     | 
    
         
            +
                    Config.retry_post_requests = true
         
     | 
| 
      
 146 
     | 
    
         
            +
                  end
         
     | 
| 
       137 
147 
     | 
    
         
             
                rescue
         
     | 
| 
       138 
148 
     | 
    
         
             
                  return usage $!.to_s
         
     | 
| 
       139 
149 
     | 
    
         
             
                end
         
     | 
    
        data/lib/td/command/table.rb
    CHANGED
    
    | 
         @@ -349,7 +349,9 @@ module Command 
     | 
|
| 
       349 
349 
     | 
    
         
             
                to = nil
         
     | 
| 
       350 
350 
     | 
    
         
             
                wait = false
         
     | 
| 
       351 
351 
     | 
    
         | 
| 
       352 
     | 
    
         
            -
                op.on('-t', '--to TIME', 'end time of logs to delete in Unix time multiple of 3600 (1 hour)' 
     | 
| 
      
 352 
     | 
    
         
            +
                op.on('-t', '--to TIME', 'end time of logs to delete in Unix time multiple of 3600 (1 hour)',
         
     | 
| 
      
 353 
     | 
    
         
            +
                                         '  or Ruby time string format (e.g. \'2014-07-01 14:00:00 JST\') where',
         
     | 
| 
      
 354 
     | 
    
         
            +
                                         '  the minutes and seconds are required to be 0.') {|s|
         
     | 
| 
       353 
355 
     | 
    
         
             
                  if s.to_i.to_s == s
         
     | 
| 
       354 
356 
     | 
    
         
             
                    # UNIX time
         
     | 
| 
       355 
357 
     | 
    
         
             
                    to = s.to_i
         
     | 
| 
         @@ -358,7 +360,9 @@ module Command 
     | 
|
| 
       358 
360 
     | 
    
         
             
                    to = Time.parse(s).to_i
         
     | 
| 
       359 
361 
     | 
    
         
             
                  end
         
     | 
| 
       360 
362 
     | 
    
         
             
                }
         
     | 
| 
       361 
     | 
    
         
            -
                op.on('-f', '--from TIME', 'start time of logs to delete in Unix time multiple of 3600 (1 hour)' 
     | 
| 
      
 363 
     | 
    
         
            +
                op.on('-f', '--from TIME', 'start time of logs to delete in Unix time multiple of 3600 (1 hour)',
         
     | 
| 
      
 364 
     | 
    
         
            +
                                           '  or Ruby time string format (e.g. \'2014-07-01 13:00:00 JST\') where',
         
     | 
| 
      
 365 
     | 
    
         
            +
                                           '  the minutes and seconds are required to be 0.') {|s|
         
     | 
| 
       362 
366 
     | 
    
         
             
                  if s.to_i.to_s == s
         
     | 
| 
       363 
367 
     | 
    
         
             
                    from = s.to_i
         
     | 
| 
       364 
368 
     | 
    
         
             
                  else
         
     | 
| 
         @@ -383,7 +387,8 @@ module Command 
     | 
|
| 
       383 
387 
     | 
    
         
             
                end
         
     | 
| 
       384 
388 
     | 
    
         | 
| 
       385 
389 
     | 
    
         
             
                if from % 3600 != 0 || to % 3600 != 0
         
     | 
| 
       386 
     | 
    
         
            -
                  $stderr.puts "Time for the -f / --from and -t / --to options must be a multiple of 3600 (1 hour)"
         
     | 
| 
      
 390 
     | 
    
         
            +
                  $stderr.puts "Time for the -f / --from and -t / --to options must either be a multiple of 3600 (1 hour)\n" +
         
     | 
| 
      
 391 
     | 
    
         
            +
                               "  or be expressed in Ruby time string format where the minutes and seconds are 0"
         
     | 
| 
       387 
392 
     | 
    
         
             
                  exit 1
         
     | 
| 
       388 
393 
     | 
    
         
             
                end
         
     | 
| 
       389 
394 
     | 
    
         | 
    
        data/lib/td/config.rb
    CHANGED
    
    | 
         @@ -22,6 +22,7 @@ class Config 
     | 
|
| 
       22 
22 
     | 
    
         
             
              @@endpoint = nil if @@endpoint == ""
         
     | 
| 
       23 
23 
     | 
    
         
             
              @@cl_endpoint = false # flag to indicate whether an endpoint has been provided through the command-line
         
     | 
| 
       24 
24 
     | 
    
         
             
              @@secure = true
         
     | 
| 
      
 25 
     | 
    
         
            +
              @@retry_post_requests = false
         
     | 
| 
       25 
26 
     | 
    
         | 
| 
       26 
27 
     | 
    
         
             
              def initialize
         
     | 
| 
       27 
28 
     | 
    
         
             
                @path = nil
         
     | 
| 
         @@ -117,6 +118,15 @@ class Config 
     | 
|
| 
       117 
118 
     | 
    
         
             
              end
         
     | 
| 
       118 
119 
     | 
    
         | 
| 
       119 
120 
     | 
    
         | 
| 
      
 121 
     | 
    
         
            +
              def self.retry_post_requests
         
     | 
| 
      
 122 
     | 
    
         
            +
                @@retry_post_requests
         
     | 
| 
      
 123 
     | 
    
         
            +
              end
         
     | 
| 
      
 124 
     | 
    
         
            +
             
     | 
| 
      
 125 
     | 
    
         
            +
              def self.retry_post_requests=(retry_post_requests)
         
     | 
| 
      
 126 
     | 
    
         
            +
                @@retry_post_requests = retry_post_requests
         
     | 
| 
      
 127 
     | 
    
         
            +
              end
         
     | 
| 
      
 128 
     | 
    
         
            +
             
     | 
| 
      
 129 
     | 
    
         
            +
             
     | 
| 
       120 
130 
     | 
    
         
             
              def self.apikey
         
     | 
| 
       121 
131 
     | 
    
         
             
                @@apikey || Config.read['account.apikey']
         
     | 
| 
       122 
132 
     | 
    
         
             
              end
         
     | 
    
        data/lib/td/updater.rb
    CHANGED
    
    | 
         @@ -11,7 +11,7 @@ module Updater 
     | 
|
| 
       11 
11 
     | 
    
         | 
| 
       12 
12 
     | 
    
         
             
              def self.raise_error(message)
         
     | 
| 
       13 
13 
     | 
    
         
             
                # TODO: Replace better Exception class
         
     | 
| 
       14 
     | 
    
         
            -
                raise  
     | 
| 
      
 14 
     | 
    
         
            +
                raise Command::UpdateError, message
         
     | 
| 
       15 
15 
     | 
    
         
             
              end
         
     | 
| 
       16 
16 
     | 
    
         | 
| 
       17 
17 
     | 
    
         
             
              # copied from TreasureData::Helpers to avoid load issue.
         
     | 
| 
         @@ -132,8 +132,7 @@ module Updater 
     | 
|
| 
       132 
132 
     | 
    
         
             
                when Net::HTTPSuccess then response.body
         
     | 
| 
       133 
133 
     | 
    
         
             
                when Net::HTTPRedirection then fetch(response['Location'])
         
     | 
| 
       134 
134 
     | 
    
         
             
                else
         
     | 
| 
       135 
     | 
    
         
            -
                   
     | 
| 
       136 
     | 
    
         
            -
                        "An error occurred when fetching from '#{url}'."
         
     | 
| 
      
 135 
     | 
    
         
            +
                  raise_error "An error occurred when fetching from '#{url}'."
         
     | 
| 
       137 
136 
     | 
    
         
             
                  response.error!
         
     | 
| 
       138 
137 
     | 
    
         
             
                end
         
     | 
| 
       139 
138 
     | 
    
         
             
              end
         
     | 
| 
         @@ -290,9 +289,9 @@ module Updater 
     | 
|
| 
       290 
289 
     | 
    
         
             
                    end
         
     | 
| 
       291 
290 
     | 
    
         
             
                    return stream_fetch(response['Location'], binfile, &progress)
         
     | 
| 
       292 
291 
     | 
    
         
             
                  else
         
     | 
| 
       293 
     | 
    
         
            -
                     
     | 
| 
       294 
     | 
    
         
            -
             
     | 
| 
       295 
     | 
    
         
            -
             
     | 
| 
      
 292 
     | 
    
         
            +
                    raise_error
         
     | 
| 
      
 293 
     | 
    
         
            +
                      "An error occurred when fetching from '#{uri}' " +
         
     | 
| 
      
 294 
     | 
    
         
            +
                      "(#{response.class.to_s}: #{response.message})."
         
     | 
| 
       296 
295 
     | 
    
         
             
                    return false
         
     | 
| 
       297 
296 
     | 
    
         
             
                  end
         
     | 
| 
       298 
297 
     | 
    
         
             
                }
         
     | 
    
        data/lib/td/version.rb
    CHANGED
    
    
    
        data/td.gemspec
    CHANGED
    
    | 
         @@ -21,7 +21,7 @@ Gem::Specification.new do |gem| 
     | 
|
| 
       21 
21 
     | 
    
         
             
              gem.add_dependency "yajl-ruby", "~> 1.1"
         
     | 
| 
       22 
22 
     | 
    
         
             
              gem.add_dependency "hirb", ">= 0.4.5"
         
     | 
| 
       23 
23 
     | 
    
         
             
              gem.add_dependency "parallel", "~> 0.6.1"
         
     | 
| 
       24 
     | 
    
         
            -
              gem.add_dependency "td-client", "~> 0.8. 
     | 
| 
      
 24 
     | 
    
         
            +
              gem.add_dependency "td-client", "~> 0.8.64"
         
     | 
| 
       25 
25 
     | 
    
         
             
              gem.add_dependency "td-logger", "~> 0.3.21"
         
     | 
| 
       26 
26 
     | 
    
         
             
              gem.add_dependency "rubyzip", "~> 0.9.9"
         
     | 
| 
       27 
27 
     | 
    
         
             
              gem.add_development_dependency "rake", "~> 0.9"
         
     | 
    
        metadata
    CHANGED
    
    | 
         @@ -1,14 +1,14 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: td
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 0.11. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 0.11.4
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors:
         
     | 
| 
       7 
7 
     | 
    
         
             
            - Treasure Data, Inc.
         
     | 
| 
       8 
8 
     | 
    
         
             
            autorequire: 
         
     | 
| 
       9 
9 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       10 
10 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       11 
     | 
    
         
            -
            date: 2014- 
     | 
| 
      
 11 
     | 
    
         
            +
            date: 2014-09-26 00:00:00.000000000 Z
         
     | 
| 
       12 
12 
     | 
    
         
             
            dependencies:
         
     | 
| 
       13 
13 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       14 
14 
     | 
    
         
             
              name: msgpack
         
     | 
| 
         @@ -102,14 +102,14 @@ dependencies: 
     | 
|
| 
       102 
102 
     | 
    
         
             
                requirements:
         
     | 
| 
       103 
103 
     | 
    
         
             
                - - ~>
         
     | 
| 
       104 
104 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       105 
     | 
    
         
            -
                    version: 0.8. 
     | 
| 
      
 105 
     | 
    
         
            +
                    version: 0.8.64
         
     | 
| 
       106 
106 
     | 
    
         
             
              type: :runtime
         
     | 
| 
       107 
107 
     | 
    
         
             
              prerelease: false
         
     | 
| 
       108 
108 
     | 
    
         
             
              version_requirements: !ruby/object:Gem::Requirement
         
     | 
| 
       109 
109 
     | 
    
         
             
                requirements:
         
     | 
| 
       110 
110 
     | 
    
         
             
                - - ~>
         
     | 
| 
       111 
111 
     | 
    
         
             
                  - !ruby/object:Gem::Version
         
     | 
| 
       112 
     | 
    
         
            -
                    version: 0.8. 
     | 
| 
      
 112 
     | 
    
         
            +
                    version: 0.8.64
         
     | 
| 
       113 
113 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       114 
114 
     | 
    
         
             
              name: td-logger
         
     | 
| 
       115 
115 
     | 
    
         
             
              requirement: !ruby/object:Gem::Requirement
         
     |