class Kubeclient::GCPCommandCredentials
Generates a bearer token for Google Cloud Platform.
Public Class Methods
token(config)
click to toggle source
# File lib/kubeclient/gcp_command_credentials.rb, line 7 def token(config) require 'open3' require 'shellwords' require 'json' require 'jsonpath' cmd = config['cmd-path'] args = config['cmd-args'] token_key = config['token-key'] out, err, st = Open3.capture3(cmd, *args.split(' ')) raise "exec command failed: #{err}" unless st.success? extract_token(out, token_key) end
Private Class Methods
extract_token(output, token_key)
click to toggle source
# File lib/kubeclient/gcp_command_credentials.rb, line 26 def extract_token(output, token_key) JsonPath.on(output, token_key.gsub(/^{|}$/, '')).first end