* Add models for node metrics
* Add models for pod metrics
* Add extension method for node metrics
* Add extension method for pods metrics
* dotnet format
* fix type: use of interface type
* Add metrics sample
* Add tests for node and pod metrics
* Removed NETSTANDARD2_0 IFDefs and Fixed some brackets it wouldn't let me build if I didn't fix them
* Removed bracket changes
* Fixed Formatting hopefully
* Updated StartInfo.EnvironmentVariables from StartInfo.Environment so it is compatiable with 4.5.2
* Forgot I had changed this and didn't check git diff till now. My Bad
* Missed a spot where it was referencing Envrionment and not EnvironmentVariables
* Add useful model extensions
* Rename a function
* Add more model extensions; add unit tests
* Add a couple more extensions requested in PR
* Rebase on master
* Remove unused using statement
* add failing test for environment variable and annotation yaml serialization
* simplify the test case
* initial tests passing with StringQuotingEmitter
* cleanup
* expand test
* add attribution
* run dotnet format
* 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
The current documentation only mentions that it uses a default config file. However, it actually works with a lot more than that and it is helpful to see that in the documentation.
* Upgrade to .NET Core SDK 3.1.
* Add workaround for setup-dotnet not supporting SxS dotnet installs.
* Specify explicit fetch depth of 0 for Nerdbank.GitVersioning.
* Make step names consistent across workflows.
* Coerce robocopy's exit code when it does not indicate an error.
* Make robocopy as quiet as possible.
* Add Watcher constructor overload which accepts the more general TextReader.
* Make CancelableStream delegate the async methods to the inner stream.
* Make CancelableStream dispose of the inner stream.
* Make PeekableStreamReader a decorator enabling direct delegation to the inner's asynchronous methods.
* Make CancelableStream.Flush respect the cancellation token.
* Rename CancellationTokenSourceSlim -> LinkedCancellationTokenSource.
* Specify 7.3 language version.
* Add interfaces for generated Kubernetes objects that can allow working with them without using concrete types. This work is needed for future shared informers / controllers components being developed
* Add metadata for plural names. This opens up a path for many generic operations as plural name is needed to construct path
* 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
```
* Adding the user credentials exec abillity
new file: src/KubernetesClient/KubeConfigModels/ExecCredentialResponse.cs
new file: src/KubernetesClient/KubeConfigModels/ExternalExecution.cs
modified: src/KubernetesClient/KubeConfigModels/UserCredentials.cs
modified: src/KubernetesClient/KubernetesClientConfiguration.ConfigFile.cs
* Fixed a few issues with the process spawning and some null references issues
* Removed unused import that caused the build to fail (Mail)
* Added preprocessor directive that will disable out-of-tree client authentication in case it is not a asp.net core app
* Added tests to the new external execution (out-of-tree client authentication) extension
* Trying to fix failing tests that fail apparently due to the preprocessor symbol
* Trying to fix failing macos tests
* Added the -n (do not output trailing newline) and the -E options to the echo command in OSX
* initializing arguments variable
* Changes according to tg123 comments
Changed OSX testing command to printf to try and solve the JSON
parsing errors
* Added missing references
* Environment.UserInteractive and Process applies to .NET Standard >= 2.0 according to Microsoft documentation