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.
4866 4867 4868 4869 4870 4871 4872 4873 |
# File 'lib/svc.rb', line 4866 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.
4917 4918 4919 4920 4921 4922 4923 4924 4925 4926 4927 4928 4929 4930 4931 4932 4933 4934 4935 4936 4937 4938 4939 4940 4941 4942 |
# File 'lib/svc.rb', line 4917 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.
4876 4877 4878 4879 4880 4881 4882 4883 4884 4885 4886 4887 4888 4889 4890 4891 4892 4893 4894 4895 4896 4897 4898 4899 4900 4901 4902 4903 4904 4905 4906 4907 4908 4909 4910 4911 4912 |
# File 'lib/svc.rb', line 4876 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 |