This example demonstrates how to use the C# Kubernetes Client library to create, get and list custom resources.
Make sure your have added the library package
dotnet add package KubernetesClient
Make sure the CRD is created, in order to create an instance of it after.
kubectl create -f ./config/crd.yaml
You can test that the CRD is successfully added, by creating an instance of it using kubectl:
kubectl create -f ./config/yaml-cr-instance.yaml
kubectl get customresources.csharp.com
The client uses the BuildConfigFromConfigFile()
function. If the KUBECONFIG environment variable is set, then that path to the k8s config file will be used.
dotnet run
Expected output:
strating main()...
working with CRD: customresources.csharp.com
creating CR cr-instance-london
CR list:
- CR Item 0 = cr-instance-london
- CR Item 1 = cr-instance-paris
fetchedCR = cr-instance-london (Labels: {identifier : city, newKey : newValue}), Spec: London
Deleted the CR
For more details, you can look at the Generic client implementation