class K8sDtabStore extends DtabStore
A DtabStore using the Kubernetes third-party API (in beta as of Kubernetes 1.2) to store Dtabs. Note that usage of this store will require some setup:
kubectl create namerd/examples/k8s/3rdparty.yaml
This creates a third-party resource at: /apis/buoyant.io/v1/dtabs.
TODO: add tests: unit, end-to-end
- Alphabetic
- By Inheritance
- K8sDtabStore
- DtabStore
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
-
new
K8sDtabStore(client: Client, dst: String, namespace: String)
- client
a fully configured client which will be used to access the Kubernetes API
- dst
the destination which will be used to construct a service from the client
- namespace
the Kubernetes namespace being read/written by this store (note that this differs from Dtab namespaces)
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- val api: NsApi
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
create(ns: String, dtab: Dtab): Future[Unit]
Create a new dtab.
Create a new dtab. Returns a DtabNamespaceAlreadyExistsException if a dtab already exists with that namespace.
- Definition Classes
- K8sDtabStore → DtabStore
-
def
delete(ns: String): Future[Unit]
Deletes a dtab.
Deletes a dtab. Returns a DtabNamespaceDoesNotExistException if the namespace does not exist.
- Definition Classes
- K8sDtabStore → DtabStore
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
list(): Activity[Set[Ns]]
List all Dtab namespaces
List all Dtab namespaces
- Definition Classes
- K8sDtabStore → DtabStore
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
-
def
observe(ns: String): Activity[Option[VersionedDtab]]
Watch a dtab and its version.
Watch a dtab and its version.
- Definition Classes
- K8sDtabStore → DtabStore
-
def
put(ns: String, dtab: Dtab): Future[Unit]
Update an existing dtab based on the current version or create a new dtab if one doesn't already exist.
Update an existing dtab based on the current version or create a new dtab if one doesn't already exist. Put returns a DtabVersionMismatchException if the dtab resource version being updated does not match the current version. If this is the case, a retry for a dtab update should be done.
- Definition Classes
- K8sDtabStore → DtabStore
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
def
update(ns: String, dtab: Dtab, version: Buf): Future[Unit]
Update an existing dtab.
Update an existing dtab. Returns a DtabVersionMismatchException if the supplied version doesn't match the current version.
- Definition Classes
- K8sDtabStore → DtabStore
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
- val watchApi: NsApi