Class/Object

com.drobisch.tresor.vault

KV

Related Docs: object KV | package vault

Permalink

class KV[F[_]] extends SecretEngineProvider[F, (KeyValueContext, VaultConfig)]

implementation of the vault KV engine API

https://www.vaultproject.io/api/secret/kv/kv-v1.html

F

effect type to use

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. KV
  2. SecretEngineProvider
  3. HttpSupport
  4. Provider
  5. AnyRef
  6. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new KV()(implicit sync: Sync[F], clock: Clock[F])

    Permalink

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def autoRefresh(leaseRef: Ref[F, Option[Lease]], increment: Option[Long] = None, refreshRatio: Double = 0.5)(newLease: ReaderT[F, VaultConfig, Lease]): ReaderT[F, VaultConfig, Lease]

    Permalink

    Auto refresh a lease reference based on the current time.

    Auto refresh a lease reference based on the current time.

    This is not a continuous refresh, the flow is:

    1. if lease is not renewable or is expired, create a new one 2. if its not expired but half of the duration time has passed more time then configured by the refresh ratio: refresh the the lease 3. return current lease otherwise

    leaseRef

    a reference to the current (maybe empty) lease

    increment

    the increment to request in the renew

    refreshRatio

    the ratio of duration time that is allowed to pass before refreshing the lease

    newLease

    the fallback effect reader for creating a new lease

    returns

    an effect reader with the logic above applied

    Definition Classes
    SecretEngineProvider
  6. implicit val backend: SttpBackend[Id, Nothing]

    Permalink
    Attributes
    protected
    Definition Classes
    HttpSupport
  7. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  8. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  9. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  10. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  11. def fromDto(dto: LeaseDTO, now: Long): Lease

    Permalink
    Attributes
    protected
    Definition Classes
    SecretEngineProvider
  12. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  13. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  14. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  15. val log: Logger

    Permalink
    Attributes
    protected
    Definition Classes
    SecretEngineProvider
  16. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  17. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  18. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  19. def parseLease(response: Response[String]): F[Lease]

    Permalink
    Attributes
    protected
    Definition Classes
    SecretEngineProvider
  20. def renew(lease: Lease, increment: Option[Long]): ReaderT[F, VaultConfig, Lease]

    Permalink

    renew a lease

    renew a lease

    https://www.vaultproject.io/api/system/leases.html#renew-lease

    lease

    a lease

    increment

    time to extend the lease in seconds

    returns

    extended lease

    Definition Classes
    SecretEngineProvider
  21. def secret(context: (KeyValueContext, VaultConfig))(implicit secret: Secret[Lease]): F[Lease]

    Permalink

    read the secret from a path

    read the secret from a path

    context

    key value context with key and vault config

    returns

    non-renewable vault lease

    Definition Classes
    KVProvider
  22. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  23. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  24. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  25. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  26. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from HttpSupport

Inherited from Provider[F, (KeyValueContext, VaultConfig), Lease]

Inherited from AnyRef

Inherited from Any

Ungrouped