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.
3677 3678 3679 3680 3681 3682 3683 3684 |
# File 'lib/svc.rb', line 3677 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.
3728 3729 3730 3731 3732 3733 3734 3735 3736 3737 3738 3739 3740 3741 3742 3743 3744 3745 3746 3747 3748 3749 3750 3751 3752 3753 |
# File 'lib/svc.rb', line 3728 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.
3687 3688 3689 3690 3691 3692 3693 3694 3695 3696 3697 3698 3699 3700 3701 3702 3703 3704 3705 3706 3707 3708 3709 3710 3711 3712 3713 3714 3715 3716 3717 3718 3719 3720 3721 3722 3723 |
# File 'lib/svc.rb', line 3687 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 |