Sha256: f9adffe9d8109d4714960786657e0dbbe3fcfe60cf801244f8593d9eb1ab33bb

Contents?: true

Size: 794 Bytes

Versions: 7

Compression:

Stored size: 794 Bytes

Contents

module Fog
  module Compute
    class Google
      class Mock
        def get_target_pool_health(_target_pool)
          Fog::Mock.not_implemented
        end
      end

      class Real
        def get_target_pool_health(target_pool)
          api_method = @compute.target_pools.get_health
          parameters = {
            "project" => @project,
            "targetPool" => target_pool.name,
            "region" => target_pool.region.split("/")[-1]
          }

          health_results = target_pool.instances.map do |instance|
            body = { "instance" => instance }
            resp = request(api_method, parameters, body_object = body)
            [instance, resp.data[:body]["healthStatus"]]
          end
          Hash[health_results]
        end
      end
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
fog-google-0.4.2 lib/fog/compute/google/requests/get_target_pool_health.rb
fog-google-0.4.1 lib/fog/compute/google/requests/get_target_pool_health.rb
fog-google-0.4.0 lib/fog/compute/google/requests/get_target_pool_health.rb
fog-google-0.3.2 lib/fog/compute/google/requests/get_target_pool_health.rb
fog-google-0.3.1 lib/fog/compute/google/requests/get_target_pool_health.rb
fog-google-0.3.0 lib/fog/compute/google/requests/get_target_pool_health.rb
fog-google-0.2.0 lib/fog/compute/google/requests/get_target_pool_health.rb