blob: e5e0b60c3f0551a354e91073c44e02cc80123777 [file] [log] [blame]
package kubernetes_test
import (
"log"
"net/http"
"golang.org/x/build/kubernetes"
"golang.org/x/build/kubernetes/api"
"golang.org/x/net/context"
"golang.org/x/oauth2"
)
func ExampleRunPod() {
kube, err := kubernetes.NewClient("https://example.com", &http.Client{
Transport: &oauth2.Transport{
Source: oauth2.StaticTokenSource(&oauth2.Token{AccessToken: "aCcessWbU3toKen"}),
},
})
if err != nil {
log.Fatalf("failed to create client: %v", err)
}
podResult, err := kube.RunLongLivedPod(context.Background(), &api.Pod{
TypeMeta: api.TypeMeta{
APIVersion: "v1",
Kind: "Pod",
},
ObjectMeta: api.ObjectMeta{
Name: "redis-pod-example",
Labels: map[string]string{
"tag": "prod",
},
},
Spec: api.PodSpec{
Containers: []api.Container{
{
Name: "redis-container",
Image: "redis:alpine",
},
},
},
})
if err != nil {
log.Fatalf("failed to run pod: %v", err)
}
log.Printf("pod created: %#v", podResult)
logs, err := kube.PodLog(context.Background(), "redis-pod-example")
if err != nil {
log.Fatalf("failed to get pod logs: %v", err)
}
log.Printf("pod logs: %q", logs)
}