@@ -79,6 +79,35 @@ func TestSyncConfigOverrideSecret(t *testing.T) {
7979 assert .NoError (t , err )
8080 })
8181
82+ t .Run ("cleans up override secret when spaceId is removed" , func (t * testing.T ) {
83+ leftoverSecret := & corev1.Secret {
84+ ObjectMeta : metav1.ObjectMeta {
85+ Name : "test" + ConfigOverrideSecretSuffix ,
86+ Namespace : "default" ,
87+ },
88+ Data : map [string ][]byte {
89+ constants .MondooCredsSecretServiceAccountKey : []byte (`{"scope_mrn":"old"}` ),
90+ },
91+ }
92+
93+ m := & v1alpha2.MondooAuditConfig {
94+ ObjectMeta : metav1.ObjectMeta {Name : "test" , Namespace : "default" },
95+ Spec : v1alpha2.MondooAuditConfigSpec {},
96+ }
97+
98+ kubeClient := fake .NewClientBuilder ().WithScheme (scheme ).WithObjects (leftoverSecret ).Build ()
99+ err := SyncConfigOverrideSecret (context .Background (), kubeClient , m )
100+ require .NoError (t , err )
101+
102+ // Verify the override secret was deleted
103+ deletedSecret := & corev1.Secret {}
104+ err = kubeClient .Get (context .Background (), client.ObjectKey {
105+ Name : "test" + ConfigOverrideSecretSuffix ,
106+ Namespace : "default" ,
107+ }, deletedSecret )
108+ assert .Error (t , err , "override secret should have been deleted" )
109+ })
110+
82111 t .Run ("creates derived secret with scope_mrn" , func (t * testing.T ) {
83112 origSecret := & corev1.Secret {
84113 ObjectMeta : metav1.ObjectMeta {Name : "org-creds" , Namespace : "default" },
0 commit comments