Class: KubeConfig
Quick start:
const kc = new KubeConfig(); kc.loadFromDefault(); const api = kc.makeApiClient(CoreV1Api);— See examples
Defined in: src/config.ts:142
Implements
SecurityAuthentication
Constructors
Constructor
new KubeConfig():
KubeConfig
Defined in: src/config.ts:241
Returns
KubeConfig
Properties
clusters
clusters:
Cluster[]
Defined in: src/config.ts:224
The list of all known clusters
contexts
contexts:
Context[]
Defined in: src/config.ts:234
The list of all known contexts
currentContext
currentContext:
string
Defined in: src/config.ts:239
The name of the current context
users
users:
User[]
Defined in: src/config.ts:229
The list of all known users
Methods
addAuthenticator()
addAuthenticator(
authenticator):void
Defined in: src/config.ts:164
Parameters
authenticator
Authenticator
Returns
void
addCluster()
addCluster(
cluster):void
Defined in: src/config.ts:495
Parameters
cluster
Returns
void
addContext()
addContext(
ctx):void
Defined in: src/config.ts:519
Parameters
ctx
Returns
void
addUser()
addUser(
user):void
Defined in: src/config.ts:507
Parameters
user
Returns
void
applySecurityAuthentication()
applySecurityAuthentication(
context):Promise<void>
Defined in: src/config.ts:351
Applies SecurityAuthentication to RequestContext of an API Call from API Client
Parameters
context
RequestContext
Returns
Promise<void>
Implementation of
SecurityAuthentication.applySecurityAuthentication
applyToHTTPSOptions()
applyToHTTPSOptions(
opts):Promise<void>
Defined in: src/config.ts:304
Parameters
opts
any
Returns
Promise<void>
createDispatcherOptions()
createDispatcherOptions(
cluster,agentOptions):DispatcherOptions
Defined in: src/config.ts:711
Build the dispatcher configuration (options + type) without constructing the actual Dispatcher instance. Exposed as a separate method so that tests can validate the option-mapping logic directly instead of reaching into undici's Symbol-keyed private state.
Parameters
cluster
Cluster | null
agentOptions
AgentOptions
Returns
exportConfig()
exportConfig():
string
Defined in: src/config.ts:636
Returns
string
getCluster()
getCluster(
name):Cluster|null
Defined in: src/config.ts:282
Parameters
name
string
Returns
Cluster | null
getClusters()
getClusters():
Cluster[]
Defined in: src/config.ts:251
Returns
Cluster[]
getContextObject()
getContextObject(
name):Context|null
Defined in: src/config.ts:267
Parameters
name
string
Returns
Context | null
getContexts()
getContexts():
Context[]
Defined in: src/config.ts:247
Returns
Context[]
getCurrentCluster()
getCurrentCluster():
Cluster|null
Defined in: src/config.ts:274
Returns
Cluster | null
getCurrentContext()
getCurrentContext():
string
Defined in: src/config.ts:259
Returns
string
getCurrentUser()
getCurrentUser():
User|null
Defined in: src/config.ts:286
Returns
User | null
getName()
getName():
string
Defined in: src/config.ts:395
Returns name of this security authentication method
Returns
string
string
Implementation of
SecurityAuthentication.getName
getUser()
getUser(
name):User|null
Defined in: src/config.ts:294
Parameters
name
string
Returns
User | null
getUsers()
getUsers():
User[]
Defined in: src/config.ts:255
Returns
User[]
loadExecCredentialPluginPolicyFromKuberc()
loadExecCredentialPluginPolicyFromKuberc(
file?,platform?):ExecCredentialPluginPolicy|undefined
Defined in: src/config.ts:192
Loads the exec credential plugin policy from a kubectl kuberc file and applies it
with setExecCredentialPluginPolicy.
If file is not given, the file is located the same way kubectl does: the KUBERC
environment variable if set, otherwise $HOME/.kube/kuberc. Setting KUBERC=off or
KUBECTL_KUBERC=false disables loading, in which case the current policy is unchanged.
A missing default kuberc file is not an error, a missing explicitly specified file is.
Parameters
file?
string
optional path to the kuberc file.
platform?
string = process.platform
Returns
ExecCredentialPluginPolicy | undefined
the loaded policy, or undefined if no kuberc file was loaded.
loadFromCluster()
loadFromCluster(
pathPrefix?):void
Defined in: src/config.ts:427
Parameters
pathPrefix?
string = ''
Returns
void
loadFromClusterAndUser()
loadFromClusterAndUser(
cluster,user):void
Defined in: src/config.ts:414
Parameters
cluster
user
Returns
void
loadFromDefault()
loadFromDefault(
opts?,contextFromStartingConfig?,platform?):void
Defined in: src/config.ts:531
Parameters
opts?
Partial<ConfigOptions>
contextFromStartingConfig?
boolean = false
platform?
string = process.platform
Returns
void
loadFromFile()
loadFromFile(
file,opts?):void
Defined in: src/config.ts:298
Parameters
file
string
opts?
Partial<ConfigOptions>
Returns
void
loadFromOptions()
loadFromOptions(
options):void
Defined in: src/config.ts:407
Parameters
options
any
Returns
void
loadFromString()
loadFromString(
config,opts?):void
Defined in: src/config.ts:399
Parameters
config
string
opts?
Partial<ConfigOptions>
Returns
void
makeApiClient()
makeApiClient<
T>(apiClientType):T
Defined in: src/config.ts:600
Type Parameters
T
T extends ApiType
Parameters
apiClientType
Returns
T
makePathsAbsolute()
makePathsAbsolute(
rootDirectory):void
Defined in: src/config.ts:620
Parameters
rootDirectory
string
Returns
void
mergeConfig()
mergeConfig(
config,preserveContext?):void
Defined in: src/config.ts:480
Parameters
config
KubeConfig
preserveContext?
boolean = false
Returns
void
setCurrentContext()
setCurrentContext(
context):void
Defined in: src/config.ts:263
Parameters
context
string
Returns
void
setExecCredentialPluginPolicy()
setExecCredentialPluginPolicy(
policy?):void
Defined in: src/config.ts:176
Sets the application policy for kubeconfig exec credential plugins.
The semantics match the credentialPluginPolicy and credentialPluginAllowlist
fields of a kubectl kuberc file, see https://kubernetes.io/docs/reference/kubectl/kuberc/
The policy is checked before every plugin execution, including token refreshes.
Parameters
policy?
ExecCredentialPluginPolicy
the policy, undefined restores the default AllowAll behavior.
Returns
void
Throws
Error if the policy is misconfigured.