module Sekrat

An embedded key/value store with pluggable storage and encryption

Constants

DecryptFailure

An issue came up while attempting to decrypt data

EncryptFailure

An issue came up while attempting to encrypt data

Error

The base error for all other Sekrat errors

NotFound

An issue came up while retrieving data

NotImplemented

The Warehouse or Crypter implementation is incomplete

StorageFailure

An issue came up while storing data

VERSION

Public Class Methods

manager(warehouse: nil, crypter: nil) click to toggle source

Create a new secret manager. If a warehouse is provided, that warehouse is used for the manager. Otherwise, the default warehouse, Memory, is used. IF a crypter is provided, that crypter is used for the manager. Otherwise, the default crypter, Passthrough, is used.

@param warehouse: [Sekrat::Warehouse::Base] the warehouse in which to store

secrets

@param crypter: [Sekrat::Crypter::Base] the crypter with which to encrypt

and decrypt secrets

@return [Sekrat::Manager]

# File lib/sekrat.rb, line 20
def self.manager(warehouse: nil, crypter: nil)
  Manager.new(
    warehouse: warehouse || Warehouse::Memory.new,
    crypter: crypter || Crypter::Passthrough.new
  )
end