@@ -37,7 +37,7 @@ type Configurable interface {
3737 // GetAgentPasswordSecretNamespacedName returns the NamespacedName of the secret which stores the generated password for the agent.
3838 GetAgentPasswordSecretNamespacedName () types.NamespacedName
3939
40- // GetAgentScramKeyfileSecretNamespacedName returns the NamespacedName of the secret which stores the keyfile for the agent.
40+ // GetAgentKeyfileSecretNamespacedName returns the NamespacedName of the secret which stores the keyfile for the agent.
4141 GetAgentKeyfileSecretNamespacedName () types.NamespacedName
4242
4343 // NamespacedName returns the NamespacedName for the resource that is being configured.
@@ -142,7 +142,7 @@ func Enable(auth *automationconfig.Auth, secretGetUpdateCreateDeleter secret.Get
142142
143143// ensureScramCredentials will ensure that the ScramSha1 & ScramSha256 credentials exist and are stored in the credentials
144144// secret corresponding to user of the given MongoDB deployment.
145- func ensureScramCredentials (getUpdateCreator secret.GetUpdateCreator , user User , mdbNamespacedName types.NamespacedName ) (scramcredentials.ScramCreds , scramcredentials.ScramCreds , error ) {
145+ func ensureScramCredentials (getUpdateCreator secret.GetUpdateCreator , user User , mdbNamespacedName types.NamespacedName , ownerRef []metav1. OwnerReference ) (scramcredentials.ScramCreds , scramcredentials.ScramCreds , error ) {
146146
147147 password , err := secret .ReadKey (getUpdateCreator , user .PasswordSecretKey , types.NamespacedName {Name : user .PasswordSecretName , Namespace : mdbNamespacedName .Namespace })
148148 if err != nil {
@@ -176,7 +176,7 @@ func ensureScramCredentials(getUpdateCreator secret.GetUpdateCreator, user User,
176176 }
177177
178178 // create or update our credentials secret for this user
179- if err := createScramCredentialsSecret (getUpdateCreator , mdbNamespacedName , user .ScramCredentialsSecretName , sha1Creds , sha256Creds ); err != nil {
179+ if err := createScramCredentialsSecret (getUpdateCreator , mdbNamespacedName , ownerRef , user .ScramCredentialsSecretName , sha1Creds , sha256Creds ); err != nil {
180180 return scramcredentials.ScramCreds {}, scramcredentials.ScramCreds {}, fmt .Errorf ("faild to create scram credentials secret %s: %s" , user .ScramCredentialsSecretName , err )
181181 }
182182
@@ -260,7 +260,7 @@ func computeScramShaCredentials(username, password string, sha1Salt, sha256Salt
260260
261261// createScramCredentialsSecret will create a Secret that contains all of the fields required to read these credentials
262262// back in the future.
263- func createScramCredentialsSecret (getUpdateCreator secret.GetUpdateCreator , mdbObjectKey types.NamespacedName , scramCredentialsSecretName string , sha1Creds , sha256Creds scramcredentials.ScramCreds ) error {
263+ func createScramCredentialsSecret (getUpdateCreator secret.GetUpdateCreator , mdbObjectKey types.NamespacedName , ref []metav1. OwnerReference , scramCredentialsSecretName string , sha1Creds , sha256Creds scramcredentials.ScramCreds ) error {
264264 scramCredsSecret := secret .Builder ().
265265 SetName (scramCredentialsSecretName ).
266266 SetNamespace (mdbObjectKey .Namespace ).
@@ -270,6 +270,7 @@ func createScramCredentialsSecret(getUpdateCreator secret.GetUpdateCreator, mdbO
270270 SetField (sha256SaltKey , sha256Creds .Salt ).
271271 SetField (sha256StoredKeyKey , sha256Creds .StoredKey ).
272272 SetField (sha256ServerKeyKey , sha256Creds .ServerKey ).
273+ SetOwnerReferences (ref ).
273274 Build ()
274275 return secret .CreateOrUpdate (getUpdateCreator , scramCredsSecret )
275276}
@@ -307,7 +308,7 @@ func readExistingCredentials(secretGetter secret.Getter, mdbObjectKey types.Name
307308func convertMongoDBResourceUsersToAutomationConfigUsers (secretGetUpdateCreateDeleter secret.GetUpdateCreateDeleter , mdb Configurable ) ([]automationconfig.MongoDBUser , error ) {
308309 var usersWanted []automationconfig.MongoDBUser
309310 for _ , u := range mdb .GetScramUsers () {
310- acUser , err := convertMongoDBUserToAutomationConfigUser (secretGetUpdateCreateDeleter , mdb .NamespacedName (), u )
311+ acUser , err := convertMongoDBUserToAutomationConfigUser (secretGetUpdateCreateDeleter , mdb .NamespacedName (), mdb . GetOwnerReferences (), u )
311312 if err != nil {
312313 return nil , fmt .Errorf ("failed to convert scram user %s to Automation Config user: %s" , u .Username , err )
313314 }
@@ -318,7 +319,7 @@ func convertMongoDBResourceUsersToAutomationConfigUsers(secretGetUpdateCreateDel
318319
319320// convertMongoDBUserToAutomationConfigUser converts a single user configured in the MongoDB resource and converts it to a user
320321// that can be added directly to the AutomationConfig.
321- func convertMongoDBUserToAutomationConfigUser (secretGetUpdateCreateDeleter secret.GetUpdateCreateDeleter , mdbNsName types.NamespacedName , user User ) (automationconfig.MongoDBUser , error ) {
322+ func convertMongoDBUserToAutomationConfigUser (secretGetUpdateCreateDeleter secret.GetUpdateCreateDeleter , mdbNsName types.NamespacedName , ownerRef []metav1. OwnerReference , user User ) (automationconfig.MongoDBUser , error ) {
322323 acUser := automationconfig.MongoDBUser {
323324 Username : user .Username ,
324325 Database : user .Database ,
@@ -329,7 +330,7 @@ func convertMongoDBUserToAutomationConfigUser(secretGetUpdateCreateDeleter secre
329330 Database : role .Database ,
330331 })
331332 }
332- sha1Creds , sha256Creds , err := ensureScramCredentials (secretGetUpdateCreateDeleter , user , mdbNsName )
333+ sha1Creds , sha256Creds , err := ensureScramCredentials (secretGetUpdateCreateDeleter , user , mdbNsName , ownerRef )
333334 if err != nil {
334335 return automationconfig.MongoDBUser {}, fmt .Errorf ("could not ensure scram credentials: %s" , err )
335336 }
0 commit comments