Skip to content

CLOUDP-400899: Wire operator MemberCluster discovery + watch#1394

Draft
m1kola wants to merge 2 commits into
iux-multi-cluster-generate-member-registrationfrom
iux-multi-cluster-operator-wiring
Draft

CLOUDP-400899: Wire operator MemberCluster discovery + watch#1394
m1kola wants to merge 2 commits into
iux-multi-cluster-generate-member-registrationfrom
iux-multi-cluster-operator-wiring

Conversation

@m1kola

@m1kola m1kola commented Jul 17, 2026

Copy link
Copy Markdown
Contributor

Summary

Slice 3 of the multi-cluster installation-UX epic. The operator now discovers member clusters by reading MemberCluster CRs and their per-cluster credential Secrets from its own namespace (keyed by spec.clusterName), instead of the MCK 1.x mongodb-kubernetes-operator-member-list ConfigMap + monolithic mounted kubeconfig. The legacy path is kept as a fallback (used when no MemberCluster CRs exist) so existing setup-driven E2E stay green; it's removed in a later slice.

A MemberCluster watcher (mirroring the OperatorConfig watcher) restarts the operator on CR add/spec-change/delete. No-restart reactivity is deferred to a later slice — see the decision + multicluster-runtime evaluation note in docs/dev/multi-cluster-config-tooling.md. The base role gains get/list/watch on memberclusters.

Interim limitations (tagged TODO(m1kola): slice-3): in-place credential rotation needs an operator restart; the failover health-checker's file-based cache doesn't apply on the CR path (guarded).

Proof of Work

  • go build ./..., go vet, gofmt clean.
  • Unit tests: pkg/membercluster (discovery + watcher) and pkg/kubectl-mongodb/common pass.

Checklist

  • Have you linked a jira ticket and/or is the ticket in the title? (CLOUDP-400899)
  • Have you checked whether your jira ticket required DOCSP changes? (not required)
  • Have you added changelog file?

Stacked on top of iux-multi-cluster-generate-member-registration (#1390).

m1kola added 2 commits July 17, 2026 12:28
Discover member clusters from MemberCluster CRs and their per-cluster
credential Secrets, keeping the legacy member-list ConfigMap + mounted
kubeconfig as a fallback. A watcher restarts the operator on MemberCluster
add/change/delete. Grant the base role get/list/watch on memberclusters.
@m1kola m1kola changed the title WIP CLOUDP-400899: Wire operator MemberCluster discovery + watch CLOUDP-400899: Wire operator MemberCluster discovery + watch Jul 20, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant