trait ClusterResource[T] extends AnyRef
Generic interface for working with Kubernetes cluster resources.
More type safe than Resource as it does not allow passing a namespace.
- T
Resource type
- Alphabetic
- By Inheritance
- ClusterResource
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Abstract Value Members
Concrete Value Members
-
def
create(newResource: T, dryRun: Boolean = false): IO[K8sFailure, T]
Creates a new resource
Creates a new resource
- newResource
The new resource to define in the cluster.
- 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
-
def
get(name: String): IO[K8sFailure, T]
Get a resource by its name
Get a resource by its name
- name
Name of the resource
- returns
Returns the current version of the resource
-
def
getAll(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
- 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
-
def
replace(name: String, updatedResource: T, 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
- 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
-
def
watch(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.
- 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.
- returns
A stream of watch events
-
def
watchForever(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.
- fieldSelector
Constrain the returned items by field selectors. Not all fields are supported by the server.
- labelSelector
Constrain the returned items by label selectors.
- returns
A stream of watch events