TestResourceClient

com.coralogix.zio.k8s.client.test.TestResourceClient
See theTestResourceClient companion object
final class TestResourceClient[T, DeleteResult] extends Resource[T] with ResourceDelete[T, DeleteResult] with ResourceDeleteAll[T]

Implementation of Resource and ResourceDeleteAll to be used from unit tests

Attributes

DeleteResult

Result of the delete operation

T

Resource type

events

Watch event queue

store

Object store

Companion:
object
Graph
Supertypes
trait ResourceDelete[T, DeleteResult]
trait Resource[T]
class Object
trait Matchable
class Any

Members list

Concise view

Value members

Concrete methods

override def create(newResource: T, namespace: Option[K8sNamespace], dryRun: Boolean): IO[K8sFailure, T]

Creates a new resource

Creates a new resource

Attributes

dryRun

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

namespace

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

newResource

The new resource to define in the cluster

Returns:

Returns the created resource as it was returned from Kubernetes

Definition Classes
override def delete(name: String, deleteOptions: DeleteOptions, namespace: Option[K8sNamespace], dryRun: Boolean, gracePeriod: Option[Duration], propagationPolicy: Option[PropagationPolicy]): IO[K8sFailure, DeleteResult]

Deletes an existing resource selected by its name

Deletes an existing resource selected by its name

Attributes

deleteOptions

Delete options

dryRun

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

gracePeriod

The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.

name

Name of the resource

namespace

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

propagationPolicy

Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: 'Orphan' - orphan the dependents; 'Background' - allow the garbage collector to delete the dependents in the background; 'Foreground' - a cascading policy that deletes all dependents in the foreground.

Returns:

Response from the Kubernetes API

Definition Classes
override def deleteAll(deleteOptions: DeleteOptions, namespace: Option[K8sNamespace], dryRun: Boolean, gracePeriod: Option[Duration], propagationPolicy: Option[PropagationPolicy], fieldSelector: Option[FieldSelector], labelSelector: Option[LabelSelector]): IO[K8sFailure, Status]

Delete all resources matching the provided constraints

Delete all resources matching the provided constraints

Attributes

deleteOptions

Delete options

dryRun

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

fieldSelector

Select the items to be deleted by field selectors. Not all fields are supported by the server.

gracePeriod

The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.

labelSelector

Select the items to be deleted by label selectors.

namespace

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

propagationPolicy

Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: 'Orphan' - orphan the dependents; 'Background' - allow the garbage collector to delete the dependents in the background; 'Foreground' - a cascading policy that deletes all dependents in the foreground.

Returns:

Status returned by the Kubernetes API

Definition Classes
override def get(name: String, namespace: Option[K8sNamespace]): IO[K8sFailure, T]

Get a resource by its name

Get a resource by its name

Attributes

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

Definition Classes
override def getAll(namespace: Option[K8sNamespace], chunkSize: Int, fieldSelector: Option[FieldSelector], labelSelector: Option[LabelSelector], resourceVersion: ListResourceVersion): Stream[K8sFailure, T]

A paginated query of all resources with filtering possibilities

A paginated query of all resources with filtering possibilities

Attributes

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.

namespace

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

resourceVersion

Control the returned resources' version.

Returns:

A stream of resources

Definition Classes
override def replace(name: String, updatedResource: T, namespace: Option[K8sNamespace], dryRun: Boolean): IO[K8sFailure, T]

Replaces an existing resource selected by its name

Replaces an existing resource selected by its name

Attributes

dryRun

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

name

Name of the resource

namespace

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

updatedResource

The new value of the resource

Returns:

Returns the updated resource as it was returned from Kubernetes

Definition Classes
override def watch(namespace: Option[K8sNamespace], resourceVersion: Option[String], fieldSelector: Option[FieldSelector], labelSelector: Option[LabelSelector]): 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.

Attributes

fieldSelector

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

labelSelector

Constrain the returned items by label selectors.

namespace

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

resourceVersion

Last known resource version

Returns:

A stream of watch events

Definition Classes

Inherited methods

def deleteAndWait(name: String, deleteOptions: DeleteOptions, namespace: Option[K8sNamespace], dryRun: Boolean, gracePeriod: Option[Duration], propagationPolicy: Option[PropagationPolicy])(implicit ev: DeleteResult <:< Status): ZIO[Clock, K8sFailure, Unit]

Deletes an existing resource selected by its name and waits until it has gone

Deletes an existing resource selected by its name and waits until it has gone

Attributes

deleteOptions

Delete options

dryRun

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

gracePeriod

The duration in seconds before the object should be deleted. Value must be non-negative integer. The value zero indicates delete immediately. If this value is nil, the default grace period for the specified type will be used. Defaults to a per object value if not specified. zero means delete immediately.

name

Name of the resource

namespace

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

propagationPolicy

Whether and how garbage collection will be performed. Either this field or OrphanDependents may be set, but not both. The default policy is decided by the existing finalizer set in the metadata.finalizers and the resource-specific default policy. Acceptable values are: 'Orphan' - orphan the dependents; 'Background' - allow the garbage collector to delete the dependents in the background; 'Foreground' - a cascading policy that deletes all dependents in the foreground.

Inherited from:
ResourceDelete
def watchForever(namespace: Option[K8sNamespace], fieldSelector: Option[FieldSelector], labelSelector: Option[LabelSelector]): 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.

Attributes

fieldSelector

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

labelSelector

Constrain the returned items by label selectors.

namespace

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

Returns:

A stream of watch events

Inherited from:
Resource