class SDM::ControlPanel
ControlPanel
contains all administrative controls.
Public Class Methods
new(host, insecure, parent)
click to toggle source
# File lib/svc.rb, line 498 def initialize(host, insecure, parent) begin if insecure @stub = V1::ControlPanel::Stub.new(host, :this_channel_is_insecure) else cred = GRPC::Core::ChannelCredentials.new() @stub = V1::ControlPanel::Stub.new(host, cred) end rescue => exception raise Plumbing::convert_error_to_porcelain(exception) end @parent = parent end
Public Instance Methods
get_sshca_public_key( deadline:nil)
click to toggle source
GetSSHCAPublicKey retrieves the SSH
CA public key.
# File lib/svc.rb, line 512 def get_sshca_public_key( deadline:nil) req = V1::ControlPanelGetSSHCAPublicKeyRequest.new() tries = 0 plumbing_response = nil loop do begin plumbing_response = @stub.get_sshca_public_key(req, metadata: @parent.get_metadata('ControlPanel.GetSSHCAPublicKey', 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 = ControlPanelGetSSHCAPublicKeyResponse.new() resp.meta = Plumbing::convert_get_response_metadata_to_porcelain(plumbing_response.meta) resp.public_key = (plumbing_response.public_key) resp.rate_limit = Plumbing::convert_rate_limit_metadata_to_porcelain(plumbing_response.rate_limit) resp end
verify_jwt( token \ , deadline:nil)
click to toggle source
VerifyJWT reports whether the given JWT token (x-sdm-token) is valid.
# File lib/svc.rb, line 540 def verify_jwt( token \ , deadline:nil) req = V1::ControlPanelVerifyJWTRequest.new() req.token = (token) tries = 0 plumbing_response = nil loop do begin plumbing_response = @stub.verify_jwt(req, metadata: @parent.get_metadata('ControlPanel.VerifyJWT', 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 = ControlPanelVerifyJWTResponse.new() resp.meta = Plumbing::convert_get_response_metadata_to_porcelain(plumbing_response.meta) resp.valid = (plumbing_response.valid) resp.rate_limit = Plumbing::convert_rate_limit_metadata_to_porcelain(plumbing_response.rate_limit) resp end