Skip to content

Commit a56837f

Browse files
authored
Merge pull request #505 from docker/feat/client-list-api
feat(client): add "configurable" field from list API
2 parents d3b39e4 + 5d75e14 commit a56837f

File tree

2 files changed

+20
-16
lines changed

2 files changed

+20
-16
lines changed

client/client.go

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -238,20 +238,22 @@ func (c client) ListPlugins(ctx context.Context) ([]PluginInfo, error) {
238238
continue
239239
}
240240
result = append(result, PluginInfo{
241-
Name: name,
242-
Version: version,
243-
Pattern: pattern,
244-
External: item.GetExternal(),
241+
Name: name,
242+
Version: version,
243+
Pattern: pattern,
244+
External: item.GetExternal(),
245+
Configurable: item.GetConfigurable(),
245246
})
246247
}
247248
return result, nil
248249
}
249250

250251
type PluginInfo struct {
251-
Name api.Name
252-
Version api.Version
253-
Pattern secrets.Pattern
254-
External bool
252+
Name api.Name
253+
Version api.Version
254+
Pattern secrets.Pattern
255+
External bool
256+
Configurable bool
255257
}
256258

257259
func dialFromPath(path string) dial {

client/client_test.go

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -82,10 +82,11 @@ func (m mockPluginsList) ListPlugins(context.Context, *connect.Request[resolverv
8282
pattern = plugin.Pattern.String()
8383
}
8484
plugins = append(plugins, resolverv1.Plugin_builder{
85-
Name: proto.String(name),
86-
Version: proto.String(version),
87-
Pattern: proto.String(pattern),
88-
External: proto.Bool(plugin.External),
85+
Name: proto.String(name),
86+
Version: proto.String(version),
87+
Pattern: proto.String(pattern),
88+
External: proto.Bool(plugin.External),
89+
Configurable: proto.Bool(plugin.Configurable),
8990
}.Build())
9091
}
9192
return connect.NewResponse(resolverv1.ListPluginsResponse_builder{
@@ -138,12 +139,13 @@ func mockListPluginsEngine(t *testing.T, plugins []PluginInfo) string {
138139

139140
func Test_ListPlugins(t *testing.T) {
140141
t.Parallel()
141-
t.Run("external and internal plugins", func(t *testing.T) {
142+
t.Run("external and internal configurable plugins", func(t *testing.T) {
142143
plugins := []PluginInfo{
143144
{
144-
Name: api.MustNewName("foo"),
145-
Version: api.MustNewVersion("v1"),
146-
Pattern: secrets.MustParsePattern("**"),
145+
Name: api.MustNewName("foo"),
146+
Version: api.MustNewVersion("v1"),
147+
Pattern: secrets.MustParsePattern("**"),
148+
Configurable: true,
147149
},
148150
{
149151
Name: api.MustNewName("bar"),

0 commit comments

Comments
 (0)