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.
4415 4416 4417 4418 4419 4420 4421 4422 |
# File 'lib/svc.rb', line 4415 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.
4466 4467 4468 4469 4470 4471 4472 4473 4474 4475 4476 4477 4478 4479 4480 4481 4482 4483 4484 4485 4486 4487 4488 4489 4490 4491 |
# File 'lib/svc.rb', line 4466 def healthcheck( secret_store_id, deadline: nil ) req = V1::SecretStoreHealthcheckRequest.new() req.secret_store_id = (secret_store_id) 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)) tries + +@parent.jitterSleep(tries) next end raise Plumbing::convert_error_to_porcelain(exception) end break end 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.
4425 4426 4427 4428 4429 4430 4431 4432 4433 4434 4435 4436 4437 4438 4439 4440 4441 4442 4443 4444 4445 4446 4447 4448 4449 4450 4451 4452 4453 4454 4455 4456 4457 4458 4459 4460 4461 |
# File 'lib/svc.rb', line 4425 def list( filter, *args, deadline: nil ) req = V1::SecretStoreHealthListRequest.new() req. = V1::ListRequestMetadata.new() if @parent.page_limit > 0 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)) tries + +@parent.jitterSleep(tries) 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 |