diff --git a/CHANGELOG.md b/CHANGELOG.md index 240cfcf108e76312e3965d8e373b367a108f2d99..954c8aad65999d4afe6b074b0c45adfe159dafcf 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,8 @@ # Minio Operator +* 4.2.3-bb.0 (9/9/21) + * Upgraded Minio Operator to Version 4.2.3 + * Upgraded Minio Helm Chart to version 4.2.3 + * 4.1.2-bb.3 (8/26/21) * Added istio sidecar scraping network policy diff --git a/chart/Chart.yaml b/chart/Chart.yaml index e60b551cc16870b6852616e20be81395104ef4af..86df4e6005dfeefff6f1eeabc29aca6c90692089 100644 --- a/chart/Chart.yaml +++ b/chart/Chart.yaml @@ -1,8 +1,8 @@ apiVersion: v2 description: A Helm chart for MinIO Operator name: minio-operator -version: 4.1.2-bb.3 -appVersion: v4.1.2 +version: 4.2.3-bb.0 +appVersion: v4.2.3 keywords: - storage - object-storage @@ -17,6 +17,6 @@ maintainers: type: application dependencies: - name: minio-operator-crds - version: "4.1.12" + version: "4.2.3" condition: installCRDs - repository: "file://minio-operator-crds" + repository: "file://minio-operator-crds" \ No newline at end of file diff --git a/chart/charts/minio-operator-crds-4.1.2.tgz b/chart/charts/minio-operator-crds-4.1.2.tgz deleted file mode 100644 index 92ec82f72c9d4fddb3d7f2f8535213cc2e8943ae..0000000000000000000000000000000000000000 Binary files a/chart/charts/minio-operator-crds-4.1.2.tgz and /dev/null differ diff --git a/chart/charts/minio-operator-crds-4.2.3.tgz b/chart/charts/minio-operator-crds-4.2.3.tgz new file mode 100644 index 0000000000000000000000000000000000000000..05b524ae87af3b29775e52fc33967aaf723b287e Binary files /dev/null and b/chart/charts/minio-operator-crds-4.2.3.tgz differ diff --git a/chart/minio-operator-crds/Chart.yaml b/chart/minio-operator-crds/Chart.yaml index aa79b685c293b09ac620d8cca23e6dfd8f8e918a..8a075d927143e45dad8c681a854d80cd0c4f8eba 100644 --- a/chart/minio-operator-crds/Chart.yaml +++ b/chart/minio-operator-crds/Chart.yaml @@ -1,8 +1,8 @@ apiVersion: v2 description: A Helm chart for MinIO Operator CRD deployment name: minio-operator-crds -version: "4.1.2" -appVersion: "4.1.2" +version: "4.2.3" +appVersion: "4.2.3" kubeVersion: ">=1.19.0-0" keywords: - Minio diff --git a/chart/minio-operator-crds/templates/minio.min.io_tenants.yaml b/chart/minio-operator-crds/templates/minio.min.io_tenants.yaml index f061cb9ab494cadd6c0e7f31ab1ca5cd375d1d6b..c1f74551e15efb4221e3d4961c7818604f3aa4c8 100644 --- a/chart/minio-operator-crds/templates/minio.min.io_tenants.yaml +++ b/chart/minio-operator-crds/templates/minio.min.io_tenants.yaml @@ -72,213 +72,10 @@ spec: type: string type: array type: object - console: + configuration: properties: - annotations: - additionalProperties: - type: string - type: object - consoleSecret: - properties: - name: - type: string - type: object - env: - items: - properties: - name: - type: string - value: - type: string - valueFrom: - properties: - configMapKeyRef: - properties: - key: - type: string - name: - type: string - optional: - type: boolean - required: - - key - type: object - fieldRef: - properties: - apiVersion: - type: string - fieldPath: - type: string - required: - - fieldPath - type: object - resourceFieldRef: - properties: - containerName: - type: string - divisor: - anyOf: - - type: integer - - type: string - pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ - x-kubernetes-int-or-string: true - resource: - type: string - required: - - resource - type: object - secretKeyRef: - properties: - key: - type: string - name: - type: string - optional: - type: boolean - required: - - key - type: object - type: object - required: - - name - type: object - type: array - externalCaCertSecret: - items: - properties: - name: - type: string - type: - type: string - required: - - name - type: object - type: array - externalCertSecret: - properties: - name: - type: string - type: - type: string - required: - - name - type: object - image: - type: string - imagePullPolicy: - type: string - labels: - additionalProperties: - type: string - type: object - nodeSelector: - additionalProperties: - type: string - type: object - replicas: - format: int32 - type: integer - resources: - properties: - limits: - additionalProperties: - anyOf: - - type: integer - - type: string - pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ - x-kubernetes-int-or-string: true - type: object - requests: - additionalProperties: - anyOf: - - type: integer - - type: string - pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ - x-kubernetes-int-or-string: true - type: object - type: object - securityContext: - properties: - fsGroup: - format: int64 - type: integer - fsGroupChangePolicy: - type: string - runAsGroup: - format: int64 - type: integer - runAsNonRoot: - type: boolean - runAsUser: - format: int64 - type: integer - seLinuxOptions: - properties: - level: - type: string - role: - type: string - type: - type: string - user: - type: string - type: object - seccompProfile: - properties: - localhostProfile: - type: string - type: - type: string - required: - - type - type: object - supplementalGroups: - items: - format: int64 - type: integer - type: array - sysctls: - items: - properties: - name: - type: string - value: - type: string - required: - - name - - value - type: object - type: array - windowsOptions: - properties: - gmsaCredentialSpec: - type: string - gmsaCredentialSpecName: - type: string - runAsUserName: - type: string - type: object - type: object - serviceAccountName: + name: type: string - tolerations: - items: - properties: - effect: - type: string - key: - type: string - operator: - type: string - tolerationSeconds: - format: int64 - type: integer - value: - type: string - type: object - type: array - required: - - consoleSecret type: object credsSecret: properties: @@ -394,138 +191,9 @@ spec: type: object kes: properties: - annotations: - additionalProperties: - type: string - type: object - clientCertSecret: - properties: - name: - type: string - type: - type: string - required: - - name - type: object - externalCertSecret: - properties: - name: - type: string - type: - type: string - required: - - name - type: object - image: - type: string - imagePullPolicy: - type: string - kesSecret: - properties: - name: - type: string - type: object - keyName: - type: string - labels: - additionalProperties: - type: string - type: object - nodeSelector: - additionalProperties: - type: string - type: object - replicas: - format: int32 - type: integer - securityContext: + affinity: properties: - fsGroup: - format: int64 - type: integer - fsGroupChangePolicy: - type: string - runAsGroup: - format: int64 - type: integer - runAsNonRoot: - type: boolean - runAsUser: - format: int64 - type: integer - seLinuxOptions: - properties: - level: - type: string - role: - type: string - type: - type: string - user: - type: string - type: object - seccompProfile: - properties: - localhostProfile: - type: string - type: - type: string - required: - - type - type: object - supplementalGroups: - items: - format: int64 - type: integer - type: array - sysctls: - items: - properties: - name: - type: string - value: - type: string - required: - - name - - value - type: object - type: array - windowsOptions: - properties: - gmsaCredentialSpec: - type: string - gmsaCredentialSpecName: - type: string - runAsUserName: - type: string - type: object - type: object - serviceAccountName: - type: string - tolerations: - items: - properties: - effect: - type: string - key: - type: string - operator: - type: string - tolerationSeconds: - format: int64 - type: integer - value: - type: string - type: object - type: array - required: - - kesSecret - type: object - log: - properties: - affinity: - properties: - nodeAffinity: + nodeAffinity: properties: preferredDuringSchedulingIgnoredDuringExecution: items: @@ -789,41 +457,432 @@ spec: additionalProperties: type: string type: object - audit: + clientCertSecret: properties: - diskCapacityGB: + name: + type: string + type: + type: string + required: + - name + type: object + externalCertSecret: + properties: + name: + type: string + type: + type: string + required: + - name + type: object + image: + type: string + imagePullPolicy: + type: string + kesSecret: + properties: + name: + type: string + type: object + keyName: + type: string + labels: + additionalProperties: + type: string + type: object + nodeSelector: + additionalProperties: + type: string + type: object + replicas: + format: int32 + type: integer + securityContext: + properties: + fsGroup: + format: int64 + type: integer + fsGroupChangePolicy: + type: string + runAsGroup: + format: int64 + type: integer + runAsNonRoot: + type: boolean + runAsUser: + format: int64 type: integer + seLinuxOptions: + properties: + level: + type: string + role: + type: string + type: + type: string + user: + type: string + type: object + seccompProfile: + properties: + localhostProfile: + type: string + type: + type: string + required: + - type + type: object + supplementalGroups: + items: + format: int64 + type: integer + type: array + sysctls: + items: + properties: + name: + type: string + value: + type: string + required: + - name + - value + type: object + type: array + windowsOptions: + properties: + gmsaCredentialSpec: + type: string + gmsaCredentialSpecName: + type: string + runAsUserName: + type: string + type: object type: object - db: + serviceAccountName: + type: string + tolerations: + items: + properties: + effect: + type: string + key: + type: string + operator: + type: string + tolerationSeconds: + format: int64 + type: integer + value: + type: string + type: object + type: array + required: + - kesSecret + type: object + log: + properties: + affinity: properties: - affinity: + nodeAffinity: properties: - nodeAffinity: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + preference: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + type: object + weight: + format: int32 + type: integer + required: + - preference + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: properties: - preferredDuringSchedulingIgnoredDuringExecution: + nodeSelectorTerms: items: properties: - preference: - properties: - matchExpressions: - items: - properties: - key: - type: string - operator: - type: string - values: - items: - type: string - type: array - required: - - key - - operator - type: object - type: array - matchFields: - items: - properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + type: object + type: array + required: + - nodeSelectorTerms + type: object + type: object + podAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + type: array + type: object + podAntiAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + type: array + type: object + type: object + annotations: + additionalProperties: + type: string + type: object + audit: + properties: + diskCapacityGB: + type: integer + type: object + db: + properties: + affinity: + properties: + nodeAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + preference: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + items: + properties: key: type: string operator: @@ -1064,6 +1123,8 @@ spec: type: object image: type: string + initimage: + type: string labels: additionalProperties: type: string @@ -1153,6 +1214,8 @@ spec: type: string type: object type: object + serviceAccountName: + type: string tolerations: items: properties: @@ -1395,6 +1458,8 @@ spec: type: string type: object type: object + serviceAccountName: + type: string tolerations: items: properties: @@ -1420,12 +1485,274 @@ spec: type: string prometheus: properties: - annotations: - additionalProperties: - type: string - type: object - diskCapacityGB: - type: integer + affinity: + properties: + nodeAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + preference: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + type: object + weight: + format: int32 + type: integer + required: + - preference + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + properties: + nodeSelectorTerms: + items: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + type: object + type: array + required: + - nodeSelectorTerms + type: object + type: object + podAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + type: array + type: object + podAntiAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + type: array + type: object + type: object + annotations: + additionalProperties: + type: string + type: object + diskCapacityGB: + type: integer image: type: string initimage: @@ -1519,6 +1846,8 @@ spec: type: string type: object type: object + serviceAccountName: + type: string sidecarimage: type: string storageClassName: @@ -3454,6 +3783,8 @@ spec: drivesOnline: format: int32 type: integer + healthMessage: + type: string healthStatus: type: string pools: @@ -3474,6 +3805,9 @@ spec: type: integer syncVersion: type: string + waitingOnReady: + format: date-time + type: string writeQuorum: format: int32 type: integer @@ -3531,213 +3865,10 @@ spec: type: string type: array type: object - console: - properties: - annotations: - additionalProperties: - type: string - type: object - consoleSecret: - properties: - name: - type: string - type: object - env: - items: - properties: - name: - type: string - value: - type: string - valueFrom: - properties: - configMapKeyRef: - properties: - key: - type: string - name: - type: string - optional: - type: boolean - required: - - key - type: object - fieldRef: - properties: - apiVersion: - type: string - fieldPath: - type: string - required: - - fieldPath - type: object - resourceFieldRef: - properties: - containerName: - type: string - divisor: - anyOf: - - type: integer - - type: string - pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ - x-kubernetes-int-or-string: true - resource: - type: string - required: - - resource - type: object - secretKeyRef: - properties: - key: - type: string - name: - type: string - optional: - type: boolean - required: - - key - type: object - type: object - required: - - name - type: object - type: array - externalCaCertSecret: - items: - properties: - name: - type: string - type: - type: string - required: - - name - type: object - type: array - externalCertSecret: - properties: - name: - type: string - type: - type: string - required: - - name - type: object - image: - type: string - imagePullPolicy: - type: string - labels: - additionalProperties: - type: string - type: object - nodeSelector: - additionalProperties: - type: string - type: object - replicas: - format: int32 - type: integer - resources: - properties: - limits: - additionalProperties: - anyOf: - - type: integer - - type: string - pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ - x-kubernetes-int-or-string: true - type: object - requests: - additionalProperties: - anyOf: - - type: integer - - type: string - pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ - x-kubernetes-int-or-string: true - type: object - type: object - securityContext: - properties: - fsGroup: - format: int64 - type: integer - fsGroupChangePolicy: - type: string - runAsGroup: - format: int64 - type: integer - runAsNonRoot: - type: boolean - runAsUser: - format: int64 - type: integer - seLinuxOptions: - properties: - level: - type: string - role: - type: string - type: - type: string - user: - type: string - type: object - seccompProfile: - properties: - localhostProfile: - type: string - type: - type: string - required: - - type - type: object - supplementalGroups: - items: - format: int64 - type: integer - type: array - sysctls: - items: - properties: - name: - type: string - value: - type: string - required: - - name - - value - type: object - type: array - windowsOptions: - properties: - gmsaCredentialSpec: - type: string - gmsaCredentialSpecName: - type: string - runAsUserName: - type: string - type: object - type: object - serviceAccountName: - type: string - tolerations: - items: - properties: - effect: - type: string - key: - type: string - operator: - type: string - tolerationSeconds: - format: int64 - type: integer - value: - type: string - type: object - type: array - required: - - consoleSecret + configuration: + properties: + name: + type: string type: object credsSecret: properties: @@ -3853,6 +3984,268 @@ spec: type: object kes: properties: + affinity: + properties: + nodeAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + preference: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + type: object + weight: + format: int32 + type: integer + required: + - preference + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + properties: + nodeSelectorTerms: + items: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + type: object + type: array + required: + - nodeSelectorTerms + type: object + type: object + podAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + type: array + type: object + podAntiAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + items: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + type: array + type: object + type: object annotations: additionalProperties: type: string @@ -4523,6 +4916,8 @@ spec: type: object image: type: string + initimage: + type: string labels: additionalProperties: type: string @@ -4612,6 +5007,8 @@ spec: type: string type: object type: object + serviceAccountName: + type: string tolerations: items: properties: @@ -4854,6 +5251,8 @@ spec: type: string type: object type: object + serviceAccountName: + type: string tolerations: items: properties: @@ -4871,6 +5270,15 @@ spec: type: object type: array type: object + logging: + properties: + anonymous: + type: boolean + json: + type: boolean + quiet: + type: boolean + type: object mountPath: type: string podManagementPolicy: @@ -5266,131 +5674,393 @@ spec: additionalProperties: type: string type: object - name: - type: string - namespace: - type: string - type: object - spec: - properties: - accessModes: - items: - type: string - type: array - dataSource: + name: + type: string + namespace: + type: string + type: object + spec: + properties: + accessModes: + items: + type: string + type: array + dataSource: + properties: + apiGroup: + type: string + kind: + type: string + name: + type: string + required: + - kind + - name + type: object + resources: + properties: + limits: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + requests: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + type: object + selector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + storageClassName: + type: string + volumeMode: + type: string + volumeName: + type: string + type: object + status: + properties: + accessModes: + items: + type: string + type: array + capacity: + additionalProperties: + anyOf: + - type: integer + - type: string + pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ + x-kubernetes-int-or-string: true + type: object + conditions: + items: + properties: + lastProbeTime: + format: date-time + type: string + lastTransitionTime: + format: date-time + type: string + message: + type: string + reason: + type: string + status: + type: string + type: + type: string + required: + - status + - type + type: object + type: array + phase: + type: string + type: object + type: object + volumesPerServer: + format: int32 + type: integer + required: + - servers + - volumeClaimTemplate + - volumesPerServer + type: object + type: array + priorityClassName: + type: string + prometheus: + properties: + affinity: + properties: + nodeAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + preference: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + type: object + weight: + format: int32 + type: integer + required: + - preference + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + properties: + nodeSelectorTerms: + items: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchFields: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + type: object + type: array + required: + - nodeSelectorTerms + type: object + type: object + podAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: + properties: + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight + type: object + type: array + requiredDuringSchedulingIgnoredDuringExecution: + items: properties: - apiGroup: - type: string - kind: - type: string - name: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaces: + items: + type: string + type: array + topologyKey: type: string required: - - kind - - name + - topologyKey type: object - resources: + type: array + type: object + podAntiAffinity: + properties: + preferredDuringSchedulingIgnoredDuringExecution: + items: properties: - limits: - additionalProperties: - anyOf: - - type: integer - - type: string - pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ - x-kubernetes-int-or-string: true - type: object - requests: - additionalProperties: - anyOf: - - type: integer - - type: string - pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ - x-kubernetes-int-or-string: true + podAffinityTerm: + properties: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: + type: string + type: object + type: object + namespaces: + items: + type: string + type: array + topologyKey: + type: string + required: + - topologyKey type: object + weight: + format: int32 + type: integer + required: + - podAffinityTerm + - weight type: object - selector: + type: array + requiredDuringSchedulingIgnoredDuringExecution: + items: properties: - matchExpressions: - items: - properties: - key: - type: string - operator: + labelSelector: + properties: + matchExpressions: + items: + properties: + key: + type: string + operator: + type: string + values: + items: + type: string + type: array + required: + - key + - operator + type: object + type: array + matchLabels: + additionalProperties: type: string - values: - items: - type: string - type: array - required: - - key - - operator - type: object - type: array - matchLabels: - additionalProperties: - type: string + type: object type: object - type: object - storageClassName: - type: string - volumeMode: - type: string - volumeName: - type: string - type: object - status: - properties: - accessModes: - items: - type: string - type: array - capacity: - additionalProperties: - anyOf: - - type: integer - - type: string - pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ - x-kubernetes-int-or-string: true - type: object - conditions: - items: - properties: - lastProbeTime: - format: date-time - type: string - lastTransitionTime: - format: date-time - type: string - message: - type: string - reason: - type: string - status: - type: string - type: + namespaces: + items: type: string - required: - - status - - type - type: object - type: array - phase: - type: string - type: object - type: object - volumesPerServer: - format: int32 - type: integer - required: - - servers - - volumeClaimTemplate - - volumesPerServer - type: object - type: array - priorityClassName: - type: string - prometheus: - properties: + type: array + topologyKey: + type: string + required: + - topologyKey + type: object + type: array + type: object + type: object annotations: additionalProperties: type: string @@ -5490,6 +6160,8 @@ spec: type: string type: object type: object + serviceAccountName: + type: string sidecarimage: type: string storageClassName: @@ -6943,6 +7615,8 @@ spec: drivesOnline: format: int32 type: integer + healthMessage: + type: string healthStatus: type: string pools: @@ -6963,6 +7637,9 @@ spec: type: integer syncVersion: type: string + waitingOnReady: + format: date-time + type: string writeQuorum: format: int32 type: integer diff --git a/chart/templates/_helpers.tpl b/chart/templates/_helpers.tpl index eb1056de47f24b6ad9f9cace5cfd43ad992a3d71..0d8a12263eb46848423db956af6cd540c69044a4 100644 --- a/chart/templates/_helpers.tpl +++ b/chart/templates/_helpers.tpl @@ -24,7 +24,6 @@ If release name contains chart name it will be used as a full name. {{- end }} {{- end }} - {{/* Expand the name of the Operator Console. */}} diff --git a/chart/templates/operator-deployment.yaml b/chart/templates/operator-deployment.yaml index ab1c6c85f1de769263e8e777d077408cbc4a20a3..dcefb8d95bde27a86deee2e6dede7e535b67c9e9 100644 --- a/chart/templates/operator-deployment.yaml +++ b/chart/templates/operator-deployment.yaml @@ -14,34 +14,51 @@ spec: metadata: labels: {{- include "minio-operator.selectorLabels" . | nindent 8 }} - {{- with .Values.podAnnotations }} - annotations: - {{- toYaml . | nindent 8 }} - {{- end }} spec: - {{- if .Values.affinity }} - affinity: - {{ toYaml .Values.affinity | indent 8 }} + {{- with .Values.imagePullSecrets }} + imagePullSecrets: + {{- toYaml . | nindent 8 }} + {{- end }} + serviceAccountName: minio-operator + {{- with .Values.operator.securityContext }} + securityContext: + {{- toYaml . | nindent 8 }} {{- end }} - {{- if .Values.nodeSelector }} + {{- with .Values.nodeSelector }} nodeSelector: - {{ toYaml .Values.nodeSelector | indent 8 }} + {{- toYaml . | nindent 8 }} {{- end }} - serviceAccountName: {{ include "minio-operator.serviceAccountName" . }} - {{- with .Values.imagePullSecrets }} - imagePullSecrets: + {{- with .Values.affinity }} + affinity: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.tolerations }} + tolerations: {{- toYaml . | nindent 8 }} {{- end }} containers: - name: {{ .Chart.Name }} image: "{{ .Values.operator.image.repository }}:{{ .Values.operator.image.tag }}" imagePullPolicy: {{ .Values.operator.image.pullPolicy }} + {{- if or .Values.operator.clusterDomain .Values.operator.nsToWatch }} + env: + {{- if .Values.operator.clusterDomain }} + - name: CLUSTER_DOMAIN + value: {{ .Values.operator.clusterDomain }} + {{- end }} + {{- if .Values.operator.nsToWatch }} + - name: WATCHED_NAMESPACE + value: {{ .Values.operator.nsToWatch }} + {{- end }} + {{ else }} + {{- with .Values.operator.env }} env: - - name: CLUSTER_DOMAIN - value: {{ .Values.operator.clusterDomain }} - - name: WATCHED_NAMESPACE - value: {{ .Values.operator.nsToWatch }} + {{ toYaml . | nindent 10 }} + {{- end }} + {{- end }} resources: {{- toYaml .Values.operator.resources | nindent 12 }} - securityContext: - {{- toYaml .Values.operator.securityContext | nindent 12 }} + {{- with .Values.operator.initContainers }} + initContainers: + {{- toYaml . | nindent 8 }} + {{- end}} diff --git a/chart/templates/serviceaccount.yaml b/chart/templates/serviceaccount.yaml index 02532d71c5c6deb78c8367ec89e35b564783273c..d82f1f17d84d5f44f1032a2190598e3937bfaf5c 100644 --- a/chart/templates/serviceaccount.yaml +++ b/chart/templates/serviceaccount.yaml @@ -6,4 +6,4 @@ metadata: namespace: {{ .Release.Namespace }} labels: {{ include "minio-operator.labels" . | nindent 4 }} - {{- end }} +{{- end }} diff --git a/chart/values.yaml b/chart/values.yaml index 1e79f733209cdbdcf33075171563c99e7487a3cc..524d75224964e2cef538da778d70ebb144cf11f7 100644 --- a/chart/values.yaml +++ b/chart/values.yaml @@ -18,20 +18,34 @@ monitoring: # Default values for minio-operator. operator: + ## DEPRECATED: Please use the "CLUSTER_DOMAIN" or "WATCHED_NAMESPACE" env variable ## set kubernetes cluster domain where minio is running - clusterDomain: cluster.local + # clusterDomain: "" # nsToWatch: set to blank to enable watching all namespaces - nsToWatch: "" + # nsToWatch: "" + env: + ## instead of clusterDomain and nsToWatch. + ## set kubernetes cluster domain where minio is running + - name: CLUSTER_DOMAIN + value: "cluster.local" + ## set to blank to enable watching all namespaces + - name: WATCHED_NAMESPACE + value: "" image: repository: registry1.dso.mil/ironbank/opensource/minio/operator - tag: v4.1.2 + tag: v4.2.3 pullPolicy: IfNotPresent imagePullSecrets: [] + initcontainers: [] replicaCount: 1 securityContext: runAsUser: 1000 runAsGroup: 1000 runAsNonRoot: true + fsGroup: 1000 + nodeSelector: {} + affinity: {} + tolerations: [] resources: requests: cpu: 200m @@ -63,6 +77,8 @@ nodeSelector: {} affinity: {} +tolerations: [] + console: image: repository: minio/console