Interface: KubeconfigObject
Defined in: lib/k8s/kubeconfig.ts:28
KubeconfigObject is the object that is stored in indexDB as string format. It is a JSON encoded version of the kubeconfig file. It is used to store the kubeconfig for stateless clusters. This is basically a k8s client - go Kubeconfig object. KubeconfigObject holds the information needed to build connect to remote kubernetes clusters as a given user *
See
- more info
- storeStatelessClusterKubeconfig
- getStatelessClusterKubeConfigs
- findKubeconfigByClusterName
Properties
apiVersion
apiVersion: string;
Defined in: lib/k8s/kubeconfig.ts:30
version of the kubeconfig file.
clusters
clusters: object[];
Defined in: lib/k8s/kubeconfig.ts:50
Clusters is a map of referencable names to cluster configs.
cluster
cluster: object;
cluster is the cluster information.
See
cluster.certificateAuthority?
optional certificateAuthority?: string;
CertificateAuthority is the path to a cert file for the certificate authority.
cluster.certificateAuthorityData?
optional certificateAuthorityData?: string;
CertificateAuthorityData contains PEM-encoded certificate authority certificates. Overrides CertificateAuthority
cluster.disableCompression?
optional disableCompression?: boolean;
DisableCompression allows client to opt-out of response compression for all requests to the server. This is useful to speed up requests (specifically lists) when client-server network bandwidth is ample, by saving time on compression (server-side) and decompression (client-side): https://github.com/kubernetes/kubernetes/issues/112296.
cluster.extensions?
optional extensions?: object[];
cluster.insecureSkipTLSVerify?
optional insecureSkipTLSVerify?: boolean;
InsecureSkipTLSVerify skips the validity check for the server's certificate. This will make your HTTPS connections insecure.
cluster.proxyURL?
optional proxyURL?: string;
ProxyURL is the URL to the proxy to be used for requests to this cluster.
cluster.server
server: string;
Server is the address of the kubernetes cluster (https://hostname:port).
cluster.tlsServerName?
optional tlsServerName?: string;
TLSServerName is used to check server certificate. If TLSServerName is empty, the hostname used to contact the server is used.
name
name: string;
name is the name of the cluster.
See
contexts
contexts: object[];
Defined in: lib/k8s/kubeconfig.ts:146
Contexts is a map of referencable names to context configs.
context
context: object;
context is the context information.
context.cluster
cluster: string;
cluster is the cluster information.
context.clusterID?
optional clusterID?: string;
this is needed for attaching clusterID to the cluster for accurate cluster actions
context.extensions?
optional extensions?: object[];
Extensions holds additional information. This is useful for extenders so that reads and writes don't clobber unknown fields on the Context object.
context.namespace?
optional namespace?: string;
namespace is the default namespace.
context.source?
optional source?: string;
Source for kubeconfig
context.user
user: string;
user is the user information.
name
name: string;
name is the name of the context.
See
current-context
current-context: string;
Defined in: lib/k8s/kubeconfig.ts:174
CurrentContext is the name of the context that you would like to use by default
extensions?
optional extensions?: object[];
Defined in: lib/k8s/kubeconfig.ts:178
Extensions holds additional information. This is useful for extenders so that reads and writes don't clobber unknown fields
extension
extension: object;
Extension holds the extension information
name
name: string;
name is the nickname of the extension.
See
kind
kind: string;
Defined in: lib/k8s/kubeconfig.ts:32
kind is the type of the kubeconfig file. It is always 'Config'.
preferences?
optional preferences?: object;
Defined in: lib/k8s/kubeconfig.ts:36
Preferences holds general information to be use for cli interactions
colors?
optional colors?: boolean;
colors specifies whether output should use colors.
extensions?
optional extensions?: object[];
extensions holds additional information. This is useful for extenders so that reads and writes don't clobber unknown fields on the Preferences object.
See
users
users: object[];
Defined in: lib/k8s/kubeconfig.ts:83
AuthInfos is a map of referencable names to user configs.
name
name: string;
name is the name of the user.
user
user: object;
holds the auth information
See
user.authProvider?
optional authProvider?: object;
AuthProvider is a reference to a specific auth provider.
user.authProvider.config
config: object;
config is a map of strings to objects. The contents of the map are dependent on the provider:
Index Signature
[key: string]: string
user.authProvider.name
name: string;
name is the name of the auth provider.
user.clientCertificate?
optional clientCertificate?: string;
ClientCertificate is the path to a client key file for TLS.
user.clientCertificateData?
optional clientCertificateData?: string;
ClientCertificateData contains PEM-encoded data from a client key file for TLS.
user.clientKey?
optional clientKey?: string;
ClientKey is the path to a client key file for TLS.
user.clientKeyData?
optional clientKeyData?: string;
ClientKeyData contains PEM-encoded data from a client key file for TLS.
user.exec?
optional exec?: object;
Exec specifies a command to provide client credentials.
user.exec.args?
optional args?: string[];
Arguments to pass to the command when executing it.
user.exec.command
command: string;
Command to execute.
user.exec.env?
optional env?: object;
Env defines additional environment variables to expose to the process.
Index Signature
[key: string]: string
user.extensions?
optional extensions?: object[];
Extensions holds additional information. This is useful for extenders so that reads and writes don't clobber unknown fields on the AuthInfo object.
user.impersonate?
optional impersonate?: string;
Impersonate is the username to imperonate.
user.impersonateGroups?
optional impersonateGroups?: string[];
ImpersonateGroups is the groups to imperonate.
user.impersonateUserExtra?
optional impersonateUserExtra?: object;
ImpersonateUserExtra contains additional information for impersonated user.
Index Signature
[key: string]: string[]
user.password?
optional password?: string;
Password is the password for basic authentication to the kubernetes cluster.
user.token?
optional token?: string;
Token is the bearer token for authentication to the kubernetes cluster.
user.tokenFile?
optional tokenFile?: string;
TokenFile is a pointer to a file that contains a bearer token (as described above).
user.username?
optional username?: string;
Username is the username for basic authentication to the kubernetes cluster.