mirror of
https://github.com/kubernetes-sigs/kustomize.git
synced 2026-06-13 01:50:55 +00:00
Add hash interface
This commit is contained in:
@@ -19,27 +19,29 @@ package transformers
|
||||
import (
|
||||
"fmt"
|
||||
|
||||
"sigs.k8s.io/kustomize/pkg/hash"
|
||||
"sigs.k8s.io/kustomize/pkg/ifc"
|
||||
"sigs.k8s.io/kustomize/pkg/resmap"
|
||||
"sigs.k8s.io/kustomize/pkg/resource"
|
||||
)
|
||||
|
||||
// nameHashTransformer contains the prefix and the path config for each field that
|
||||
// the name prefix will be applied.
|
||||
type nameHashTransformer struct{}
|
||||
type nameHashTransformer struct {
|
||||
hash ifc.Hash
|
||||
}
|
||||
|
||||
var _ Transformer = &nameHashTransformer{}
|
||||
|
||||
// NewNameHashTransformer construct a nameHashTransformer.
|
||||
func NewNameHashTransformer() Transformer {
|
||||
return &nameHashTransformer{}
|
||||
func NewNameHashTransformer(h ifc.Hash) Transformer {
|
||||
return &nameHashTransformer{hash: h}
|
||||
}
|
||||
|
||||
// Transform appends hash to configmaps and secrets.
|
||||
func (o *nameHashTransformer) Transform(m resmap.ResMap) error {
|
||||
for _, res := range m {
|
||||
if res.IsGenerated() {
|
||||
err := appendHash(res)
|
||||
err := o.appendHash(res)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
@@ -48,8 +50,8 @@ func (o *nameHashTransformer) Transform(m resmap.ResMap) error {
|
||||
return nil
|
||||
}
|
||||
|
||||
func appendHash(res *resource.Resource) error {
|
||||
h, err := hash.Hash(res.Object)
|
||||
func (o *nameHashTransformer) appendHash(res *resource.Resource) error {
|
||||
h, err := o.hash.Hash(res.Object)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
@@ -20,6 +20,7 @@ import (
|
||||
"reflect"
|
||||
"testing"
|
||||
|
||||
"sigs.k8s.io/kustomize/internal/k8sdeps"
|
||||
"sigs.k8s.io/kustomize/pkg/ifc"
|
||||
"sigs.k8s.io/kustomize/pkg/resid"
|
||||
"sigs.k8s.io/kustomize/pkg/resmap"
|
||||
@@ -149,7 +150,7 @@ func TestNameHashTransformer(t *testing.T) {
|
||||
}).SetBehavior(ifc.BehaviorCreate),
|
||||
}
|
||||
|
||||
tran := NewNameHashTransformer()
|
||||
tran := NewNameHashTransformer(k8sdeps.NewKustHash())
|
||||
tran.Transform(objs)
|
||||
|
||||
if !reflect.DeepEqual(objs, expected) {
|
||||
|
||||
Reference in New Issue
Block a user