agent.go 599 B

12345678910111213141516171819202122232425
  1. package kubernetes
  2. import (
  3. "context"
  4. v1 "k8s.io/api/core/v1"
  5. metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
  6. "k8s.io/cli-runtime/pkg/genericclioptions"
  7. "k8s.io/client-go/kubernetes"
  8. )
  9. // Agent is a Kubernetes agent for performing operations that interact with the
  10. // api server
  11. type Agent struct {
  12. RESTClientGetter genericclioptions.RESTClientGetter
  13. Clientset kubernetes.Interface
  14. }
  15. // ListNamespaces simply lists namespaces
  16. func (a *Agent) ListNamespaces() (*v1.NamespaceList, error) {
  17. return a.Clientset.CoreV1().Namespaces().List(
  18. context.TODO(),
  19. metav1.ListOptions{},
  20. )
  21. }