class Ruboty::K8s::Client
Attributes
v1[R]
v1beta1[R]
Public Class Methods
new(config)
click to toggle source
# File lib/ruboty/k8s/client.rb, line 7 def initialize(config) @config = config @v1 = setup_versions('api/', 'v1') @v1beta1 = setup_versions('apis/extensions/', 'v1beta1') end
Public Instance Methods
setup_versions(api_prefix, api_version)
click to toggle source
# File lib/ruboty/k8s/client.rb, line 13 def setup_versions(api_prefix, api_version) ::Kubeclient::Client.new( "#{@config['api_endpoint']}#{api_prefix}", api_version, auth_options: auth_options, ssl_options: ssl_options ) end
Private Instance Methods
auth_options()
click to toggle source
# File lib/ruboty/k8s/client.rb, line 24 def auth_options { bearer_token: Base64.decode64(@config['bearer_token_base64']) } end
ssl_options()
click to toggle source
# File lib/ruboty/k8s/client.rb, line 28 def ssl_options cert_store = OpenSSL::X509::Store.new cert_store.add_cert( OpenSSL::X509::Certificate.new(Base64.decode64(@config['ca_cert_base64'])) ) { cert_store: cert_store, verify_ssl: OpenSSL::SSL::VERIFY_PEER } end