Versions in this module Expand all Collapse all v1 v1.8.6 Jul 26, 2019 v1.8.5 Mar 3, 2019 v1.8.4 Dec 26, 2018 Changes in this version + var ErrNotFound = fmt.Errorf("backend not found") + func CryptoBackends() []string + func RCSBackends() []string + func RegisterCrypto(id CryptoBackend, name string, loader CryptoLoader) + func RegisterRCS(id RCSBackend, name string, loader RCSLoader) + func RegisterStorage(id StorageBackend, name string, loader StorageLoader) + func StorageBackends() []string type Crypto + func NewCrypto(ctx context.Context, id CryptoBackend) (Crypto, error) + type CryptoLoader interface + New func(context.Context) (Crypto, error) type RCS + func CloneRCS(ctx context.Context, id RCSBackend, repo, path string) (RCS, error) + func InitRCS(ctx context.Context, id RCSBackend, path, name, email string) (RCS, error) + func OpenRCS(ctx context.Context, id RCSBackend, path string) (RCS, error) + type RCSLoader interface + Clone func(context.Context, string, string) (RCS, error) + Init func(context.Context, string, string, string) (RCS, error) + Open func(context.Context, string) (RCS, error) type Storage + func NewStorage(ctx context.Context, id StorageBackend, url *URL) (Storage, error) + type StorageLoader interface + New func(context.Context, *URL) (Storage, error) v1.8.3 Nov 19, 2018 v1.8.2 Jun 28, 2018 v1.8.1 Jun 8, 2018 v1.8.0 Jun 6, 2018 v1.8.0-alpha.1 Jun 6, 2018 v1.8.0-alpha.0 Jun 4, 2018 v1.7.2 May 28, 2018 v1.7.1 May 25, 2018 v1.7.0 May 22, 2018 Changes in this version + func CryptoBackendName(cb CryptoBackend) string + func HasCryptoBackend(ctx context.Context) bool + func HasRCSBackend(ctx context.Context) bool + func HasStorageBackend(ctx context.Context) bool + func RCSBackendName(sb RCSBackend) string + func StorageBackendName(sb StorageBackend) string + func WithCryptoBackend(ctx context.Context, be CryptoBackend) context.Context + func WithCryptoBackendString(ctx context.Context, be string) context.Context + func WithRCSBackend(ctx context.Context, sb RCSBackend) context.Context + func WithRCSBackendString(ctx context.Context, sb string) context.Context + func WithStorageBackend(ctx context.Context, sb StorageBackend) context.Context + func WithStorageBackendString(ctx context.Context, sb string) context.Context + type Crypto interface + Decrypt func(ctx context.Context, ciphertext []byte) ([]byte, error) + Encrypt func(ctx context.Context, plaintext []byte, recipients []string) ([]byte, error) + Ext func() string + IDFile func() string + Initialized func(ctx context.Context) error + Name func() string + RecipientIDs func(ctx context.Context, ciphertext []byte) ([]string, error) + Version func(context.Context) semver.Version + type CryptoBackend int + const GPGCLI + const OpenPGP + const Plain + const Vault + const XC + func GetCryptoBackend(ctx context.Context) CryptoBackend + func (c CryptoBackend) String() string + type Keyring interface + CreatePrivateKey func(ctx context.Context) error + CreatePrivateKeyBatch func(ctx context.Context, name, email, passphrase string) error + EmailFromKey func(ctx context.Context, id string) string + ExportPublicKey func(ctx context.Context, id string) ([]byte, error) + FindPrivateKeys func(ctx context.Context, needles ...string) ([]string, error) + FindPublicKeys func(ctx context.Context, needles ...string) ([]string, error) + Fingerprint func(ctx context.Context, id string) string + FormatKey func(ctx context.Context, id string) string + ImportPublicKey func(ctx context.Context, key []byte) error + ListPrivateKeyIDs func(ctx context.Context) ([]string, error) + ListPublicKeyIDs func(ctx context.Context) ([]string, error) + NameFromKey func(ctx context.Context, id string) string + ReadNamesFromKey func(ctx context.Context, buf []byte) ([]string, error) + type RCS interface + Add func(ctx context.Context, args ...string) error + AddRemote func(ctx context.Context, remote, location string) error + Commit func(ctx context.Context, msg string) error + GetRevision func(ctx context.Context, name, revision string) ([]byte, error) + InitConfig func(ctx context.Context, name, email string) error + Name func() string + Pull func(ctx context.Context, remote, location string) error + Push func(ctx context.Context, remote, location string) error + RemoveRemote func(ctx context.Context, remote string) error + Revisions func(ctx context.Context, name string) ([]Revision, error) + Version func(ctx context.Context) semver.Version + type RCSBackend int + const GitCLI + const GoGit + const Noop + func GetRCSBackend(ctx context.Context) RCSBackend + func (s RCSBackend) String() string + type Revision struct + AuthorEmail string + AuthorName string + Body string + Date time.Time + Hash string + Subject string + type Storage interface + Available func(ctx context.Context) error + Delete func(ctx context.Context, name string) error + Exists func(ctx context.Context, name string) bool + Fsck func(context.Context) error + Get func(ctx context.Context, name string) ([]byte, error) + IsDir func(ctx context.Context, name string) bool + List func(ctx context.Context, prefix string) ([]string, error) + Name func() string + Prune func(ctx context.Context, prefix string) error + Set func(ctx context.Context, name string, value []byte) error + Version func() semver.Version + type StorageBackend int + const Consul + const FS + const InMem + func GetStorageBackend(ctx context.Context) StorageBackend + func (s StorageBackend) String() string + type URL struct + Crypto CryptoBackend + Host string + Password string + Path string + Port string + Query url.Values + RCS RCSBackend + Scheme string + Storage StorageBackend + Username string + func FromPath(path string) *URL + func ParseURL(us string) (*URL, error) + func (u *URL) MarshalYAML() (interface{}, error) + func (u *URL) String() string + func (u *URL) UnmarshalYAML(umf func(interface{}) error) error