go-plugins: github.com/micro/go-plugins Index | Files | Directories

package plugin

import "github.com/micro/go-plugins"

Package plugin provides the ability to load plugins

Index

Package Files

plugin.go template.go

func Build Uses

func Build(path string, p *Plugin) error

Build generates a dso plugin using the go command `go build -buildmode=plugin`

func Generate Uses

func Generate(path string, p *Plugin) error

Generate creates a go file at the specified path. You must use `go build -buildmode=plugin`to build it.

func Init Uses

func Init(p *Plugin) error

Init sets up the plugin

type Plugin Uses

type Plugin struct {
    // Name of the plugin e.g rabbitmq
    Name string
    // Type of the plugin e.g broker
    Type string
    // Path specifies the import path
    Path string
    // NewFunc creates an instance of the plugin
    NewFunc interface{}
}

Plugin is a plugin loaded from a file

func Load Uses

func Load(path string) (*Plugin, error)

Load loads a plugin created with `go build -buildmode=plugin`

Directories

PathSynopsis
broker/gocloudPackage gocloud provides a pubsub broker for Go Cloud.
broker/googlepubsubPackage googlepubsub provides a Google cloud pubsub broker
broker/grpcPackage grpc is a point to point grpc broker
broker/grpc/protoPackage broker is a generated protocol buffer package.
broker/httpPackage http provides a http based message broker
broker/kafkaPackage kafka provides a kafka broker using sarama cluster
broker/memoryPackage memory provides a memory broker
broker/mqttPackage mqtt provides an mqtt broker
broker/natsPackage nats provides a NATS broker
broker/nsqPackage nsq provides an NSQ broker
broker/proxyPackage proxy is a broker using the micro proxy
broker/rabbitmqPackage rabbitmq provides a RabbitMQ broker
broker/redisPackage redis provides a Redis broker
broker/segmentioPackage kafka provides a kafka broker using segmentio
broker/servicePackage service provides the broker service client
broker/snssqs
broker/sqs
broker/stanPackage stan provides a NATS Streaming broker
broker/stomp
client/grpcPackage grpc provides a gRPC client
client/httpPackage http provides a http client
client/http/testPackage test is a generated protocol buffer package.
client/mockPackage mock provides a mock client for testing
codec/bsonrpcPackage bsonrpc provides a bson-rpc codec
codec/json-iteratorPackage json iterator provides a json codec
codec/jsonrpc2Package jsonrpc2 provides a json-rpc 2.0 codec
codec/msgpackrpcPackage msgpackrpc provides a msgpack-rpc codec
codec/segmentioPackage json provides a json codec
config/source/configmapPackage configmap config is an interface for dynamic configuration.
config/source/consul
config/source/etcd
config/source/grpc
config/source/grpc/protoPackage grpc is a generated protocol buffer package.
config/source/mucp
config/source/mucp/proto
config/source/pkger
config/source/runtimevarpackage runtimevar is the source for gocloud.dev/runtimevar
config/source/urlPackage url loads changesets from a url
config/source/vault
logger/apex
logger/logrus
logger/zap
logger/zerolog
registry/cachePackage cache provides a registry cache
registry/consul
registry/etcdPackage etcd provides an etcd service registry
registry/eurekaPackage eureka provides a Eureka registry
registry/eureka/mockThis file was generated by counterfeiter
registry/gossipPackage gossip provides a gossip registry based on hashicorp/memberlist
registry/gossip/proto
registry/kubernetesPackage kubernetes provides a kubernetes registry
registry/kubernetes/client
registry/kubernetes/client/api
registry/kubernetes/client/mock
registry/kubernetes/client/watch
registry/mdnsPackage mdns provides a multicast dns registry
registry/mdns/util
registry/memoryPackage memory provides an in-memory registry
registry/multi
registry/nacos
registry/nacos/mock
registry/natsPackage nats provides a NATS registry using broadcast queries
registry/proxyPackage proxy is a registry plugin for the micro proxy
registry/servicePackage service uses the registry service
registry/zookeeperPackage zookeeper provides a zookeeper registry
server/grpcPackage grpc provides a grpc server
server/httpPackage http implements a go-micro.Server
store/cloudflarePackage cloudflare is a store implementation backed by cloudflare workers kv Note that the cloudflare workers KV API is eventually consistent.
store/cockroachPackage cockroach implements the cockroach store
store/consulPackage consul is a consul implementation of kv
store/etcdPackage etcd implements a go-micro/v2/store with etcd
store/filePackage local is a file system backed store
store/memcached
store/mysql
store/redis
transport/grpcPackage grpc provides a grpc transport
transport/grpc/proto
transport/httpPackage http returns a http2 transport using net/http
transport/memoryPackage memory is an in-memory transport
transport/natsPackage nats provides a NATS transport
transport/quicPackage quic provides a QUIC based transport
transport/rabbitmqPackage rabbitmq provides a RabbitMQ transport
transport/tcpPackage tcp provides a TCP transport
transport/utpPackage utp implements a utp transport
wrapper/breaker/gobreaker
wrapper/breaker/hystrix
wrapper/endpointPackage endpoint provides a wrapper that executes other wrappers for specific methods
wrapper/monitoring/prometheus
wrapper/monitoring/victoriametrics
wrapper/ratelimiter/uber
wrapper/servicePackage wrapper injects a go-micro.Service into the context
wrapper/trace/awsxrayPackage awsxray is a wrapper for AWS X-Ray distributed tracing
wrapper/trace/datadogPackage datadog provides wrappers for Datadog ddtrace
wrapper/trace/opencensusPackage opencensus provides wrappers for OpenCensus tracing.
wrapper/trace/opentracingPackage opentracing provides wrappers for OpenTracing
wrapper/validator

Package plugin imports 15 packages (graph). Updated 2020-10-25. Refresh now. Tools for package owners.