plugin

package
v8.0.7+incompatible Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 17, 2018 License: MIT Imports: 17 Imported by: 25

Documentation

Index

Constants

View Source
const ENDPOINT_BAD_DATA = 13
View Source
const ENDPOINT_MISSING_KEY = 12
View Source
const EXEC_FAILURE = 3
View Source
const JSON_FAILURE = 10
View Source
const NOPIPE = 0
View Source
const PLUGIN_FAILURE = 4
View Source
const RESTORE_KEY_REQUIRED = 11
View Source
const STDIN = 1
View Source
const STDOUT = 2
View Source
const SUCCESS = 0
View Source
const UNSUPPORTED_ACTION = 2
View Source
const USAGE = 1

Variables

View Source
var UNIMPLEMENTED = UnsupportedActionError{}

Functions

func DEBUG

func DEBUG(format string, args ...interface{})

func Exec

func Exec(cmdString string, flags int) error

func ExecWithOptions added in v0.4.1

func ExecWithOptions(opts ExecOptions) error

func GenUUID

func GenUUID() string

func Run

func Run(p Plugin)

Types

type EndpointDataTypeMismatchError

type EndpointDataTypeMismatchError struct {
	Key         string
	DesiredType string
}

func (EndpointDataTypeMismatchError) Error

type EndpointMissingRequiredDataError

type EndpointMissingRequiredDataError struct {
	Key string
}

func (EndpointMissingRequiredDataError) Error

type ExecFailure

type ExecFailure struct {
	Err string
}

func (ExecFailure) Error

func (e ExecFailure) Error() string

type ExecOptions added in v0.4.1

type ExecOptions struct {
	Stdout   io.Writer
	Stdin    io.Reader
	Stderr   *os.File
	Cmd      string
	ExpectRC []int
}

type Field

type Field struct {
	Mode     string   `json:"mode"`
	Name     string   `json:"name"`
	Type     string   `json:"type"`
	Title    string   `json:"title,omitempty"`
	Help     string   `json:"help,omitempty"`
	Example  string   `json:"example,omitempty"`
	Default  string   `json:"default,omitempty"`
	Enum     []string `json:"enum,omitempty"`
	Required bool     `json:"required,omitempty"`
}

type JSONError

type JSONError struct {
	Err string
}

func (JSONError) Error

func (e JSONError) Error() string

type MissingRestoreKeyError

type MissingRestoreKeyError struct{}

func (MissingRestoreKeyError) Error

func (e MissingRestoreKeyError) Error() string

type Opt added in v0.10.7

type Opt struct {
	HelpShort bool   `cli:"-h"`
	HelpFull  bool   `cli:"--help"`
	Debug     bool   `cli:"-D, --debug",env:"DEBUG"`
	Version   bool   `cli:"-v, --version"`
	Endpoint  string `cli:"-e,--endpoint"`
	Key       string `cli:"-k, --key"`
	Text      bool   `cli:"--text"`

	Info     struct{} `cli:"info"`
	Example  struct{} `cli:"example"`
	Validate struct{} `cli:"validate"`
	Backup   struct{} `cli:"backup"`
	Restore  struct{} `cli:"restore"`
	Store    struct{} `cli:"store"`
	Retrieve struct{} `cli:"retrieve"`
	Purge    struct{} `cli:"purge"`
}

type Plugin

type Plugin interface {
	Validate(ShieldEndpoint) error
	Backup(ShieldEndpoint) error
	Restore(ShieldEndpoint) error
	Store(ShieldEndpoint) (string, int64, error)
	Retrieve(ShieldEndpoint, string) error
	Purge(ShieldEndpoint, string) error
	Meta() PluginInfo
}

type PluginFeatures

type PluginFeatures struct {
	Target string `json:"target"`
	Store  string `json:"store"`
}

type PluginInfo

type PluginInfo struct {
	Name     string         `json:"name"`
	Author   string         `json:"author"`
	Version  string         `json:"version"`
	Features PluginFeatures `json:"features"`

	Example  string `json:"-"`
	Defaults string `json:"-"`

	Fields []Field `json:"fields"`
}

type ShieldEndpoint

type ShieldEndpoint map[string]interface{}

func (ShieldEndpoint) ArrayValue

func (endpoint ShieldEndpoint) ArrayValue(key string) ([]interface{}, error)

func (ShieldEndpoint) BooleanValue

func (endpoint ShieldEndpoint) BooleanValue(key string) (bool, error)

func (ShieldEndpoint) BooleanValueDefault added in v0.6.4

func (endpoint ShieldEndpoint) BooleanValueDefault(key string, def bool) (bool, error)

func (ShieldEndpoint) FloatValue

func (endpoint ShieldEndpoint) FloatValue(key string) (float64, error)

func (ShieldEndpoint) FloatValueDefault added in v0.6.4

func (endpoint ShieldEndpoint) FloatValueDefault(key string, def float64) (float64, error)

func (ShieldEndpoint) MapValue

func (endpoint ShieldEndpoint) MapValue(key string) (map[string]interface{}, error)

func (ShieldEndpoint) StringValue

func (endpoint ShieldEndpoint) StringValue(key string) (string, error)

func (ShieldEndpoint) StringValueDefault added in v0.6.4

func (endpoint ShieldEndpoint) StringValueDefault(key string, def string) (string, error)

type UnsupportedActionError

type UnsupportedActionError struct {
	Action string
}

func (UnsupportedActionError) Error

func (e UnsupportedActionError) Error() string

Directories

Path Synopsis
The `azure` plugin for SHIELD is intended to be a back-end storage plugin, wrapping Azure's Blobstore Service.
The `azure` plugin for SHIELD is intended to be a back-end storage plugin, wrapping Azure's Blobstore Service.
The `bbr` plugin for SHIELD backup/restore plugin for all your bbr enabled deployments and directors.
The `bbr` plugin for SHIELD backup/restore plugin for all your bbr enabled deployments and directors.
The `bbr` plugin for SHIELD backup/restore plugin for all your bbr enabled deployments and directors.
The `bbr` plugin for SHIELD backup/restore plugin for all your bbr enabled deployments and directors.
The `consul` plugin for SHIELD is intended to be a generic backup/restore plugin for a consul server.
The `consul` plugin for SHIELD is intended to be a generic backup/restore plugin for a consul server.
The `consul` plugin for SHIELD is intended to be a generic backup/restore plugin for a consul server.
The `consul` plugin for SHIELD is intended to be a generic backup/restore plugin for a consul server.
The `docker-postgres` plugin for SHIELD implements backup + restore functionality specific to the `docker-boshrelease`'s cf-containers-broker, in conjunction with Postgres docker containers.
The `docker-postgres` plugin for SHIELD implements backup + restore functionality specific to the `docker-boshrelease`'s cf-containers-broker, in conjunction with Postgres docker containers.
The `google` plugin for SHIELD is intended to be a back-end storage plugin, wrapping Google's Cloud Storage service.
The `google` plugin for SHIELD is intended to be a back-end storage plugin, wrapping Google's Cloud Storage service.
The `mongo` plugin for SHIELD implements generic backup + restore functionality for mongodb.
The `mongo` plugin for SHIELD implements generic backup + restore functionality for mongodb.
The `mysql` plugin for SHIELD implements generic backup + restore functionality for a MySQL-compatible server.
The `mysql` plugin for SHIELD implements generic backup + restore functionality for a MySQL-compatible server.
The `postgres` plugin for SHIELD is intended to be a generic backup/restore plugin for a postgres server.
The `postgres` plugin for SHIELD is intended to be a generic backup/restore plugin for a postgres server.
The `rabbitmq-broker` plugin for SHIELD implements backup + restore functionality for Pivotal's cf-rabbitmq-release RabbitMQ Service Broker BOSH release.
The `rabbitmq-broker` plugin for SHIELD implements backup + restore functionality for Pivotal's cf-rabbitmq-release RabbitMQ Service Broker BOSH release.
The `redis-broker` plugin for SHIELD implements backup + restore functionality for Piovtal's cf-redis-release (Redis Service + Broker for CloudFoundry).
The `redis-broker` plugin for SHIELD implements backup + restore functionality for Piovtal's cf-redis-release (Redis Service + Broker for CloudFoundry).
The `swift` plugin for SHIELD is intended to be a back-end storage plugin, wrapping OpenStack Swift.
The `swift` plugin for SHIELD is intended to be a back-end storage plugin, wrapping OpenStack Swift.
The `xtrabackup` plugin for SHIELD implements backup + restore functionality for the cf-mysql-release.
The `xtrabackup` plugin for SHIELD implements backup + restore functionality for the cf-mysql-release.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL