Cleanup plugin builds.

This commit is contained in:
jregan
2019-04-05 12:06:48 -07:00
parent cb4af7a9d4
commit 16fe7ced6a
18 changed files with 267 additions and 111 deletions

View File

@@ -18,6 +18,7 @@ package configmapandsecret
import (
"fmt"
"sort"
"strings"
"github.com/pkg/errors"
@@ -101,13 +102,24 @@ func (bf baseFactory) keyValuesFromPlugins(sources []types.KVSource) ([]kv.Pair,
if err != nil {
return nil, err
}
for k, v := range kvs {
result = append(result, kv.Pair{Key: k, Value: v})
for _, k := range sortedKeys(kvs) {
result = append(result, kv.Pair{Key: k, Value: kvs[k]})
}
}
return result, nil
}
func sortedKeys(m map[string]string) []string {
keys := make([]string, len(m))
i := 0
for k := range m {
keys[i] = k
i++
}
sort.Strings(keys)
return keys
}
func (bf baseFactory) keyValuesFromFileSources(sources []string) ([]kv.Pair, error) {
var kvs []kv.Pair
for _, s := range sources {

View File

@@ -77,14 +77,14 @@ func TestKeyValuesFromPlugins(t *testing.T) {
},
},
expected: []kv.Pair{
{
Key: "FOO",
Value: "bar",
},
{
Key: "BAR",
Value: "baz",
},
{
Key: "FOO",
Value: "bar",
},
},
},
{

View File

@@ -93,7 +93,7 @@ func (kf *KunstructuredFactoryImpl) MakeConfigMap(
o, err := configmapandsecret.NewFactory(
ldr, options,
plugin.NewConfiguredRegistry(
ldr, &kf.generatorMetaArgs.PluginConfig)).MakeConfigMap(args)
ldr, kf.generatorMetaArgs.PluginConfig)).MakeConfigMap(args)
if err != nil {
return nil, err
}
@@ -108,7 +108,7 @@ func (kf *KunstructuredFactoryImpl) MakeSecret(
o, err := configmapandsecret.NewFactory(
ldr, options,
plugin.NewConfiguredRegistry(
ldr, &kf.generatorMetaArgs.PluginConfig)).MakeSecret(args)
ldr, kf.generatorMetaArgs.PluginConfig)).MakeSecret(args)
if err != nil {
return nil, err
}

View File

@@ -19,6 +19,7 @@ package plugin
import (
"fmt"
"path/filepath"
"sigs.k8s.io/kustomize/pkg/ifc"
"sigs.k8s.io/kustomize/pkg/pgmconfig"
"sigs.k8s.io/kustomize/pkg/types"
@@ -31,13 +32,20 @@ type Registry struct {
}
const (
TransformerSymbol = "Transformer"
PluginsDir = "plugins"
pluginTypeGo = types.PluginType("go")
pluginTypeBuiltIn = types.PluginType("builtin")
)
func DefaultPluginConfig() types.PluginConfig {
return types.PluginConfig{
func ActivePluginConfig() *types.PluginConfig {
pc := DefaultPluginConfig()
pc.GoEnabled = true
return pc
}
func DefaultPluginConfig() *types.PluginConfig {
return &types.PluginConfig{
GoEnabled: false,
DirectoryPath: filepath.Join(
pgmconfig.ConfigRoot(), PluginsDir),