diff --git a/bundle/manifests/atlas.mongodb.com_atlasbackupcompliancepolicies.yaml b/bundle/manifests/atlas.mongodb.com_atlasbackupcompliancepolicies.yaml new file mode 100644 index 0000000000..868fbbc967 --- /dev/null +++ b/bundle/manifests/atlas.mongodb.com_atlasbackupcompliancepolicies.yaml @@ -0,0 +1,235 @@ +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.14.0 + creationTimestamp: null + labels: + app.kubernetes.io/component: controller + app.kubernetes.io/instance: mongodb-atlas-kubernetes-operator + app.kubernetes.io/name: mongodb-atlas-kubernetes-operator + name: atlasbackupcompliancepolicies.atlas.mongodb.com +spec: + group: atlas.mongodb.com + names: + categories: + - atlas + kind: AtlasBackupCompliancePolicy + listKind: AtlasBackupCompliancePolicyList + plural: atlasbackupcompliancepolicies + shortNames: + - abcp + singular: atlasbackupcompliancepolicy + scope: Namespaced + versions: + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 + schema: + openAPIV3Schema: + description: AtlasBackupCompliancePolicy defines the desired state of a compliance + policy in Atlas. + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + properties: + authorizedEmail: + description: Email address of the user who authorized to update the + Backup Compliance Policy settings. + type: string + authorizedUserFirstName: + description: First name of the user who authorized to updated the + Backup Compliance Policy settings. + type: string + authorizedUserLastName: + description: Last name of the user who authorized to updated the Backup + Compliance Policy settings. + type: string + copyProtectionEnabled: + description: Flag that indicates whether to prevent cluster users + from deleting backups copied to other regions, even if those additional + snapshot regions are removed. + type: boolean + encryptionAtRestEnabled: + description: Flag that indicates whether Encryption at Rest using + Customer Key Management is required for all clusters with a Backup + Compliance Policy. + type: boolean + onDemandPolicy: + description: Specifications for on-demand policy. + properties: + retentionUnit: + description: 'Scope of the backup policy item: days, weeks, or + months' + enum: + - days + - weeks + - months + type: string + retentionValue: + description: Value to associate with RetentionUnit + type: integer + required: + - retentionUnit + - retentionValue + type: object + overwriteBackupPolicies: + description: Flag that indicates whether to overwrite non complying + backup policies with the new data protection settings or not. + type: boolean + pointInTimeEnabled: + description: Flag that indicates whether the cluster uses Continuous + Cloud Backups with a Backup Compliance Policy. + type: boolean + restoreWindowDays: + description: Number of previous days that you can restore back to + with Continuous Cloud Backup with a Backup Compliance Policy. This + parameter applies only to Continuous Cloud Backups with a Backup + Compliance Policy. + type: integer + scheduledPolicyItems: + description: List that contains the specifications for one scheduled + policy. + items: + properties: + frequencyInterval: + description: |- + Desired frequency of the new backup policy item specified by FrequencyType. A value of 1 specifies the first instance of the corresponding FrequencyType. + The only accepted value you can set for frequency interval with NVMe clusters is 12. + enum: + - 1 + - 2 + - 3 + - 4 + - 5 + - 6 + - 7 + - 8 + - 9 + - 10 + - 11 + - 12 + - 13 + - 14 + - 15 + - 16 + - 17 + - 18 + - 19 + - 20 + - 21 + - 22 + - 23 + - 24 + - 25 + - 26 + - 27 + - 28 + - 40 + type: integer + frequencyType: + description: 'Frequency associated with the backup policy item. + One of the following values: hourly, daily, weekly or monthly. + You cannot specify multiple hourly and daily backup policy + items.' + enum: + - hourly + - daily + - weekly + - monthly + - yearly + type: string + retentionUnit: + description: 'Scope of the backup policy item: days, weeks, + or months' + enum: + - days + - weeks + - months + - years + type: string + retentionValue: + description: Value to associate with RetentionUnit + type: integer + required: + - frequencyInterval + - frequencyType + - retentionUnit + - retentionValue + type: object + type: array + required: + - authorizedEmail + - authorizedUserFirstName + - authorizedUserLastName + type: object + status: + properties: + conditions: + description: Conditions is the list of statuses showing the current + state of the Atlas Custom Resource + items: + description: Condition describes the state of an Atlas Custom Resource + at a certain point. + properties: + lastTransitionTime: + description: Last time the condition transitioned from one status + to another. + format: date-time + type: string + message: + description: A human readable message indicating details about + the transition. + type: string + reason: + description: The reason for the condition's last transition. + type: string + status: + description: Status of the condition, one of True, False, Unknown. + type: string + type: + description: Type of Atlas Custom Resource condition. + type: string + required: + - status + - type + type: object + type: array + observedGeneration: + description: |- + ObservedGeneration indicates the generation of the resource specification that the Atlas Operator is aware of. + The Atlas Operator updates this field to the 'metadata.generation' as soon as it starts reconciliation of the resource. + format: int64 + type: integer + required: + - conditions + type: object + type: object + served: true + storage: true + subresources: + status: {} +status: + acceptedNames: + kind: "" + plural: "" + conditions: null + storedVersions: null diff --git a/bundle/manifests/atlas.mongodb.com_atlasbackuppolicies.yaml b/bundle/manifests/atlas.mongodb.com_atlasbackuppolicies.yaml index 834667792f..985907742b 100644 --- a/bundle/manifests/atlas.mongodb.com_atlasbackuppolicies.yaml +++ b/bundle/manifests/atlas.mongodb.com_atlasbackuppolicies.yaml @@ -12,13 +12,21 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasBackupPolicy listKind: AtlasBackupPolicyList plural: atlasbackuppolicies + shortNames: + - abp singular: atlasbackuppolicy scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 schema: openAPIV3Schema: description: AtlasBackupPolicy is the Schema for the atlasbackuppolicies API diff --git a/bundle/manifests/atlas.mongodb.com_atlasbackupschedules.yaml b/bundle/manifests/atlas.mongodb.com_atlasbackupschedules.yaml index c05e1a9f63..22ed85e574 100644 --- a/bundle/manifests/atlas.mongodb.com_atlasbackupschedules.yaml +++ b/bundle/manifests/atlas.mongodb.com_atlasbackupschedules.yaml @@ -12,13 +12,21 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasBackupSchedule listKind: AtlasBackupScheduleList plural: atlasbackupschedules + shortNames: + - abs singular: atlasbackupschedule scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 schema: openAPIV3Schema: description: AtlasBackupSchedule is the Schema for the atlasbackupschedules diff --git a/bundle/manifests/atlas.mongodb.com_atlasdatabaseusers.yaml b/bundle/manifests/atlas.mongodb.com_atlasdatabaseusers.yaml index 156b06b451..9a09a8794a 100644 --- a/bundle/manifests/atlas.mongodb.com_atlasdatabaseusers.yaml +++ b/bundle/manifests/atlas.mongodb.com_atlasdatabaseusers.yaml @@ -12,9 +12,13 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasDatabaseUser listKind: AtlasDatabaseUserList plural: atlasdatabaseusers + shortNames: + - adu singular: atlasdatabaseuser scope: Namespaced versions: @@ -22,6 +26,12 @@ spec: - jsonPath: .spec.name name: Name type: string + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + - jsonPath: .spec.username + name: Username + type: string name: v1 schema: openAPIV3Schema: diff --git a/bundle/manifests/atlas.mongodb.com_atlasdatafederations.yaml b/bundle/manifests/atlas.mongodb.com_atlasdatafederations.yaml index 01af01b995..84141161a2 100644 --- a/bundle/manifests/atlas.mongodb.com_atlasdatafederations.yaml +++ b/bundle/manifests/atlas.mongodb.com_atlasdatafederations.yaml @@ -12,9 +12,13 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasDataFederation listKind: AtlasDataFederationList plural: atlasdatafederations + shortNames: + - adf singular: atlasdatafederation scope: Namespaced versions: @@ -22,6 +26,9 @@ spec: - jsonPath: .spec.name name: Name type: string + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string name: v1 schema: openAPIV3Schema: diff --git a/bundle/manifests/atlas.mongodb.com_atlasdeployments.yaml b/bundle/manifests/atlas.mongodb.com_atlasdeployments.yaml index 6ee3390c2b..2f5ff94029 100644 --- a/bundle/manifests/atlas.mongodb.com_atlasdeployments.yaml +++ b/bundle/manifests/atlas.mongodb.com_atlasdeployments.yaml @@ -12,13 +12,27 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasDeployment listKind: AtlasDeploymentList plural: atlasdeployments + shortNames: + - ad singular: atlasdeployment scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + - jsonPath: .status.stateName + name: Atlas State + type: string + - jsonPath: .status.mongoDBVersion + name: MongoDB Version + type: string + name: v1 schema: openAPIV3Schema: description: AtlasDeployment is the Schema for the atlasdeployments API diff --git a/bundle/manifests/atlas.mongodb.com_atlasfederatedauths.yaml b/bundle/manifests/atlas.mongodb.com_atlasfederatedauths.yaml index 8b600200fa..a0f38e9090 100644 --- a/bundle/manifests/atlas.mongodb.com_atlasfederatedauths.yaml +++ b/bundle/manifests/atlas.mongodb.com_atlasfederatedauths.yaml @@ -12,13 +12,21 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasFederatedAuth listKind: AtlasFederatedAuthList plural: atlasfederatedauths + shortNames: + - afa singular: atlasfederatedauth scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 schema: openAPIV3Schema: description: AtlasFederatedAuth is the Schema for the Atlasfederatedauth API diff --git a/bundle/manifests/atlas.mongodb.com_atlasprojects.yaml b/bundle/manifests/atlas.mongodb.com_atlasprojects.yaml index 32cb403abb..77c8ac8a27 100644 --- a/bundle/manifests/atlas.mongodb.com_atlasprojects.yaml +++ b/bundle/manifests/atlas.mongodb.com_atlasprojects.yaml @@ -12,15 +12,25 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasProject listKind: AtlasProjectList plural: atlasprojects + shortNames: + - ap singular: atlasproject scope: Namespaced versions: - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string - jsonPath: .spec.name - name: Name + name: Atlas Name + type: string + - jsonPath: .status.id + name: Atlas ID type: string name: v1 schema: @@ -311,6 +321,19 @@ spec: the {GROUP-ID} has database auditing enabled. type: boolean type: object + backupCompliancePolicyRef: + description: BackupCompliancePolicyRef is a reference to the backup + compliance CR. + properties: + name: + description: Name is the name of the Kubernetes Resource + type: string + namespace: + description: Namespace is the namespace of the Kubernetes Resource + type: string + required: + - name + type: object cloudProviderAccessRoles: description: |- CloudProviderAccessRoles is a list of Cloud Provider Access Roles configured for the current Project. diff --git a/bundle/manifests/atlas.mongodb.com_atlassearchindexconfigs.yaml b/bundle/manifests/atlas.mongodb.com_atlassearchindexconfigs.yaml index 8f54a34160..470bdbfff2 100644 --- a/bundle/manifests/atlas.mongodb.com_atlassearchindexconfigs.yaml +++ b/bundle/manifests/atlas.mongodb.com_atlassearchindexconfigs.yaml @@ -12,13 +12,21 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasSearchIndexConfig listKind: AtlasSearchIndexConfigList plural: atlassearchindexconfigs + shortNames: + - asic singular: atlassearchindexconfig scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 schema: openAPIV3Schema: description: AtlasSearchIndexConfig is the Schema for the AtlasSearchIndexConfig @@ -55,7 +63,6 @@ spec: - changing words to their base form (lemmatization) MongoDB Cloud uses the selected process to build the Atlas Search index enum: - lucene.standard - - lucene.standard - lucene.simple - lucene.whitespace - lucene.keyword @@ -172,7 +179,6 @@ spec: index enum: - lucene.standard - - lucene.standard - lucene.simple - lucene.whitespace - lucene.keyword diff --git a/bundle/manifests/atlas.mongodb.com_atlasstreamconnections.yaml b/bundle/manifests/atlas.mongodb.com_atlasstreamconnections.yaml index 7b18a95154..458d1c816e 100644 --- a/bundle/manifests/atlas.mongodb.com_atlasstreamconnections.yaml +++ b/bundle/manifests/atlas.mongodb.com_atlasstreamconnections.yaml @@ -12,13 +12,21 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasStreamConnection listKind: AtlasStreamConnectionList plural: atlasstreamconnections + shortNames: + - asc singular: atlasstreamconnection scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 schema: openAPIV3Schema: description: AtlasStreamConnection is the Schema for the atlasstreamconnections diff --git a/bundle/manifests/atlas.mongodb.com_atlasstreaminstances.yaml b/bundle/manifests/atlas.mongodb.com_atlasstreaminstances.yaml index ed3f17965d..df07c57a78 100644 --- a/bundle/manifests/atlas.mongodb.com_atlasstreaminstances.yaml +++ b/bundle/manifests/atlas.mongodb.com_atlasstreaminstances.yaml @@ -12,9 +12,13 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasStreamInstance listKind: AtlasStreamInstanceList plural: atlasstreaminstances + shortNames: + - asi singular: atlasstreaminstance scope: Namespaced versions: @@ -22,6 +26,12 @@ spec: - jsonPath: .spec.name name: Name type: string + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + - jsonPath: .status.id + name: Atlas ID + type: string name: v1 schema: openAPIV3Schema: diff --git a/bundle/manifests/atlas.mongodb.com_atlasteams.yaml b/bundle/manifests/atlas.mongodb.com_atlasteams.yaml index 12fa15de8d..c1683d2ca7 100644 --- a/bundle/manifests/atlas.mongodb.com_atlasteams.yaml +++ b/bundle/manifests/atlas.mongodb.com_atlasteams.yaml @@ -12,9 +12,13 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasTeam listKind: AtlasTeamList plural: atlasteams + shortNames: + - at singular: atlasteam scope: Namespaced versions: @@ -22,6 +26,12 @@ spec: - jsonPath: .spec.name name: Name type: string + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + - jsonPath: .status.id + name: Atlas ID + type: string name: v1 schema: openAPIV3Schema: diff --git a/bundle/manifests/mongodb-atlas-kubernetes.clusterserviceversion.yaml b/bundle/manifests/mongodb-atlas-kubernetes.clusterserviceversion.yaml index fef81bee81..f4016ea575 100644 --- a/bundle/manifests/mongodb-atlas-kubernetes.clusterserviceversion.yaml +++ b/bundle/manifests/mongodb-atlas-kubernetes.clusterserviceversion.yaml @@ -168,7 +168,7 @@ metadata: ] capabilities: Full Lifecycle categories: Database - createdAt: "2024-06-10T11:59:18Z" + createdAt: "2024-07-16T07:12:48Z" description: The MongoDB Atlas Kubernetes Operator enables easy management of Clusters in MongoDB Atlas features.operators.openshift.io/disconnected: "false" features.operators.openshift.io/fips-compliant: "false" @@ -179,17 +179,20 @@ metadata: features.operators.openshift.io/token-auth-gcp: "false" operators.operatorframework.io/builder: operator-sdk-v1.34.1 operators.operatorframework.io/project_layout: go.kubebuilder.io/v4 - containerImage: mongodb/mongodb-atlas-kubernetes-operator:2.3.1 + containerImage: mongodb/mongodb-atlas-kubernetes-operator:2.4.0 labels: operatorframework.io/arch.amd64: supported operatorframework.io/arch.arm64: supported operatorframework.io/os.linux: supported - name: mongodb-atlas-kubernetes.v2.3.1 + name: mongodb-atlas-kubernetes.v2.4.0 namespace: placeholder spec: apiservicedefinitions: {} customresourcedefinitions: owned: + - kind: AtlasBackupCompliancePolicy + name: atlasbackupcompliancepolicies.atlas.mongodb.com + version: v1 - description: AtlasBackupPolicy is the Schema for the atlasbackuppolicies API displayName: Atlas Backup Policy kind: AtlasBackupPolicy @@ -297,6 +300,26 @@ spec: - patch - update - watch + - apiGroups: + - atlas.mongodb.com + resources: + - atlasbackupcompliancepolicies + verbs: + - create + - delete + - get + - list + - patch + - update + - watch + - apiGroups: + - atlas.mongodb.com + resources: + - atlasbackupcompliancepolicies/status + verbs: + - get + - patch + - update - apiGroups: - atlas.mongodb.com resources: @@ -400,7 +423,7 @@ spec: - apiGroups: - atlas.mongodb.com resources: - - atlasprojects + - atlasfederatedauths verbs: - create - delete @@ -412,7 +435,7 @@ spec: - apiGroups: - atlas.mongodb.com resources: - - atlasprojects/status + - atlasfederatedauths/status verbs: - get - patch @@ -420,7 +443,7 @@ spec: - apiGroups: - atlas.mongodb.com resources: - - atlasteams + - atlasprojects verbs: - create - delete @@ -432,7 +455,7 @@ spec: - apiGroups: - atlas.mongodb.com resources: - - atlasteams/status + - atlasprojects/status verbs: - get - patch @@ -440,7 +463,7 @@ spec: - apiGroups: - atlas.mongodb.com resources: - - atlasfederatedauths + - atlassearchindexconfigs verbs: - create - delete @@ -452,7 +475,7 @@ spec: - apiGroups: - atlas.mongodb.com resources: - - atlasfederatedauths/status + - atlassearchindexconfigs/status verbs: - get - patch @@ -500,7 +523,7 @@ spec: - apiGroups: - atlas.mongodb.com resources: - - atlassearchindexconfigs + - atlasteams verbs: - create - delete @@ -512,7 +535,7 @@ spec: - apiGroups: - atlas.mongodb.com resources: - - atlassearchindexconfigs/status + - atlasteams/status verbs: - get - patch @@ -562,7 +585,7 @@ spec: valueFrom: fieldRef: fieldPath: metadata.annotations['olm.targetNamespaces'] - image: mongodb/mongodb-atlas-kubernetes-operator:2.3.1 + image: mongodb/mongodb-atlas-kubernetes-operator:2.4.0 imagePullPolicy: Always livenessProbe: httpGet: @@ -646,5 +669,5 @@ spec: maturity: beta provider: name: MongoDB, Inc - version: 2.3.1 - replaces: mongodb-atlas-kubernetes.v2.3.0 + version: 2.4.0 + replaces: mongodb-atlas-kubernetes.v2.3.1 diff --git a/deploy/all-in-one.yaml b/deploy/all-in-one.yaml index ed8a30dc62..cdf477f9f0 100644 --- a/deploy/all-in-one.yaml +++ b/deploy/all-in-one.yaml @@ -9,6 +9,235 @@ metadata: --- apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.14.0 + labels: + app.kubernetes.io/component: controller + app.kubernetes.io/instance: mongodb-atlas-kubernetes-operator + app.kubernetes.io/name: mongodb-atlas-kubernetes-operator + name: atlasbackupcompliancepolicies.atlas.mongodb.com +spec: + group: atlas.mongodb.com + names: + categories: + - atlas + kind: AtlasBackupCompliancePolicy + listKind: AtlasBackupCompliancePolicyList + plural: atlasbackupcompliancepolicies + shortNames: + - abcp + singular: atlasbackupcompliancepolicy + scope: Namespaced + versions: + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 + schema: + openAPIV3Schema: + description: AtlasBackupCompliancePolicy defines the desired state of a compliance + policy in Atlas. + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + properties: + authorizedEmail: + description: Email address of the user who authorized to update the + Backup Compliance Policy settings. + type: string + authorizedUserFirstName: + description: First name of the user who authorized to updated the + Backup Compliance Policy settings. + type: string + authorizedUserLastName: + description: Last name of the user who authorized to updated the Backup + Compliance Policy settings. + type: string + copyProtectionEnabled: + description: Flag that indicates whether to prevent cluster users + from deleting backups copied to other regions, even if those additional + snapshot regions are removed. + type: boolean + encryptionAtRestEnabled: + description: Flag that indicates whether Encryption at Rest using + Customer Key Management is required for all clusters with a Backup + Compliance Policy. + type: boolean + onDemandPolicy: + description: Specifications for on-demand policy. + properties: + retentionUnit: + description: 'Scope of the backup policy item: days, weeks, or + months' + enum: + - days + - weeks + - months + type: string + retentionValue: + description: Value to associate with RetentionUnit + type: integer + required: + - retentionUnit + - retentionValue + type: object + overwriteBackupPolicies: + description: Flag that indicates whether to overwrite non complying + backup policies with the new data protection settings or not. + type: boolean + pointInTimeEnabled: + description: Flag that indicates whether the cluster uses Continuous + Cloud Backups with a Backup Compliance Policy. + type: boolean + restoreWindowDays: + description: Number of previous days that you can restore back to + with Continuous Cloud Backup with a Backup Compliance Policy. This + parameter applies only to Continuous Cloud Backups with a Backup + Compliance Policy. + type: integer + scheduledPolicyItems: + description: List that contains the specifications for one scheduled + policy. + items: + properties: + frequencyInterval: + description: |- + Desired frequency of the new backup policy item specified by FrequencyType. A value of 1 specifies the first instance of the corresponding FrequencyType. + The only accepted value you can set for frequency interval with NVMe clusters is 12. + enum: + - 1 + - 2 + - 3 + - 4 + - 5 + - 6 + - 7 + - 8 + - 9 + - 10 + - 11 + - 12 + - 13 + - 14 + - 15 + - 16 + - 17 + - 18 + - 19 + - 20 + - 21 + - 22 + - 23 + - 24 + - 25 + - 26 + - 27 + - 28 + - 40 + type: integer + frequencyType: + description: 'Frequency associated with the backup policy item. + One of the following values: hourly, daily, weekly or monthly. + You cannot specify multiple hourly and daily backup policy + items.' + enum: + - hourly + - daily + - weekly + - monthly + - yearly + type: string + retentionUnit: + description: 'Scope of the backup policy item: days, weeks, + or months' + enum: + - days + - weeks + - months + - years + type: string + retentionValue: + description: Value to associate with RetentionUnit + type: integer + required: + - frequencyInterval + - frequencyType + - retentionUnit + - retentionValue + type: object + type: array + required: + - authorizedEmail + - authorizedUserFirstName + - authorizedUserLastName + type: object + status: + properties: + conditions: + description: Conditions is the list of statuses showing the current + state of the Atlas Custom Resource + items: + description: Condition describes the state of an Atlas Custom Resource + at a certain point. + properties: + lastTransitionTime: + description: Last time the condition transitioned from one status + to another. + format: date-time + type: string + message: + description: A human readable message indicating details about + the transition. + type: string + reason: + description: The reason for the condition's last transition. + type: string + status: + description: Status of the condition, one of True, False, Unknown. + type: string + type: + description: Type of Atlas Custom Resource condition. + type: string + required: + - status + - type + type: object + type: array + observedGeneration: + description: |- + ObservedGeneration indicates the generation of the resource specification that the Atlas Operator is aware of. + The Atlas Operator updates this field to the 'metadata.generation' as soon as it starts reconciliation of the resource. + format: int64 + type: integer + required: + - conditions + type: object + type: object + served: true + storage: true + subresources: + status: {} +--- +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.14.0 @@ -20,13 +249,21 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasBackupPolicy listKind: AtlasBackupPolicyList plural: atlasbackuppolicies + shortNames: + - abp singular: atlasbackuppolicy scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 schema: openAPIV3Schema: description: AtlasBackupPolicy is the Schema for the atlasbackuppolicies API @@ -189,13 +426,21 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasBackupSchedule listKind: AtlasBackupScheduleList plural: atlasbackupschedules + shortNames: + - abs singular: atlasbackupschedule scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 schema: openAPIV3Schema: description: AtlasBackupSchedule is the Schema for the atlasbackupschedules @@ -387,9 +632,13 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasDatabaseUser listKind: AtlasDatabaseUserList plural: atlasdatabaseusers + shortNames: + - adu singular: atlasdatabaseuser scope: Namespaced versions: @@ -397,6 +646,12 @@ spec: - jsonPath: .spec.name name: Name type: string + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + - jsonPath: .spec.username + name: Username + type: string name: v1 schema: openAPIV3Schema: @@ -641,9 +896,13 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasDataFederation listKind: AtlasDataFederationList plural: atlasdatafederations + shortNames: + - adf singular: atlasdatafederation scope: Namespaced versions: @@ -651,6 +910,9 @@ spec: - jsonPath: .spec.name name: Name type: string + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string name: v1 schema: openAPIV3Schema: @@ -900,13 +1162,27 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasDeployment listKind: AtlasDeploymentList plural: atlasdeployments + shortNames: + - ad singular: atlasdeployment scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + - jsonPath: .status.stateName + name: Atlas State + type: string + - jsonPath: .status.mongoDBVersion + name: MongoDB Version + type: string + name: v1 schema: openAPIV3Schema: description: AtlasDeployment is the Schema for the atlasdeployments API @@ -1966,13 +2242,21 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasFederatedAuth listKind: AtlasFederatedAuthList plural: atlasfederatedauths + shortNames: + - afa singular: atlasfederatedauth scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 schema: openAPIV3Schema: description: AtlasFederatedAuth is the Schema for the Atlasfederatedauth API @@ -2146,15 +2430,25 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasProject listKind: AtlasProjectList plural: atlasprojects + shortNames: + - ap singular: atlasproject scope: Namespaced versions: - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string - jsonPath: .spec.name - name: Name + name: Atlas Name + type: string + - jsonPath: .status.id + name: Atlas ID type: string name: v1 schema: @@ -2445,6 +2739,19 @@ spec: the {GROUP-ID} has database auditing enabled. type: boolean type: object + backupCompliancePolicyRef: + description: BackupCompliancePolicyRef is a reference to the backup + compliance CR. + properties: + name: + description: Name is the name of the Kubernetes Resource + type: string + namespace: + description: Namespace is the namespace of the Kubernetes Resource + type: string + required: + - name + type: object cloudProviderAccessRoles: description: |- CloudProviderAccessRoles is a list of Cloud Provider Access Roles configured for the current Project. @@ -3675,13 +3982,21 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasSearchIndexConfig listKind: AtlasSearchIndexConfigList plural: atlassearchindexconfigs + shortNames: + - asic singular: atlassearchindexconfig scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 schema: openAPIV3Schema: description: AtlasSearchIndexConfig is the Schema for the AtlasSearchIndexConfig @@ -3718,7 +4033,6 @@ spec: - changing words to their base form (lemmatization) MongoDB Cloud uses the selected process to build the Atlas Search index enum: - lucene.standard - - lucene.standard - lucene.simple - lucene.whitespace - lucene.keyword @@ -3835,7 +4149,6 @@ spec: index enum: - lucene.standard - - lucene.standard - lucene.simple - lucene.whitespace - lucene.keyword @@ -3948,13 +4261,21 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasStreamConnection listKind: AtlasStreamConnectionList plural: atlasstreamconnections + shortNames: + - asc singular: atlasstreamconnection scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 schema: openAPIV3Schema: description: AtlasStreamConnection is the Schema for the atlasstreamconnections @@ -4176,9 +4497,13 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasStreamInstance listKind: AtlasStreamInstanceList plural: atlasstreaminstances + shortNames: + - asi singular: atlasstreaminstance scope: Namespaced versions: @@ -4186,6 +4511,12 @@ spec: - jsonPath: .spec.name name: Name type: string + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + - jsonPath: .status.id + name: Atlas ID + type: string name: v1 schema: openAPIV3Schema: @@ -4373,9 +4704,13 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasTeam listKind: AtlasTeamList plural: atlasteams + shortNames: + - at singular: atlasteam scope: Namespaced versions: @@ -4383,6 +4718,12 @@ spec: - jsonPath: .spec.name name: Name type: string + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + - jsonPath: .status.id + name: Atlas ID + type: string name: v1 schema: openAPIV3Schema: @@ -4543,7 +4884,6 @@ rules: apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: - creationTimestamp: null labels: app.kubernetes.io/component: controller app.kubernetes.io/instance: mongodb-atlas-kubernetes-operator @@ -4569,6 +4909,26 @@ rules: - patch - update - watch +- apiGroups: + - atlas.mongodb.com + resources: + - atlasbackupcompliancepolicies + verbs: + - create + - delete + - get + - list + - patch + - update + - watch +- apiGroups: + - atlas.mongodb.com + resources: + - atlasbackupcompliancepolicies/status + verbs: + - get + - patch + - update - apiGroups: - atlas.mongodb.com resources: @@ -4672,7 +5032,7 @@ rules: - apiGroups: - atlas.mongodb.com resources: - - atlasprojects + - atlasfederatedauths verbs: - create - delete @@ -4684,7 +5044,7 @@ rules: - apiGroups: - atlas.mongodb.com resources: - - atlasprojects/status + - atlasfederatedauths/status verbs: - get - patch @@ -4692,7 +5052,7 @@ rules: - apiGroups: - atlas.mongodb.com resources: - - atlasteams + - atlasprojects verbs: - create - delete @@ -4704,7 +5064,7 @@ rules: - apiGroups: - atlas.mongodb.com resources: - - atlasteams/status + - atlasprojects/status verbs: - get - patch @@ -4712,7 +5072,7 @@ rules: - apiGroups: - atlas.mongodb.com resources: - - atlasfederatedauths + - atlassearchindexconfigs verbs: - create - delete @@ -4724,7 +5084,7 @@ rules: - apiGroups: - atlas.mongodb.com resources: - - atlasfederatedauths/status + - atlassearchindexconfigs/status verbs: - get - patch @@ -4772,7 +5132,7 @@ rules: - apiGroups: - atlas.mongodb.com resources: - - atlassearchindexconfigs + - atlasteams verbs: - create - delete @@ -4784,7 +5144,7 @@ rules: - apiGroups: - atlas.mongodb.com resources: - - atlassearchindexconfigs/status + - atlasteams/status verbs: - get - patch @@ -4867,7 +5227,7 @@ spec: valueFrom: fieldRef: fieldPath: metadata.namespace - image: mongodb/mongodb-atlas-kubernetes-operator:2.3.1 + image: mongodb/mongodb-atlas-kubernetes-operator:2.4.0 imagePullPolicy: Always livenessProbe: httpGet: diff --git a/deploy/clusterwide/clusterwide-config.yaml b/deploy/clusterwide/clusterwide-config.yaml index 7988908a2e..43f1f93fe9 100644 --- a/deploy/clusterwide/clusterwide-config.yaml +++ b/deploy/clusterwide/clusterwide-config.yaml @@ -62,7 +62,6 @@ rules: apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: - creationTimestamp: null labels: app.kubernetes.io/component: controller app.kubernetes.io/instance: mongodb-atlas-kubernetes-operator @@ -88,6 +87,26 @@ rules: - patch - update - watch +- apiGroups: + - atlas.mongodb.com + resources: + - atlasbackupcompliancepolicies + verbs: + - create + - delete + - get + - list + - patch + - update + - watch +- apiGroups: + - atlas.mongodb.com + resources: + - atlasbackupcompliancepolicies/status + verbs: + - get + - patch + - update - apiGroups: - atlas.mongodb.com resources: @@ -191,7 +210,7 @@ rules: - apiGroups: - atlas.mongodb.com resources: - - atlasprojects + - atlasfederatedauths verbs: - create - delete @@ -203,7 +222,7 @@ rules: - apiGroups: - atlas.mongodb.com resources: - - atlasprojects/status + - atlasfederatedauths/status verbs: - get - patch @@ -211,7 +230,7 @@ rules: - apiGroups: - atlas.mongodb.com resources: - - atlasteams + - atlasprojects verbs: - create - delete @@ -223,7 +242,7 @@ rules: - apiGroups: - atlas.mongodb.com resources: - - atlasteams/status + - atlasprojects/status verbs: - get - patch @@ -231,7 +250,7 @@ rules: - apiGroups: - atlas.mongodb.com resources: - - atlasfederatedauths + - atlassearchindexconfigs verbs: - create - delete @@ -243,7 +262,7 @@ rules: - apiGroups: - atlas.mongodb.com resources: - - atlasfederatedauths/status + - atlassearchindexconfigs/status verbs: - get - patch @@ -291,7 +310,7 @@ rules: - apiGroups: - atlas.mongodb.com resources: - - atlassearchindexconfigs + - atlasteams verbs: - create - delete @@ -303,7 +322,7 @@ rules: - apiGroups: - atlas.mongodb.com resources: - - atlassearchindexconfigs/status + - atlasteams/status verbs: - get - patch @@ -386,7 +405,7 @@ spec: valueFrom: fieldRef: fieldPath: metadata.namespace - image: mongodb/mongodb-atlas-kubernetes-operator:2.3.1 + image: mongodb/mongodb-atlas-kubernetes-operator:2.4.0 imagePullPolicy: Always livenessProbe: httpGet: diff --git a/deploy/clusterwide/crds.yaml b/deploy/clusterwide/crds.yaml index ce4110235f..c940bb7e11 100644 --- a/deploy/clusterwide/crds.yaml +++ b/deploy/clusterwide/crds.yaml @@ -1,5 +1,230 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.14.0 + name: atlasbackupcompliancepolicies.atlas.mongodb.com +spec: + group: atlas.mongodb.com + names: + categories: + - atlas + kind: AtlasBackupCompliancePolicy + listKind: AtlasBackupCompliancePolicyList + plural: atlasbackupcompliancepolicies + shortNames: + - abcp + singular: atlasbackupcompliancepolicy + scope: Namespaced + versions: + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 + schema: + openAPIV3Schema: + description: AtlasBackupCompliancePolicy defines the desired state of a compliance + policy in Atlas. + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + properties: + authorizedEmail: + description: Email address of the user who authorized to update the + Backup Compliance Policy settings. + type: string + authorizedUserFirstName: + description: First name of the user who authorized to updated the + Backup Compliance Policy settings. + type: string + authorizedUserLastName: + description: Last name of the user who authorized to updated the Backup + Compliance Policy settings. + type: string + copyProtectionEnabled: + description: Flag that indicates whether to prevent cluster users + from deleting backups copied to other regions, even if those additional + snapshot regions are removed. + type: boolean + encryptionAtRestEnabled: + description: Flag that indicates whether Encryption at Rest using + Customer Key Management is required for all clusters with a Backup + Compliance Policy. + type: boolean + onDemandPolicy: + description: Specifications for on-demand policy. + properties: + retentionUnit: + description: 'Scope of the backup policy item: days, weeks, or + months' + enum: + - days + - weeks + - months + type: string + retentionValue: + description: Value to associate with RetentionUnit + type: integer + required: + - retentionUnit + - retentionValue + type: object + overwriteBackupPolicies: + description: Flag that indicates whether to overwrite non complying + backup policies with the new data protection settings or not. + type: boolean + pointInTimeEnabled: + description: Flag that indicates whether the cluster uses Continuous + Cloud Backups with a Backup Compliance Policy. + type: boolean + restoreWindowDays: + description: Number of previous days that you can restore back to + with Continuous Cloud Backup with a Backup Compliance Policy. This + parameter applies only to Continuous Cloud Backups with a Backup + Compliance Policy. + type: integer + scheduledPolicyItems: + description: List that contains the specifications for one scheduled + policy. + items: + properties: + frequencyInterval: + description: |- + Desired frequency of the new backup policy item specified by FrequencyType. A value of 1 specifies the first instance of the corresponding FrequencyType. + The only accepted value you can set for frequency interval with NVMe clusters is 12. + enum: + - 1 + - 2 + - 3 + - 4 + - 5 + - 6 + - 7 + - 8 + - 9 + - 10 + - 11 + - 12 + - 13 + - 14 + - 15 + - 16 + - 17 + - 18 + - 19 + - 20 + - 21 + - 22 + - 23 + - 24 + - 25 + - 26 + - 27 + - 28 + - 40 + type: integer + frequencyType: + description: 'Frequency associated with the backup policy item. + One of the following values: hourly, daily, weekly or monthly. + You cannot specify multiple hourly and daily backup policy + items.' + enum: + - hourly + - daily + - weekly + - monthly + - yearly + type: string + retentionUnit: + description: 'Scope of the backup policy item: days, weeks, + or months' + enum: + - days + - weeks + - months + - years + type: string + retentionValue: + description: Value to associate with RetentionUnit + type: integer + required: + - frequencyInterval + - frequencyType + - retentionUnit + - retentionValue + type: object + type: array + required: + - authorizedEmail + - authorizedUserFirstName + - authorizedUserLastName + type: object + status: + properties: + conditions: + description: Conditions is the list of statuses showing the current + state of the Atlas Custom Resource + items: + description: Condition describes the state of an Atlas Custom Resource + at a certain point. + properties: + lastTransitionTime: + description: Last time the condition transitioned from one status + to another. + format: date-time + type: string + message: + description: A human readable message indicating details about + the transition. + type: string + reason: + description: The reason for the condition's last transition. + type: string + status: + description: Status of the condition, one of True, False, Unknown. + type: string + type: + description: Type of Atlas Custom Resource condition. + type: string + required: + - status + - type + type: object + type: array + observedGeneration: + description: |- + ObservedGeneration indicates the generation of the resource specification that the Atlas Operator is aware of. + The Atlas Operator updates this field to the 'metadata.generation' as soon as it starts reconciliation of the resource. + format: int64 + type: integer + required: + - conditions + type: object + type: object + served: true + storage: true + subresources: + status: {} +--- +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.14.0 @@ -7,13 +232,21 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasBackupPolicy listKind: AtlasBackupPolicyList plural: atlasbackuppolicies + shortNames: + - abp singular: atlasbackuppolicy scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 schema: openAPIV3Schema: description: AtlasBackupPolicy is the Schema for the atlasbackuppolicies API @@ -172,13 +405,21 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasBackupSchedule listKind: AtlasBackupScheduleList plural: atlasbackupschedules + shortNames: + - abs singular: atlasbackupschedule scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 schema: openAPIV3Schema: description: AtlasBackupSchedule is the Schema for the atlasbackupschedules @@ -366,9 +607,13 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasDatabaseUser listKind: AtlasDatabaseUserList plural: atlasdatabaseusers + shortNames: + - adu singular: atlasdatabaseuser scope: Namespaced versions: @@ -376,6 +621,12 @@ spec: - jsonPath: .spec.name name: Name type: string + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + - jsonPath: .spec.username + name: Username + type: string name: v1 schema: openAPIV3Schema: @@ -616,9 +867,13 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasDataFederation listKind: AtlasDataFederationList plural: atlasdatafederations + shortNames: + - adf singular: atlasdatafederation scope: Namespaced versions: @@ -626,6 +881,9 @@ spec: - jsonPath: .spec.name name: Name type: string + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string name: v1 schema: openAPIV3Schema: @@ -871,13 +1129,27 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasDeployment listKind: AtlasDeploymentList plural: atlasdeployments + shortNames: + - ad singular: atlasdeployment scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + - jsonPath: .status.stateName + name: Atlas State + type: string + - jsonPath: .status.mongoDBVersion + name: MongoDB Version + type: string + name: v1 schema: openAPIV3Schema: description: AtlasDeployment is the Schema for the atlasdeployments API @@ -1933,13 +2205,21 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasFederatedAuth listKind: AtlasFederatedAuthList plural: atlasfederatedauths + shortNames: + - afa singular: atlasfederatedauth scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 schema: openAPIV3Schema: description: AtlasFederatedAuth is the Schema for the Atlasfederatedauth API @@ -2109,15 +2389,25 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasProject listKind: AtlasProjectList plural: atlasprojects + shortNames: + - ap singular: atlasproject scope: Namespaced versions: - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string - jsonPath: .spec.name - name: Name + name: Atlas Name + type: string + - jsonPath: .status.id + name: Atlas ID type: string name: v1 schema: @@ -2408,6 +2698,19 @@ spec: the {GROUP-ID} has database auditing enabled. type: boolean type: object + backupCompliancePolicyRef: + description: BackupCompliancePolicyRef is a reference to the backup + compliance CR. + properties: + name: + description: Name is the name of the Kubernetes Resource + type: string + namespace: + description: Namespace is the namespace of the Kubernetes Resource + type: string + required: + - name + type: object cloudProviderAccessRoles: description: |- CloudProviderAccessRoles is a list of Cloud Provider Access Roles configured for the current Project. @@ -3634,13 +3937,21 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasSearchIndexConfig listKind: AtlasSearchIndexConfigList plural: atlassearchindexconfigs + shortNames: + - asic singular: atlassearchindexconfig scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 schema: openAPIV3Schema: description: AtlasSearchIndexConfig is the Schema for the AtlasSearchIndexConfig @@ -3677,7 +3988,6 @@ spec: - changing words to their base form (lemmatization) MongoDB Cloud uses the selected process to build the Atlas Search index enum: - lucene.standard - - lucene.standard - lucene.simple - lucene.whitespace - lucene.keyword @@ -3794,7 +4104,6 @@ spec: index enum: - lucene.standard - - lucene.standard - lucene.simple - lucene.whitespace - lucene.keyword @@ -3903,13 +4212,21 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasStreamConnection listKind: AtlasStreamConnectionList plural: atlasstreamconnections + shortNames: + - asc singular: atlasstreamconnection scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 schema: openAPIV3Schema: description: AtlasStreamConnection is the Schema for the atlasstreamconnections @@ -4127,9 +4444,13 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasStreamInstance listKind: AtlasStreamInstanceList plural: atlasstreaminstances + shortNames: + - asi singular: atlasstreaminstance scope: Namespaced versions: @@ -4137,6 +4458,12 @@ spec: - jsonPath: .spec.name name: Name type: string + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + - jsonPath: .status.id + name: Atlas ID + type: string name: v1 schema: openAPIV3Schema: @@ -4320,9 +4647,13 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasTeam listKind: AtlasTeamList plural: atlasteams + shortNames: + - at singular: atlasteam scope: Namespaced versions: @@ -4330,6 +4661,12 @@ spec: - jsonPath: .spec.name name: Name type: string + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + - jsonPath: .status.id + name: Atlas ID + type: string name: v1 schema: openAPIV3Schema: diff --git a/deploy/crds/atlas.mongodb.com_atlasbackupcompliancepolicies.yaml b/deploy/crds/atlas.mongodb.com_atlasbackupcompliancepolicies.yaml new file mode 100644 index 0000000000..efe92096cd --- /dev/null +++ b/deploy/crds/atlas.mongodb.com_atlasbackupcompliancepolicies.yaml @@ -0,0 +1,225 @@ +--- +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.14.0 + name: atlasbackupcompliancepolicies.atlas.mongodb.com +spec: + group: atlas.mongodb.com + names: + categories: + - atlas + kind: AtlasBackupCompliancePolicy + listKind: AtlasBackupCompliancePolicyList + plural: atlasbackupcompliancepolicies + shortNames: + - abcp + singular: atlasbackupcompliancepolicy + scope: Namespaced + versions: + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 + schema: + openAPIV3Schema: + description: AtlasBackupCompliancePolicy defines the desired state of a compliance + policy in Atlas. + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + properties: + authorizedEmail: + description: Email address of the user who authorized to update the + Backup Compliance Policy settings. + type: string + authorizedUserFirstName: + description: First name of the user who authorized to updated the + Backup Compliance Policy settings. + type: string + authorizedUserLastName: + description: Last name of the user who authorized to updated the Backup + Compliance Policy settings. + type: string + copyProtectionEnabled: + description: Flag that indicates whether to prevent cluster users + from deleting backups copied to other regions, even if those additional + snapshot regions are removed. + type: boolean + encryptionAtRestEnabled: + description: Flag that indicates whether Encryption at Rest using + Customer Key Management is required for all clusters with a Backup + Compliance Policy. + type: boolean + onDemandPolicy: + description: Specifications for on-demand policy. + properties: + retentionUnit: + description: 'Scope of the backup policy item: days, weeks, or + months' + enum: + - days + - weeks + - months + type: string + retentionValue: + description: Value to associate with RetentionUnit + type: integer + required: + - retentionUnit + - retentionValue + type: object + overwriteBackupPolicies: + description: Flag that indicates whether to overwrite non complying + backup policies with the new data protection settings or not. + type: boolean + pointInTimeEnabled: + description: Flag that indicates whether the cluster uses Continuous + Cloud Backups with a Backup Compliance Policy. + type: boolean + restoreWindowDays: + description: Number of previous days that you can restore back to + with Continuous Cloud Backup with a Backup Compliance Policy. This + parameter applies only to Continuous Cloud Backups with a Backup + Compliance Policy. + type: integer + scheduledPolicyItems: + description: List that contains the specifications for one scheduled + policy. + items: + properties: + frequencyInterval: + description: |- + Desired frequency of the new backup policy item specified by FrequencyType. A value of 1 specifies the first instance of the corresponding FrequencyType. + The only accepted value you can set for frequency interval with NVMe clusters is 12. + enum: + - 1 + - 2 + - 3 + - 4 + - 5 + - 6 + - 7 + - 8 + - 9 + - 10 + - 11 + - 12 + - 13 + - 14 + - 15 + - 16 + - 17 + - 18 + - 19 + - 20 + - 21 + - 22 + - 23 + - 24 + - 25 + - 26 + - 27 + - 28 + - 40 + type: integer + frequencyType: + description: 'Frequency associated with the backup policy item. + One of the following values: hourly, daily, weekly or monthly. + You cannot specify multiple hourly and daily backup policy + items.' + enum: + - hourly + - daily + - weekly + - monthly + - yearly + type: string + retentionUnit: + description: 'Scope of the backup policy item: days, weeks, + or months' + enum: + - days + - weeks + - months + - years + type: string + retentionValue: + description: Value to associate with RetentionUnit + type: integer + required: + - frequencyInterval + - frequencyType + - retentionUnit + - retentionValue + type: object + type: array + required: + - authorizedEmail + - authorizedUserFirstName + - authorizedUserLastName + type: object + status: + properties: + conditions: + description: Conditions is the list of statuses showing the current + state of the Atlas Custom Resource + items: + description: Condition describes the state of an Atlas Custom Resource + at a certain point. + properties: + lastTransitionTime: + description: Last time the condition transitioned from one status + to another. + format: date-time + type: string + message: + description: A human readable message indicating details about + the transition. + type: string + reason: + description: The reason for the condition's last transition. + type: string + status: + description: Status of the condition, one of True, False, Unknown. + type: string + type: + description: Type of Atlas Custom Resource condition. + type: string + required: + - status + - type + type: object + type: array + observedGeneration: + description: |- + ObservedGeneration indicates the generation of the resource specification that the Atlas Operator is aware of. + The Atlas Operator updates this field to the 'metadata.generation' as soon as it starts reconciliation of the resource. + format: int64 + type: integer + required: + - conditions + type: object + type: object + served: true + storage: true + subresources: + status: {} diff --git a/deploy/crds/atlas.mongodb.com_atlasbackuppolicies.yaml b/deploy/crds/atlas.mongodb.com_atlasbackuppolicies.yaml index bfbb576e1c..69fecba858 100644 --- a/deploy/crds/atlas.mongodb.com_atlasbackuppolicies.yaml +++ b/deploy/crds/atlas.mongodb.com_atlasbackuppolicies.yaml @@ -8,13 +8,21 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasBackupPolicy listKind: AtlasBackupPolicyList plural: atlasbackuppolicies + shortNames: + - abp singular: atlasbackuppolicy scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 schema: openAPIV3Schema: description: AtlasBackupPolicy is the Schema for the atlasbackuppolicies API diff --git a/deploy/crds/atlas.mongodb.com_atlasbackupschedules.yaml b/deploy/crds/atlas.mongodb.com_atlasbackupschedules.yaml index 99c8a28668..0ffedf09b6 100644 --- a/deploy/crds/atlas.mongodb.com_atlasbackupschedules.yaml +++ b/deploy/crds/atlas.mongodb.com_atlasbackupschedules.yaml @@ -8,13 +8,21 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasBackupSchedule listKind: AtlasBackupScheduleList plural: atlasbackupschedules + shortNames: + - abs singular: atlasbackupschedule scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 schema: openAPIV3Schema: description: AtlasBackupSchedule is the Schema for the atlasbackupschedules diff --git a/deploy/crds/atlas.mongodb.com_atlasdatabaseusers.yaml b/deploy/crds/atlas.mongodb.com_atlasdatabaseusers.yaml index 4058537375..d1aa39b6a3 100644 --- a/deploy/crds/atlas.mongodb.com_atlasdatabaseusers.yaml +++ b/deploy/crds/atlas.mongodb.com_atlasdatabaseusers.yaml @@ -8,9 +8,13 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasDatabaseUser listKind: AtlasDatabaseUserList plural: atlasdatabaseusers + shortNames: + - adu singular: atlasdatabaseuser scope: Namespaced versions: @@ -18,6 +22,12 @@ spec: - jsonPath: .spec.name name: Name type: string + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + - jsonPath: .spec.username + name: Username + type: string name: v1 schema: openAPIV3Schema: diff --git a/deploy/crds/atlas.mongodb.com_atlasdatafederations.yaml b/deploy/crds/atlas.mongodb.com_atlasdatafederations.yaml index 28dad0ddc2..0e2251b89a 100644 --- a/deploy/crds/atlas.mongodb.com_atlasdatafederations.yaml +++ b/deploy/crds/atlas.mongodb.com_atlasdatafederations.yaml @@ -8,9 +8,13 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasDataFederation listKind: AtlasDataFederationList plural: atlasdatafederations + shortNames: + - adf singular: atlasdatafederation scope: Namespaced versions: @@ -18,6 +22,9 @@ spec: - jsonPath: .spec.name name: Name type: string + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string name: v1 schema: openAPIV3Schema: diff --git a/deploy/crds/atlas.mongodb.com_atlasdeployments.yaml b/deploy/crds/atlas.mongodb.com_atlasdeployments.yaml index 59bcb68ec9..ef44f00d18 100644 --- a/deploy/crds/atlas.mongodb.com_atlasdeployments.yaml +++ b/deploy/crds/atlas.mongodb.com_atlasdeployments.yaml @@ -8,13 +8,27 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasDeployment listKind: AtlasDeploymentList plural: atlasdeployments + shortNames: + - ad singular: atlasdeployment scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + - jsonPath: .status.stateName + name: Atlas State + type: string + - jsonPath: .status.mongoDBVersion + name: MongoDB Version + type: string + name: v1 schema: openAPIV3Schema: description: AtlasDeployment is the Schema for the atlasdeployments API diff --git a/deploy/crds/atlas.mongodb.com_atlasfederatedauths.yaml b/deploy/crds/atlas.mongodb.com_atlasfederatedauths.yaml index b7a094aa2e..a3d2237b1b 100644 --- a/deploy/crds/atlas.mongodb.com_atlasfederatedauths.yaml +++ b/deploy/crds/atlas.mongodb.com_atlasfederatedauths.yaml @@ -8,13 +8,21 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasFederatedAuth listKind: AtlasFederatedAuthList plural: atlasfederatedauths + shortNames: + - afa singular: atlasfederatedauth scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 schema: openAPIV3Schema: description: AtlasFederatedAuth is the Schema for the Atlasfederatedauth API diff --git a/deploy/crds/atlas.mongodb.com_atlasprojects.yaml b/deploy/crds/atlas.mongodb.com_atlasprojects.yaml index c4b70eaa54..11cd7f52c2 100644 --- a/deploy/crds/atlas.mongodb.com_atlasprojects.yaml +++ b/deploy/crds/atlas.mongodb.com_atlasprojects.yaml @@ -8,15 +8,25 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasProject listKind: AtlasProjectList plural: atlasprojects + shortNames: + - ap singular: atlasproject scope: Namespaced versions: - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string - jsonPath: .spec.name - name: Name + name: Atlas Name + type: string + - jsonPath: .status.id + name: Atlas ID type: string name: v1 schema: @@ -307,6 +317,19 @@ spec: the {GROUP-ID} has database auditing enabled. type: boolean type: object + backupCompliancePolicyRef: + description: BackupCompliancePolicyRef is a reference to the backup + compliance CR. + properties: + name: + description: Name is the name of the Kubernetes Resource + type: string + namespace: + description: Namespace is the namespace of the Kubernetes Resource + type: string + required: + - name + type: object cloudProviderAccessRoles: description: |- CloudProviderAccessRoles is a list of Cloud Provider Access Roles configured for the current Project. diff --git a/deploy/crds/atlas.mongodb.com_atlassearchindexconfigs.yaml b/deploy/crds/atlas.mongodb.com_atlassearchindexconfigs.yaml index e461ebf086..9be7bae1f0 100644 --- a/deploy/crds/atlas.mongodb.com_atlassearchindexconfigs.yaml +++ b/deploy/crds/atlas.mongodb.com_atlassearchindexconfigs.yaml @@ -8,13 +8,21 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasSearchIndexConfig listKind: AtlasSearchIndexConfigList plural: atlassearchindexconfigs + shortNames: + - asic singular: atlassearchindexconfig scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 schema: openAPIV3Schema: description: AtlasSearchIndexConfig is the Schema for the AtlasSearchIndexConfig @@ -51,7 +59,6 @@ spec: - changing words to their base form (lemmatization) MongoDB Cloud uses the selected process to build the Atlas Search index enum: - lucene.standard - - lucene.standard - lucene.simple - lucene.whitespace - lucene.keyword @@ -168,7 +175,6 @@ spec: index enum: - lucene.standard - - lucene.standard - lucene.simple - lucene.whitespace - lucene.keyword diff --git a/deploy/crds/atlas.mongodb.com_atlasstreamconnections.yaml b/deploy/crds/atlas.mongodb.com_atlasstreamconnections.yaml index 245eaa1680..13bfe51c35 100644 --- a/deploy/crds/atlas.mongodb.com_atlasstreamconnections.yaml +++ b/deploy/crds/atlas.mongodb.com_atlasstreamconnections.yaml @@ -8,13 +8,21 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasStreamConnection listKind: AtlasStreamConnectionList plural: atlasstreamconnections + shortNames: + - asc singular: atlasstreamconnection scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 schema: openAPIV3Schema: description: AtlasStreamConnection is the Schema for the atlasstreamconnections diff --git a/deploy/crds/atlas.mongodb.com_atlasstreaminstances.yaml b/deploy/crds/atlas.mongodb.com_atlasstreaminstances.yaml index 0b6642c14a..997804a022 100644 --- a/deploy/crds/atlas.mongodb.com_atlasstreaminstances.yaml +++ b/deploy/crds/atlas.mongodb.com_atlasstreaminstances.yaml @@ -8,9 +8,13 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasStreamInstance listKind: AtlasStreamInstanceList plural: atlasstreaminstances + shortNames: + - asi singular: atlasstreaminstance scope: Namespaced versions: @@ -18,6 +22,12 @@ spec: - jsonPath: .spec.name name: Name type: string + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + - jsonPath: .status.id + name: Atlas ID + type: string name: v1 schema: openAPIV3Schema: diff --git a/deploy/crds/atlas.mongodb.com_atlasteams.yaml b/deploy/crds/atlas.mongodb.com_atlasteams.yaml index dbc83dd757..abc1c60487 100644 --- a/deploy/crds/atlas.mongodb.com_atlasteams.yaml +++ b/deploy/crds/atlas.mongodb.com_atlasteams.yaml @@ -8,9 +8,13 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasTeam listKind: AtlasTeamList plural: atlasteams + shortNames: + - at singular: atlasteam scope: Namespaced versions: @@ -18,6 +22,12 @@ spec: - jsonPath: .spec.name name: Name type: string + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + - jsonPath: .status.id + name: Atlas ID + type: string name: v1 schema: openAPIV3Schema: diff --git a/deploy/namespaced/crds.yaml b/deploy/namespaced/crds.yaml index ce4110235f..c940bb7e11 100644 --- a/deploy/namespaced/crds.yaml +++ b/deploy/namespaced/crds.yaml @@ -1,5 +1,230 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.14.0 + name: atlasbackupcompliancepolicies.atlas.mongodb.com +spec: + group: atlas.mongodb.com + names: + categories: + - atlas + kind: AtlasBackupCompliancePolicy + listKind: AtlasBackupCompliancePolicyList + plural: atlasbackupcompliancepolicies + shortNames: + - abcp + singular: atlasbackupcompliancepolicy + scope: Namespaced + versions: + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 + schema: + openAPIV3Schema: + description: AtlasBackupCompliancePolicy defines the desired state of a compliance + policy in Atlas. + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + properties: + authorizedEmail: + description: Email address of the user who authorized to update the + Backup Compliance Policy settings. + type: string + authorizedUserFirstName: + description: First name of the user who authorized to updated the + Backup Compliance Policy settings. + type: string + authorizedUserLastName: + description: Last name of the user who authorized to updated the Backup + Compliance Policy settings. + type: string + copyProtectionEnabled: + description: Flag that indicates whether to prevent cluster users + from deleting backups copied to other regions, even if those additional + snapshot regions are removed. + type: boolean + encryptionAtRestEnabled: + description: Flag that indicates whether Encryption at Rest using + Customer Key Management is required for all clusters with a Backup + Compliance Policy. + type: boolean + onDemandPolicy: + description: Specifications for on-demand policy. + properties: + retentionUnit: + description: 'Scope of the backup policy item: days, weeks, or + months' + enum: + - days + - weeks + - months + type: string + retentionValue: + description: Value to associate with RetentionUnit + type: integer + required: + - retentionUnit + - retentionValue + type: object + overwriteBackupPolicies: + description: Flag that indicates whether to overwrite non complying + backup policies with the new data protection settings or not. + type: boolean + pointInTimeEnabled: + description: Flag that indicates whether the cluster uses Continuous + Cloud Backups with a Backup Compliance Policy. + type: boolean + restoreWindowDays: + description: Number of previous days that you can restore back to + with Continuous Cloud Backup with a Backup Compliance Policy. This + parameter applies only to Continuous Cloud Backups with a Backup + Compliance Policy. + type: integer + scheduledPolicyItems: + description: List that contains the specifications for one scheduled + policy. + items: + properties: + frequencyInterval: + description: |- + Desired frequency of the new backup policy item specified by FrequencyType. A value of 1 specifies the first instance of the corresponding FrequencyType. + The only accepted value you can set for frequency interval with NVMe clusters is 12. + enum: + - 1 + - 2 + - 3 + - 4 + - 5 + - 6 + - 7 + - 8 + - 9 + - 10 + - 11 + - 12 + - 13 + - 14 + - 15 + - 16 + - 17 + - 18 + - 19 + - 20 + - 21 + - 22 + - 23 + - 24 + - 25 + - 26 + - 27 + - 28 + - 40 + type: integer + frequencyType: + description: 'Frequency associated with the backup policy item. + One of the following values: hourly, daily, weekly or monthly. + You cannot specify multiple hourly and daily backup policy + items.' + enum: + - hourly + - daily + - weekly + - monthly + - yearly + type: string + retentionUnit: + description: 'Scope of the backup policy item: days, weeks, + or months' + enum: + - days + - weeks + - months + - years + type: string + retentionValue: + description: Value to associate with RetentionUnit + type: integer + required: + - frequencyInterval + - frequencyType + - retentionUnit + - retentionValue + type: object + type: array + required: + - authorizedEmail + - authorizedUserFirstName + - authorizedUserLastName + type: object + status: + properties: + conditions: + description: Conditions is the list of statuses showing the current + state of the Atlas Custom Resource + items: + description: Condition describes the state of an Atlas Custom Resource + at a certain point. + properties: + lastTransitionTime: + description: Last time the condition transitioned from one status + to another. + format: date-time + type: string + message: + description: A human readable message indicating details about + the transition. + type: string + reason: + description: The reason for the condition's last transition. + type: string + status: + description: Status of the condition, one of True, False, Unknown. + type: string + type: + description: Type of Atlas Custom Resource condition. + type: string + required: + - status + - type + type: object + type: array + observedGeneration: + description: |- + ObservedGeneration indicates the generation of the resource specification that the Atlas Operator is aware of. + The Atlas Operator updates this field to the 'metadata.generation' as soon as it starts reconciliation of the resource. + format: int64 + type: integer + required: + - conditions + type: object + type: object + served: true + storage: true + subresources: + status: {} +--- +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.14.0 @@ -7,13 +232,21 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasBackupPolicy listKind: AtlasBackupPolicyList plural: atlasbackuppolicies + shortNames: + - abp singular: atlasbackuppolicy scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 schema: openAPIV3Schema: description: AtlasBackupPolicy is the Schema for the atlasbackuppolicies API @@ -172,13 +405,21 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasBackupSchedule listKind: AtlasBackupScheduleList plural: atlasbackupschedules + shortNames: + - abs singular: atlasbackupschedule scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 schema: openAPIV3Schema: description: AtlasBackupSchedule is the Schema for the atlasbackupschedules @@ -366,9 +607,13 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasDatabaseUser listKind: AtlasDatabaseUserList plural: atlasdatabaseusers + shortNames: + - adu singular: atlasdatabaseuser scope: Namespaced versions: @@ -376,6 +621,12 @@ spec: - jsonPath: .spec.name name: Name type: string + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + - jsonPath: .spec.username + name: Username + type: string name: v1 schema: openAPIV3Schema: @@ -616,9 +867,13 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasDataFederation listKind: AtlasDataFederationList plural: atlasdatafederations + shortNames: + - adf singular: atlasdatafederation scope: Namespaced versions: @@ -626,6 +881,9 @@ spec: - jsonPath: .spec.name name: Name type: string + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string name: v1 schema: openAPIV3Schema: @@ -871,13 +1129,27 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasDeployment listKind: AtlasDeploymentList plural: atlasdeployments + shortNames: + - ad singular: atlasdeployment scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + - jsonPath: .status.stateName + name: Atlas State + type: string + - jsonPath: .status.mongoDBVersion + name: MongoDB Version + type: string + name: v1 schema: openAPIV3Schema: description: AtlasDeployment is the Schema for the atlasdeployments API @@ -1933,13 +2205,21 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasFederatedAuth listKind: AtlasFederatedAuthList plural: atlasfederatedauths + shortNames: + - afa singular: atlasfederatedauth scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 schema: openAPIV3Schema: description: AtlasFederatedAuth is the Schema for the Atlasfederatedauth API @@ -2109,15 +2389,25 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasProject listKind: AtlasProjectList plural: atlasprojects + shortNames: + - ap singular: atlasproject scope: Namespaced versions: - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string - jsonPath: .spec.name - name: Name + name: Atlas Name + type: string + - jsonPath: .status.id + name: Atlas ID type: string name: v1 schema: @@ -2408,6 +2698,19 @@ spec: the {GROUP-ID} has database auditing enabled. type: boolean type: object + backupCompliancePolicyRef: + description: BackupCompliancePolicyRef is a reference to the backup + compliance CR. + properties: + name: + description: Name is the name of the Kubernetes Resource + type: string + namespace: + description: Namespace is the namespace of the Kubernetes Resource + type: string + required: + - name + type: object cloudProviderAccessRoles: description: |- CloudProviderAccessRoles is a list of Cloud Provider Access Roles configured for the current Project. @@ -3634,13 +3937,21 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasSearchIndexConfig listKind: AtlasSearchIndexConfigList plural: atlassearchindexconfigs + shortNames: + - asic singular: atlassearchindexconfig scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 schema: openAPIV3Schema: description: AtlasSearchIndexConfig is the Schema for the AtlasSearchIndexConfig @@ -3677,7 +3988,6 @@ spec: - changing words to their base form (lemmatization) MongoDB Cloud uses the selected process to build the Atlas Search index enum: - lucene.standard - - lucene.standard - lucene.simple - lucene.whitespace - lucene.keyword @@ -3794,7 +4104,6 @@ spec: index enum: - lucene.standard - - lucene.standard - lucene.simple - lucene.whitespace - lucene.keyword @@ -3903,13 +4212,21 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasStreamConnection listKind: AtlasStreamConnectionList plural: atlasstreamconnections + shortNames: + - asc singular: atlasstreamconnection scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 schema: openAPIV3Schema: description: AtlasStreamConnection is the Schema for the atlasstreamconnections @@ -4127,9 +4444,13 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasStreamInstance listKind: AtlasStreamInstanceList plural: atlasstreaminstances + shortNames: + - asi singular: atlasstreaminstance scope: Namespaced versions: @@ -4137,6 +4458,12 @@ spec: - jsonPath: .spec.name name: Name type: string + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + - jsonPath: .status.id + name: Atlas ID + type: string name: v1 schema: openAPIV3Schema: @@ -4320,9 +4647,13 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasTeam listKind: AtlasTeamList plural: atlasteams + shortNames: + - at singular: atlasteam scope: Namespaced versions: @@ -4330,6 +4661,12 @@ spec: - jsonPath: .spec.name name: Name type: string + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + - jsonPath: .status.id + name: Atlas ID + type: string name: v1 schema: openAPIV3Schema: diff --git a/deploy/namespaced/namespaced-config.yaml b/deploy/namespaced/namespaced-config.yaml index bb0c8a7295..f9bcb8ec95 100644 --- a/deploy/namespaced/namespaced-config.yaml +++ b/deploy/namespaced/namespaced-config.yaml @@ -62,7 +62,6 @@ rules: apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: - creationTimestamp: null labels: app.kubernetes.io/component: controller app.kubernetes.io/instance: mongodb-atlas-kubernetes-operator @@ -89,6 +88,18 @@ rules: - patch - update - watch +- apiGroups: + - atlas.mongodb.com + resources: + - atlasbackupcompliancepolicies + verbs: + - create + - delete + - get + - list + - patch + - update + - watch - apiGroups: - atlas.mongodb.com resources: @@ -192,7 +203,7 @@ rules: - apiGroups: - atlas.mongodb.com resources: - - atlasprojects + - atlasfederatedauths verbs: - create - delete @@ -204,7 +215,7 @@ rules: - apiGroups: - atlas.mongodb.com resources: - - atlasprojects/status + - atlasfederatedauths/status verbs: - get - patch @@ -212,7 +223,7 @@ rules: - apiGroups: - atlas.mongodb.com resources: - - atlasteams + - atlasprojects verbs: - create - delete @@ -224,7 +235,7 @@ rules: - apiGroups: - atlas.mongodb.com resources: - - atlasteams/status + - atlasprojects/status verbs: - get - patch @@ -232,7 +243,7 @@ rules: - apiGroups: - atlas.mongodb.com resources: - - atlasfederatedauths + - atlassearchindexconfigs verbs: - create - delete @@ -244,7 +255,7 @@ rules: - apiGroups: - atlas.mongodb.com resources: - - atlasfederatedauths/status + - atlassearchindexconfigs/status verbs: - get - patch @@ -292,7 +303,7 @@ rules: - apiGroups: - atlas.mongodb.com resources: - - atlassearchindexconfigs + - atlasteams verbs: - create - delete @@ -304,7 +315,7 @@ rules: - apiGroups: - atlas.mongodb.com resources: - - atlassearchindexconfigs/status + - atlasteams/status verbs: - get - patch @@ -392,7 +403,7 @@ spec: valueFrom: fieldRef: fieldPath: metadata.namespace - image: mongodb/mongodb-atlas-kubernetes-operator:2.3.1 + image: mongodb/mongodb-atlas-kubernetes-operator:2.4.0 imagePullPolicy: Always livenessProbe: httpGet: diff --git a/deploy/openshift/crds.yaml b/deploy/openshift/crds.yaml index ce4110235f..c940bb7e11 100644 --- a/deploy/openshift/crds.yaml +++ b/deploy/openshift/crds.yaml @@ -1,5 +1,230 @@ apiVersion: apiextensions.k8s.io/v1 kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.14.0 + name: atlasbackupcompliancepolicies.atlas.mongodb.com +spec: + group: atlas.mongodb.com + names: + categories: + - atlas + kind: AtlasBackupCompliancePolicy + listKind: AtlasBackupCompliancePolicyList + plural: atlasbackupcompliancepolicies + shortNames: + - abcp + singular: atlasbackupcompliancepolicy + scope: Namespaced + versions: + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 + schema: + openAPIV3Schema: + description: AtlasBackupCompliancePolicy defines the desired state of a compliance + policy in Atlas. + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + properties: + authorizedEmail: + description: Email address of the user who authorized to update the + Backup Compliance Policy settings. + type: string + authorizedUserFirstName: + description: First name of the user who authorized to updated the + Backup Compliance Policy settings. + type: string + authorizedUserLastName: + description: Last name of the user who authorized to updated the Backup + Compliance Policy settings. + type: string + copyProtectionEnabled: + description: Flag that indicates whether to prevent cluster users + from deleting backups copied to other regions, even if those additional + snapshot regions are removed. + type: boolean + encryptionAtRestEnabled: + description: Flag that indicates whether Encryption at Rest using + Customer Key Management is required for all clusters with a Backup + Compliance Policy. + type: boolean + onDemandPolicy: + description: Specifications for on-demand policy. + properties: + retentionUnit: + description: 'Scope of the backup policy item: days, weeks, or + months' + enum: + - days + - weeks + - months + type: string + retentionValue: + description: Value to associate with RetentionUnit + type: integer + required: + - retentionUnit + - retentionValue + type: object + overwriteBackupPolicies: + description: Flag that indicates whether to overwrite non complying + backup policies with the new data protection settings or not. + type: boolean + pointInTimeEnabled: + description: Flag that indicates whether the cluster uses Continuous + Cloud Backups with a Backup Compliance Policy. + type: boolean + restoreWindowDays: + description: Number of previous days that you can restore back to + with Continuous Cloud Backup with a Backup Compliance Policy. This + parameter applies only to Continuous Cloud Backups with a Backup + Compliance Policy. + type: integer + scheduledPolicyItems: + description: List that contains the specifications for one scheduled + policy. + items: + properties: + frequencyInterval: + description: |- + Desired frequency of the new backup policy item specified by FrequencyType. A value of 1 specifies the first instance of the corresponding FrequencyType. + The only accepted value you can set for frequency interval with NVMe clusters is 12. + enum: + - 1 + - 2 + - 3 + - 4 + - 5 + - 6 + - 7 + - 8 + - 9 + - 10 + - 11 + - 12 + - 13 + - 14 + - 15 + - 16 + - 17 + - 18 + - 19 + - 20 + - 21 + - 22 + - 23 + - 24 + - 25 + - 26 + - 27 + - 28 + - 40 + type: integer + frequencyType: + description: 'Frequency associated with the backup policy item. + One of the following values: hourly, daily, weekly or monthly. + You cannot specify multiple hourly and daily backup policy + items.' + enum: + - hourly + - daily + - weekly + - monthly + - yearly + type: string + retentionUnit: + description: 'Scope of the backup policy item: days, weeks, + or months' + enum: + - days + - weeks + - months + - years + type: string + retentionValue: + description: Value to associate with RetentionUnit + type: integer + required: + - frequencyInterval + - frequencyType + - retentionUnit + - retentionValue + type: object + type: array + required: + - authorizedEmail + - authorizedUserFirstName + - authorizedUserLastName + type: object + status: + properties: + conditions: + description: Conditions is the list of statuses showing the current + state of the Atlas Custom Resource + items: + description: Condition describes the state of an Atlas Custom Resource + at a certain point. + properties: + lastTransitionTime: + description: Last time the condition transitioned from one status + to another. + format: date-time + type: string + message: + description: A human readable message indicating details about + the transition. + type: string + reason: + description: The reason for the condition's last transition. + type: string + status: + description: Status of the condition, one of True, False, Unknown. + type: string + type: + description: Type of Atlas Custom Resource condition. + type: string + required: + - status + - type + type: object + type: array + observedGeneration: + description: |- + ObservedGeneration indicates the generation of the resource specification that the Atlas Operator is aware of. + The Atlas Operator updates this field to the 'metadata.generation' as soon as it starts reconciliation of the resource. + format: int64 + type: integer + required: + - conditions + type: object + type: object + served: true + storage: true + subresources: + status: {} +--- +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition metadata: annotations: controller-gen.kubebuilder.io/version: v0.14.0 @@ -7,13 +232,21 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasBackupPolicy listKind: AtlasBackupPolicyList plural: atlasbackuppolicies + shortNames: + - abp singular: atlasbackuppolicy scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 schema: openAPIV3Schema: description: AtlasBackupPolicy is the Schema for the atlasbackuppolicies API @@ -172,13 +405,21 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasBackupSchedule listKind: AtlasBackupScheduleList plural: atlasbackupschedules + shortNames: + - abs singular: atlasbackupschedule scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 schema: openAPIV3Schema: description: AtlasBackupSchedule is the Schema for the atlasbackupschedules @@ -366,9 +607,13 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasDatabaseUser listKind: AtlasDatabaseUserList plural: atlasdatabaseusers + shortNames: + - adu singular: atlasdatabaseuser scope: Namespaced versions: @@ -376,6 +621,12 @@ spec: - jsonPath: .spec.name name: Name type: string + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + - jsonPath: .spec.username + name: Username + type: string name: v1 schema: openAPIV3Schema: @@ -616,9 +867,13 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasDataFederation listKind: AtlasDataFederationList plural: atlasdatafederations + shortNames: + - adf singular: atlasdatafederation scope: Namespaced versions: @@ -626,6 +881,9 @@ spec: - jsonPath: .spec.name name: Name type: string + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string name: v1 schema: openAPIV3Schema: @@ -871,13 +1129,27 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasDeployment listKind: AtlasDeploymentList plural: atlasdeployments + shortNames: + - ad singular: atlasdeployment scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + - jsonPath: .status.stateName + name: Atlas State + type: string + - jsonPath: .status.mongoDBVersion + name: MongoDB Version + type: string + name: v1 schema: openAPIV3Schema: description: AtlasDeployment is the Schema for the atlasdeployments API @@ -1933,13 +2205,21 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasFederatedAuth listKind: AtlasFederatedAuthList plural: atlasfederatedauths + shortNames: + - afa singular: atlasfederatedauth scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 schema: openAPIV3Schema: description: AtlasFederatedAuth is the Schema for the Atlasfederatedauth API @@ -2109,15 +2389,25 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasProject listKind: AtlasProjectList plural: atlasprojects + shortNames: + - ap singular: atlasproject scope: Namespaced versions: - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string - jsonPath: .spec.name - name: Name + name: Atlas Name + type: string + - jsonPath: .status.id + name: Atlas ID type: string name: v1 schema: @@ -2408,6 +2698,19 @@ spec: the {GROUP-ID} has database auditing enabled. type: boolean type: object + backupCompliancePolicyRef: + description: BackupCompliancePolicyRef is a reference to the backup + compliance CR. + properties: + name: + description: Name is the name of the Kubernetes Resource + type: string + namespace: + description: Namespace is the namespace of the Kubernetes Resource + type: string + required: + - name + type: object cloudProviderAccessRoles: description: |- CloudProviderAccessRoles is a list of Cloud Provider Access Roles configured for the current Project. @@ -3634,13 +3937,21 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasSearchIndexConfig listKind: AtlasSearchIndexConfigList plural: atlassearchindexconfigs + shortNames: + - asic singular: atlassearchindexconfig scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 schema: openAPIV3Schema: description: AtlasSearchIndexConfig is the Schema for the AtlasSearchIndexConfig @@ -3677,7 +3988,6 @@ spec: - changing words to their base form (lemmatization) MongoDB Cloud uses the selected process to build the Atlas Search index enum: - lucene.standard - - lucene.standard - lucene.simple - lucene.whitespace - lucene.keyword @@ -3794,7 +4104,6 @@ spec: index enum: - lucene.standard - - lucene.standard - lucene.simple - lucene.whitespace - lucene.keyword @@ -3903,13 +4212,21 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasStreamConnection listKind: AtlasStreamConnectionList plural: atlasstreamconnections + shortNames: + - asc singular: atlasstreamconnection scope: Namespaced versions: - - name: v1 + - additionalPrinterColumns: + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + name: v1 schema: openAPIV3Schema: description: AtlasStreamConnection is the Schema for the atlasstreamconnections @@ -4127,9 +4444,13 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasStreamInstance listKind: AtlasStreamInstanceList plural: atlasstreaminstances + shortNames: + - asi singular: atlasstreaminstance scope: Namespaced versions: @@ -4137,6 +4458,12 @@ spec: - jsonPath: .spec.name name: Name type: string + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + - jsonPath: .status.id + name: Atlas ID + type: string name: v1 schema: openAPIV3Schema: @@ -4320,9 +4647,13 @@ metadata: spec: group: atlas.mongodb.com names: + categories: + - atlas kind: AtlasTeam listKind: AtlasTeamList plural: atlasteams + shortNames: + - at singular: atlasteam scope: Namespaced versions: @@ -4330,6 +4661,12 @@ spec: - jsonPath: .spec.name name: Name type: string + - jsonPath: .status.conditions[?(@.type=="Ready")].status + name: Ready + type: string + - jsonPath: .status.id + name: Atlas ID + type: string name: v1 schema: openAPIV3Schema: diff --git a/deploy/openshift/openshift.yaml b/deploy/openshift/openshift.yaml index 88148d60d3..9952106e03 100644 --- a/deploy/openshift/openshift.yaml +++ b/deploy/openshift/openshift.yaml @@ -62,7 +62,6 @@ rules: apiVersion: rbac.authorization.k8s.io/v1 kind: Role metadata: - creationTimestamp: null labels: app.kubernetes.io/component: controller app.kubernetes.io/instance: mongodb-atlas-kubernetes-operator @@ -89,6 +88,18 @@ rules: - patch - update - watch +- apiGroups: + - atlas.mongodb.com + resources: + - atlasbackupcompliancepolicies + verbs: + - create + - delete + - get + - list + - patch + - update + - watch - apiGroups: - atlas.mongodb.com resources: @@ -192,7 +203,7 @@ rules: - apiGroups: - atlas.mongodb.com resources: - - atlasprojects + - atlasfederatedauths verbs: - create - delete @@ -204,7 +215,7 @@ rules: - apiGroups: - atlas.mongodb.com resources: - - atlasprojects/status + - atlasfederatedauths/status verbs: - get - patch @@ -212,7 +223,7 @@ rules: - apiGroups: - atlas.mongodb.com resources: - - atlasteams + - atlasprojects verbs: - create - delete @@ -224,7 +235,7 @@ rules: - apiGroups: - atlas.mongodb.com resources: - - atlasteams/status + - atlasprojects/status verbs: - get - patch @@ -232,7 +243,7 @@ rules: - apiGroups: - atlas.mongodb.com resources: - - atlasfederatedauths + - atlassearchindexconfigs verbs: - create - delete @@ -244,7 +255,7 @@ rules: - apiGroups: - atlas.mongodb.com resources: - - atlasfederatedauths/status + - atlassearchindexconfigs/status verbs: - get - patch @@ -292,7 +303,7 @@ rules: - apiGroups: - atlas.mongodb.com resources: - - atlassearchindexconfigs + - atlasteams verbs: - create - delete @@ -304,7 +315,7 @@ rules: - apiGroups: - atlas.mongodb.com resources: - - atlassearchindexconfigs/status + - atlasteams/status verbs: - get - patch @@ -391,7 +402,7 @@ spec: valueFrom: fieldRef: fieldPath: metadata.namespace - image: mongodb/mongodb-atlas-kubernetes-operator:2.3.1 + image: mongodb/mongodb-atlas-kubernetes-operator:2.4.0 imagePullPolicy: Always livenessProbe: httpGet: diff --git a/docs/releases/v2.4.0/sdlc-compliance.md b/docs/releases/v2.4.0/sdlc-compliance.md new file mode 100644 index 0000000000..f696fdebe8 --- /dev/null +++ b/docs/releases/v2.4.0/sdlc-compliance.md @@ -0,0 +1,46 @@ +SSDLC Compliance Report: Atlas Kubernetes Operator Manager v2.4.0 +================================================================= + +- Release Creators: jose.vazquez@mongodb.com +- Created On: 2024-07-16 + +Overview: + +- **Product and Release Name** + + - Atlas Kubernetes Operator v2.4.0, 2024-07-16. + +- **Process Document** + - http://go/how-we-develop-software-doc + +- **Tool used to track third party vulnerabilities** + - [Silk](https://www.silk.security/) + +- **Dependency Information** + - See SBOMS Lite manifests (CycloneDX in JSON format) for `Intel` and `ARM` are to be found [here](.) + - See [instructions on how the SBOMs are generated or how to generate them manually](../../dev/image-sboms.md) + - [Internal compliance folder](https://drive.google.com/drive/folders/1k0TsPgJcMwgj2muSPHU0FHHBjPT0dkS0?usp=drive_link) + +- **Static Analysis Report** + - No SAST findings. Our CI system blocks merges on any SAST findings. + - No vulnerabilities were ignored for this release. + +- **Release Signature Report** + - Image signatures enforced by CI pipeline. + - See [Signature verification instructions here](../../dev/signed-images.md) + - Self-verification shortcut: + ```shell + make verify IMG=mongodb/mongodb-atlas-kubernetes-operator:2.4.0 SIGNATURE_REPO=mongodb/signatures + ``` + +- **Security Testing Report** + - Available as needed from Cloud Security. + +- **Security Assessment Report** + - Available as needed from Cloud Security. + +Assumptions and attestations: + +- Internal processes are used to ensure CVEs are identified and mitigated within SLAs. + +- All Operator images are signed by MongoDB, with signatures stored at `docker.io/mongodb/signatures`.