get.porter.sh/porter@v1.3.0/pkg/secrets/plugins/filesystem/plugin.go (about) 1 package filesystem 2 3 import ( 4 "get.porter.sh/porter/pkg/config" 5 "get.porter.sh/porter/pkg/secrets" 6 "get.porter.sh/porter/pkg/secrets/plugins" 7 "get.porter.sh/porter/pkg/secrets/pluginstore" 8 "github.com/hashicorp/go-plugin" 9 ) 10 11 const PluginKey = plugins.PluginInterface + ".porter.filesystem" 12 13 var _ plugins.SecretsProtocol = &Plugin{} 14 15 // Plugin is the plugin wrapper for accessing secrets from a local filesystem. 16 type Plugin struct { 17 secrets.Store 18 } 19 20 func NewPlugin(c *config.Config, rawCfg interface{}) plugin.Plugin { 21 impl := NewStore(c) 22 return pluginstore.NewPlugin(c.Context, impl) 23 }