Class: SDM::SecretStoreHealths
- Inherits:
-
Object
- Object
- SDM::SecretStoreHealths
- Extended by:
- Gem::Deprecate
- Defined in:
- lib/svc.rb
Overview
SecretStoreHealths exposes health states for secret stores.
See SecretStoreHealth.
Instance Method Summary collapse
-
#healthcheck(secret_store_id, deadline: nil) ⇒ Object
Healthcheck triggers a remote healthcheck request for a secret store.
-
#initialize(channel, parent) ⇒ SecretStoreHealths
constructor
A new instance of SecretStoreHealths.
-
#list(filter, *args, deadline: nil) ⇒ Object
List reports the health status of node to secret store pairs.
Constructor Details
#initialize(channel, parent) ⇒ SecretStoreHealths
Returns a new instance of SecretStoreHealths.
7997 7998 7999 8000 8001 8002 8003 8004 |
# File 'lib/svc.rb', line 7997 def initialize(channel, parent) begin @stub = V1::SecretStoreHealths::Stub.new(nil, nil, channel_override: channel) rescue => exception raise Plumbing::convert_error_to_porcelain(exception) end @parent = parent end |
Instance Method Details
#healthcheck(secret_store_id, deadline: nil) ⇒ Object
Healthcheck triggers a remote healthcheck request for a secret store. It may take minutes to propagate across a large network of Nodes. The call will return immediately, and the updated health of the Secret Store can be retrieved via List.
8048 8049 8050 8051 8052 8053 8054 8055 8056 8057 8058 8059 8060 8061 8062 8063 8064 8065 8066 8067 8068 8069 8070 8071 8072 8073 8074 8075 8076 8077 8078 |
# File 'lib/svc.rb', line 8048 def healthcheck( secret_store_id, deadline: nil ) req = V1::SecretStoreHealthcheckRequest.new() req.secret_store_id = (secret_store_id) # Execute before interceptor hooks req = @parent.interceptor.execute_before("SecretStoreHealths.Healthcheck", self, req) tries = 0 plumbing_response = nil loop do begin plumbing_response = @stub.healthcheck(req, metadata: @parent.("SecretStoreHealths.Healthcheck", req), deadline: deadline) rescue => exception if (@parent.shouldRetry(tries, exception, deadline)) tries + +sleep(@parent.exponentialBackoff(tries, deadline)) next end raise Plumbing::convert_error_to_porcelain(exception) end break end # Execute after interceptor hooks plumbing_response = @parent.interceptor.execute_after("SecretStoreHealths.Healthcheck", self, req, plumbing_response) resp = SecretStoreHealthcheckResponse.new() resp.rate_limit = Plumbing::(plumbing_response.rate_limit) resp end |
#list(filter, *args, deadline: nil) ⇒ Object
List reports the health status of node to secret store pairs.
8007 8008 8009 8010 8011 8012 8013 8014 8015 8016 8017 8018 8019 8020 8021 8022 8023 8024 8025 8026 8027 8028 8029 8030 8031 8032 8033 8034 8035 8036 8037 8038 8039 8040 8041 8042 8043 |
# File 'lib/svc.rb', line 8007 def list( filter, *args, deadline: nil ) req = V1::SecretStoreHealthListRequest.new() req. = V1::ListRequestMetadata.new() if not @parent.page_limit.nil? req..limit = @parent.page_limit end if not @parent.snapshot_time.nil? req..snapshot_at = @parent.snapshot_time end req.filter = Plumbing::quote_filter_args(filter, *args) resp = Enumerator::Generator.new { |g| tries = 0 loop do begin plumbing_response = @stub.list(req, metadata: @parent.("SecretStoreHealths.List", req), deadline: deadline) rescue => exception if (@parent.shouldRetry(tries, exception, deadline)) tries + +sleep(@parent.exponentialBackoff(tries, deadline)) next end raise Plumbing::convert_error_to_porcelain(exception) end tries = 0 plumbing_response.secret_store_healths.each do |plumbing_item| g.yield Plumbing::convert_secret_store_health_to_porcelain(plumbing_item) end break if plumbing_response..next_cursor == "" req..cursor = plumbing_response..next_cursor end } resp end |