Documentation ¶
Index ¶
- Variables
- func Factory(ctx context.Context, conf *logical.BackendConfig) (logical.Backend, error)
- type PluginBackend
- func (b *PluginBackend) Cleanup(ctx context.Context)
- func (b *PluginBackend) HandleExistenceCheck(ctx context.Context, req *logical.Request) (checkFound bool, exists bool, err error)
- func (b *PluginBackend) HandleRequest(ctx context.Context, req *logical.Request) (resp *logical.Response, err error)
- func (b *PluginBackend) Initialize(ctx context.Context, req *logical.InitializationRequest) error
- func (b *PluginBackend) InvalidateKey(ctx context.Context, key string)
- func (b *PluginBackend) Logger() log.Logger
- func (b *PluginBackend) PluginVersion() logical.PluginVersion
- func (b *PluginBackend) Setup(ctx context.Context, config *logical.BackendConfig) error
- func (b *PluginBackend) SpecialPaths() *logical.Paths
- func (b *PluginBackend) System() logical.SystemView
- func (b *PluginBackend) Type() logical.BackendType
Constants ¶
This section is empty.
Variables ¶
var ( ErrMismatchType = fmt.Errorf("mismatch on mounted backend and plugin backend type") ErrMismatchPaths = fmt.Errorf("mismatch on mounted backend and plugin backend special paths") )
Functions ¶
Types ¶
type PluginBackend ¶ added in v1.0.0
type PluginBackend struct { Backend logical.Backend sync.RWMutex // contains filtered or unexported fields }
PluginBackend is a thin wrapper around plugin.BackendPluginClient
func Backend ¶
func Backend(ctx context.Context, conf *logical.BackendConfig) (*PluginBackend, error)
Backend returns an instance of the backend, either as a plugin if external or as a concrete implementation if builtin, casted as logical.Backend.
func (*PluginBackend) Cleanup ¶ added in v1.12.0
func (b *PluginBackend) Cleanup(ctx context.Context)
Cleanup is a thin wrapper used to ensure we grab the lock for race purposes
func (*PluginBackend) HandleExistenceCheck ¶ added in v1.0.0
func (b *PluginBackend) HandleExistenceCheck(ctx context.Context, req *logical.Request) (checkFound bool, exists bool, err error)
HandleExistenceCheck is a thin wrapper implementation of HandleExistenceCheck that includes automatic plugin reload.
func (*PluginBackend) HandleRequest ¶ added in v1.0.0
func (b *PluginBackend) HandleRequest(ctx context.Context, req *logical.Request) (resp *logical.Response, err error)
HandleRequest is a thin wrapper implementation of HandleRequest that includes automatic plugin reload.
func (*PluginBackend) Initialize ¶ added in v1.2.0
func (b *PluginBackend) Initialize(ctx context.Context, req *logical.InitializationRequest) error
Initialize is intentionally a no-op here, the backend will instead be initialized when it is lazily loaded.
func (*PluginBackend) InvalidateKey ¶ added in v1.12.0
func (b *PluginBackend) InvalidateKey(ctx context.Context, key string)
InvalidateKey is a thin wrapper used to ensure we grab the lock for race purposes
func (*PluginBackend) Logger ¶ added in v1.12.0
func (b *PluginBackend) Logger() log.Logger
Logger is a thin wrapper used to ensure we grab the lock for race purposes
func (*PluginBackend) PluginVersion ¶ added in v1.12.0
func (b *PluginBackend) PluginVersion() logical.PluginVersion
func (*PluginBackend) Setup ¶ added in v1.12.0
func (b *PluginBackend) Setup(ctx context.Context, config *logical.BackendConfig) error
Setup is a thin wrapper used to ensure we grab the lock for race purposes
func (*PluginBackend) SpecialPaths ¶ added in v1.12.0
func (b *PluginBackend) SpecialPaths() *logical.Paths
SpecialPaths is a thin wrapper used to ensure we grab the lock for race purposes
func (*PluginBackend) System ¶ added in v1.12.0
func (b *PluginBackend) System() logical.SystemView
System is a thin wrapper used to ensure we grab the lock for race purposes
func (*PluginBackend) Type ¶ added in v1.12.0
func (b *PluginBackend) Type() logical.BackendType
Type is a thin wrapper used to ensure we grab the lock for race purposes