Packages

trait Resource[T] extends AnyRef

Generic interface for working with Kubernetes resources

This interface supports both namespaced and cluster resources. For more type safe variants check NamespacedResource and ClusterResource.

T

Resource type

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. Resource
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def create(newResource: T, namespace: Option[K8sNamespace], dryRun: Boolean = false): IO[K8sFailure, T]

    Creates a new resource

    Creates a new resource

    newResource

    The new resource to define in the cluster

    namespace

    Namespace. For namespaced resources it must be Some. For cluster resources, it must be None.

    dryRun

    If true, the request is sent to the server but it will not create the resource.

    returns

    Returns the created resource as it was returned from Kubernetes

  2. abstract def get(name: String, namespace: Option[K8sNamespace]): IO[K8sFailure, T]

    Get a resource by its name

    Get a resource by its name

    name

    Name of the resource

    namespace

    Namespace. For namespaced resources it must be Some. For cluster resources, it must be None.

    returns

    Returns the current version of the resource

  3. abstract def getAll(namespace: Option[K8sNamespace], chunkSize: Int = 10, fieldSelector: Option[FieldSelector] = None, labelSelector: Option[LabelSelector] = None, resourceVersion: ListResourceVersion = ListResourceVersion.MostRecent): Stream[K8sFailure, T]

    A paginated query of all resources with filtering possibilities

    A paginated query of all resources with filtering possibilities

    namespace

    Constraint the query to a given namespace. If None, results returned from all namespaces.

    chunkSize

    Number of items to return per HTTP request

    fieldSelector

    Constrain the returned items by field selectors. Not all fields are supported by the server.

    labelSelector

    Constrain the returned items by label selectors.

    resourceVersion

    Control the returned resources' version.

    returns

    A stream of resources

  4. abstract def replace(name: String, updatedResource: T, namespace: Option[K8sNamespace], dryRun: Boolean = false): IO[K8sFailure, T]

    Replaces an existing resource selected by its name

    Replaces an existing resource selected by its name

    name

    Name of the resource

    updatedResource

    The new value of the resource

    namespace

    Namespace. For namespaced resources it must be Some. For cluster resources, it must be None.

    dryRun

    If true, the request is sent to the server but it will not create the resource.

    returns

    Returns the updated resource as it was returned from Kubernetes

  5. abstract def watch(namespace: Option[K8sNamespace], resourceVersion: Option[String], fieldSelector: Option[FieldSelector] = None, labelSelector: Option[LabelSelector] = None, sendInitialEvents: Boolean = false, readTimeout: zio.Duration = Duration.Infinity): Stream[K8sFailure, TypedWatchEvent[T]]

    Watch stream of resource change events of type com.coralogix.zio.k8s.client.model.TypedWatchEvent

    Watch stream of resource change events of type com.coralogix.zio.k8s.client.model.TypedWatchEvent

    This function requires the user to control the starting resourceVersion and to restart the watch stream when the server closes the connection.

    For a more convenient variant check watchForever.

    namespace

    Constraint the watched resources by their namespace. If None, all namespaces will be watched.

    resourceVersion

    Last known resource version

    fieldSelector

    Constrain the returned items by field selectors. Not all fields are supported by the server.

    labelSelector

    Constrain the returned items by label selectors.

    sendInitialEvents

    Whether to set sendInitialEvents=true in the k8s watch request. Only has an effect in k8s 1.28+. If set, k8s returns all existing resources as synthetic Added events before sending updates.

    returns

    A stream of watch events

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native() @HotSpotIntrinsicCandidate()
  6. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  7. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  8. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  9. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  10. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  11. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  12. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  13. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  14. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  15. def toString(): String
    Definition Classes
    AnyRef → Any
  16. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  17. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  18. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  19. def watchForever(namespace: Option[K8sNamespace], resourceVersion: Option[String] = None, fieldSelector: Option[FieldSelector] = None, labelSelector: Option[LabelSelector] = None, sendInitialEvents: Boolean = false, readTimeout: zio.Duration = Duration.Infinity): ZStream[Any, K8sFailure, TypedWatchEvent[T]]

    Infinite watch stream of resource change events of type com.coralogix.zio.k8s.client.model.TypedWatchEvent

    Infinite watch stream of resource change events of type com.coralogix.zio.k8s.client.model.TypedWatchEvent

    The underlying implementation takes advantage of Kubernetes watch bookmarks.

    namespace

    Constraint the watched resources by their namespace. If None, all namespaces will be watched.

    resourceVersion

    Last known resource version to start watch from.

    fieldSelector

    Constrain the returned items by field selectors. Not all fields are supported by the server.

    labelSelector

    Constrain the returned items by label selectors.

    sendInitialEvents

    Whether to set sendInitialEvents=true in the k8s watch request. Only has an effect in k8s 1.28+. If set, k8s returns all existing resources as synthetic Added events before sending updates.

    returns

    A stream of watch events

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] ) @Deprecated
    Deprecated

Inherited from AnyRef

Inherited from Any

Ungrouped