func main() { p := S3Plugin{ Name: "S3 Backup + Storage Plugin", Author: "Stark & Wayne", Version: "0.0.1", Features: plugin.PluginFeatures{ Target: "no", Store: "yes", }, } plugin.Run(p) }
func main() { p := ElasticSearchPlugin{ Name: "ElasticSearch Backup Plugin", Author: "Stark & Wayne", Version: "0.0.1", Features: plugin.PluginFeatures{ Target: "yes", Store: "no", }, } plugin.Run(p) }
func main() { p := RedisBrokerPlugin{ Name: "Pivotal Redis Broker Backup Plugin", Author: "Stark & Wayne", Version: "0.0.1", Features: plugin.PluginFeatures{ Target: "yes", Store: "no", }, } plugin.Run(p) }
func main() { p := FSPlugin{ Name: "FS Plugin", Author: "Stark & Wayne", Version: "1.0.0", Features: plugin.PluginFeatures{ Target: "yes", Store: "yes", }, } plugin.DEBUG("fs plugin starting up...") plugin.Run(p) }
func main() { // Create an object representing this plugin, which is a type conforming to the Plugin interface dummy := DummyPlugin{ // give it some authorship info meta: plugin.PluginInfo{ Name: "Dummy Plugin", Author: "Stark & Wayne", Version: "1.0.0", Features: plugin.PluginFeatures{ Target: "yes", Store: "yes", }, }, } fmt.Fprintf(os.Stderr, "dummy plugin starting up...\n") // Run the plugin - the plugin framework handles all arg parsing, exit handling, error/debug formatting for you plugin.Run(dummy) }