Skip to content

Instantly share code, notes, and snippets.

@ks888
Created December 23, 2017 03:56
Show Gist options
  • Save ks888/e4ef62b2fc9a9ba084906284904a0ce2 to your computer and use it in GitHub Desktop.
Save ks888/e4ef62b2fc9a9ba084906284904a0ce2 to your computer and use it in GitHub Desktop.
Client-go usage example 4
package main
import (
"fmt"
"log"
core_v1 "k8s.io/api/core/v1"
meta_v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/client-go/kubernetes/fake"
)
func main() {
client := newClient()
if err := addTestData(client); err != nil {
log.Fatal(err)
}
pods, err := client.CoreV1().Pods("").List(meta_v1.ListOptions{})
if err != nil {
log.Fatal(err)
}
for _, pod := range pods.Items {
fmt.Println(pod.Name)
}
}
func newClient() *fake.Clientset {
return fake.NewSimpleClientset()
}
func addTestData(client *fake.Clientset) error {
pod := &core_v1.Pod{
ObjectMeta: meta_v1.ObjectMeta{
Namespace: core_v1.NamespaceDefault,
Name: "test",
},
}
_, err := client.CoreV1().Pods(core_v1.NamespaceDefault).Create(pod)
return err
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment