You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
# Summary Introduced new CRD for MongoDB roles. The new CRD is cluster-scoped and can be reused in multiple MongoDB deployments even across-namespaces. The CRD design can be found in the [TD](https://docs.google.com/document/d/11j_wg0-s3u8oBI6Ca12AZiHLlUv_ViilYwMvl2LgoiQ/edit?tab=t.bhdbox3ppbto#bookmark=id.jbs82dmgpgr6) ## Proof of Work There are unit and E2E tests verifying that the custom roles are: * Roles are added in automation config * Removing a reference to the role removes the role from automation config * Updating the role triggers a reconciliation, and role is updated in AC * Deleting the role is blocked by the finalizer * Deleting the role after it is removed from resources is not blocked anymore ## Checklist - [ ] Have you linked a jira ticket and/or is the ticket in the title? - [ ] Have you checked whether your jira ticket required DOCSP changes? - [ ] Have you checked for release_note changes? ## Reminder (Please remove this when merging) - Please try to Approve or Reject Changes the PR, keep PRs in review as short as possible - Our Short Guide for PRs: [Link](https://docs.google.com/document/d/1T93KUtdvONq43vfTfUt8l92uo4e4SEEvFbIEKOxGr44/edit?tab=t.0) - Remember the following Communication Standards - use comment prefixes for clarity: * **blocking**: Must be addressed before approval. * **follow-up**: Can be addressed in a later PR or ticket. * **q**: Clarifying question. * **nit**: Non-blocking suggestions. * **note**: Side-note, non-actionable. Example: Praise * --> no prefix is considered a question --------- Co-authored-by: Łukasz Sierant <lukasz.sierant@mongodb.com>
Copy file name to clipboardExpand all lines: RELEASE_NOTES.md
+18-1Lines changed: 18 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,6 +1,24 @@
1
1
[//]: #(Consider renaming or removing the header for next release, otherwise it appears as duplicate in the published release, e.g: https://github.com/mongodb/mongodb-enterprise-kubernetes/releases/tag/1.22.0 )
2
2
<!-- Next Release -->
3
3
4
+
# MCK 1.2.0 Release Notes
5
+
6
+
## New Features
7
+
8
+
* Added new **ClusterMongoDBRole** CRD to support reusable roles across multiple MongoDB clusters.
9
+
* This allows users to define roles once and reuse them in multiple **MongoDB** or **MongoDBMultiCluster** resources. The role can be referenced through the `.spec.security.roleRefs` field. Note that only one of `.spec.security.roles` and `.spec.security.roleRefs` can be used at a time.
10
+
***ClusterMongoDBRole** resources are treated by the operator as a custom role templates that are only used when referenced by the database resources.
11
+
* The new resource is watched by default by the operator. This means that the operator will require a new **ClusterRole** and **ClusterRoleBinding** to be created in the cluster. **ClusterRole** and **ClusterRoleBinding** resources are created by default with the helm chart or the kubectl mongodb plugin.
12
+
* To disable this behavior in the helm chart, set the `operator.enableClusterMongoDBRoles` value to `false`. This will disable the creation of the necessary RBAC resources for the **ClusterMongoDBRole** resource, as well as disable the watch for this resource.
13
+
* To not install the necessary **ClusterRole** and **ClusterRoleBinding** with the kubectl mongodb plugin set the `--create-mongodb-roles-cluster-role` to false.
14
+
* The new **ClusterMongoDBRole** resource is designed to be read-only, meaning it can be used by MongoDB deployments managed by different operators.
15
+
* The **ClusterMongoDBRole** resource can be deleted at any time, but the operator will not delete any roles that were created using this resource. To properly remove access, you must **manually** remove the reference to the **ClusterMongoDBRole** in the **MongoDB** or **MongoDBMultiCluster** resources.
16
+
* The reference documentation for this resource can be found here: **TODO** (link to documentation)
17
+
* For more information please see: **TODO** (link to documentation)
18
+
19
+
20
+
<!-- Past Releases -->
21
+
4
22
# MCK 1.1.0 Release Notes
5
23
6
24
## New Features
@@ -12,7 +30,6 @@
12
30
* minimum MongoDB Community version: 8.0.
13
31
* TLS must be disabled in MongoDB (communication between mongot and mongod is in plaintext for now).
// +kubebuilder:validation:XValidation:rule="!(has(self.roles) && has(self.roleRefs)) || !(self.roles.size() > 0 && self.roleRefs.size() > 0)",message="At most one of roles or roleRefs can be non-empty"
0 commit comments