From dfd4f31b0074de20e5380a544418a875cb795a05 Mon Sep 17 00:00:00 2001 From: bryanl <bryanliles@gmail.com> Date: Sat, 10 Mar 2018 09:45:41 -0500 Subject: [PATCH] update app env with no k8s spec flag when updating an app env with no k8s spec flag, don't attempt to check the lib path Signed-off-by: bryanl <bryanliles@gmail.com> --- metadata/app/app010.go | 12 +++++++----- metadata/app/app010_test.go | 29 +++++++++++++++++++++++++++++ 2 files changed, 36 insertions(+), 5 deletions(-) diff --git a/metadata/app/app010.go b/metadata/app/app010.go index a6fb27ae..3d98a2d4 100644 --- a/metadata/app/app010.go +++ b/metadata/app/app010.go @@ -92,12 +92,14 @@ func (a *App010) AddEnvironment(name, k8sSpecFlag string, spec *EnvironmentSpec) a.spec.Environments[name] = spec - ver, err := LibUpdater(a.fs, k8sSpecFlag, app010LibPath(a.root), true) - if err != nil { - return err - } + if k8sSpecFlag != "" { + ver, err := LibUpdater(a.fs, k8sSpecFlag, app010LibPath(a.root), true) + if err != nil { + return err + } - a.spec.Environments[name].KubernetesVersion = ver + a.spec.Environments[name].KubernetesVersion = ver + } return a.save() } diff --git a/metadata/app/app010_test.go b/metadata/app/app010_test.go index 8451ffeb..89e33445 100644 --- a/metadata/app/app010_test.go +++ b/metadata/app/app010_test.go @@ -194,6 +194,35 @@ func TestApp010_AddEnvironment(t *testing.T) { }) } +func TestApp010_AddEnvironment_empty_spec_flag(t *testing.T) { + withApp010Fs(t, "app010_app.yaml", func(fs afero.Fs) { + app, err := NewApp010(fs, "/") + require.NoError(t, err) + + envs, err := app.Environments() + require.NoError(t, err) + + envLen := len(envs) + + env, err := app.Environment("default") + require.NoError(t, err) + + env.Destination.Namespace = "updated" + + err = app.AddEnvironment("default", "", env) + require.NoError(t, err) + + envs, err = app.Environments() + require.NoError(t, err) + require.Len(t, envs, envLen) + + env, err = app.Environment("default") + require.NoError(t, err) + require.Equal(t, "v1.7.0", env.KubernetesVersion) + require.Equal(t, "updated", env.Destination.Namespace) + }) +} + func TestApp010_RemoveEnvironment(t *testing.T) { withApp010Fs(t, "app010_app.yaml", func(fs afero.Fs) { app, err := NewApp010(fs, "/") -- GitLab