Class KubeConfigExecConfig
Describes a custom exec based authentication plugin.
Namespace: Neon.Kube.Config
Assembly: Neon.Kube.dll
Syntax
public class KubeConfigExecConfig
Constructors
KubeConfigExecConfig()
Default constructor.
Declaration
public KubeConfigExecConfig()
Properties
ApiVersion
Specifies the preferred input version of the ExecInfo. The returned ExecCredentials MUST use the same encoding version as the input.
Declaration
[JsonProperty(PropertyName = "apiVersion", Required = Required.Always)]
[YamlMember(Alias = "apiVersion", ApplyNamingConventions = false, DefaultValuesHandling = DefaultValuesHandling.Preserve)]
public string ApiVersion { get; set; }
Property Value
Type | Description |
---|---|
string |
Args
Specifies the arguments to be passed to Command.
Declaration
[JsonProperty(PropertyName = "args", Required = Required.Always)]
[YamlMember(Alias = "args", ApplyNamingConventions = false, DefaultValuesHandling = DefaultValuesHandling.Preserve)]
public List<string> Args { get; set; }
Property Value
Type | Description |
---|---|
List<string> |
Command
Specifies the command to execute.
Declaration
[JsonProperty(PropertyName = "command", Required = Required.Always)]
[YamlMember(Alias = "command", ApplyNamingConventions = false, DefaultValuesHandling = DefaultValuesHandling.Preserve)]
public string Command { get; set; }
Property Value
Type | Description |
---|---|
string |
Env
Optionally specifies any environment variables to be set before executing Command.
Declaration
[JsonProperty(PropertyName = "env", Required = Required.Default, DefaultValueHandling = DefaultValueHandling.IgnoreAndPopulate)]
[YamlMember(Alias = "env", ApplyNamingConventions = false, DefaultValuesHandling = DefaultValuesHandling.OmitNull)]
public List<KubeConfigEnvironmentVariable> Env { get; set; }
Property Value
Type | Description |
---|---|
List<KubeConfigEnvironmentVariable> |
ExecInteractiveMode
InteractiveMode determines this plugin's relationship with standard input. Valid values are Never (this exec plugin never uses standard input), IfAvailable" (this exec plugin wants to use standard input if it is available), or Always (this exec plugin requires standard input to function). See ExecInteractiveMode values for more details.
If ApiVersion is client.authentication.k8s.io/v1alpha1 or client.authentication.k8s.io/v1beta1, then this field is optional and defaults to KubeConfigExecInteractiveMode.Always when unset. Otherwise, this field is required.
Declaration
[JsonProperty(PropertyName = "interactiveMode", Required = Required.Default, DefaultValueHandling = DefaultValueHandling.IgnoreAndPopulate)]
[YamlMember(Alias = "interactiveMode", ApplyNamingConventions = false, DefaultValuesHandling = DefaultValuesHandling.OmitNull)]
public KubeConfigExecInteractiveMode? ExecInteractiveMode { get; set; }
Property Value
Type | Description |
---|---|
KubeConfigExecInteractiveMode? |
InstallHint
Specifies text to be displayed to the user when the Command executable is not
present. For example, brew install foo-cli
might be a good InstallHint for foo-cli
on MacOS.
Declaration
[JsonProperty(PropertyName = "installHint", Required = Required.Always)]
[YamlMember(Alias = "installHint", ApplyNamingConventions = false, DefaultValuesHandling = DefaultValuesHandling.Preserve)]
public string InstallHint { get; set; }
Property Value
Type | Description |
---|---|
string |
ProviderClustyerInfo
Indicates whether or not to provide cluster information, which could potentially contain very
large CA data, to this exec plugin as a part of the KUBERNETES_EXEC_INFO
environment variable.
By default, it is set to false
. Package k8s.io/client-go/tools/auth/exec provides helper methods
for reading this environment variable.
Declaration
[JsonProperty(PropertyName = "provideClusterInfo", Required = Required.Always)]
[YamlMember(Alias = "provideClusterInfo", ApplyNamingConventions = false, DefaultValuesHandling = DefaultValuesHandling.Preserve)]
public bool ProviderClustyerInfo { get; set; }
Property Value
Type | Description |
---|---|
bool |