MCPcopy Create free account
hub / github.com/docker/secrets-engine / ListPlugins

Method ListPlugins

client/client.go:234–272  ·  view source on GitHub ↗
(ctx context.Context)

Source from the content-addressed store, hash-verified

232}
233
234func (c client) ListPlugins(ctx context.Context) ([]PluginInfo, error) {
235 req := connect.NewRequest(pluginsv1.ListPluginsRequest_builder{}.Build())
236 resp, err := c.engineClient.ListPlugins(ctx, req)
237 if isDialError(err) {
238 return nil, fmt.Errorf("%w: %w", ErrSecretsEngineNotAvailable, err)
239 }
240 if err != nil {
241 return nil, err
242 }
243 var result []PluginInfo
244 for _, item := range resp.Msg.GetPlugins() {
245 name, err := api.NewName(item.GetName())
246 if err != nil {
247 continue
248 }
249 version, err := api.NewVersion(item.GetVersion())
250 if err != nil {
251 continue
252 }
253 info := PluginInfo{
254 Name: name,
255 Version: version,
256 Disabled: item.GetDisabled(),
257 External: item.GetExternal(),
258 Configurable: item.GetConfigurable(),
259 RunStatus: item.GetRunStatus(),
260 StatusMessage: item.GetStatusMessage(),
261 }
262 if sp := item.GetSecretsProvider(); sp != nil {
263 pattern, err := secrets.ParsePattern(sp.GetPattern())
264 if err != nil {
265 continue
266 }
267 info.SecretsProvider = &SecretsProviderMetadata{Pattern: pattern}
268 }
269 result = append(result, info)
270 }
271 return result, nil
272}
273
274func (c client) EnablePlugin(ctx context.Context, name string) error {
275 r := pluginsv1.EnablePluginRequest_builder{}.Build()

Callers

nothing calls this directly

Calls 14

isDialErrorFunction · 0.85
GetPluginsMethod · 0.80
GetDisabledMethod · 0.80
GetExternalMethod · 0.80
GetConfigurableMethod · 0.80
GetRunStatusMethod · 0.80
GetStatusMessageMethod · 0.80
ListPluginsMethod · 0.65
ErrorfMethod · 0.65
GetVersionMethod · 0.65
BuildMethod · 0.45
GetNameMethod · 0.45

Tested by

no test coverage detected