class Google::Auth::ExternalAccount::PluggableAuthCredentials
def initialize options = {}
-
(Google::Auth::InitializationError)- If executable source, command is missing, or timeout is invalid
Options Hash:
(**options)-
:credential_source(Hash) -- Credential source configuration that contains executable -
:audience(String) -- Audience for the token
Parameters:
-
options(Hash) -- Configuration options
def initialize options = {} base_setup options @audience = options[:audience] @credential_source = options[:credential_source] || {} @credential_source_executable = @credential_source[:executable] if @credential_source_executable.nil? raise InitializationError, "Missing excutable source. An 'executable' must be provided" end @credential_source_executable_command = @credential_source_executable[:command] if @credential_source_executable_command.nil? raise InitializationError, "Missing command field. Executable command must be provided." end @credential_source_executable_timeout_millis = @credential_source_executable[:timeout_millis] || EXECUTABLE_TIMEOUT_MILLIS_DEFAULT if @credential_source_executable_timeout_millis < EXECUTABLE_TIMEOUT_MILLIS_LOWER_BOUND || @credential_source_executable_timeout_millis > EXECUTABLE_TIMEOUT_MILLIS_UPPER_BOUND raise InitializationError, "Timeout must be between 5 and 120 seconds." end @credential_source_executable_output_file = @credential_source_executable[:output_file] end