* Allow KUBECONFIG environment variable to point to multiple files
* Add more tests, add API (can make internal if necessary)
* test
* allow passing in env var
* small amount of feedback
* Feedback
* Nits
* Some extra tests and comments
* Ensure that awaits do not continue on the captured context.
* Make functions async for maintainability.
* Add documentation detailing the use of UIFact.
* Use value from ContextDetails to populate Namespace
This is a fix for: #372
This change uses the value from ContextDetails.Namespace to populate
KubernetesClientConfiguration.Namespace.
The issue is there's a Namespace property on both Context and ContextDetails
- The property on Context is used today
- The property on ContextDetails is not
- The property on ContextDetails maps to the actual yaml config
* Obsolete Context.Namespace
This property doesn't map to anything in the YAML and thus will never be
set. Other clients I checked (java, golang) don't look for a property
at this level.
I think this was likely a mistake, and it should be obsoleted because
it will never be populated.
Example:
```yaml
contexts:
- context:
cluster: ...
namespace: ... # this is ContextDetails.Namespace
user: ...
name: foo
```
```yaml
contexts:
- context:
cluster: ...
namespace: ...
user: ...
name: foo
namespace: ... # this is Context.Namespace
```
* Remove requirement for certificate authority data in kubeconfig.
* Update src/KubernetesClient/KubernetesClientConfiguration.ConfigFile.cs
Update casing of `URL` at @itowlson suggestion.
Co-Authored-By: twitchax <twitchax@gmail.com>
* Create KubernetesClientConfiguration from pre-loaded K8SConfiguration
* Tweaked a couple more doc strings
* Fix duplicated tests
* Give the new method a more informative name
* Support relative paths in Kubernetes configuration files
* Filename -> FileName
* Filename -> FileName
* KuberentesClientConfiguration: Allow the user to opt-out of the mechanism which resolves relative paths in the configuration file.
* Update unit tests
* Fix test