failbot 2.5.4 → 2.5.5
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 +4 -4
 - data/lib/failbot.rb +15 -7
 - data/lib/failbot/haystack.rb +6 -1
 - data/lib/failbot/http_backend.rb +11 -2
 - data/lib/failbot/version.rb +1 -1
 - metadata +2 -2
 
    
        checksums.yaml
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            ---
         
     | 
| 
       2 
2 
     | 
    
         
             
            SHA256:
         
     | 
| 
       3 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       4 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 3 
     | 
    
         
            +
              metadata.gz: ef2b30021fd84983545c9fa374d030d9c1269d3ef51b778cf84d55fe96fde087
         
     | 
| 
      
 4 
     | 
    
         
            +
              data.tar.gz: 998dde878c99c47177d03ff693625e05f1522009d84bf4e5f1a12a0fb398ad0e
         
     | 
| 
       5 
5 
     | 
    
         
             
            SHA512:
         
     | 
| 
       6 
     | 
    
         
            -
              metadata.gz:  
     | 
| 
       7 
     | 
    
         
            -
              data.tar.gz:  
     | 
| 
      
 6 
     | 
    
         
            +
              metadata.gz: 774ccebb4f0b04886309e32840d73f17b0278388a73aa6a15541870c791a832f68c767b140ed1d62527feff87ae880aedebf60e942946c103116103c32bda9be
         
     | 
| 
      
 7 
     | 
    
         
            +
              data.tar.gz: 778c39eea60f8acdd0b53246401351e1373bf9386259fde67adfb86c0956baa8780fdda6afcf01f942ee6327aa8672390ec57d699e93ade429c8123b6f5ef3a6
         
     | 
    
        data/lib/failbot.rb
    CHANGED
    
    | 
         @@ -142,6 +142,18 @@ module Failbot 
     | 
|
| 
       142 
142 
     | 
    
         
             
                end
         
     | 
| 
       143 
143 
     | 
    
         | 
| 
       144 
144 
     | 
    
         
             
                populate_context_from_settings(settings)
         
     | 
| 
      
 145 
     | 
    
         
            +
                @enable_timeout = false
         
     | 
| 
      
 146 
     | 
    
         
            +
                if settings.key?("FAILBOT_TIMEOUT_MS")
         
     | 
| 
      
 147 
     | 
    
         
            +
                  @timeout_seconds = settings["FAILBOT_TIMEOUT_MS"].to_f / 1000
         
     | 
| 
      
 148 
     | 
    
         
            +
                  @enable_timeout = (@timeout_seconds > 0.0)
         
     | 
| 
      
 149 
     | 
    
         
            +
                end
         
     | 
| 
      
 150 
     | 
    
         
            +
             
     | 
| 
      
 151 
     | 
    
         
            +
                @connect_timeout_seconds = nil
         
     | 
| 
      
 152 
     | 
    
         
            +
                if settings.key?("FAILBOT_CONNECT_TIMEOUT_MS")
         
     | 
| 
      
 153 
     | 
    
         
            +
                  @connect_timeout_seconds = settings["FAILBOT_CONNECT_TIMEOUT_MS"].to_f / 1000
         
     | 
| 
      
 154 
     | 
    
         
            +
                  # unset the value if it's not parsing to something valid
         
     | 
| 
      
 155 
     | 
    
         
            +
                  @connect_timeout_seconds = nil unless @connect_timeout_seconds > 0
         
     | 
| 
      
 156 
     | 
    
         
            +
                end
         
     | 
| 
       145 
157 
     | 
    
         | 
| 
       146 
158 
     | 
    
         
             
                self.backend =
         
     | 
| 
       147 
159 
     | 
    
         
             
                  case (name = settings["FAILBOT_BACKEND"])
         
     | 
| 
         @@ -152,7 +164,7 @@ module Failbot 
     | 
|
| 
       152 
164 
     | 
    
         
             
                  when "file"
         
     | 
| 
       153 
165 
     | 
    
         
             
                    Failbot::FileBackend.new(settings["FAILBOT_BACKEND_FILE_PATH"])
         
     | 
| 
       154 
166 
     | 
    
         
             
                  when "http"
         
     | 
| 
       155 
     | 
    
         
            -
                    Failbot::HTTPBackend.new(URI(settings["FAILBOT_HAYSTACK_URL"]))
         
     | 
| 
      
 167 
     | 
    
         
            +
                    Failbot::HTTPBackend.new(URI(settings["FAILBOT_HAYSTACK_URL"]), @connect_timeout_seconds)
         
     | 
| 
       156 
168 
     | 
    
         
             
                  when 'json'
         
     | 
| 
       157 
169 
     | 
    
         
             
                    Failbot::JSONBackend.new(settings["FAILBOT_BACKEND_JSON_HOST"], settings["FAILBOT_BACKEND_JSON_PORT"])
         
     | 
| 
       158 
170 
     | 
    
         
             
                  when 'console'
         
     | 
| 
         @@ -163,11 +175,6 @@ module Failbot 
     | 
|
| 
       163 
175 
     | 
    
         | 
| 
       164 
176 
     | 
    
         
             
                @raise_errors  = !settings["FAILBOT_RAISE"].to_s.empty?
         
     | 
| 
       165 
177 
     | 
    
         
             
                @report_errors = settings["FAILBOT_REPORT"] != "0"
         
     | 
| 
       166 
     | 
    
         
            -
                @enable_timeout = false
         
     | 
| 
       167 
     | 
    
         
            -
                if settings.key?("FAILBOT_TIMEOUT_MS")
         
     | 
| 
       168 
     | 
    
         
            -
                  @timeout_seconds = settings["FAILBOT_TIMEOUT_MS"].to_f / 1000
         
     | 
| 
       169 
     | 
    
         
            -
                  @enable_timeout = (@timeout_seconds != 0.0)
         
     | 
| 
       170 
     | 
    
         
            -
                end
         
     | 
| 
       171 
178 
     | 
    
         | 
| 
       172 
179 
     | 
    
         
             
                # allows overriding the 'app' value to send to single haystack bucket.
         
     | 
| 
       173 
180 
     | 
    
         
             
                # used primarily on ghe.io.
         
     | 
| 
         @@ -508,7 +515,8 @@ module Failbot 
     | 
|
| 
       508 
515 
     | 
    
         
             
              def populate_context_from_settings(settings)
         
     | 
| 
       509 
516 
     | 
    
         
             
                settings.each do |key, value|
         
     | 
| 
       510 
517 
     | 
    
         
             
                  if /\AFAILBOT_CONTEXT_(.+)\z/ =~ key
         
     | 
| 
       511 
     | 
    
         
            -
                     
     | 
| 
      
 518 
     | 
    
         
            +
                    key = $1.downcase
         
     | 
| 
      
 519 
     | 
    
         
            +
                    context[0][key] = value unless context[0][key]
         
     | 
| 
       512 
520 
     | 
    
         
             
                  end
         
     | 
| 
       513 
521 
     | 
    
         
             
                end
         
     | 
| 
       514 
522 
     | 
    
         
             
              end
         
     | 
    
        data/lib/failbot/haystack.rb
    CHANGED
    
    | 
         @@ -4,8 +4,10 @@ require 'json' 
     | 
|
| 
       4 
4 
     | 
    
         | 
| 
       5 
5 
     | 
    
         
             
            module Failbot
         
     | 
| 
       6 
6 
     | 
    
         
             
              class Haystack
         
     | 
| 
       7 
     | 
    
         
            -
                 
     | 
| 
      
 7 
     | 
    
         
            +
                attr_accessor :connect_timeout
         
     | 
| 
      
 8 
     | 
    
         
            +
                def initialize(url, connect_timeout=nil)
         
     | 
| 
       8 
9 
     | 
    
         
             
                  @url = url
         
     | 
| 
      
 10 
     | 
    
         
            +
                  @connect_timeout = connect_timeout
         
     | 
| 
       9 
11 
     | 
    
         
             
                end
         
     | 
| 
       10 
12 
     | 
    
         | 
| 
       11 
13 
     | 
    
         
             
                def user
         
     | 
| 
         @@ -50,6 +52,9 @@ module Failbot 
     | 
|
| 
       50 
52 
     | 
    
         
             
                  # use SSL if applicable
         
     | 
| 
       51 
53 
     | 
    
         
             
                  http.use_ssl = true if @url.scheme == "https"
         
     | 
| 
       52 
54 
     | 
    
         | 
| 
      
 55 
     | 
    
         
            +
                  # Set the connect timeout if it was provided
         
     | 
| 
      
 56 
     | 
    
         
            +
                  http.open_timeout = @connect_timeout if @connect_timeout
         
     | 
| 
      
 57 
     | 
    
         
            +
             
     | 
| 
       53 
58 
     | 
    
         
             
                  # push it through
         
     | 
| 
       54 
59 
     | 
    
         
             
                  http.request(request)
         
     | 
| 
       55 
60 
     | 
    
         
             
                ensure
         
     | 
    
        data/lib/failbot/http_backend.rb
    CHANGED
    
    | 
         @@ -1,11 +1,12 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            module Failbot
         
     | 
| 
       2 
2 
     | 
    
         
             
              class HTTPBackend
         
     | 
| 
       3 
     | 
    
         
            -
                def initialize(url)
         
     | 
| 
      
 3 
     | 
    
         
            +
                def initialize(url, connect_timeout = nil)
         
     | 
| 
       4 
4 
     | 
    
         
             
                  if url.to_s.empty?
         
     | 
| 
       5 
5 
     | 
    
         
             
                    raise ArgumentError, "FAILBOT_HAYSTACK_URL setting required."
         
     | 
| 
       6 
6 
     | 
    
         
             
                  end
         
     | 
| 
       7 
7 
     | 
    
         | 
| 
       8 
     | 
    
         
            -
                  @ 
     | 
| 
      
 8 
     | 
    
         
            +
                  @connect_timeout = connect_timeout
         
     | 
| 
      
 9 
     | 
    
         
            +
                  @haystack = Failbot::Haystack.new(url, connect_timeout)
         
     | 
| 
       9 
10 
     | 
    
         
             
                end
         
     | 
| 
       10 
11 
     | 
    
         | 
| 
       11 
12 
     | 
    
         
             
                def report(data)
         
     | 
| 
         @@ -19,5 +20,13 @@ module Failbot 
     | 
|
| 
       19 
20 
     | 
    
         
             
                def ping
         
     | 
| 
       20 
21 
     | 
    
         
             
                  @haystack.ping
         
     | 
| 
       21 
22 
     | 
    
         
             
                end
         
     | 
| 
      
 23 
     | 
    
         
            +
             
     | 
| 
      
 24 
     | 
    
         
            +
                def connect_timeout
         
     | 
| 
      
 25 
     | 
    
         
            +
                  @haystack.connect_timeout
         
     | 
| 
      
 26 
     | 
    
         
            +
                end
         
     | 
| 
      
 27 
     | 
    
         
            +
             
     | 
| 
      
 28 
     | 
    
         
            +
                def connect_timeout=(timeout)
         
     | 
| 
      
 29 
     | 
    
         
            +
                  @haystack.connect_timeout = timeout
         
     | 
| 
      
 30 
     | 
    
         
            +
                end
         
     | 
| 
       22 
31 
     | 
    
         
             
              end
         
     | 
| 
       23 
32 
     | 
    
         
             
            end
         
     | 
    
        data/lib/failbot/version.rb
    CHANGED
    
    
    
        metadata
    CHANGED
    
    | 
         @@ -1,7 +1,7 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            --- !ruby/object:Gem::Specification
         
     | 
| 
       2 
2 
     | 
    
         
             
            name: failbot
         
     | 
| 
       3 
3 
     | 
    
         
             
            version: !ruby/object:Gem::Version
         
     | 
| 
       4 
     | 
    
         
            -
              version: 2.5. 
     | 
| 
      
 4 
     | 
    
         
            +
              version: 2.5.5
         
     | 
| 
       5 
5 
     | 
    
         
             
            platform: ruby
         
     | 
| 
       6 
6 
     | 
    
         
             
            authors:
         
     | 
| 
       7 
7 
     | 
    
         
             
            - "@rtomayko"
         
     | 
| 
         @@ -10,7 +10,7 @@ authors: 
     | 
|
| 
       10 
10 
     | 
    
         
             
            autorequire:
         
     | 
| 
       11 
11 
     | 
    
         
             
            bindir: bin
         
     | 
| 
       12 
12 
     | 
    
         
             
            cert_chain: []
         
     | 
| 
       13 
     | 
    
         
            -
            date: 2020- 
     | 
| 
      
 13 
     | 
    
         
            +
            date: 2020-09-03 00:00:00.000000000 Z
         
     | 
| 
       14 
14 
     | 
    
         
             
            dependencies:
         
     | 
| 
       15 
15 
     | 
    
         
             
            - !ruby/object:Gem::Dependency
         
     | 
| 
       16 
16 
     | 
    
         
             
              name: rake
         
     |