class Kubeclient::GoogleApplicationDefaultCredentials

Get a bearer token from the Google's application default credentials.

Public Class Methods

token() click to toggle source
# File lib/kubeclient/google_application_default_credentials.rb, line 9
def token
  begin
    require 'googleauth'
  rescue LoadError => e
    raise GoogleDependencyError,
          'Error requiring googleauth gem. Kubeclient itself does not include the ' \
          'googleauth gem. To support auth-provider gcp, you must include it in your ' \
          "calling application. Failed with: #{e.message}"
  end
  scopes = ['https://www.googleapis.com/auth/cloud-platform']
  authorization = Google::Auth.get_application_default(scopes)
  authorization.apply({})
  authorization.access_token
end