Interface KubernetesClient

All Superinterfaces:
AutoCloseable, Client, Closeable, ConfigAware
All Known Subinterfaces:
GenericKubernetesClient<C>, NamespacedKubernetesClient
All Known Implementing Classes:
AutoAdaptableKubernetesClient, DefaultKubernetesClient, ManagedKubernetesClient

public interface KubernetesClient
extends Client
Main interface for Kubernetes client library.
  • Method Details

    • customResourceDefinitions

      NonNamespaceOperation<io.fabric8.kubernetes.api.model.apiextensions.CustomResourceDefinition,​io.fabric8.kubernetes.api.model.apiextensions.CustomResourceDefinitionList,​io.fabric8.kubernetes.api.model.apiextensions.DoneableCustomResourceDefinition,​Resource<io.fabric8.kubernetes.api.model.apiextensions.CustomResourceDefinition,​io.fabric8.kubernetes.api.model.apiextensions.DoneableCustomResourceDefinition>> customResourceDefinitions()
      API entrypoint for CustomResourcedefinition(CRDs). This offers basic operations like load, get, create, update, delete and watch for APIGroup apiextensions/v1beta1
      Returns:
      NonNamespaceOperation object for CustomResourceDefinition
    • customResources

      <T extends io.fabric8.kubernetes.api.model.HasMetadata,​ L extends io.fabric8.kubernetes.api.model.KubernetesResourceList<T>,​ D extends io.fabric8.kubernetes.api.model.Doneable<T>> MixedOperation<T,​L,​D,​Resource<T,​D>> customResources​(CustomResourceDefinitionContext crdContext, Class<T> resourceType, Class<L> listClass, Class<D> doneClass)
      Typed API for managing CustomResources. You would need to provide POJOs for CustomResource into this and with it you would be able to instantiate a client specific to CustomResource.
      Type Parameters:
      T - T type represents CustomResource type
      L - L type represents CustomResourceList type
      D - D type represents DoneableCustomResource type
      Parameters:
      crdContext - CustomResourceDefinitionContext describes the core fields used to search for CustomResources
      resourceType - Class for CustomResource
      listClass - Class for list object for CustomResource
      doneClass - Class for Doneable CustomResource object
      Returns:
      returns a MixedOperation object with which you can do basic CustomResource operations
    • customResources

      @Deprecated <T extends io.fabric8.kubernetes.api.model.HasMetadata,​ L extends io.fabric8.kubernetes.api.model.KubernetesResourceList<T>,​ D extends io.fabric8.kubernetes.api.model.Doneable<T>> MixedOperation<T,​L,​D,​Resource<T,​D>> customResources​(io.fabric8.kubernetes.api.model.apiextensions.CustomResourceDefinition crd, Class<T> resourceType, Class<L> listClass, Class<D> doneClass)
      Deprecated.
      Typed API for managing CustomResources. You would need to provide POJOs for CustomResource into this and with it you would be able to instantiate a client specific to CustomResource.
      Type Parameters:
      T - T type represents CustomResource type
      L - L type represents CustomResourceList type
      D - D type represents DoneableCustomResource type
      Parameters:
      crd - CustomResourceDefinition object on basic of which this CustomResource was created
      resourceType - Class for CustomResource
      listClass - Class for list object for CustomResource
      doneClass - Class for Doneable CustomResource object
      Returns:
      returns a MixedOperation object with which you can do basic CustomResource operations
    • customResource

      <T extends io.fabric8.kubernetes.api.model.HasMetadata,​ L extends io.fabric8.kubernetes.api.model.KubernetesResourceList<T>,​ D extends io.fabric8.kubernetes.api.model.Doneable<T>> MixedOperation<T,​L,​D,​Resource<T,​D>> customResource​(io.fabric8.kubernetes.api.model.apiextensions.CustomResourceDefinition crd, Class<T> resourceType, Class<L> listClass, Class<D> doneClass)
      Deprecated.
      Old API for dealing with CustomResources.
      Type Parameters:
      T - template argument for resource
      L - template argument for list
      D - template argument for doneable resource
      Parameters:
      crd - Custom Resource Definition
      resourceType - resource type Pojo
      listClass - list class Pojo
      doneClass - Done class Pojo
      Returns:
      Kubernetes client object for manipulating custom resource.
    • extensions

      ExtensionsAPIGroupDSL extensions()
      Extensions API entrypoint for APIGroup extensions/v1beta1
      Returns:
      ExtensionsAPIGroupDSL with which you can access entrypoints for extension objects
    • getVersion

      VersionInfo getVersion()
      Get Kubernetes API server version
      Returns:
      VersionInfo object containing versioning information
    • customResource

      RawCustomResourceOperationsImpl customResource​(CustomResourceDefinitionContext customResourceDefinition)
      Typeless API for interacting with CustomResources. You can do basic operations with CustomResources without having any model. You just need to pass an object providing basic information of CustomResource. CustomResource objects are parsed as HashMaps.
      Parameters:
      customResourceDefinition - CustomResourceDefinitionContext - information about CustomResource like versioning, namespaced or not and group etc
      Returns:
      a RawCustomResourceOperations object which offers several functions for creating, deleting, updating, watching CustomResources.
    • admissionRegistration

      AdmissionRegistrationAPIGroupDSL admissionRegistration()
      API entrypoint for kubernetes resources with APIGroup admissionregistration.k8s.io/v1beta1
      Returns:
      AdmissionRegistrationAPIGroupDSL which offers entrypoints to specific resources in this API group
    • apps

      API entrypoint for kubernetes resources with APIGroup apps/v1
      Returns:
      AppsAPIGroupDSL which offers entrypoints to specific resources in this API group
    • autoscaling

      AutoscalingAPIGroupDSL autoscaling()
      API entrypoint for kubernetes resources with APIGroup autoscaling/v2beta1
      Returns:
      AutoScalingAPIGroupDSL which offers entrypoints to specific resources in this API group
    • network

      API entrypoint for kubernetes resources with APIGroup networking/v1
      Returns:
      NetworkAPIGroupDSL which offers entrypoints to specific resources in this APIGroup
    • storage

      API entrypoint for kubernetes resources with APIGroup storage/v1
      Returns:
      StorageAPIGroupDSL which offers entrypoints to specific resources in this APIGroup
    • settings

      API entrypoint for kubernetes resources with APIGroup settings/v1alpha1
      Returns:
      SettingsAPIGroupDSL which offers entrypoint to specific resources in this APIGroup
    • batch

      API entrypoint for kubernetes resources with APIGroup batch/v1beta1
      Returns:
      BatchAPIGroupDSL which offers entrypoint to specific resources in this APIGroup
    • top

      API entrypoint for kubernetes metrics
      Returns:
      MetricAPIGroupDSL which offers for fetching metrics
    • policy

      API entrypoint for kubernetes resources with APIGroup policy/v1beta1
      Returns:
      PolicyAPIGroupDSL which offers entrypoint to specific resources in this APIGroup
    • rbac

      API entrypoint for kubernetes resources with APIGroup rbac/v1
      Returns:
      RbacAPIGroupDSL which offers entrypoint to specific resources in this APIGroup
    • scheduling

      SchedulingAPIGroupDSL scheduling()
      API entrypoint for kubernetes resources with APIGroup scheduling/v1beta1
      Returns:
      SchedulingAPIGroupDSL which offers entrypoint to specific resources in this APIGroup
    • componentstatuses

      MixedOperation<io.fabric8.kubernetes.api.model.ComponentStatus,​io.fabric8.kubernetes.api.model.ComponentStatusList,​io.fabric8.kubernetes.api.model.DoneableComponentStatus,​Resource<io.fabric8.kubernetes.api.model.ComponentStatus,​io.fabric8.kubernetes.api.model.DoneableComponentStatus>> componentstatuses()
      API entrypoint for dealing with core/v1/ComponentStatus
      Returns:
      MixedOperation object with which you can do basic operations for ComponentStatus
    • load

      ParameterNamespaceListVisitFromServerGetDeleteRecreateWaitApplicable<io.fabric8.kubernetes.api.model.HasMetadata,​Boolean> load​(InputStream is)
      Load a Kubernetes resource object from file InputStream
      Parameters:
      is - File input stream object containing json/yaml content
      Returns:
      deserialized object
    • resourceList

      ParameterNamespaceListVisitFromServerGetDeleteRecreateWaitApplicable<io.fabric8.kubernetes.api.model.HasMetadata,​Boolean> resourceList​(String s)
      Load a Kubernetes list object
      Parameters:
      s - kubernetes list as string
      Returns:
      deserialized KubernetesList object
    • resourceList

      NamespaceListVisitFromServerGetDeleteRecreateWaitApplicable<io.fabric8.kubernetes.api.model.HasMetadata,​Boolean> resourceList​(io.fabric8.kubernetes.api.model.KubernetesResourceList list)
      KubernetesResourceList operations
      Parameters:
      list - KubernetesResourceList object containing kubernetes resource items
      Returns:
      operations object for KubernetesResourceList
    • resourceList

      NamespaceListVisitFromServerGetDeleteRecreateWaitApplicable<io.fabric8.kubernetes.api.model.HasMetadata,​Boolean> resourceList​(io.fabric8.kubernetes.api.model.HasMetadata... items)
      KubernetesResourceList operations
      Parameters:
      items - array of HasMetadata values
      Returns:
      operations object for Kubernetes list
    • resourceList

      NamespaceListVisitFromServerGetDeleteRecreateWaitApplicable<io.fabric8.kubernetes.api.model.HasMetadata,​Boolean> resourceList​(Collection<io.fabric8.kubernetes.api.model.HasMetadata> items)
      KubernetesResourceList operations
      Parameters:
      items - a collection containing HasMetadata values
      Returns:
      operations object for Kubernetes list
    • resource

      <T extends io.fabric8.kubernetes.api.model.HasMetadata> NamespaceVisitFromServerGetWatchDeleteRecreateWaitApplicable<T,​Boolean> resource​(T is)
      KubernetesResource operations. You can pass any Kubernetes resource as a HasMetadata object and do all operations
      Type Parameters:
      T - type of Kubernetes resource
      Parameters:
      is - Kubernetes resource object
      Returns:
      operations object for Kubernetes resource
    • resource

      NamespaceVisitFromServerGetWatchDeleteRecreateWaitApplicable<io.fabric8.kubernetes.api.model.HasMetadata,​Boolean> resource​(String s)
      KubernetesResource operations. You can pass any Kubernetes resource as string object and do all operations
      Parameters:
      s - Kubernetes resource object as string
      Returns:
      operations object for Kubernetes resource
    • bindings

      MixedOperation<io.fabric8.kubernetes.api.model.Binding,​io.fabric8.kubernetes.api.model.KubernetesResourceList<io.fabric8.kubernetes.api.model.Binding>,​io.fabric8.kubernetes.api.model.DoneableBinding,​Resource<io.fabric8.kubernetes.api.model.Binding,​io.fabric8.kubernetes.api.model.DoneableBinding>> bindings()
      Operations for Binding resource in APIgroup core/v1
      Returns:
      MixedOperation object for doing operations for Binding
    • endpoints

      MixedOperation<io.fabric8.kubernetes.api.model.Endpoints,​io.fabric8.kubernetes.api.model.EndpointsList,​io.fabric8.kubernetes.api.model.DoneableEndpoints,​Resource<io.fabric8.kubernetes.api.model.Endpoints,​io.fabric8.kubernetes.api.model.DoneableEndpoints>> endpoints()
      API entrypoint for Endpoints with APIGroup core/v1
      Returns:
      MixedOperation object for doing operations for Endpoints
    • events

      MixedOperation<io.fabric8.kubernetes.api.model.Event,​io.fabric8.kubernetes.api.model.EventList,​io.fabric8.kubernetes.api.model.DoneableEvent,​Resource<io.fabric8.kubernetes.api.model.Event,​io.fabric8.kubernetes.api.model.DoneableEvent>> events()
      Deprecated.
      Use KubernetesClient#v1#events instead.
      API entrypoint for getting events in Kubernetes. Events (core/v1)
      Returns:
      MixedOperation object for doing operations for Events
    • namespaces

      NonNamespaceOperation<io.fabric8.kubernetes.api.model.Namespace,​io.fabric8.kubernetes.api.model.NamespaceList,​io.fabric8.kubernetes.api.model.DoneableNamespace,​Resource<io.fabric8.kubernetes.api.model.Namespace,​io.fabric8.kubernetes.api.model.DoneableNamespace>> namespaces()
      API entrypoint for namespace related operations in Kubernetes. Namespace (core/v1)
      Returns:
      NonNamespaceOperation object for Namespace related operations
    • nodes

      NonNamespaceOperation<io.fabric8.kubernetes.api.model.Node,​io.fabric8.kubernetes.api.model.NodeList,​io.fabric8.kubernetes.api.model.DoneableNode,​Resource<io.fabric8.kubernetes.api.model.Node,​io.fabric8.kubernetes.api.model.DoneableNode>> nodes()
      API entrypoint for node related operations in Kubernetes. Node (core/v1)
      Returns:
      NonNamespaceOperation object for Node related operations
    • persistentVolumes

      NonNamespaceOperation<io.fabric8.kubernetes.api.model.PersistentVolume,​io.fabric8.kubernetes.api.model.PersistentVolumeList,​io.fabric8.kubernetes.api.model.DoneablePersistentVolume,​Resource<io.fabric8.kubernetes.api.model.PersistentVolume,​io.fabric8.kubernetes.api.model.DoneablePersistentVolume>> persistentVolumes()
      API entrypoint for PersistentVolume related operations. PersistentVolume (core/v1)
      Returns:
      NonNamespaceOperation object for PersistentVolume related operations.
    • persistentVolumeClaims

      MixedOperation<io.fabric8.kubernetes.api.model.PersistentVolumeClaim,​io.fabric8.kubernetes.api.model.PersistentVolumeClaimList,​io.fabric8.kubernetes.api.model.DoneablePersistentVolumeClaim,​Resource<io.fabric8.kubernetes.api.model.PersistentVolumeClaim,​io.fabric8.kubernetes.api.model.DoneablePersistentVolumeClaim>> persistentVolumeClaims()
      API entrypoint for PersistentVolumeClaim related operations. PersistentVolumeClaim (core/v1)
      Returns:
      MixedOperation object for PersistentVolumeClaim related operations.
    • pods

      MixedOperation<io.fabric8.kubernetes.api.model.Pod,​io.fabric8.kubernetes.api.model.PodList,​io.fabric8.kubernetes.api.model.DoneablePod,​PodResource<io.fabric8.kubernetes.api.model.Pod,​io.fabric8.kubernetes.api.model.DoneablePod>> pods()
      API entrypoint for Pod related operations. Pod (core/v1)
      Returns:
      MixedOperation object for Pod related operations
    • replicationControllers

      MixedOperation<io.fabric8.kubernetes.api.model.ReplicationController,​io.fabric8.kubernetes.api.model.ReplicationControllerList,​io.fabric8.kubernetes.api.model.DoneableReplicationController,​RollableScalableResource<io.fabric8.kubernetes.api.model.ReplicationController,​io.fabric8.kubernetes.api.model.DoneableReplicationController>> replicationControllers()
      API entrypoint for ReplicationController related operations. ReplicationController (core/v1)
      Returns:
      MixedOperation object for ReplicationController related operations.
    • resourceQuotas

      MixedOperation<io.fabric8.kubernetes.api.model.ResourceQuota,​io.fabric8.kubernetes.api.model.ResourceQuotaList,​io.fabric8.kubernetes.api.model.DoneableResourceQuota,​Resource<io.fabric8.kubernetes.api.model.ResourceQuota,​io.fabric8.kubernetes.api.model.DoneableResourceQuota>> resourceQuotas()
      API entrypoint for ResourceQuota related operations. ResourceQuota (core/v1)
      Returns:
      MixedOperation object for ResourceQuota related operations.
    • secrets

      MixedOperation<io.fabric8.kubernetes.api.model.Secret,​io.fabric8.kubernetes.api.model.SecretList,​io.fabric8.kubernetes.api.model.DoneableSecret,​Resource<io.fabric8.kubernetes.api.model.Secret,​io.fabric8.kubernetes.api.model.DoneableSecret>> secrets()
      API entrypoint for Secret related operations. Secret (core/v1)
      Returns:
      MixedOperation object for Secret related operations.
    • services

      MixedOperation<io.fabric8.kubernetes.api.model.Service,​io.fabric8.kubernetes.api.model.ServiceList,​io.fabric8.kubernetes.api.model.DoneableService,​ServiceResource<io.fabric8.kubernetes.api.model.Service,​io.fabric8.kubernetes.api.model.DoneableService>> services()
      API entrypoint for Service related operations. Service (core/v1)
      Returns:
      MixedOperation object for Service related operations.
    • serviceAccounts

      MixedOperation<io.fabric8.kubernetes.api.model.ServiceAccount,​io.fabric8.kubernetes.api.model.ServiceAccountList,​io.fabric8.kubernetes.api.model.DoneableServiceAccount,​Resource<io.fabric8.kubernetes.api.model.ServiceAccount,​io.fabric8.kubernetes.api.model.DoneableServiceAccount>> serviceAccounts()
      API entrypoint for ServiceAccount related operations. ServiceAccount (core/v1)
      Returns:
      MixedOperation object for ServiceAccount related operations.
    • apiServices

      MixedOperation<io.fabric8.kubernetes.api.model.APIService,​io.fabric8.kubernetes.api.model.APIServiceList,​io.fabric8.kubernetes.api.model.DoneableAPIService,​Resource<io.fabric8.kubernetes.api.model.APIService,​io.fabric8.kubernetes.api.model.DoneableAPIService>> apiServices()
      API entrypoint for APIService related operations. APIService (apiregistration.k8s.io/v1)
      Returns:
      MixedOperation object for APIService related operations
    • lists

      List related operations.
      Returns:
      KubernetesListMixedOperations object for Kubernetes List
    • configMaps

      MixedOperation<io.fabric8.kubernetes.api.model.ConfigMap,​io.fabric8.kubernetes.api.model.ConfigMapList,​io.fabric8.kubernetes.api.model.DoneableConfigMap,​Resource<io.fabric8.kubernetes.api.model.ConfigMap,​io.fabric8.kubernetes.api.model.DoneableConfigMap>> configMaps()
      API entrypoint for ConfigMap related operations. ConfigMap (core/v1)
      Returns:
      MixedOperation object for ConfigMap related operations.
    • limitRanges

      MixedOperation<io.fabric8.kubernetes.api.model.LimitRange,​io.fabric8.kubernetes.api.model.LimitRangeList,​io.fabric8.kubernetes.api.model.DoneableLimitRange,​Resource<io.fabric8.kubernetes.api.model.LimitRange,​io.fabric8.kubernetes.api.model.DoneableLimitRange>> limitRanges()
      API entrypoint for LimitRange related operations. LimitRange (core/v1)
      Returns:
      MixedOperation object for LimitRange related operations.
    • subjectAccessReviewAuth

      SubjectAccessReviewDSL subjectAccessReviewAuth()
      SubjectAccessReview operations. (authorization/v1)
      Returns:
      SubjectAccessReviewDSL object for dealing with SubjectAccessReviewOperations
    • informers

      Get an instance of Kubernetes Client informer factory. It allows you to construct and cache informers for API types. With it you can subscribe to all the events related to your Kubernetes type. It's like watch but a bit organized.
      Returns:
      SharedInformerFactory object
    • informers

      SharedInformerFactory informers​(ExecutorService executorService)
      Get an instance of Kubernetes Client informer factory. It allows you to construct and cache informers for API types. With it you can subscribe to all the events related to your Kubernetes type. It's like watch but a bit organized.
      Parameters:
      executorService - thread pool for informer factory
      Returns:
      SharedInformerFactory object
    • leaderElector

      <C extends Namespaceable<C> & KubernetesClient> LeaderElectorBuilder<C> leaderElector()
      API entrypoint for LeaderElector implementation for leader election.
      Type Parameters:
      C - type parameter for the Namespaceable KubernetesClient
      Returns:
      LeaderElectorBuilder to build LeaderElector instances
    • leases

      MixedOperation<io.fabric8.kubernetes.api.model.coordination.v1.Lease,​io.fabric8.kubernetes.api.model.coordination.v1.LeaseList,​io.fabric8.kubernetes.api.model.coordination.v1.DoneableLease,​Resource<io.fabric8.kubernetes.api.model.coordination.v1.Lease,​io.fabric8.kubernetes.api.model.coordination.v1.DoneableLease>> leases()
      API entrypoint for Lease related operations. Lease (coordination.k8s.io/v1)
      Returns:
      MixedOperation object for Lease related operations.
    • v1

      API entrypoint for Core Kubernetes Resources (core/v1). Right now other core resources have their own DSL entrypoints. But in future, all core/v1 resources would be added here.
      Returns:
      V1APIGroupDSL DSL object for core v1 resources