TestResourceClient

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

Implementation of Resource and ResourceDeleteAll to be used from unit tests

Type parameters

DeleteResult

Result of the delete operation

T

Resource type

Value parameters

events

Watch event queue

store

Object store

Attributes

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

Members list

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

Value parameters

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

Attributes

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

Value parameters

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.

Attributes

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

Value parameters

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.

Attributes

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

Value parameters

name

Name of the resource

namespace

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

Attributes

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

Value parameters

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.

Attributes

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

Value parameters

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

Attributes

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.

Value parameters

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

Attributes

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[Any, 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

Value parameters

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.

Attributes

Inherited from:
ResourceDelete
def watchForever(namespace: Option[K8sNamespace], resourceVersion: Option[String], 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.

Value parameters

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 to start watch from.

Attributes

Returns

A stream of watch events

Inherited from:
Resource