K8s/Folders: Enhance k8s folder update (#95033)

* Put folder update behind feature toggle
* Set more fields when doing k8s update
* Check update in folder tests
* Uncomment remaining k8s handler methods
This commit is contained in:
Arati R.
2024-10-21 19:08:03 +02:00
committed by GitHub
parent ce917e97f7
commit f3a93a0303
4 changed files with 138 additions and 85 deletions
+19
View File
@@ -404,6 +404,25 @@ func doFolderTests(t *testing.T, helper *apis.K8sTestHelper) *apis.K8sTestHelper
for _, uid := range uids {
getFromBothAPIs(t, helper, client, uid, nil)
}
// PUT :: Update the title
updated, err := client.Resource.Update(context.Background(),
helper.LoadYAMLOrJSONFile("testdata/folder-test-replace.yaml"),
metav1.UpdateOptions{},
)
require.NoError(t, err)
spec, ok := updated.Object["spec"].(map[string]any)
require.True(t, ok)
title, ok := spec["title"].(string)
require.True(t, ok)
description, ok := spec["description"].(string)
require.True(t, ok)
require.Equal(t, first.GetName(), updated.GetName())
require.Equal(t, first.GetUID(), updated.GetUID())
require.Equal(t, "Test folder (replaced from k8s; 1 item; PUT)", title)
require.Equal(t, "New description", description)
// #TODO figure out why this breaks just for MySQL integration tests
// require.Less(t, first.GetResourceVersion(), updated.GetResourceVersion())
})
return helper
}
@@ -0,0 +1,7 @@
apiVersion: folder.grafana.app/v0alpha1
kind: Folder
metadata:
name: test
spec:
title: Test folder (replaced from k8s; 1 item; PUT)
description: New description