Refactor the PrefixSuffixTransformer into separate prefix- and suffix transformers (#4318)

* Refactor prefix filter into its own filter, decoupled from the prefixsuffix filter

* Refactor prefix transformer into its own transformer, decoupled from the prefixsuffix transformer

* Refactor suffix filter into its own filter, decoupled from the prefixsuffix filter

* Refactor suffix transformer into its own transformer, decoupled from the prefixsuffix transformer

* Add a default nameSuffix field spec in addition to the namePrefix

* Remove the PrefixSuffixTransformer from the list of builtin transformers

* Add a multi-transformer to builtinhelpers.TransformFactories

* Remove the implementation of the prefixsuffixtransformer.PrefixSuffixTransformer

* Resolve style and format related feedback from the pull request

* Add test to test the legacy PrefixSuffixTransformer for BC purposes
This commit is contained in:
Julian
2021-12-22 12:01:06 -08:00
committed by GitHub
parent 3608f335fd
commit 3dbc88bf94
33 changed files with 1019 additions and 181 deletions

View File

@@ -25,11 +25,10 @@ type plugin struct {
//noinspection GoUnusedGlobalVariable
var KustomizePlugin plugin
func (p *plugin) makePrefixSuffixPluginConfig() ([]byte, error) {
func (p *plugin) makePrefixPluginConfig() ([]byte, error) {
var s struct {
Prefix string
Suffix string
FieldSpecs []types.FieldSpec
Prefix string `json:"prefix,omitempty" yaml:"prefix,omitempty"`
FieldSpecs []types.FieldSpec `json:"fieldSpecs,omitempty" yaml:"fieldSpecs,omitempty"`
}
s.Prefix = getDate() + "-"
s.FieldSpecs = []types.FieldSpec{
@@ -40,16 +39,16 @@ func (p *plugin) makePrefixSuffixPluginConfig() ([]byte, error) {
func (p *plugin) Config(h *resmap.PluginHelpers, _ []byte) error {
// Ignore the incoming c, compute new config.
c, err := p.makePrefixSuffixPluginConfig()
c, err := p.makePrefixPluginConfig()
if err != nil {
return errors.Wrapf(
err, "dateprefixer makeconfig")
}
prefixer := builtins.NewPrefixSuffixTransformerPlugin()
prefixer := builtins.NewPrefixTransformerPlugin()
err = prefixer.Config(h, c)
if err != nil {
return errors.Wrapf(
err, "prefixsuffix configure")
err, "prefix configure")
}
p.t = prefixer
return nil