From d5fa614df119c1ba01c754dce52b92f5d848e917 Mon Sep 17 00:00:00 2001 From: Otto Bittner Date: Wed, 3 May 2023 14:36:57 +0200 Subject: [PATCH] cli: remove ambiguity in path for CR backups (#1719) During upgrade all custom resources are backed up to files on the local file system. Since old versions are also backed up, we need to reflect the version in the name. --- cli/internal/helm/backup.go | 2 +- cli/internal/helm/backup_test.go | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/cli/internal/helm/backup.go b/cli/internal/helm/backup.go index ad371d74d..ad081d678 100644 --- a/cli/internal/helm/backup.go +++ b/cli/internal/helm/backup.go @@ -63,7 +63,7 @@ func (c *Client) backupCRs(ctx context.Context, crds []apiextensionsv1.CustomRes } for _, cr := range crs { - targetFolder := filepath.Join(backupFolder, cr.GetKind(), cr.GetNamespace()) + targetFolder := filepath.Join(backupFolder, gvr.Group, gvr.Version, cr.GetNamespace(), cr.GetKind()) if err := c.fs.MkdirAll(targetFolder); err != nil { return fmt.Errorf("creating resource dir: %w", err) } diff --git a/cli/internal/helm/backup_test.go b/cli/internal/helm/backup_test.go index abc2ed06e..5ae71e929 100644 --- a/cli/internal/helm/backup_test.go +++ b/cli/internal/helm/backup_test.go @@ -133,7 +133,7 @@ func TestBackupCRs(t *testing.T) { } assert.NoError(err) - data, err := afero.ReadFile(memFs, filepath.Join(backupFolder, tc.resource.GetKind(), tc.resource.GetNamespace(), tc.resource.GetName()+".yaml")) + data, err := afero.ReadFile(memFs, filepath.Join(backupFolder, tc.crd.Spec.Group, tc.crd.Spec.Versions[0].Name, tc.resource.GetNamespace(), tc.resource.GetKind(), tc.resource.GetName()+".yaml")) require.NoError(err) assert.YAMLEq(tc.expectedFile, string(data)) })