mirror of
https://github.com/kubernetes-sigs/kustomize.git
synced 2026-06-12 01:14:22 +00:00
Make a secret factory.
This commit is contained in:
@@ -28,6 +28,7 @@ import (
|
|||||||
|
|
||||||
"github.com/kubernetes-sigs/kustomize/pkg/constants"
|
"github.com/kubernetes-sigs/kustomize/pkg/constants"
|
||||||
"github.com/kubernetes-sigs/kustomize/pkg/crds"
|
"github.com/kubernetes-sigs/kustomize/pkg/crds"
|
||||||
|
"github.com/kubernetes-sigs/kustomize/pkg/fs"
|
||||||
interror "github.com/kubernetes-sigs/kustomize/pkg/internal/error"
|
interror "github.com/kubernetes-sigs/kustomize/pkg/internal/error"
|
||||||
"github.com/kubernetes-sigs/kustomize/pkg/loader"
|
"github.com/kubernetes-sigs/kustomize/pkg/loader"
|
||||||
"github.com/kubernetes-sigs/kustomize/pkg/resmap"
|
"github.com/kubernetes-sigs/kustomize/pkg/resmap"
|
||||||
@@ -44,10 +45,11 @@ import (
|
|||||||
type Application struct {
|
type Application struct {
|
||||||
kustomization *types.Kustomization
|
kustomization *types.Kustomization
|
||||||
loader loader.Loader
|
loader loader.Loader
|
||||||
|
fSys fs.FileSystem
|
||||||
}
|
}
|
||||||
|
|
||||||
// NewApplication returns a new instance of Application primed with a Loader.
|
// NewApplication returns a new instance of Application primed with a Loader.
|
||||||
func NewApplication(loader loader.Loader) (*Application, error) {
|
func NewApplication(loader loader.Loader, fSys fs.FileSystem) (*Application, error) {
|
||||||
content, err := loader.Load(constants.KustomizationFileName)
|
content, err := loader.Load(constants.KustomizationFileName)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
@@ -58,7 +60,7 @@ func NewApplication(loader loader.Loader) (*Application, error) {
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
return &Application{kustomization: &m, loader: loader}, nil
|
return &Application{kustomization: &m, loader: loader, fSys: fSys}, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func unmarshal(y []byte, o interface{}) error {
|
func unmarshal(y []byte, o interface{}) error {
|
||||||
@@ -139,7 +141,8 @@ func (a *Application) loadCustomizedResMap() (resmap.ResMap, error) {
|
|||||||
errs.Append(errors.Wrap(err, "RegisterCRDs"))
|
errs.Append(errors.Wrap(err, "RegisterCRDs"))
|
||||||
}
|
}
|
||||||
|
|
||||||
cms, err := resmap.NewResMapFromConfigMapArgs(a.loader, a.kustomization.ConfigMapGenerator)
|
cms, err := resmap.NewResMapFromConfigMapArgs(
|
||||||
|
a.loader, a.fSys, a.kustomization.ConfigMapGenerator)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
errs.Append(errors.Wrap(err, "NewResMapFromConfigMapArgs"))
|
errs.Append(errors.Wrap(err, "NewResMapFromConfigMapArgs"))
|
||||||
}
|
}
|
||||||
@@ -200,7 +203,7 @@ func (a *Application) loadCustomizedBases() (resmap.ResMap, *interror.Kustomizat
|
|||||||
errs.Append(errors.Wrap(err, "couldn't make ldr for "+path))
|
errs.Append(errors.Wrap(err, "couldn't make ldr for "+path))
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
app, err := NewApplication(ldr)
|
app, err := NewApplication(ldr, a.fSys)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
errs.Append(errors.Wrap(err, "couldn't make app for "+path))
|
errs.Append(errors.Wrap(err, "couldn't make app for "+path))
|
||||||
continue
|
continue
|
||||||
@@ -228,7 +231,7 @@ func (a *Application) loadBasesAsFlatList() ([]*Application, error) {
|
|||||||
errs.Append(err)
|
errs.Append(err)
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
a, err := NewApplication(ldr)
|
a, err := NewApplication(ldr, a.fSys)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
errs.Append(err)
|
errs.Append(err)
|
||||||
continue
|
continue
|
||||||
|
|||||||
@@ -22,6 +22,7 @@ import (
|
|||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
"github.com/kubernetes-sigs/kustomize/pkg/constants"
|
"github.com/kubernetes-sigs/kustomize/pkg/constants"
|
||||||
|
"github.com/kubernetes-sigs/kustomize/pkg/fs"
|
||||||
"github.com/kubernetes-sigs/kustomize/pkg/internal/loadertest"
|
"github.com/kubernetes-sigs/kustomize/pkg/internal/loadertest"
|
||||||
"github.com/kubernetes-sigs/kustomize/pkg/loader"
|
"github.com/kubernetes-sigs/kustomize/pkg/loader"
|
||||||
"github.com/kubernetes-sigs/kustomize/pkg/resmap"
|
"github.com/kubernetes-sigs/kustomize/pkg/resmap"
|
||||||
@@ -179,7 +180,7 @@ func TestResources1(t *testing.T) {
|
|||||||
}),
|
}),
|
||||||
}
|
}
|
||||||
l := makeLoader1(t)
|
l := makeLoader1(t)
|
||||||
app, err := NewApplication(l)
|
app, err := NewApplication(l, fs.MakeFakeFS())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatalf("Unexpected construction error %v", err)
|
t.Fatalf("Unexpected construction error %v", err)
|
||||||
}
|
}
|
||||||
@@ -214,7 +215,7 @@ func TestRawResources1(t *testing.T) {
|
|||||||
}),
|
}),
|
||||||
}
|
}
|
||||||
l := makeLoader1(t)
|
l := makeLoader1(t)
|
||||||
app, err := NewApplication(l)
|
app, err := NewApplication(l, fs.MakeFakeFS())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatalf("Unexpected construction error %v", err)
|
t.Fatalf("Unexpected construction error %v", err)
|
||||||
}
|
}
|
||||||
@@ -324,7 +325,7 @@ func TestRawResources2(t *testing.T) {
|
|||||||
}),
|
}),
|
||||||
}
|
}
|
||||||
l := makeLoader2(t)
|
l := makeLoader2(t)
|
||||||
app, err := NewApplication(l)
|
app, err := NewApplication(l, fs.MakeFakeFS())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatalf("Unexpected construction error %v", err)
|
t.Fatalf("Unexpected construction error %v", err)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -69,8 +69,8 @@ func (o *buildOptions) Validate(args []string) error {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// RunBuild runs build command.
|
// RunBuild runs build command.
|
||||||
func (o *buildOptions) RunBuild(out io.Writer, fs fs.FileSystem) error {
|
func (o *buildOptions) RunBuild(out io.Writer, fSys fs.FileSystem) error {
|
||||||
l := loader.Init([]loader.SchemeLoader{loader.NewFileLoader(fs)})
|
l := loader.Init([]loader.SchemeLoader{loader.NewFileLoader(fSys)})
|
||||||
|
|
||||||
absPath, err := filepath.Abs(o.kustomizationPath)
|
absPath, err := filepath.Abs(o.kustomizationPath)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@@ -82,7 +82,7 @@ func (o *buildOptions) RunBuild(out io.Writer, fs fs.FileSystem) error {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
application, err := app.NewApplication(rootLoader)
|
application, err := app.NewApplication(rootLoader, fSys)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -103,7 +103,7 @@ func addConfigMap(k *types.Kustomization, flagsAndArgs cMapFlagsAndArgs, fSys fs
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
factory := configmapandsecret.NewConfigMapFactory(cmArgs, fSys, nil)
|
factory := configmapandsecret.NewConfigMapFactory(cmArgs, nil, fSys)
|
||||||
|
|
||||||
// Validate by trying to create corev1.configmap.
|
// Validate by trying to create corev1.configmap.
|
||||||
_, _, err = factory.MakeUnstructAndGenerateName()
|
_, _, err = factory.MakeUnstructAndGenerateName()
|
||||||
|
|||||||
@@ -66,9 +66,9 @@ func (o *diffOptions) Validate(args []string) error {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// RunDiff gets the differences between Application.MakeCustomizedResMap() and Application.MakeUncustomizedResMap().
|
// RunDiff gets the differences between Application.MakeCustomizedResMap() and Application.MakeUncustomizedResMap().
|
||||||
func (o *diffOptions) RunDiff(out, errOut io.Writer, fs fs.FileSystem) error {
|
func (o *diffOptions) RunDiff(out, errOut io.Writer, fSys fs.FileSystem) error {
|
||||||
|
|
||||||
l := loader.Init([]loader.SchemeLoader{loader.NewFileLoader(fs)})
|
l := loader.Init([]loader.SchemeLoader{loader.NewFileLoader(fSys)})
|
||||||
|
|
||||||
absPath, err := filepath.Abs(o.kustomizationPath)
|
absPath, err := filepath.Abs(o.kustomizationPath)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@@ -80,7 +80,7 @@ func (o *diffOptions) RunDiff(out, errOut io.Writer, fs fs.FileSystem) error {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
application, err := app.NewApplication(rootLoader)
|
application, err := app.NewApplication(rootLoader, fSys)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -46,9 +46,9 @@ type ConfigMapFactory struct {
|
|||||||
// NewConfigMapFactory returns a new ConfigMapFactory.
|
// NewConfigMapFactory returns a new ConfigMapFactory.
|
||||||
func NewConfigMapFactory(
|
func NewConfigMapFactory(
|
||||||
args *types.ConfigMapArgs,
|
args *types.ConfigMapArgs,
|
||||||
fSys fs.FileSystem,
|
l loader.Loader,
|
||||||
l loader.Loader) *ConfigMapFactory {
|
fSys fs.FileSystem) *ConfigMapFactory {
|
||||||
return &ConfigMapFactory{args: args, fSys: fSys, ldr: l}
|
return &ConfigMapFactory{args: args, ldr: l, fSys: fSys}
|
||||||
}
|
}
|
||||||
|
|
||||||
// MakeUnstructAndGenerateName returns an configmap and the name appended with a hash.
|
// MakeUnstructAndGenerateName returns an configmap and the name appended with a hash.
|
||||||
|
|||||||
@@ -136,7 +136,7 @@ func TestConstructConfigMap(t *testing.T) {
|
|||||||
for _, tc := range testCases {
|
for _, tc := range testCases {
|
||||||
// TODO: all tests should use a FakeFs
|
// TODO: all tests should use a FakeFs
|
||||||
fSys := fs.MakeRealFS()
|
fSys := fs.MakeRealFS()
|
||||||
f := NewConfigMapFactory(&tc.input, fSys, nil)
|
f := NewConfigMapFactory(&tc.input, nil, fSys)
|
||||||
cm, err := f.MakeConfigMap1()
|
cm, err := f.MakeConfigMap1()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatalf("unexpected error: %v", err)
|
t.Fatalf("unexpected error: %v", err)
|
||||||
|
|||||||
@@ -18,20 +18,24 @@ package resmap
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"github.com/kubernetes-sigs/kustomize/pkg/configmapandsecret"
|
"github.com/kubernetes-sigs/kustomize/pkg/configmapandsecret"
|
||||||
|
"github.com/kubernetes-sigs/kustomize/pkg/fs"
|
||||||
"github.com/kubernetes-sigs/kustomize/pkg/loader"
|
"github.com/kubernetes-sigs/kustomize/pkg/loader"
|
||||||
"github.com/kubernetes-sigs/kustomize/pkg/resource"
|
"github.com/kubernetes-sigs/kustomize/pkg/resource"
|
||||||
"github.com/kubernetes-sigs/kustomize/pkg/types"
|
"github.com/kubernetes-sigs/kustomize/pkg/types"
|
||||||
)
|
)
|
||||||
|
|
||||||
// NewResMapFromConfigMapArgs returns a Resource slice given a configmap metadata slice from kustomization file.
|
// NewResMapFromConfigMapArgs returns a Resource slice given
|
||||||
|
// a configmap metadata slice from kustomization file.
|
||||||
func NewResMapFromConfigMapArgs(
|
func NewResMapFromConfigMapArgs(
|
||||||
ldr loader.Loader, cmArgsList []types.ConfigMapArgs) (ResMap, error) {
|
ldr loader.Loader,
|
||||||
|
fSys fs.FileSystem,
|
||||||
|
cmArgsList []types.ConfigMapArgs) (ResMap, error) {
|
||||||
var allResources []*resource.Resource
|
var allResources []*resource.Resource
|
||||||
for _, cmArgs := range cmArgsList {
|
for _, cmArgs := range cmArgsList {
|
||||||
if cmArgs.Behavior == "" {
|
if cmArgs.Behavior == "" {
|
||||||
cmArgs.Behavior = "create"
|
cmArgs.Behavior = "create"
|
||||||
}
|
}
|
||||||
f := configmapandsecret.NewConfigMapFactory(&cmArgs, nil, ldr)
|
f := configmapandsecret.NewConfigMapFactory(&cmArgs, ldr, fSys)
|
||||||
cm, err := f.MakeConfigMap2()
|
cm, err := f.MakeConfigMap2()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
|
|||||||
@@ -20,6 +20,7 @@ import (
|
|||||||
"reflect"
|
"reflect"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
|
"github.com/kubernetes-sigs/kustomize/pkg/fs"
|
||||||
"github.com/kubernetes-sigs/kustomize/pkg/internal/loadertest"
|
"github.com/kubernetes-sigs/kustomize/pkg/internal/loadertest"
|
||||||
"github.com/kubernetes-sigs/kustomize/pkg/resource"
|
"github.com/kubernetes-sigs/kustomize/pkg/resource"
|
||||||
"github.com/kubernetes-sigs/kustomize/pkg/types"
|
"github.com/kubernetes-sigs/kustomize/pkg/types"
|
||||||
@@ -130,7 +131,7 @@ BAR=baz
|
|||||||
if ferr := l.AddFile(tc.filepath, []byte(tc.content)); ferr != nil {
|
if ferr := l.AddFile(tc.filepath, []byte(tc.content)); ferr != nil {
|
||||||
t.Fatalf("Error adding fake file: %v\n", ferr)
|
t.Fatalf("Error adding fake file: %v\n", ferr)
|
||||||
}
|
}
|
||||||
r, err := NewResMapFromConfigMapArgs(l, tc.input)
|
r, err := NewResMapFromConfigMapArgs(l, fs.MakeFakeFS(), tc.input)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatalf("unexpected error: %v", err)
|
t.Fatalf("unexpected error: %v", err)
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user