Skip to content

Commit c6d3546

Browse files
committed
WIP
1 parent 4828ce4 commit c6d3546

File tree

4 files changed

+15
-2
lines changed

4 files changed

+15
-2
lines changed

controllers/operator/mongodbmultireplicaset_controller.go

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -493,11 +493,11 @@ func (r *ReconcileMongoDbMultiReplicaSet) reconcileStatefulSets(ctx context.Cont
493493
return workflow.Failed(err)
494494
}
495495

496-
agentCertSecretSelector := mrs.GetSecurity().AgentClientCertificateSecretName(mrs.Name).Name
496+
agentCertSecretSelector := mrs.GetSecurity().AgentClientCertificateSecretName(mrs.Name)
497497

498498
// get cert hash of tls secret if it exists
499499
certHash := enterprisepem.ReadHashFromSecret(ctx, r.SecretClient, mrs.Namespace, mrsConfig.CertSecretName, "", log)
500-
agentCertHash := enterprisepem.ReadHashFromSecret(ctx, r.SecretClient, mrs.Namespace, agentCertSecretSelector, "", log)
500+
agentCertHash := enterprisepem.ReadHashFromSecret(ctx, r.SecretClient, mrs.Namespace, agentCertSecretSelector.Name, "", log)
501501
internalCertHash := enterprisepem.ReadHashFromSecret(ctx, r.SecretClient, mrs.Namespace, mrsConfig.InternalClusterSecretName, "", log)
502502
log.Debugf("Creating StatefulSet %s with %d replicas in cluster: %s", mrs.MultiStatefulsetName(clusterNum), replicasThisReconciliation, item.ClusterName)
503503

@@ -761,7 +761,11 @@ func (r *ReconcileMongoDbMultiReplicaSet) updateOmDeploymentRs(ctx context.Conte
761761

762762
caFilePath := fmt.Sprintf("%s/ca-pem", util.TLSCaMountPath)
763763

764+
// TODO: make mrs.GetSecurity().AgentClientCertificateSecretName(mrs.GetName()) return only name
764765
agentCertSecretSelector := mrs.GetSecurity().AgentClientCertificateSecretName(mrs.GetName())
766+
// TODO: Move hash reads somewhere up the call stack
767+
agentCertHash := enterprisepem.ReadHashFromSecret(ctx, r.SecretClient, mrs.Namespace, agentCertSecretSelector.Name, "", log)
768+
agentCertSecretSelector.Key = agentCertHash
765769
status, additionalReconciliationRequired := r.updateOmAuthentication(ctx, conn, rs.GetProcessNames(), &mrs, agentCertSecretSelector, caFilePath, internalClusterCertPath, isRecovering, log)
766770
if !status.IsOK() && !isRecovering {
767771
return xerrors.Errorf("failed to enable Authentication for MongoDB Multi Replicaset")

controllers/operator/mongodbreplicaset_controller.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -238,6 +238,8 @@ func (r *ReconcileMongoDbReplicaSet) Reconcile(ctx context.Context, request reco
238238

239239
// TODO: copy maybe?
240240
agentCertSecretSelector.Name += certs.OperatorGeneratedCertSuffix
241+
// TODO: make rs.GetSecurity().AgentClientCertificateSecretName(rs.Name) return only name and add hash later.
242+
agentCertSecretSelector.Key = agentCertHash
241243

242244
internalClusterCertPath := ""
243245
if internalClusterCertHash != "" {

controllers/operator/mongodbshardedcluster_controller.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1085,6 +1085,8 @@ func (r *ShardedClusterReconcileHelper) doShardedClusterProcessing(ctx context.C
10851085
}
10861086

10871087
agentCertSecretSelector := sc.GetSecurity().AgentClientCertificateSecretName(sc.Name)
1088+
// TODO: Add a key
1089+
// TODO: Make sc.GetSecurity().AgentClientCertificateSecretName(sc.Name) return only name
10881090

10891091
opts = deploymentOptions{
10901092
podEnvVars: podEnvVars,
@@ -2281,6 +2283,7 @@ func (r *ShardedClusterReconcileHelper) getConfigServerOptions(ctx context.Conte
22812283
PodEnvVars(opts.podEnvVars),
22822284
CurrentAgentAuthMechanism(opts.currentAgentAuthMode),
22832285
CertificateHash(enterprisepem.ReadHashFromSecret(ctx, r.commonController.SecretClient, sc.Namespace, certSecretName, databaseSecretPath, log)),
2286+
// TODO: Check if it is necessary. Can we just use opts?
22842287
AgentCertificateHash(enterprisepem.ReadHashFromSecret(ctx, r.commonController.SecretClient, sc.Namespace, opts.agentCertSecretSelector.Name, databaseSecretPath, log)),
22852288
InternalClusterHash(enterprisepem.ReadHashFromSecret(ctx, r.commonController.SecretClient, sc.Namespace, internalClusterSecretName, databaseSecretPath, log)),
22862289
PrometheusTLSCertHash(opts.prometheusCertHash),
@@ -2313,6 +2316,7 @@ func (r *ShardedClusterReconcileHelper) getMongosOptions(ctx context.Context, sc
23132316
PodEnvVars(opts.podEnvVars),
23142317
CurrentAgentAuthMechanism(opts.currentAgentAuthMode),
23152318
CertificateHash(enterprisepem.ReadHashFromSecret(ctx, r.commonController.SecretClient, sc.Namespace, certSecretName, vaultConfig.DatabaseSecretPath, log)),
2319+
// TODO: Check if it is necessary. Can we just use opts?
23162320
AgentCertificateHash(enterprisepem.ReadHashFromSecret(ctx, r.commonController.SecretClient, sc.Namespace, opts.agentCertSecretSelector.Name, vaultConfig.DatabaseSecretPath, log)),
23172321
InternalClusterHash(enterprisepem.ReadHashFromSecret(ctx, r.commonController.SecretClient, sc.Namespace, internalClusterSecretName, vaultConfig.DatabaseSecretPath, log)),
23182322
PrometheusTLSCertHash(opts.prometheusCertHash),
@@ -2344,6 +2348,7 @@ func (r *ShardedClusterReconcileHelper) getShardOptions(ctx context.Context, sc
23442348
PodEnvVars(opts.podEnvVars),
23452349
CurrentAgentAuthMechanism(opts.currentAgentAuthMode),
23462350
CertificateHash(enterprisepem.ReadHashFromSecret(ctx, r.commonController.SecretClient, sc.Namespace, certSecretName, databaseSecretPath, log)),
2351+
// TODO: Check if it is necessary. Can we just use opts?
23472352
AgentCertificateHash(enterprisepem.ReadHashFromSecret(ctx, r.commonController.SecretClient, sc.Namespace, opts.agentCertSecretSelector.Name, databaseSecretPath, log)),
23482353
InternalClusterHash(enterprisepem.ReadHashFromSecret(ctx, r.commonController.SecretClient, sc.Namespace, internalClusterSecretName, databaseSecretPath, log)),
23492354
PrometheusTLSCertHash(opts.prometheusCertHash),

controllers/operator/mongodbstandalone_controller.go

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -323,6 +323,8 @@ func (r *ReconcileMongoDbStandalone) updateOmDeployment(ctx context.Context, con
323323
}
324324

325325
agentCertSecretSelector := s.GetSecurity().AgentClientCertificateSecretName(s.Name)
326+
// TODO: Add a key
327+
// TODO: Make sc.GetSecurity().AgentClientCertificateSecretName(sc.Name) return only name
326328

327329
// TODO standalone PR
328330
status, additionalReconciliationRequired := r.updateOmAuthentication(ctx, conn, []string{set.Name}, s, agentCertSecretSelector, "", "", isRecovering, log)

0 commit comments

Comments
 (0)