DynamicKubernetesClientImpl

class DynamicKubernetesClientImpl(context: Context, logConfig: LoggingConfig, closeHook: Option[() => Unit], poolSettings: ConnectionPoolSettings)(implicit actorSystem: ActorSystem, executionContext: ExecutionContext)

This is non-typed kubernetes client, for typed client see skuber.api.client.impl.KubernetesClientImpl This class provides a dynamic client for the Kubernetes API server. It is intended to be used for accessing resources / classes that are not part of the skuber library.

It uses the Pekko HTTP client to handle the requests to the Kubernetes API server.

Companion:
object
class Object
trait Matchable
class Any

Value members

Concrete methods

def create(rawInput: JsonRaw, namespace: Option[String], resourcePlural: String): Future[DynamicKubernetesObject]

Create a kubernetes resource

Create a kubernetes resource

Value parameters:
namespace

is the namespace of the resource

rawInput

is the raw json input of the object to create

resourcePlural

is the plural name of the resource type: e.g: "pods", "deployments"

def delete(name: String, namespace: Option[String], apiVersion: String, resourcePlural: String): Future[Unit]

Delete a resource from the Kubernetes API server

Delete a resource from the Kubernetes API server

Value parameters:
apiVersion

is the api version of the resource type to retrieve, e.g: "apps/v1"

name

resource name

namespace

is the namespace of the resource

resourcePlural

is the plural name of the resource type to retrieve: e.g: "pods", "deployments"

def deleteWithOptions(name: String, options: DeleteOptions, apiVersion: String, resourcePlural: String, namespace: Option[String]): Future[Unit]

Delete a resource from the Kubernetes API server

Delete a resource from the Kubernetes API server

Value parameters:
apiVersion

is the api version of the resource type to retrieve, e.g: "apps/v1"

name

resource name

namespace

is the namespace of the resource

options

delete options see DeleteOptions

resourcePlural

is the plural name of the resource type to retrieve: e.g: "pods", "deployments"

def get(name: String, apiVersion: String, resourcePlural: String, namespace: Option[String])(implicit lc: LoggingContext): Future[DynamicKubernetesObject]

Get a resource from the Kubernetes API server

Get a resource from the Kubernetes API server

Value parameters:
apiVersion

is the api version of the resource type to retrieve, e.g: "apps/v1"

name

is the name of the resource to retrieve

namespace

is the namespace of the resource to retrieve

resourcePlural

is the plural name of the resource type to retrieve: e.g: "pods", "deployments"

def getOption(name: String, namespace: Option[String], apiVersion: String, resourcePlural: String)(implicit lc: LoggingContext): Future[Option[DynamicKubernetesObject]]

Get a resource from the Kubernetes API server

Get a resource from the Kubernetes API server

Value parameters:
apiVersion

is the api version of the resource type to retrieve, e.g: "apps/v1"

name

is the name of the resource to retrieve

namespace

is the namespace of the resource to retrieve

resourcePlural

is the plural name of the resource type to retrieve: e.g: "pods", "deployments"

def getServerAPIVersions(implicit lc: LoggingContext): Future[List[String]]
def list(apiVersion: String, resourcePlural: String, namespace: Option[String], options: Option[ListOptions]): Future[DynamicKubernetesObjectList]

List objects of specific resource kind in current namespace

List objects of specific resource kind in current namespace

Value parameters:
apiVersion

is the api version of the resource type to retrieve, e.g: "apps/v1"

namespace

is the namespace of the resource

options

see ListOptions

resourcePlural

is the plural name of the resource type to retrieve: e.g: "pods", "deployments"

def update(rawInput: JsonRaw, namespace: Option[String], resourcePlural: String): Future[DynamicKubernetesObject]

Update a resource from the Kubernetes API server

Update a resource from the Kubernetes API server

Value parameters:
namespace

is the namespace of the resource

rawInput

is the raw json input of the object to create

resourcePlural

is the plural name of the resource type: e.g: "pods", "deployments"