mirror of
https://github.com/bitnami/charts.git
synced 2026-03-06 15:10:15 +08:00
[bitnami/rabbitmq-cluster-operator] MAJOR: Add rabbitmq-messaging-topology-operator and rabbitmq-default-user-credential-updater (#7965)
* [bitnami/rabbitmq-cluster-operator] MAJOR: Add rabbitmq-messaging-topology-operator and rabbitmq-default-user-credential-updater * Applied requested changes * Fix incorrect references * [bitnami/rabbitmq-cluster-operator] Update components versions Signed-off-by: Bitnami Containers <containers@bitnami.com> Co-authored-by: Bitnami Containers <containers@bitnami.com>
This commit is contained in:
committed by
GitHub
parent
f3629760c5
commit
a9b367272e
@@ -1,6 +1,6 @@
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://charts.bitnami.com/bitnami
|
||||
version: 1.10.0
|
||||
digest: sha256:d6f283322d34efda54721ddd67aec935f1bea501c7b45dfbe89814aed21ae5dc
|
||||
generated: "2021-10-14T12:39:13.48862912Z"
|
||||
version: 1.10.1
|
||||
digest: sha256:46a0218b2fbb421c87da91166dc5230d3ec85aa7d822dff1d479619fff8314e7
|
||||
generated: "2021-10-28T17:10:16.979666+02:00"
|
||||
|
||||
@@ -25,4 +25,4 @@ name: rabbitmq-cluster-operator
|
||||
sources:
|
||||
- https://github.com/bitnami/bitnami-docker-rabbitmq-cluster-operator
|
||||
- https://github.com/rabbitmq/cluster-operator
|
||||
version: 1.0.2
|
||||
version: 2.0.0
|
||||
|
||||
@@ -133,7 +133,6 @@ This solution allows to easily deploy multiple RabbitMQ instances compared to th
|
||||
| `global.imagePullSecrets` | Global Docker registry secret names as an array | `[]` |
|
||||
| `global.storageClass` | Global StorageClass for Persistent Volume(s) | `""` |
|
||||
|
||||
|
||||
### Common parameters
|
||||
|
||||
| Name | Description | Value |
|
||||
@@ -146,102 +145,218 @@ This solution allows to easily deploy multiple RabbitMQ instances compared to th
|
||||
| `clusterDomain` | Kubernetes cluster domain name | `cluster.local` |
|
||||
| `extraDeploy` | Array of extra objects to deploy with the release | `[]` |
|
||||
|
||||
|
||||
### RabbitMQ Cluster Operator Parameters
|
||||
|
||||
| Name | Description | Value |
|
||||
| ------------------------------------ | ------------------------------------------------------------------------------------------------------- | ----------------------------------- |
|
||||
| `image.registry` | RabbitMQ Cluster Operator image registry | `docker.io` |
|
||||
| `image.repository` | RabbitMQ Cluster Operator image repository | `bitnami/rabbitmq-cluster-operator` |
|
||||
| `image.tag` | RabbitMQ Cluster Operator image tag (immutable tags are recommended) | `1.10.0-scratch-r1` |
|
||||
| `image.pullPolicy` | RabbitMQ Cluster Operator image pull policy | `IfNotPresent` |
|
||||
| `image.pullSecrets` | RabbitMQ Cluster Operator image pull secrets | `[]` |
|
||||
| `rabbitmqImage.registry` | RabbitMQ Image registry | `docker.io` |
|
||||
| `rabbitmqImage.repository` | RabbitMQ Image repository | `bitnami/rabbitmq` |
|
||||
| `rabbitmqImage.tag` | RabbitMQ Image tag (immutable tags are recommended) | `3.8.23-debian-10-r18` |
|
||||
| `rabbitmqImage.pullSecrets` | RabbitMQ Image pull secrets | `[]` |
|
||||
| `replicaCount` | Number of RabbitMQ Cluster Operator replicas to deploy | `1` |
|
||||
| `livenessProbe.enabled` | Enable livenessProbe on RabbitMQ Cluster Operator nodes | `true` |
|
||||
| `livenessProbe.initialDelaySeconds` | Initial delay seconds for livenessProbe | `5` |
|
||||
| `livenessProbe.periodSeconds` | Period seconds for livenessProbe | `30` |
|
||||
| `livenessProbe.timeoutSeconds` | Timeout seconds for livenessProbe | `5` |
|
||||
| `livenessProbe.failureThreshold` | Failure threshold for livenessProbe | `5` |
|
||||
| `livenessProbe.successThreshold` | Success threshold for livenessProbe | `1` |
|
||||
| `readinessProbe.enabled` | Enable readinessProbe on RabbitMQ Cluster Operator nodes | `true` |
|
||||
| `readinessProbe.initialDelaySeconds` | Initial delay seconds for readinessProbe | `5` |
|
||||
| `readinessProbe.periodSeconds` | Period seconds for readinessProbe | `30` |
|
||||
| `readinessProbe.timeoutSeconds` | Timeout seconds for readinessProbe | `5` |
|
||||
| `readinessProbe.failureThreshold` | Failure threshold for readinessProbe | `5` |
|
||||
| `readinessProbe.successThreshold` | Success threshold for readinessProbe | `1` |
|
||||
| `startupProbe.enabled` | Enable startupProbe on RabbitMQ Cluster Operator nodes | `false` |
|
||||
| `startupProbe.initialDelaySeconds` | Initial delay seconds for startupProbe | `5` |
|
||||
| `startupProbe.periodSeconds` | Period seconds for startupProbe | `30` |
|
||||
| `startupProbe.timeoutSeconds` | Timeout seconds for startupProbe | `5` |
|
||||
| `startupProbe.failureThreshold` | Failure threshold for startupProbe | `5` |
|
||||
| `startupProbe.successThreshold` | Success threshold for startupProbe | `1` |
|
||||
| `customLivenessProbe` | Custom livenessProbe that overrides the default one | `{}` |
|
||||
| `customReadinessProbe` | Custom readinessProbe that overrides the default one | `{}` |
|
||||
| `customStartupProbe` | Custom startupProbe that overrides the default one | `{}` |
|
||||
| `resources.limits` | The resources limits for the RabbitMQ Cluster Operator containers | `{}` |
|
||||
| `resources.requests` | The requested resources for the RabbitMQ Cluster Operator containers | `{}` |
|
||||
| `podSecurityContext.enabled` | Enabled RabbitMQ Cluster Operator pods' Security Context | `true` |
|
||||
| `podSecurityContext.fsGroup` | Set RabbitMQ Cluster Operator pod's Security Context fsGroup | `1001` |
|
||||
| `containerSecurityContext.enabled` | Enabled RabbitMQ Cluster Operator containers' Security Context | `true` |
|
||||
| `containerSecurityContext.runAsUser` | Set RabbitMQ Cluster Operator containers' Security Context runAsUser | `1001` |
|
||||
| `command` | Override default container command (useful when using custom images) | `[]` |
|
||||
| `args` | Override default container args (useful when using custom images) | `[]` |
|
||||
| `hostAliases` | RabbitMQ Cluster Operator pods host aliases | `[]` |
|
||||
| `podLabels` | Extra labels for RabbitMQ Cluster Operator pods | `{}` |
|
||||
| `podAnnotations` | Annotations for RabbitMQ Cluster Operator pods | `{}` |
|
||||
| `podAffinityPreset` | Pod affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `""` |
|
||||
| `podAntiAffinityPreset` | Pod anti-affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `soft` |
|
||||
| `nodeAffinityPreset.type` | Node affinity preset type. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `""` |
|
||||
| `nodeAffinityPreset.key` | Node label key to match. Ignored if `affinity` is set | `""` |
|
||||
| `nodeAffinityPreset.values` | Node label values to match. Ignored if `affinity` is set | `[]` |
|
||||
| `affinity` | Affinity for RabbitMQ Cluster Operator pods assignment | `{}` |
|
||||
| `nodeSelector` | Node labels for RabbitMQ Cluster Operator pods assignment | `{}` |
|
||||
| `tolerations` | Tolerations for RabbitMQ Cluster Operator pods assignment | `[]` |
|
||||
| `updateStrategy.type` | RabbitMQ Cluster Operator statefulset strategy type | `RollingUpdate` |
|
||||
| `priorityClassName` | RabbitMQ Cluster Operator pods' priorityClassName | `""` |
|
||||
| `lifecycleHooks` | for the RabbitMQ Cluster Operator container(s) to automate configuration before or after startup | `{}` |
|
||||
| `containerPort` | RabbitMQ Cluster Operator container port (used for metrics) | `9782` |
|
||||
| `extraEnvVars` | Array with extra environment variables to add to RabbitMQ Cluster Operator nodes | `[]` |
|
||||
| `extraEnvVarsCM` | Name of existing ConfigMap containing extra env vars for RabbitMQ Cluster Operator nodes | `""` |
|
||||
| `extraEnvVarsSecret` | Name of existing Secret containing extra env vars for RabbitMQ Cluster Operator nodes | `""` |
|
||||
| `extraVolumes` | Optionally specify extra list of additional volumes for the RabbitMQ Cluster Operator pod(s) | `[]` |
|
||||
| `extraVolumeMounts` | Optionally specify extra list of additional volumeMounts for the RabbitMQ Cluster Operator container(s) | `[]` |
|
||||
| `sidecars` | Add additional sidecar containers to the RabbitMQ Cluster Operator pod(s) | `[]` |
|
||||
| `initContainers` | Add additional init containers to the RabbitMQ Cluster Operator pod(s) | `[]` |
|
||||
| Name | Description | Value |
|
||||
| ------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------- | ----------------------------------- |
|
||||
| `rabbitmqImage.registry` | RabbitMQ Image registry | `docker.io` |
|
||||
| `rabbitmqImage.repository` | RabbitMQ Image repository | `bitnami/rabbitmq` |
|
||||
| `rabbitmqImage.tag` | RabbitMQ Image tag (immutable tags are recommended) | `3.8.23-debian-10-r18` |
|
||||
| `rabbitmqImage.pullSecrets` | RabbitMQ Image pull secrets | `[]` |
|
||||
| `credentialUpdaterImage.registry` | RabbitMQ Default User Credential Updater Image registry | `docker.io` |
|
||||
| `credentialUpdaterImage.repository` | RabbitMQ Default User Credential Updater Image repository | `bitnami/rabbitmq` |
|
||||
| `credentialUpdaterImage.tag` | RabbitMQ Default User Credential Updater Image tag (immutable tags are recommended) | `3.8.23-debian-10-r18` |
|
||||
| `credentialUpdaterImage.pullSecrets` | RabbitMQ Default User Credential Updater Image pull secrets | `[]` |
|
||||
| `clusterOperator.image.registry` | RabbitMQ Cluster Operator image registry | `docker.io` |
|
||||
| `clusterOperator.image.repository` | RabbitMQ Cluster Operator image repository | `bitnami/rabbitmq-cluster-operator` |
|
||||
| `clusterOperator.image.tag` | RabbitMQ Cluster Operator image tag (immutable tags are recommended) | `1.10.0-scratch-r1` |
|
||||
| `clusterOperator.image.pullPolicy` | RabbitMQ Cluster Operator image pull policy | `IfNotPresent` |
|
||||
| `clusterOperator.image.pullSecrets` | RabbitMQ Cluster Operator image pull secrets | `[]` |
|
||||
| `clusterOperator.replicaCount` | Number of RabbitMQ Cluster Operator replicas to deploy | `1` |
|
||||
| `clusterOperator.schedulerName` | Alternative scheduler | `""` |
|
||||
| `clusterOperator.topologySpreadConstraints` | Topology Spread Constraints for pod assignment | `[]` |
|
||||
| `clusterOperator.livenessProbe.enabled` | Enable livenessProbe on RabbitMQ Cluster Operator nodes | `true` |
|
||||
| `clusterOperator.livenessProbe.initialDelaySeconds` | Initial delay seconds for livenessProbe | `5` |
|
||||
| `clusterOperator.livenessProbe.periodSeconds` | Period seconds for livenessProbe | `30` |
|
||||
| `clusterOperator.livenessProbe.timeoutSeconds` | Timeout seconds for livenessProbe | `5` |
|
||||
| `clusterOperator.livenessProbe.failureThreshold` | Failure threshold for livenessProbe | `5` |
|
||||
| `clusterOperator.livenessProbe.successThreshold` | Success threshold for livenessProbe | `1` |
|
||||
| `clusterOperator.readinessProbe.enabled` | Enable readinessProbe on RabbitMQ Cluster Operator nodes | `true` |
|
||||
| `clusterOperator.readinessProbe.initialDelaySeconds` | Initial delay seconds for readinessProbe | `5` |
|
||||
| `clusterOperator.readinessProbe.periodSeconds` | Period seconds for readinessProbe | `30` |
|
||||
| `clusterOperator.readinessProbe.timeoutSeconds` | Timeout seconds for readinessProbe | `5` |
|
||||
| `clusterOperator.readinessProbe.failureThreshold` | Failure threshold for readinessProbe | `5` |
|
||||
| `clusterOperator.readinessProbe.successThreshold` | Success threshold for readinessProbe | `1` |
|
||||
| `clusterOperator.startupProbe.enabled` | Enable startupProbe on RabbitMQ Cluster Operator nodes | `false` |
|
||||
| `clusterOperator.startupProbe.initialDelaySeconds` | Initial delay seconds for startupProbe | `5` |
|
||||
| `clusterOperator.startupProbe.periodSeconds` | Period seconds for startupProbe | `30` |
|
||||
| `clusterOperator.startupProbe.timeoutSeconds` | Timeout seconds for startupProbe | `5` |
|
||||
| `clusterOperator.startupProbe.failureThreshold` | Failure threshold for startupProbe | `5` |
|
||||
| `clusterOperator.startupProbe.successThreshold` | Success threshold for startupProbe | `1` |
|
||||
| `clusterOperator.customLivenessProbe` | Custom livenessProbe that overrides the default one | `{}` |
|
||||
| `clusterOperator.customReadinessProbe` | Custom readinessProbe that overrides the default one | `{}` |
|
||||
| `clusterOperator.customStartupProbe` | Custom startupProbe that overrides the default one | `{}` |
|
||||
| `clusterOperator.resources.limits` | The resources limits for the RabbitMQ Cluster Operator containers | `{}` |
|
||||
| `clusterOperator.resources.requests` | The requested resources for the RabbitMQ Cluster Operator containers | `{}` |
|
||||
| `clusterOperator.podSecurityContext.enabled` | Enabled RabbitMQ Cluster Operator pods' Security Context | `true` |
|
||||
| `clusterOperator.podSecurityContext.fsGroup` | Set RabbitMQ Cluster Operator pod's Security Context fsGroup | `1001` |
|
||||
| `clusterOperator.containerSecurityContext.enabled` | Enabled RabbitMQ Cluster Operator containers' Security Context | `true` |
|
||||
| `clusterOperator.containerSecurityContext.runAsUser` | Set RabbitMQ Cluster Operator containers' Security Context runAsUser | `1001` |
|
||||
| `clusterOperator.containerSecurityContext.runAsNonRoot` | Force running the container as non root | `true` |
|
||||
| `clusterOperator.command` | Override default container command (useful when using custom images) | `[]` |
|
||||
| `clusterOperator.args` | Override default container args (useful when using custom images) | `[]` |
|
||||
| `clusterOperator.hostAliases` | RabbitMQ Cluster Operator pods host aliases | `[]` |
|
||||
| `clusterOperator.podLabels` | Extra labels for RabbitMQ Cluster Operator pods | `{}` |
|
||||
| `clusterOperator.podAnnotations` | Annotations for RabbitMQ Cluster Operator pods | `{}` |
|
||||
| `clusterOperator.podAffinityPreset` | Pod affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `""` |
|
||||
| `clusterOperator.podAntiAffinityPreset` | Pod anti-affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `soft` |
|
||||
| `clusterOperator.nodeAffinityPreset.type` | Node affinity preset type. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `""` |
|
||||
| `clusterOperator.nodeAffinityPreset.key` | Node label key to match. Ignored if `affinity` is set | `""` |
|
||||
| `clusterOperator.nodeAffinityPreset.values` | Node label values to match. Ignored if `affinity` is set | `[]` |
|
||||
| `clusterOperator.affinity` | Affinity for RabbitMQ Cluster Operator pods assignment | `{}` |
|
||||
| `clusterOperator.nodeSelector` | Node labels for RabbitMQ Cluster Operator pods assignment | `{}` |
|
||||
| `clusterOperator.tolerations` | Tolerations for RabbitMQ Cluster Operator pods assignment | `[]` |
|
||||
| `clusterOperator.updateStrategy.type` | RabbitMQ Cluster Operator statefulset strategy type | `RollingUpdate` |
|
||||
| `clusterOperator.priorityClassName` | RabbitMQ Cluster Operator pods' priorityClassName | `""` |
|
||||
| `clusterOperator.lifecycleHooks` | for the RabbitMQ Cluster Operator container(s) to automate configuration before or after startup | `{}` |
|
||||
| `clusterOperator.containerPorts.metrics` | RabbitMQ Cluster Operator container port (used for metrics) | `9782` |
|
||||
| `clusterOperator.extraEnvVars` | Array with extra environment variables to add to RabbitMQ Cluster Operator nodes | `[]` |
|
||||
| `clusterOperator.extraEnvVarsCM` | Name of existing ConfigMap containing extra env vars for RabbitMQ Cluster Operator nodes | `""` |
|
||||
| `clusterOperator.extraEnvVarsSecret` | Name of existing Secret containing extra env vars for RabbitMQ Cluster Operator nodes | `""` |
|
||||
| `clusterOperator.extraVolumes` | Optionally specify extra list of additional volumes for the RabbitMQ Cluster Operator pod(s) | `[]` |
|
||||
| `clusterOperator.extraVolumeMounts` | Optionally specify extra list of additional volumeMounts for the RabbitMQ Cluster Operator container(s) | `[]` |
|
||||
| `clusterOperator.sidecars` | Add additional sidecar containers to the RabbitMQ Cluster Operator pod(s) | `[]` |
|
||||
| `clusterOperator.initContainers` | Add additional init containers to the RabbitMQ Cluster Operator pod(s) | `[]` |
|
||||
| `clusterOperator.rbac.create` | Specifies whether RBAC resources should be created | `true` |
|
||||
| `clusterOperator.serviceAccount.create` | Specifies whether a ServiceAccount should be created | `true` |
|
||||
| `clusterOperator.serviceAccount.name` | The name of the ServiceAccount to use. | `""` |
|
||||
| `clusterOperator.serviceAccount.annotations` | Add annotations | `{}` |
|
||||
| `clusterOperator.serviceAccount.automountServiceAccountToken` | Automount API credentials for a service account. | `true` |
|
||||
|
||||
### RabbitMQ Cluster Operator Metrics parameters
|
||||
|
||||
### Other Parameters
|
||||
| Name | Description | Value |
|
||||
| ---------------------------------------------------------- | --------------------------------------------------------------------------- | ------------------------ |
|
||||
| `clusterOperator.metrics.enabled` | Create a service for accessing the metrics endpoint | `false` |
|
||||
| `clusterOperator.metrics.service.type` | RabbitMQ Cluster Operator metrics service type | `ClusterIP` |
|
||||
| `clusterOperator.metrics.service.ports.http` | RabbitMQ Cluster Operator metrics service HTTP port | `80` |
|
||||
| `clusterOperator.metrics.service.nodePorts.http` | Node port for HTTP | `""` |
|
||||
| `clusterOperator.metrics.service.clusterIP` | RabbitMQ Cluster Operator metrics service Cluster IP | `""` |
|
||||
| `clusterOperator.metrics.service.extraPorts` | Extra ports to expose (normally used with the `sidecar` value) | `[]` |
|
||||
| `clusterOperator.metrics.service.loadBalancerIP` | RabbitMQ Cluster Operator metrics service Load Balancer IP | `""` |
|
||||
| `clusterOperator.metrics.service.loadBalancerSourceRanges` | RabbitMQ Cluster Operator metrics service Load Balancer sources | `[]` |
|
||||
| `clusterOperator.metrics.service.externalTrafficPolicy` | RabbitMQ Cluster Operator metrics service external traffic policy | `Cluster` |
|
||||
| `clusterOperator.metrics.service.annotations` | Additional custom annotations for RabbitMQ Cluster Operator metrics service | `{}` |
|
||||
| `clusterOperator.metrics.serviceMonitor.enabled` | Specify if a servicemonitor will be deployed for prometheus-operator | `false` |
|
||||
| `clusterOperator.metrics.serviceMonitor.jobLabel` | Specify the jobLabel to use for the prometheus-operator | `app.kubernetes.io/name` |
|
||||
| `clusterOperator.metrics.serviceMonitor.honorLabels` | Honor metrics labels | `false` |
|
||||
| `clusterOperator.metrics.serviceMonitor.selector` | Prometheus instance selector labels | `{}` |
|
||||
| `clusterOperator.metrics.serviceMonitor.scrapeTimeout` | Timeout after which the scrape is ended | `""` |
|
||||
| `clusterOperator.metrics.serviceMonitor.interval` | Scrape interval. If not set, the Prometheus default scrape interval is used | `""` |
|
||||
| `clusterOperator.metrics.serviceMonitor.additionalLabels` | Used to pass Labels that are required by the installed Prometheus Operator | `{}` |
|
||||
| `clusterOperator.metrics.serviceMonitor.metricRelabelings` | Specify additional relabeling of metrics | `[]` |
|
||||
| `clusterOperator.metrics.serviceMonitor.relabelings` | Specify general relabeling | `[]` |
|
||||
|
||||
| Name | Description | Value |
|
||||
| ----------------------- | ---------------------------------------------------- | ------ |
|
||||
| `rbac.create` | Specifies whether RBAC resources should be created | `true` |
|
||||
| `serviceAccount.create` | Specifies whether a ServiceAccount should be created | `true` |
|
||||
| `serviceAccount.name` | The name of the ServiceAccount to use. | `""` |
|
||||
### RabbitMQ Messaging Topology Operator Parameters
|
||||
|
||||
| Name | Description | Value |
|
||||
| ----------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------ | ----------------------------------------- |
|
||||
| `msgTopologyOperator.image.registry` | RabbitMQ Messaging Topology Operator image registry | `docker.io` |
|
||||
| `msgTopologyOperator.image.repository` | RabbitMQ Messaging Topology Operator image repository | `bitnami/rmq-messaging-topology-operator` |
|
||||
| `msgTopologyOperator.image.tag` | RabbitMQ Messaging Topology Operator image tag (immutable tags are recommended) | `1.10.0-scratch-r1` |
|
||||
| `msgTopologyOperator.image.pullPolicy` | RabbitMQ Messaging Topology Operator image pull policy | `IfNotPresent` |
|
||||
| `msgTopologyOperator.image.pullSecrets` | RabbitMQ Messaging Topology Operator image pull secrets | `[]` |
|
||||
| `msgTopologyOperator.replicaCount` | Number of RabbitMQ Messaging Topology Operator replicas to deploy | `1` |
|
||||
| `msgTopologyOperator.topologySpreadConstraints` | Topology Spread Constraints for pod assignment | `[]` |
|
||||
| `msgTopologyOperator.schedulerName` | Alternative scheduler | `""` |
|
||||
| `msgTopologyOperator.livenessProbe.enabled` | Enable livenessProbe on RabbitMQ Messaging Topology Operator nodes | `true` |
|
||||
| `msgTopologyOperator.livenessProbe.initialDelaySeconds` | Initial delay seconds for livenessProbe | `5` |
|
||||
| `msgTopologyOperator.livenessProbe.periodSeconds` | Period seconds for livenessProbe | `30` |
|
||||
| `msgTopologyOperator.livenessProbe.timeoutSeconds` | Timeout seconds for livenessProbe | `5` |
|
||||
| `msgTopologyOperator.livenessProbe.failureThreshold` | Failure threshold for livenessProbe | `5` |
|
||||
| `msgTopologyOperator.livenessProbe.successThreshold` | Success threshold for livenessProbe | `1` |
|
||||
| `msgTopologyOperator.readinessProbe.enabled` | Enable readinessProbe on RabbitMQ Messaging Topology Operator nodes | `true` |
|
||||
| `msgTopologyOperator.readinessProbe.initialDelaySeconds` | Initial delay seconds for readinessProbe | `5` |
|
||||
| `msgTopologyOperator.readinessProbe.periodSeconds` | Period seconds for readinessProbe | `30` |
|
||||
| `msgTopologyOperator.readinessProbe.timeoutSeconds` | Timeout seconds for readinessProbe | `5` |
|
||||
| `msgTopologyOperator.readinessProbe.failureThreshold` | Failure threshold for readinessProbe | `5` |
|
||||
| `msgTopologyOperator.readinessProbe.successThreshold` | Success threshold for readinessProbe | `1` |
|
||||
| `msgTopologyOperator.startupProbe.enabled` | Enable startupProbe on RabbitMQ Messaging Topology Operator nodes | `false` |
|
||||
| `msgTopologyOperator.startupProbe.initialDelaySeconds` | Initial delay seconds for startupProbe | `5` |
|
||||
| `msgTopologyOperator.startupProbe.periodSeconds` | Period seconds for startupProbe | `30` |
|
||||
| `msgTopologyOperator.startupProbe.timeoutSeconds` | Timeout seconds for startupProbe | `5` |
|
||||
| `msgTopologyOperator.startupProbe.failureThreshold` | Failure threshold for startupProbe | `5` |
|
||||
| `msgTopologyOperator.startupProbe.successThreshold` | Success threshold for startupProbe | `1` |
|
||||
| `msgTopologyOperator.customLivenessProbe` | Custom livenessProbe that overrides the default one | `{}` |
|
||||
| `msgTopologyOperator.customReadinessProbe` | Custom readinessProbe that overrides the default one | `{}` |
|
||||
| `msgTopologyOperator.customStartupProbe` | Custom startupProbe that overrides the default one | `{}` |
|
||||
| `msgTopologyOperator.existingWebhookCertSecret` | name of a secret containing the certificates (use it to avoid certManager creating one) | `""` |
|
||||
| `msgTopologyOperator.existingWebhookCertCABundle` | PEM-encoded CA Bundle of the existing secret provided in existingWebhookCertSecret (only if useCertManager=false) | `""` |
|
||||
| `msgTopologyOperator.resources.limits` | The resources limits for the RabbitMQ Messaging Topology Operator containers | `{}` |
|
||||
| `msgTopologyOperator.resources.requests` | The requested resources for the RabbitMQ Messaging Topology Operator containers | `{}` |
|
||||
| `msgTopologyOperator.podSecurityContext.enabled` | Enabled RabbitMQ Messaging Topology Operator pods' Security Context | `true` |
|
||||
| `msgTopologyOperator.podSecurityContext.fsGroup` | Set RabbitMQ Messaging Topology Operator pod's Security Context fsGroup | `1001` |
|
||||
| `msgTopologyOperator.containerSecurityContext.enabled` | Enabled RabbitMQ Messaging Topology Operator containers' Security Context | `true` |
|
||||
| `msgTopologyOperator.containerSecurityContext.runAsUser` | Set RabbitMQ Messaging Topology Operator containers' Security Context runAsUser | `1001` |
|
||||
| `msgTopologyOperator.containerSecurityContext.runAsNonRoot` | Force running the container as non root | `true` |
|
||||
| `msgTopologyOperator.command` | Override default container command (useful when using custom images) | `[]` |
|
||||
| `msgTopologyOperator.args` | Override default container args (useful when using custom images) | `[]` |
|
||||
| `msgTopologyOperator.hostAliases` | RabbitMQ Messaging Topology Operator pods host aliases | `[]` |
|
||||
| `msgTopologyOperator.podLabels` | Extra labels for RabbitMQ Messaging Topology Operator pods | `{}` |
|
||||
| `msgTopologyOperator.podAnnotations` | Annotations for RabbitMQ Messaging Topology Operator pods | `{}` |
|
||||
| `msgTopologyOperator.podAffinityPreset` | Pod affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `""` |
|
||||
| `msgTopologyOperator.podAntiAffinityPreset` | Pod anti-affinity preset. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `soft` |
|
||||
| `msgTopologyOperator.nodeAffinityPreset.type` | Node affinity preset type. Ignored if `affinity` is set. Allowed values: `soft` or `hard` | `""` |
|
||||
| `msgTopologyOperator.nodeAffinityPreset.key` | Node label key to match. Ignored if `affinity` is set | `""` |
|
||||
| `msgTopologyOperator.nodeAffinityPreset.values` | Node label values to match. Ignored if `affinity` is set | `[]` |
|
||||
| `msgTopologyOperator.affinity` | Affinity for RabbitMQ Messaging Topology Operator pods assignment | `{}` |
|
||||
| `msgTopologyOperator.nodeSelector` | Node labels for RabbitMQ Messaging Topology Operator pods assignment | `{}` |
|
||||
| `msgTopologyOperator.tolerations` | Tolerations for RabbitMQ Messaging Topology Operator pods assignment | `[]` |
|
||||
| `msgTopologyOperator.updateStrategy.type` | RabbitMQ Messaging Topology Operator statefulset strategy type | `RollingUpdate` |
|
||||
| `msgTopologyOperator.priorityClassName` | RabbitMQ Messaging Topology Operator pods' priorityClassName | `""` |
|
||||
| `msgTopologyOperator.lifecycleHooks` | for the RabbitMQ Messaging Topology Operator container(s) to automate configuration before or after startup | `{}` |
|
||||
| `msgTopologyOperator.containerPorts.metrics` | RabbitMQ Messaging Topology Operator container port (used for metrics) | `8080` |
|
||||
| `msgTopologyOperator.extraEnvVars` | Array with extra environment variables to add to RabbitMQ Messaging Topology Operator nodes | `[]` |
|
||||
| `msgTopologyOperator.extraEnvVarsCM` | Name of existing ConfigMap containing extra env vars for RabbitMQ Messaging Topology Operator nodes | `""` |
|
||||
| `msgTopologyOperator.extraEnvVarsSecret` | Name of existing Secret containing extra env vars for RabbitMQ Messaging Topology Operator nodes | `""` |
|
||||
| `msgTopologyOperator.extraVolumes` | Optionally specify extra list of additional volumes for the RabbitMQ Messaging Topology Operator pod(s) | `[]` |
|
||||
| `msgTopologyOperator.extraVolumeMounts` | Optionally specify extra list of additional volumeMounts for the RabbitMQ Messaging Topology Operator container(s) | `[]` |
|
||||
| `msgTopologyOperator.sidecars` | Add additional sidecar containers to the RabbitMQ Messaging Topology Operator pod(s) | `[]` |
|
||||
| `msgTopologyOperator.initContainers` | Add additional init containers to the RabbitMQ Messaging Topology Operator pod(s) | `[]` |
|
||||
| `msgTopologyOperator.service.type` | RabbitMQ Messaging Topology Operator webhook service type | `ClusterIP` |
|
||||
| `msgTopologyOperator.service.ports.webhook` | RabbitMQ Messaging Topology Operator webhook service HTTP port | `443` |
|
||||
| `msgTopologyOperator.service.nodePorts.http` | Node port for HTTP | `""` |
|
||||
| `msgTopologyOperator.service.clusterIP` | RabbitMQ Messaging Topology Operator webhook service Cluster IP | `""` |
|
||||
| `msgTopologyOperator.service.loadBalancerIP` | RabbitMQ Messaging Topology Operator webhook service Load Balancer IP | `""` |
|
||||
| `msgTopologyOperator.service.extraPorts` | Extra ports to expose (normally used with the `sidecar` value) | `[]` |
|
||||
| `msgTopologyOperator.service.loadBalancerSourceRanges` | RabbitMQ Messaging Topology Operator webhook service Load Balancer sources | `[]` |
|
||||
| `msgTopologyOperator.service.externalTrafficPolicy` | RabbitMQ Messaging Topology Operator webhook service external traffic policy | `Cluster` |
|
||||
| `msgTopologyOperator.service.annotations` | Additional custom annotations for RabbitMQ Messaging Topology Operator webhook service | `{}` |
|
||||
| `msgTopologyOperator.rbac.create` | Specifies whether RBAC resources should be created | `true` |
|
||||
| `msgTopologyOperator.serviceAccount.create` | Specifies whether a ServiceAccount should be created | `true` |
|
||||
| `msgTopologyOperator.serviceAccount.name` | The name of the ServiceAccount to use. | `""` |
|
||||
| `msgTopologyOperator.serviceAccount.annotations` | Add annotations | `{}` |
|
||||
| `msgTopologyOperator.serviceAccount.automountServiceAccountToken` | Automount API credentials for a service account. | `true` |
|
||||
|
||||
### Metrics parameters
|
||||
### RabbitMQ Messaging Topology Operator parameters
|
||||
|
||||
| Name | Description | Value |
|
||||
| ------------------------------------------ | --------------------------------------------------------------------------- | ------------------------ |
|
||||
| `metrics.enabled` | Create a service for accessing the metrics endpoint | `false` |
|
||||
| `metrics.service.type` | RabbitMQ Cluster Operator metrics service type | `ClusterIP` |
|
||||
| `metrics.service.port` | RabbitMQ Cluster Operator metrics service HTTP port | `80` |
|
||||
| `metrics.service.nodePorts.http` | Node port for HTTP | `""` |
|
||||
| `metrics.service.clusterIP` | RabbitMQ Cluster Operator metrics service Cluster IP | `""` |
|
||||
| `metrics.service.loadBalancerIP` | RabbitMQ Cluster Operator metrics service Load Balancer IP | `""` |
|
||||
| `metrics.service.loadBalancerSourceRanges` | RabbitMQ Cluster Operator metrics service Load Balancer sources | `[]` |
|
||||
| `metrics.service.externalTrafficPolicy` | RabbitMQ Cluster Operator metrics service external traffic policy | `Cluster` |
|
||||
| `metrics.service.annotations` | Additional custom annotations for RabbitMQ Cluster Operator metrics service | `{}` |
|
||||
| `metrics.serviceMonitor.enabled` | Specify if a servicemonitor will be deployed for prometheus-operator | `false` |
|
||||
| `metrics.serviceMonitor.jobLabel` | Specify the jobLabel to use for the prometheus-operator | `app.kubernetes.io/name` |
|
||||
| `metrics.serviceMonitor.interval` | Scrape interval. If not set, the Prometheus default scrape interval is used | `""` |
|
||||
| `metrics.serviceMonitor.metricRelabelings` | Specify additional relabeling of metrics | `[]` |
|
||||
| `metrics.serviceMonitor.relabelings` | Specify general relabeling | `[]` |
|
||||
| Name | Description | Value |
|
||||
| -------------------------------------------------------------- | --------------------------------------------------------------------------- | ------------------------ |
|
||||
| `msgTopologyOperator.metrics.enabled` | Create a service for accessing the metrics endpoint | `false` |
|
||||
| `msgTopologyOperator.metrics.service.type` | RabbitMQ Cluster Operator metrics service type | `ClusterIP` |
|
||||
| `msgTopologyOperator.metrics.service.ports.http` | RabbitMQ Cluster Operator metrics service HTTP port | `80` |
|
||||
| `msgTopologyOperator.metrics.service.nodePorts.http` | Node port for HTTP | `""` |
|
||||
| `msgTopologyOperator.metrics.service.clusterIP` | RabbitMQ Cluster Operator metrics service Cluster IP | `""` |
|
||||
| `msgTopologyOperator.metrics.service.extraPorts` | Extra ports to expose (normally used with the `sidecar` value) | `[]` |
|
||||
| `msgTopologyOperator.metrics.service.loadBalancerIP` | RabbitMQ Cluster Operator metrics service Load Balancer IP | `""` |
|
||||
| `msgTopologyOperator.metrics.service.loadBalancerSourceRanges` | RabbitMQ Cluster Operator metrics service Load Balancer sources | `[]` |
|
||||
| `msgTopologyOperator.metrics.service.externalTrafficPolicy` | RabbitMQ Cluster Operator metrics service external traffic policy | `Cluster` |
|
||||
| `msgTopologyOperator.metrics.service.annotations` | Additional custom annotations for RabbitMQ Cluster Operator metrics service | `{}` |
|
||||
| `msgTopologyOperator.metrics.serviceMonitor.enabled` | Specify if a servicemonitor will be deployed for prometheus-operator | `false` |
|
||||
| `msgTopologyOperator.metrics.serviceMonitor.jobLabel` | Specify the jobLabel to use for the prometheus-operator | `app.kubernetes.io/name` |
|
||||
| `msgTopologyOperator.metrics.serviceMonitor.additionalLabels` | Used to pass Labels that are required by the installed Prometheus Operator | `{}` |
|
||||
| `msgTopologyOperator.metrics.serviceMonitor.selector` | Prometheus instance selector labels | `{}` |
|
||||
| `msgTopologyOperator.metrics.serviceMonitor.honorLabels` | Honor metrics labels | `false` |
|
||||
| `msgTopologyOperator.metrics.serviceMonitor.scrapeTimeout` | Timeout after which the scrape is ended | `""` |
|
||||
| `msgTopologyOperator.metrics.serviceMonitor.interval` | Scrape interval. If not set, the Prometheus default scrape interval is used | `""` |
|
||||
| `msgTopologyOperator.metrics.serviceMonitor.metricRelabelings` | Specify additional relabeling of metrics | `[]` |
|
||||
| `msgTopologyOperator.metrics.serviceMonitor.relabelings` | Specify general relabeling | `[]` |
|
||||
|
||||
### cert-manager parameters
|
||||
|
||||
| Name | Description | Value |
|
||||
| ---------------- | ----------------------------------------------------------------- | ------- |
|
||||
| `useCertManager` | Deploy cert-manager objects (Issuer and Certificate) for webhooks | `false` |
|
||||
|
||||
See [readme-generator-for-helm](https://github.com/bitnami-labs/readme-generator-for-helm) to create the table.
|
||||
|
||||
@@ -320,6 +435,18 @@ Find more information about how to deal with common errors related to Bitnami's
|
||||
|
||||
## Upgrading
|
||||
|
||||
### To 2.0.0
|
||||
|
||||
This new version adds the following components:
|
||||
|
||||
- RabbitMQ Messaging Topology Operator: all the settings are inside the `msgTopologyOperator` section.
|
||||
- RabbitMQ Default User Credential Updater sidecar: this enables Hashicorp Vault integration for all `RabbitMQCluster` instances.
|
||||
- `cert-manager` subchart: this is necessary for the RabbitMQ Messaging Topology Webhooks to work.
|
||||
|
||||
As a breaking change, all `rabbitmq-cluster-operator` deployment values were moved to the `clusterOperator` section.
|
||||
|
||||
No issues are expected during upgrades.
|
||||
|
||||
### To 1.0.0
|
||||
|
||||
The CRD was updated according to the latest changes in the upstream project. Thanks to the improvements in the latest changes, the CRD is not templated anymore abd can be placed under the `crds` directory following [Helm best practices for CRDS](https://helm.sh/docs/chart_best_practices/custom_resource_definitions/).
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -4,9 +4,11 @@ APP VERSION: {{ .Chart.AppVersion }}
|
||||
|
||||
** Please be patient while the chart is being deployed **
|
||||
|
||||
Watch the RabbitMQ Cluster Operator Deployment status using the command:
|
||||
Watch the RabbitMQ Cluster Operator and RabbitMQ Messaging Topology Operator Deployment status using the command:
|
||||
|
||||
kubectl get deploy -w --namespace {{ .Release.Namespace }} -l app.kubernetes.io/name={{ include "common.names.name" . }},app.kubernetes.io/instance={{ .Release.Name }}
|
||||
|
||||
{{ include "common.warnings.rollingTag" .Values.image }}
|
||||
{{ include "common.warnings.rollingTag" .Values.clusterOperator.image }}
|
||||
{{ include "common.warnings.rollingTag" .Values.msgTopologyOperator.image }}
|
||||
{{ include "common.warnings.rollingTag" .Values.credentialUpdaterImage }}
|
||||
{{ include "common.warnings.rollingTag" .Values.rabbitmqImage }}
|
||||
|
||||
@@ -1,8 +1,58 @@
|
||||
{{/*
|
||||
Return the proper RabbitMQ Cluster Operator fullname
|
||||
Note: We use the regular common function as the chart name already contains the
|
||||
the rabbitmq-cluster-operator name.
|
||||
*/}}
|
||||
{{- define "rmqco.clusterOperator.fullname" -}}
|
||||
{{- include "common.names.fullname" . -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Return the proper RabbitMQ Messaging Topology Operator fullname
|
||||
NOTE: Not using the common function to avoid generating too long names
|
||||
*/}}
|
||||
{{- define "rmqco.msgTopologyOperator.fullname" -}}
|
||||
{{- printf "%s-%s" .Release.Name "rabbitmq-messaging-topology-operator" | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Return the proper RabbitMQ Messaging Topology Operator fullname
|
||||
NOTE: Not using the common function to avoid generating too long names
|
||||
*/}}
|
||||
{{- define "rmqco.msgTopologyOperator.webhook.fullname" -}}
|
||||
{{- printf "%s-%s" .Release.Name "rabbitmq-messaging-topology-operator-webhook" | trunc 63 | trimSuffix "-" -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Return the proper RabbitMQ Messaging Topology Operator fullname
|
||||
*/}}
|
||||
{{- define "rmqco.msgTopologyOperator.webhook.secretName" -}}
|
||||
{{- if .Values.msgTopologyOperator.existingWebhookCertSecret -}}
|
||||
{{- .Values.msgTopologyOperator.existingWebhookCertSecret -}}
|
||||
{{- else }}
|
||||
{{- include "rmqco.msgTopologyOperator.webhook.fullname" . -}}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Return the proper RabbitMQ Default User Credential updater image name
|
||||
*/}}
|
||||
{{- define "rmqco.defaultCredentialUpdater.image" -}}
|
||||
{{ include "common.images.image" (dict "imageRoot" .Values.credentialUpdaterImage "global" .Values.global) }}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Return the proper RabbitMQ Cluster Operator image name
|
||||
*/}}
|
||||
{{- define "rmqco.operator.image" -}}
|
||||
{{ include "common.images.image" (dict "imageRoot" .Values.image "global" .Values.global) }}
|
||||
{{- define "rmqco.clusterOperator.image" -}}
|
||||
{{ include "common.images.image" (dict "imageRoot" .Values.clusterOperator.image "global" .Values.global) }}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Return the proper RabbitMQ Cluster Operator image name
|
||||
*/}}
|
||||
{{- define "rmqco.msgTopologyOperator.image" -}}
|
||||
{{ include "common.images.image" (dict "imageRoot" .Values.msgTopologyOperator.image "global" .Values.global) }}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
@@ -16,17 +66,28 @@ Return the proper RabbitMQ image name
|
||||
Return the proper Docker Image Registry Secret Names
|
||||
*/}}
|
||||
{{- define "rmqco.imagePullSecrets" -}}
|
||||
{{- include "common.images.pullSecrets" (dict "images" (list .Values.image .Values.rabbitmqImage) "global" .Values.global) -}}
|
||||
{{- include "common.images.pullSecrets" (dict "images" (list .Values.clusterOperator.image .Values.rabbitmqImage) "global" .Values.global) -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create the name of the service account to use
|
||||
Create the name of the service account to use (Cluster Operator)
|
||||
*/}}
|
||||
{{- define "rmqco.serviceAccountName" -}}
|
||||
{{- if .Values.serviceAccount.create -}}
|
||||
{{ default (printf "%s" (include "common.names.fullname" .)) .Values.serviceAccount.name }}
|
||||
{{- define "rmqco.clusterOperator.serviceAccountName" -}}
|
||||
{{- if .Values.clusterOperator.serviceAccount.create -}}
|
||||
{{ default (printf "%s" (include "rmqco.clusterOperator.fullname" .)) .Values.clusterOperator.serviceAccount.name }}
|
||||
{{- else -}}
|
||||
{{ default "default" .Values.serviceAccount.name }}
|
||||
{{ default "default" .Values.clusterOperator.serviceAccount.name }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
{{/*
|
||||
Create the name of the service account to use (Messaging Topology Operator)
|
||||
*/}}
|
||||
{{- define "rmqco.msgTopologyOperator.serviceAccountName" -}}
|
||||
{{- if .Values.msgTopologyOperator.serviceAccount.create -}}
|
||||
{{ default (printf "%s" (include "rmqco.msgTopologyOperator.fullname" .)) .Values.msgTopologyOperator.serviceAccount.name }}
|
||||
{{- else -}}
|
||||
{{ default "default" .Values.msgTopologyOperator.serviceAccount.name }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
{{- if .Values.rbac.create }}
|
||||
{{- if .Values.clusterOperator.rbac.create }}
|
||||
apiVersion: {{ include "common.capabilities.rbac.apiVersion" . }}
|
||||
kind: ClusterRole
|
||||
metadata:
|
||||
@@ -8,7 +8,7 @@ metadata:
|
||||
{{- if .Values.commonLabels }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
name: {{ template "common.names.fullname" . }}
|
||||
name: {{ template "rmqco.clusterOperator.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
{{- if .Values.commonAnnotations }}
|
||||
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
|
||||
@@ -1,4 +1,4 @@
|
||||
{{- if .Values.rbac.create }}
|
||||
{{- if .Values.clusterOperator.rbac.create }}
|
||||
apiVersion: {{ include "common.capabilities.rbac.apiVersion" . }}
|
||||
kind: ClusterRoleBinding
|
||||
metadata:
|
||||
@@ -8,7 +8,7 @@ metadata:
|
||||
{{- if .Values.commonLabels }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
name: {{ template "common.names.fullname" . }}
|
||||
name: {{ template "rmqco.clusterOperator.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
{{- if .Values.commonAnnotations }}
|
||||
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
|
||||
@@ -16,9 +16,9 @@ metadata:
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: ClusterRole
|
||||
name: {{ template "common.names.fullname" . }}
|
||||
name: {{ template "rmqco.clusterOperator.fullname" . }}
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: {{ template "rmqco.serviceAccountName" . }}
|
||||
name: {{ template "rmqco.clusterOperator.serviceAccountName" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
{{- end }}
|
||||
@@ -0,0 +1,167 @@
|
||||
apiVersion: {{ include "common.capabilities.deployment.apiVersion" . }}
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: {{ template "rmqco.clusterOperator.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels: {{- include "common.labels.standard" . | nindent 4 }}
|
||||
app.kubernetes.io/component: rabbitmq-operator
|
||||
app.kubernetes.io/part-of: rabbitmq
|
||||
{{- if .Values.commonLabels }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- if .Values.commonAnnotations }}
|
||||
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
replicas: {{ .Values.clusterOperator.replicaCount }}
|
||||
{{- if .Values.clusterOperator.updateStrategy }}
|
||||
strategy: {{- toYaml .Values.clusterOperator.updateStrategy | nindent 4 }}
|
||||
{{- end }}
|
||||
selector:
|
||||
matchLabels: {{- include "common.labels.matchLabels" . | nindent 6 }}
|
||||
app.kubernetes.io/component: rabbitmq-operator
|
||||
template:
|
||||
metadata:
|
||||
{{- if .Values.clusterOperator.podAnnotations }}
|
||||
annotations: {{- include "common.tplvalues.render" (dict "value" .Values.clusterOperator.podAnnotations "context" $) | nindent 8 }}
|
||||
{{- end }}
|
||||
labels: {{- include "common.labels.standard" . | nindent 8 }}
|
||||
app.kubernetes.io/component: rabbitmq-operator
|
||||
app.kubernetes.io/part-of: rabbitmq
|
||||
{{- if .Values.clusterOperator.podLabels }}
|
||||
{{- include "common.tplvalues.render" (dict "value" .Values.clusterOperator.podLabels "context" $) | nindent 8 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
serviceAccountName: {{ template "rmqco.clusterOperator.serviceAccountName" . }}
|
||||
{{- include "rmqco.imagePullSecrets" . | nindent 6 }}
|
||||
{{- if .Values.clusterOperator.schedulerName }}
|
||||
schedulerName: {{ .Values.clusterOperator.schedulerName | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.clusterOperator.hostAliases }}
|
||||
hostAliases: {{- include "common.tplvalues.render" (dict "value" .Values.clusterOperator.hostAliases "context" $) | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Values.clusterOperator.topologySpreadConstraints }}
|
||||
topologySpreadConstraints: {{- include "common.tplvalues.render" (dict "value" .Values.clusterOperator.topologySpreadConstraints "context" $) | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Values.clusterOperator.affinity }}
|
||||
affinity: {{- include "common.tplvalues.render" ( dict "value" .Values.clusterOperator.affinity "context" $) | nindent 8 }}
|
||||
{{- else }}
|
||||
affinity:
|
||||
podAffinity: {{- include "common.affinities.pods" (dict "type" .Values.clusterOperator.podAffinityPreset "component" "rabbitmq-operator" "context" $) | nindent 10 }}
|
||||
podAntiAffinity: {{- include "common.affinities.pods" (dict "type" .Values.clusterOperator.podAntiAffinityPreset "component" "rabbitmq-operator" "context" $) | nindent 10 }}
|
||||
nodeAffinity: {{- include "common.affinities.nodes" (dict "type" .Values.clusterOperator.nodeAffinityPreset.type "key" .Values.clusterOperator.nodeAffinityPreset.key "values" .Values.clusterOperator.nodeAffinityPreset.values) | nindent 10 }}
|
||||
{{- end }}
|
||||
{{- if .Values.clusterOperator.nodeSelector }}
|
||||
nodeSelector: {{- include "common.tplvalues.render" ( dict "value" .Values.clusterOperator.nodeSelector "context" $) | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Values.clusterOperator.tolerations }}
|
||||
tolerations: {{- include "common.tplvalues.render" (dict "value" .Values.clusterOperator.tolerations "context" .) | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Values.clusterOperator.priorityClassName }}
|
||||
priorityClassName: {{ .Values.clusterOperator.priorityClassName | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.clusterOperator.podSecurityContext.enabled }}
|
||||
securityContext: {{- omit .Values.clusterOperator.podSecurityContext "enabled" | toYaml | nindent 8 }}
|
||||
{{- end }}
|
||||
initContainers:
|
||||
{{- if .Values.clusterOperator.initContainers }}
|
||||
{{- include "common.tplvalues.render" (dict "value" .Values.clusterOperator.initContainers "context" $) | nindent 8 }}
|
||||
{{- end }}
|
||||
containers:
|
||||
- name: rabbitmq-cluster-operator
|
||||
image: {{ template "rmqco.clusterOperator.image" . }}
|
||||
imagePullPolicy: {{ .Values.clusterOperator.image.pullPolicy }}
|
||||
{{- if .Values.clusterOperator.containerSecurityContext.enabled }}
|
||||
securityContext: {{- omit .Values.clusterOperator.containerSecurityContext "enabled" | toYaml | nindent 12 }}
|
||||
{{- end }}
|
||||
{{- if .Values.clusterOperator.command }}
|
||||
command: {{- include "common.tplvalues.render" (dict "value" .Values.clusterOperator.command "context" $) | nindent 12 }}
|
||||
{{- else }}
|
||||
command:
|
||||
- /manager
|
||||
{{- end }}
|
||||
{{- if .Values.clusterOperator.args }}
|
||||
args: {{- include "common.tplvalues.render" (dict "value" .Values.clusterOperator.args "context" $) | nindent 12 }}
|
||||
{{- else }}
|
||||
args:
|
||||
- --metrics-bind-address=:{{ .Values.clusterOperator.containerPorts.metrics }}
|
||||
{{- end }}
|
||||
env:
|
||||
- name: OPERATOR_NAMESPACE
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.namespace
|
||||
- name: DEFAULT_RABBITMQ_IMAGE
|
||||
value: {{ template "rmqco.rabbitmq.image" . }}
|
||||
- name: DEFAULT_USER_UPDATER_IMAGE
|
||||
value: {{ template "rmqco.defaultCredentialUpdater.image" . }}
|
||||
{{- if .Values.clusterOperator.extraEnvVars }}
|
||||
{{- include "common.tplvalues.render" (dict "value" .Values.clusterOperator.extraEnvVars "context" $) | nindent 12 }}
|
||||
{{- end }}
|
||||
envFrom:
|
||||
{{- if .Values.clusterOperator.extraEnvVarsCM }}
|
||||
- configMapRef:
|
||||
name: {{ include "common.tplvalues.render" (dict "value" .Values.clusterOperator.extraEnvVarsCM "context" $) }}
|
||||
{{- end }}
|
||||
{{- if .Values.clusterOperator.extraEnvVarsSecret }}
|
||||
- secretRef:
|
||||
name: {{ include "common.tplvalues.render" (dict "value" .Values.clusterOperator.extraEnvVarsSecret "context" $) }}
|
||||
{{- end }}
|
||||
{{- if .Values.clusterOperator.resources }}
|
||||
resources: {{- toYaml .Values.clusterOperator.resources | nindent 12 }}
|
||||
{{- end }}
|
||||
{{- if .Values.clusterOperator.livenessProbe.enabled }}
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
path: /metrics
|
||||
port: http
|
||||
initialDelaySeconds: {{ .Values.clusterOperator.livenessProbe.initialDelaySeconds }}
|
||||
periodSeconds: {{ .Values.clusterOperator.livenessProbe.periodSeconds }}
|
||||
timeoutSeconds: {{ .Values.clusterOperator.livenessProbe.timeoutSeconds }}
|
||||
successThreshold: {{ .Values.clusterOperator.livenessProbe.successThreshold }}
|
||||
failureThreshold: {{ .Values.clusterOperator.livenessProbe.failureThreshold }}
|
||||
{{- else if .Values.clusterOperator.customLivenessProbe }}
|
||||
livenessProbe: {{- include "common.tplvalues.render" (dict "value" .Values.clusterOperator.customLivenessProbe "context" $) | nindent 12 }}
|
||||
{{- end }}
|
||||
{{- if .Values.clusterOperator.readinessProbe.enabled }}
|
||||
readinessProbe:
|
||||
httpGet:
|
||||
path: /metrics
|
||||
port: http
|
||||
initialDelaySeconds: {{ .Values.clusterOperator.readinessProbe.initialDelaySeconds }}
|
||||
periodSeconds: {{ .Values.clusterOperator.readinessProbe.periodSeconds }}
|
||||
timeoutSeconds: {{ .Values.clusterOperator.readinessProbe.timeoutSeconds }}
|
||||
successThreshold: {{ .Values.clusterOperator.readinessProbe.successThreshold }}
|
||||
failureThreshold: {{ .Values.clusterOperator.readinessProbe.failureThreshold }}
|
||||
{{- else if .Values.clusterOperator.customReadinessProbe }}
|
||||
readinessProbe: {{- include "common.tplvalues.render" (dict "value" .Values.clusterOperator.customReadinessProbe "context" $) | nindent 12 }}
|
||||
{{- end }}
|
||||
{{- if .Values.clusterOperator.startupProbe.enabled }}
|
||||
startupProbe:
|
||||
httpGet:
|
||||
path: /metrics
|
||||
port: http
|
||||
initialDelaySeconds: {{ .Values.clusterOperator.startupProbe.initialDelaySeconds }}
|
||||
periodSeconds: {{ .Values.clusterOperator.startupProbe.periodSeconds }}
|
||||
timeoutSeconds: {{ .Values.clusterOperator.startupProbe.timeoutSeconds }}
|
||||
successThreshold: {{ .Values.clusterOperator.startupProbe.successThreshold }}
|
||||
failureThreshold: {{ .Values.clusterOperator.startupProbe.failureThreshold }}
|
||||
{{- else if .Values.clusterOperator.customStartupProbe }}
|
||||
startupProbe: {{- include "common.tplvalues.render" (dict "value" .Values.clusterOperator.customStartupProbe "context" $) | nindent 12 }}
|
||||
{{- end }}
|
||||
{{- if .Values.clusterOperator.lifecycleHooks }}
|
||||
lifecycle: {{- include "common.tplvalues.render" (dict "value" .Values.clusterOperator.lifecycleHooks "context" $) | nindent 12 }}
|
||||
{{- end }}
|
||||
{{- if .Values.clusterOperator.extraVolumeMounts }}
|
||||
volumeMounts: {{- include "common.tplvalues.render" (dict "value" .Values.clusterOperator.extraVolumeMounts "context" $) | nindent 12 }}
|
||||
{{- end }}
|
||||
ports:
|
||||
- name: http
|
||||
containerPort: {{ .Values.clusterOperator.containerPorts.metrics }}
|
||||
protocol: TCP
|
||||
{{- if .Values.clusterOperator.sidecars }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.clusterOperator.sidecars "context" $) | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Values.clusterOperator.extraVolumes }}
|
||||
volumes: {{- include "common.tplvalues.render" (dict "value" .Values.clusterOperator.extraVolumes "context" $) | nindent 8 }}
|
||||
{{- end }}
|
||||
@@ -0,0 +1,51 @@
|
||||
{{ if .Values.clusterOperator.metrics.enabled }}
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
labels: {{- include "common.labels.standard" . | nindent 4 }}
|
||||
app.kubernetes.io/component: rabbitmq-operator
|
||||
app.kubernetes.io/part-of: rabbitmq
|
||||
{{- if .Values.commonLabels }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
name: {{ template "rmqco.clusterOperator.fullname" . }}-metrics
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
{{- if or .Values.commonAnnotations .Values.clusterOperator.metrics.service.annotations }}
|
||||
annotations:
|
||||
{{- if .Values.clusterOperator.metrics.service.annotations }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.clusterOperator.metrics.service.annotations "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- if .Values.commonAnnotations }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
spec:
|
||||
type: {{ .Values.clusterOperator.metrics.service.type }}
|
||||
{{- if (or (eq .Values.clusterOperator.metrics.service.type "LoadBalancer") (eq .Values.clusterOperator.metrics.service.type "NodePort")) }}
|
||||
externalTrafficPolicy: {{ .Values.clusterOperator.metrics.service.externalTrafficPolicy | quote }}
|
||||
{{- end }}
|
||||
{{ if .Values.clusterOperator.metrics.service.clusterIP }}
|
||||
clusterIP: {{ .Values.clusterOperator.metrics.service.clusterIP }}
|
||||
{{ end }}
|
||||
{{ if eq .Values.clusterOperator.metrics.service.type "LoadBalancer" }}
|
||||
loadBalancerSourceRanges: {{ .Values.clusterOperator.metrics.service.loadBalancerSourceRanges }}
|
||||
{{ end }}
|
||||
{{- if (and (eq .Values.clusterOperator.metrics.service.type "LoadBalancer") (not (empty .Values.clusterOperator.metrics.service.loadBalancerIP))) }}
|
||||
loadBalancerIP: {{ .Values.clusterOperator.metrics.service.loadBalancerIP }}
|
||||
{{- end }}
|
||||
ports:
|
||||
- name: http
|
||||
port: {{ .Values.clusterOperator.metrics.service.ports.http }}
|
||||
targetPort: http
|
||||
protocol: TCP
|
||||
{{- if (and (or (eq .Values.clusterOperator.metrics.service.type "NodePort") (eq .Values.clusterOperator.metrics.service.type "LoadBalancer")) (not (empty .Values.clusterOperator.metrics.service.nodePorts.http))) }}
|
||||
nodePort: {{ .Values.clusterOperator.metrics.service.nodePorts.http }}
|
||||
{{- else if eq .Values.clusterOperator.metrics.service.type "ClusterIP" }}
|
||||
nodePort: null
|
||||
{{- end }}
|
||||
{{- if .Values.clusterOperator.metrics.service.extraPorts }}
|
||||
{{- include "common.tplvalues.render" (dict "value" .Values.clusterOperator.metrics.service.extraPorts "context" $) | nindent 4 }}
|
||||
{{- end }}
|
||||
selector: {{- include "common.labels.matchLabels" . | nindent 4 }}
|
||||
app.kubernetes.io/component: rabbitmq-operator
|
||||
{{- end }}
|
||||
@@ -1,4 +1,4 @@
|
||||
{{- if .Values.rbac.create }}
|
||||
{{- if .Values.clusterOperator.rbac.create }}
|
||||
apiVersion: {{ include "common.capabilities.rbac.apiVersion" . }}
|
||||
kind: Role
|
||||
metadata:
|
||||
@@ -8,7 +8,7 @@ metadata:
|
||||
{{- if .Values.commonLabels }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
name: {{ template "common.names.fullname" . }}
|
||||
name: {{ template "rmqco.clusterOperator.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
{{- if .Values.commonAnnotations }}
|
||||
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
|
||||
@@ -1,4 +1,4 @@
|
||||
{{- if .Values.rbac.create }}
|
||||
{{- if .Values.clusterOperator.rbac.create }}
|
||||
apiVersion: {{ include "common.capabilities.rbac.apiVersion" . }}
|
||||
kind: RoleBinding
|
||||
metadata:
|
||||
@@ -8,7 +8,7 @@ metadata:
|
||||
{{- if .Values.commonLabels }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
name: {{ template "common.names.fullname" . }}
|
||||
name: {{ template "rmqco.clusterOperator.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
{{- if .Values.commonAnnotations }}
|
||||
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
|
||||
@@ -16,9 +16,9 @@ metadata:
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: Role
|
||||
name: {{ template "common.names.fullname" . }}
|
||||
name: {{ template "rmqco.clusterOperator.fullname" . }}
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: {{ template "rmqco.serviceAccountName" . }}
|
||||
name: {{ template "rmqco.clusterOperator.serviceAccountName" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
{{- end }}
|
||||
@@ -0,0 +1,23 @@
|
||||
{{- if .Values.clusterOperator.serviceAccount.create }}
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
labels: {{- include "common.labels.standard" . | nindent 4 }}
|
||||
app.kubernetes.io/component: rabbitmq-operator
|
||||
app.kubernetes.io/part-of: rabbitmq
|
||||
{{- if .Values.commonLabels }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
name: {{ template "rmqco.clusterOperator.serviceAccountName" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
{{- if or .Values.commonAnnotations .Values.clusterOperator.serviceAccount.annotations }}
|
||||
annotations:
|
||||
{{- if .Values.clusterOperator.serviceAccount.annotations }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.clusterOperator.serviceAccount.annotations "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- if .Values.commonAnnotations }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
automountServiceAccountToken: {{ .Values.clusterOperator.serviceAccount.automountServiceAccountToken }}
|
||||
{{- end }}
|
||||
@@ -0,0 +1,46 @@
|
||||
{{- if and .Values.clusterOperator.metrics.serviceMonitor.enabled .Values.clusterOperator.metrics.enabled }}
|
||||
apiVersion: monitoring.coreos.com/v1
|
||||
kind: ServiceMonitor
|
||||
metadata:
|
||||
name: {{ include "common.names.fullname" . }}
|
||||
labels: {{- include "common.labels.standard" . | nindent 4 }}
|
||||
{{- if .Values.clusterOperator.metrics.serviceMonitor.additionalLabels }}
|
||||
{{- include "common.tplvalues.render" (dict "value" .Values.clusterOperator.metrics.serviceMonitor.additionalLabels "context" $) | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- if .Values.commonLabels }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
{{- if .Values.commonAnnotations }}
|
||||
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
jobLabel: {{ .Values.clusterOperator.metrics.serviceMonitor.jobLabel }}
|
||||
selector:
|
||||
matchLabels: {{- include "common.labels.matchLabels" . | nindent 6 }}
|
||||
app.kubernetes.io/component: rabbitmq-operator
|
||||
app.kubernetes.io/part-of: rabbitmq
|
||||
{{- if .Values.clusterOperator.metrics.serviceMonitor.selector }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.clusterOperator.metrics.serviceMonitor.selector "context" $ ) | nindent 6 }}
|
||||
{{- end }}
|
||||
namespaceSelector:
|
||||
matchNames:
|
||||
- {{ .Release.Namespace }}
|
||||
endpoints:
|
||||
- port: http
|
||||
{{- if .Values.clusterOperator.metrics.serviceMonitor.interval }}
|
||||
interval: {{ .Values.clusterOperator.metrics.serviceMonitor.interval }}
|
||||
{{- end }}
|
||||
{{- if .Values.clusterOperator.metrics.serviceMonitor.honorLabels }}
|
||||
honorLabels: {{ .Values.clusterOperator.metrics.serviceMonitor.honorLabels }}
|
||||
{{- end }}
|
||||
{{- if .Values.clusterOperator.metrics.serviceMonitor.scrapeTimeout }}
|
||||
scrapeTimeout: {{ .Values.clusterOperator.metrics.serviceMonitor.scrapeTimeout }}
|
||||
{{- end }}
|
||||
{{- if .Values.clusterOperator.metrics.serviceMonitor.metricRelabelings }}
|
||||
metricRelabelings: {{ toYaml .Values.clusterOperator.metrics.serviceMonitor.metricRelabelings | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Values.clusterOperator.metrics.serviceMonitor.relabelings }}
|
||||
relabelings: {{ toYaml .Values.clusterOperator.metrics.serviceMonitor.relabelings | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
@@ -1,157 +0,0 @@
|
||||
apiVersion: {{ include "common.capabilities.deployment.apiVersion" . }}
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: {{ template "common.names.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels: {{- include "common.labels.standard" . | nindent 4 }}
|
||||
app.kubernetes.io/component: rabbitmq-operator
|
||||
{{- if .Values.commonLabels }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- if .Values.commonAnnotations }}
|
||||
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
replicas: {{ .Values.replicaCount }}
|
||||
{{- if .Values.updateStrategy }}
|
||||
strategy: {{- toYaml .Values.updateStrategy | nindent 4 }}
|
||||
{{- end }}
|
||||
selector:
|
||||
matchLabels: {{- include "common.labels.matchLabels" . | nindent 6 }}
|
||||
app.kubernetes.io/component: rabbitmq-operator
|
||||
template:
|
||||
metadata:
|
||||
{{- if .Values.podAnnotations }}
|
||||
annotations: {{- include "common.tplvalues.render" (dict "value" .Values.podAnnotations "context" $) | nindent 8 }}
|
||||
{{- end }}
|
||||
labels: {{- include "common.labels.standard" . | nindent 8 }}
|
||||
app.kubernetes.io/component: rabbitmq-operator
|
||||
{{- if .Values.podLabels }}
|
||||
{{- include "common.tplvalues.render" (dict "value" .Values.podLabels "context" $) | nindent 8 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
serviceAccountName: {{ template "rmqco.serviceAccountName" . }}
|
||||
{{- include "rmqco.imagePullSecrets" . | nindent 6 }}
|
||||
{{- if .Values.hostAliases }}
|
||||
hostAliases: {{- include "common.tplvalues.render" (dict "value" .Values.hostAliases "context" $) | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Values.affinity }}
|
||||
affinity: {{- include "common.tplvalues.render" ( dict "value" .Values.affinity "context" $) | nindent 8 }}
|
||||
{{- else }}
|
||||
affinity:
|
||||
podAffinity: {{- include "common.affinities.pods" (dict "type" .Values.podAffinityPreset "component" "rabbitmq-operator" "context" $) | nindent 10 }}
|
||||
podAntiAffinity: {{- include "common.affinities.pods" (dict "type" .Values.podAntiAffinityPreset "component" "rabbitmq-operator" "context" $) | nindent 10 }}
|
||||
nodeAffinity: {{- include "common.affinities.nodes" (dict "type" .Values.nodeAffinityPreset.type "key" .Values.nodeAffinityPreset.key "values" .Values.nodeAffinityPreset.values) | nindent 10 }}
|
||||
{{- end }}
|
||||
{{- if .Values.nodeSelector }}
|
||||
nodeSelector: {{- include "common.tplvalues.render" ( dict "value" .Values.nodeSelector "context" $) | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Values.tolerations }}
|
||||
tolerations: {{- include "common.tplvalues.render" (dict "value" .Values.tolerations "context" .) | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Values.priorityClassName }}
|
||||
priorityClassName: {{ .Values.priorityClassName | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.podSecurityContext.enabled }}
|
||||
securityContext: {{- omit .Values.podSecurityContext "enabled" | toYaml | nindent 8 }}
|
||||
{{- end }}
|
||||
initContainers:
|
||||
{{- if .Values.initContainers }}
|
||||
{{- include "common.tplvalues.render" (dict "value" .Values.initContainers "context" $) | nindent 8 }}
|
||||
{{- end }}
|
||||
containers:
|
||||
- name: rabbitmq-cluster-operator
|
||||
image: {{ template "rmqco.operator.image" . }}
|
||||
imagePullPolicy: {{ .Values.image.pullPolicy }}
|
||||
{{- if .Values.containerSecurityContext.enabled }}
|
||||
securityContext: {{- omit .Values.containerSecurityContext "enabled" | toYaml | nindent 12 }}
|
||||
{{- end }}
|
||||
{{- if .Values.command }}
|
||||
command: {{- include "common.tplvalues.render" (dict "value" .Values.command "context" $) | nindent 12 }}
|
||||
{{- else }}
|
||||
command:
|
||||
- /manager
|
||||
{{- end }}
|
||||
{{- if .Values.args }}
|
||||
args: {{- include "common.tplvalues.render" (dict "value" .Values.args "context" $) | nindent 12 }}
|
||||
{{- else }}
|
||||
args:
|
||||
- --metrics-bind-address=:{{ .Values.containerPort }}
|
||||
{{- end }}
|
||||
env:
|
||||
- name: OPERATOR_NAMESPACE
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.namespace
|
||||
- name: DEFAULT_RABBITMQ_IMAGE
|
||||
value: {{ template "rmqco.rabbitmq.image" . }}
|
||||
{{- if .Values.extraEnvVars }}
|
||||
{{- include "common.tplvalues.render" (dict "value" .Values.extraEnvVars "context" $) | nindent 12 }}
|
||||
{{- end }}
|
||||
envFrom:
|
||||
{{- if .Values.extraEnvVarsCM }}
|
||||
- configMapRef:
|
||||
name: {{ include "common.tplvalues.render" (dict "value" .Values.extraEnvVarsCM "context" $) }}
|
||||
{{- end }}
|
||||
{{- if .Values.extraEnvVarsSecret }}
|
||||
- secretRef:
|
||||
name: {{ include "common.tplvalues.render" (dict "value" .Values.extraEnvVarsSecret "context" $) }}
|
||||
{{- end }}
|
||||
{{- if .Values.resources }}
|
||||
resources: {{- toYaml .Values.resources | nindent 12 }}
|
||||
{{- end }}
|
||||
{{- if .Values.livenessProbe.enabled }}
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
path: /metrics
|
||||
port: http
|
||||
initialDelaySeconds: {{ .Values.livenessProbe.initialDelaySeconds }}
|
||||
periodSeconds: {{ .Values.livenessProbe.periodSeconds }}
|
||||
timeoutSeconds: {{ .Values.livenessProbe.timeoutSeconds }}
|
||||
successThreshold: {{ .Values.livenessProbe.successThreshold }}
|
||||
failureThreshold: {{ .Values.livenessProbe.failureThreshold }}
|
||||
{{- else if .Values.customLivenessProbe }}
|
||||
livenessProbe: {{- include "common.tplvalues.render" (dict "value" .Values.customLivenessProbe "context" $) | nindent 12 }}
|
||||
{{- end }}
|
||||
{{- if .Values.readinessProbe.enabled }}
|
||||
readinessProbe:
|
||||
httpGet:
|
||||
path: /metrics
|
||||
port: http
|
||||
initialDelaySeconds: {{ .Values.readinessProbe.initialDelaySeconds }}
|
||||
periodSeconds: {{ .Values.readinessProbe.periodSeconds }}
|
||||
timeoutSeconds: {{ .Values.readinessProbe.timeoutSeconds }}
|
||||
successThreshold: {{ .Values.readinessProbe.successThreshold }}
|
||||
failureThreshold: {{ .Values.readinessProbe.failureThreshold }}
|
||||
{{- else if .Values.customReadinessProbe }}
|
||||
readinessProbe: {{- include "common.tplvalues.render" (dict "value" .Values.customReadinessProbe "context" $) | nindent 12 }}
|
||||
{{- end }}
|
||||
{{- if .Values.startupProbe.enabled }}
|
||||
startupProbe:
|
||||
httpGet:
|
||||
path: /metrics
|
||||
port: http
|
||||
initialDelaySeconds: {{ .Values.startupProbe.initialDelaySeconds }}
|
||||
periodSeconds: {{ .Values.startupProbe.periodSeconds }}
|
||||
timeoutSeconds: {{ .Values.startupProbe.timeoutSeconds }}
|
||||
successThreshold: {{ .Values.startupProbe.successThreshold }}
|
||||
failureThreshold: {{ .Values.startupProbe.failureThreshold }}
|
||||
{{- else if .Values.customStartupProbe }}
|
||||
startupProbe: {{- include "common.tplvalues.render" (dict "value" .Values.customStartupProbe "context" $) | nindent 12 }}
|
||||
{{- end }}
|
||||
{{- if .Values.lifecycleHooks }}
|
||||
lifecycle: {{- include "common.tplvalues.render" (dict "value" .Values.lifecycleHooks "context" $) | nindent 12 }}
|
||||
{{- end }}
|
||||
{{- if .Values.extraVolumeMounts }}
|
||||
volumeMounts: {{- include "common.tplvalues.render" (dict "value" .Values.extraVolumeMounts "context" $) | nindent 12 }}
|
||||
{{- end }}
|
||||
ports:
|
||||
- name: http
|
||||
containerPort: {{ .Values.containerPort }}
|
||||
protocol: TCP
|
||||
{{- if .Values.sidecars }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.sidecars "context" $) | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Values.extraVolumes }}
|
||||
volumes: {{- include "common.tplvalues.render" (dict "value" .Values.extraVolumes "context" $) | nindent 8 }}
|
||||
{{- end }}
|
||||
14
bitnami/rabbitmq-cluster-operator/templates/issuer.yaml
Normal file
14
bitnami/rabbitmq-cluster-operator/templates/issuer.yaml
Normal file
@@ -0,0 +1,14 @@
|
||||
{{ if .Values.useCertManager }}
|
||||
apiVersion: cert-manager.io/v1
|
||||
kind: Issuer
|
||||
metadata:
|
||||
labels: {{- include "common.labels.standard" . | nindent 4 }}
|
||||
app.kubernetes.io/part-of: rabbitmq
|
||||
{{- if .Values.commonLabels }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
name: {{ template "common.names.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
spec:
|
||||
selfSigned: {}
|
||||
{{- end }}
|
||||
@@ -0,0 +1,24 @@
|
||||
{{ if and (.Values.useCertManager) (not .Values.msgTopologyOperator.existingWebhookCertSecret) }}
|
||||
apiVersion: cert-manager.io/v1
|
||||
kind: Certificate
|
||||
metadata:
|
||||
labels: {{- include "common.labels.standard" . | nindent 4 }}
|
||||
app.kubernetes.io/component: messaging-topology-operator
|
||||
app.kubernetes.io/part-of: rabbitmq
|
||||
{{- if .Values.commonLabels }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
name: {{ template "rmqco.msgTopologyOperator.webhook.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
{{- if .Values.commonAnnotations }}
|
||||
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
dnsNames:
|
||||
- {{ printf "%s.%s.svc" (include "rmqco.msgTopologyOperator.webhook.fullname" .) .Release.Namespace }}
|
||||
- {{ printf "%s.%s.svc.%s" (include "rmqco.msgTopologyOperator.webhook.fullname" .) .Release.Namespace .Values.clusterDomain }}
|
||||
issuerRef:
|
||||
kind: Issuer
|
||||
name: {{ template "common.names.fullname" . }}
|
||||
secretName: {{ template "rmqco.msgTopologyOperator.webhook.fullname" . }}
|
||||
{{- end }}
|
||||
@@ -0,0 +1,256 @@
|
||||
{{- if .Values.msgTopologyOperator.rbac.create }}
|
||||
apiVersion: {{ include "common.capabilities.rbac.apiVersion" . }}
|
||||
kind: ClusterRole
|
||||
metadata:
|
||||
labels: {{- include "common.labels.standard" . | nindent 4 }}
|
||||
app.kubernetes.io/component: messaging-topology-operator
|
||||
app.kubernetes.io/part-of: rabbitmq
|
||||
{{- if .Values.commonLabels }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
name: {{ template "rmqco.msgTopologyOperator.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
{{- if .Values.commonAnnotations }}
|
||||
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
rules:
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- events
|
||||
verbs:
|
||||
- create
|
||||
- get
|
||||
- patch
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- secrets
|
||||
verbs:
|
||||
- create
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- services
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- rabbitmq.com
|
||||
resources:
|
||||
- bindings
|
||||
verbs:
|
||||
- create
|
||||
- delete
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- rabbitmq.com
|
||||
resources:
|
||||
- bindings/status
|
||||
verbs:
|
||||
- get
|
||||
- patch
|
||||
- update
|
||||
- apiGroups:
|
||||
- rabbitmq.com
|
||||
resources:
|
||||
- exchanges
|
||||
verbs:
|
||||
- create
|
||||
- delete
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- rabbitmq.com
|
||||
resources:
|
||||
- exchanges/status
|
||||
verbs:
|
||||
- get
|
||||
- patch
|
||||
- update
|
||||
- apiGroups:
|
||||
- rabbitmq.com
|
||||
resources:
|
||||
- federations
|
||||
verbs:
|
||||
- create
|
||||
- delete
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- rabbitmq.com
|
||||
resources:
|
||||
- federations/status
|
||||
verbs:
|
||||
- get
|
||||
- patch
|
||||
- update
|
||||
- apiGroups:
|
||||
- rabbitmq.com
|
||||
resources:
|
||||
- permissions
|
||||
verbs:
|
||||
- create
|
||||
- delete
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- rabbitmq.com
|
||||
resources:
|
||||
- permissions/status
|
||||
verbs:
|
||||
- get
|
||||
- patch
|
||||
- update
|
||||
- apiGroups:
|
||||
- rabbitmq.com
|
||||
resources:
|
||||
- policies
|
||||
verbs:
|
||||
- create
|
||||
- delete
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- rabbitmq.com
|
||||
resources:
|
||||
- policies/status
|
||||
verbs:
|
||||
- get
|
||||
- patch
|
||||
- update
|
||||
- apiGroups:
|
||||
- rabbitmq.com
|
||||
resources:
|
||||
- queues
|
||||
verbs:
|
||||
- create
|
||||
- delete
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- rabbitmq.com
|
||||
resources:
|
||||
- queues/status
|
||||
verbs:
|
||||
- get
|
||||
- patch
|
||||
- update
|
||||
- apiGroups:
|
||||
- rabbitmq.com
|
||||
resources:
|
||||
- rabbitmqclusters
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- apiGroups:
|
||||
- rabbitmq.com
|
||||
resources:
|
||||
- rabbitmqclusters/status
|
||||
verbs:
|
||||
- get
|
||||
- apiGroups:
|
||||
- rabbitmq.com
|
||||
resources:
|
||||
- schemareplications
|
||||
verbs:
|
||||
- create
|
||||
- delete
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- rabbitmq.com
|
||||
resources:
|
||||
- schemareplications/status
|
||||
verbs:
|
||||
- get
|
||||
- patch
|
||||
- update
|
||||
- apiGroups:
|
||||
- rabbitmq.com
|
||||
resources:
|
||||
- shovels
|
||||
verbs:
|
||||
- create
|
||||
- delete
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- rabbitmq.com
|
||||
resources:
|
||||
- shovels/status
|
||||
verbs:
|
||||
- get
|
||||
- patch
|
||||
- update
|
||||
- apiGroups:
|
||||
- rabbitmq.com
|
||||
resources:
|
||||
- users
|
||||
verbs:
|
||||
- create
|
||||
- delete
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- rabbitmq.com
|
||||
resources:
|
||||
- users/status
|
||||
verbs:
|
||||
- get
|
||||
- patch
|
||||
- update
|
||||
- apiGroups:
|
||||
- rabbitmq.com
|
||||
resources:
|
||||
- vhosts
|
||||
verbs:
|
||||
- create
|
||||
- delete
|
||||
- get
|
||||
- list
|
||||
- patch
|
||||
- update
|
||||
- watch
|
||||
- apiGroups:
|
||||
- rabbitmq.com
|
||||
resources:
|
||||
- vhosts/status
|
||||
verbs:
|
||||
- get
|
||||
- patch
|
||||
- update
|
||||
{{- end }}
|
||||
@@ -0,0 +1,24 @@
|
||||
{{- if .Values.msgTopologyOperator.rbac.create }}
|
||||
apiVersion: {{ include "common.capabilities.rbac.apiVersion" . }}
|
||||
kind: ClusterRoleBinding
|
||||
metadata:
|
||||
labels: {{- include "common.labels.standard" . | nindent 4 }}
|
||||
app.kubernetes.io/component: messaging-topology-operator
|
||||
app.kubernetes.io/part-of: rabbitmq
|
||||
{{- if .Values.commonLabels }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
name: {{ template "rmqco.msgTopologyOperator.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
{{- if .Values.commonAnnotations }}
|
||||
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: ClusterRole
|
||||
name: {{ template "rmqco.msgTopologyOperator.fullname" . }}
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: {{ template "rmqco.msgTopologyOperator.serviceAccountName" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
{{- end }}
|
||||
@@ -0,0 +1,174 @@
|
||||
apiVersion: {{ include "common.capabilities.deployment.apiVersion" . }}
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: {{ template "rmqco.msgTopologyOperator.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
labels: {{- include "common.labels.standard" . | nindent 4 }}
|
||||
app.kubernetes.io/component: messaging-topology-operator
|
||||
app.kubernetes.io/part-of: rabbitmq
|
||||
{{- if .Values.commonLabels }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- if .Values.commonAnnotations }}
|
||||
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
replicas: {{ .Values.msgTopologyOperator.replicaCount }}
|
||||
{{- if .Values.msgTopologyOperator.updateStrategy }}
|
||||
strategy: {{- toYaml .Values.msgTopologyOperator.updateStrategy | nindent 4 }}
|
||||
{{- end }}
|
||||
selector:
|
||||
matchLabels: {{- include "common.labels.matchLabels" . | nindent 6 }}
|
||||
app.kubernetes.io/component: messaging-topology-operator
|
||||
template:
|
||||
metadata:
|
||||
{{- if .Values.msgTopologyOperator.podAnnotations }}
|
||||
annotations: {{- include "common.tplvalues.render" (dict "value" .Values.msgTopologyOperator.podAnnotations "context" $) | nindent 8 }}
|
||||
{{- end }}
|
||||
labels: {{- include "common.labels.standard" . | nindent 8 }}
|
||||
app.kubernetes.io/component: messaging-topology-operator
|
||||
{{- if .Values.msgTopologyOperator.podLabels }}
|
||||
{{- include "common.tplvalues.render" (dict "value" .Values.msgTopologyOperator.podLabels "context" $) | nindent 8 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
serviceAccountName: {{ template "rmqco.msgTopologyOperator.serviceAccountName" . }}
|
||||
{{- include "rmqco.imagePullSecrets" . | nindent 6 }}
|
||||
{{- if .Values.msgTopologyOperator.hostAliases }}
|
||||
hostAliases: {{- include "common.tplvalues.render" (dict "value" .Values.msgTopologyOperator.hostAliases "context" $) | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Values.msgTopologyOperator.topologySpreadConstraints }}
|
||||
topologySpreadConstraints: {{- include "common.tplvalues.render" (dict "value" .Values.msgTopologyOperator.topologySpreadConstraints "context" $) | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Values.msgTopologyOperator.schedulerName }}
|
||||
schedulerName: {{ .Values.msgTopologyOperator.schedulerName | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.msgTopologyOperator.affinity }}
|
||||
affinity: {{- include "common.tplvalues.render" ( dict "value" .Values.msgTopologyOperator.affinity "context" $) | nindent 8 }}
|
||||
{{- else }}
|
||||
affinity:
|
||||
podAffinity: {{- include "common.affinities.pods" (dict "type" .Values.msgTopologyOperator.podAffinityPreset "component" "rabbitmq-operator" "context" $) | nindent 10 }}
|
||||
podAntiAffinity: {{- include "common.affinities.pods" (dict "type" .Values.msgTopologyOperator.podAntiAffinityPreset "component" "rabbitmq-operator" "context" $) | nindent 10 }}
|
||||
nodeAffinity: {{- include "common.affinities.nodes" (dict "type" .Values.msgTopologyOperator.nodeAffinityPreset.type "key" .Values.msgTopologyOperator.nodeAffinityPreset.key "values" .Values.msgTopologyOperator.nodeAffinityPreset.values) | nindent 10 }}
|
||||
{{- end }}
|
||||
{{- if .Values.msgTopologyOperator.nodeSelector }}
|
||||
nodeSelector: {{- include "common.tplvalues.render" ( dict "value" .Values.msgTopologyOperator.nodeSelector "context" $) | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Values.msgTopologyOperator.tolerations }}
|
||||
tolerations: {{- include "common.tplvalues.render" (dict "value" .Values.msgTopologyOperator.tolerations "context" .) | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Values.msgTopologyOperator.priorityClassName }}
|
||||
priorityClassName: {{ .Values.msgTopologyOperator.priorityClassName | quote }}
|
||||
{{- end }}
|
||||
{{- if .Values.msgTopologyOperator.podSecurityContext.enabled }}
|
||||
securityContext: {{- omit .Values.msgTopologyOperator.podSecurityContext "enabled" | toYaml | nindent 8 }}
|
||||
{{- end }}
|
||||
initContainers:
|
||||
{{- if .Values.msgTopologyOperator.initContainers }}
|
||||
{{- include "common.tplvalues.render" (dict "value" .Values.msgTopologyOperator.initContainers "context" $) | nindent 8 }}
|
||||
{{- end }}
|
||||
containers:
|
||||
- name: rabbitmq-cluster-operator
|
||||
image: {{ template "rmqco.msgTopologyOperator.image" . }}
|
||||
imagePullPolicy: {{ .Values.msgTopologyOperator.image.pullPolicy }}
|
||||
{{- if .Values.msgTopologyOperator.containerSecurityContext.enabled }}
|
||||
securityContext: {{- omit .Values.msgTopologyOperator.containerSecurityContext "enabled" | toYaml | nindent 12 }}
|
||||
{{- end }}
|
||||
{{- if .Values.msgTopologyOperator.command }}
|
||||
command: {{- include "common.tplvalues.render" (dict "value" .Values.msgTopologyOperator.command "context" $) | nindent 12 }}
|
||||
{{- else }}
|
||||
command:
|
||||
- /manager
|
||||
{{- end }}
|
||||
{{- if .Values.msgTopologyOperator.args }}
|
||||
args: {{- include "common.tplvalues.render" (dict "value" .Values.msgTopologyOperator.args "context" $) | nindent 12 }}
|
||||
{{- else }}
|
||||
args:
|
||||
- --metrics-bind-address=:{{ .Values.msgTopologyOperator.containerPorts.metrics }}
|
||||
{{- end }}
|
||||
env:
|
||||
- name: OPERATOR_NAMESPACE
|
||||
valueFrom:
|
||||
fieldRef:
|
||||
fieldPath: metadata.namespace
|
||||
{{- if .Values.msgTopologyOperator.extraEnvVars }}
|
||||
{{- include "common.tplvalues.render" (dict "value" .Values.msgTopologyOperator.extraEnvVars "context" $) | nindent 12 }}
|
||||
{{- end }}
|
||||
envFrom:
|
||||
{{- if .Values.msgTopologyOperator.extraEnvVarsCM }}
|
||||
- configMapRef:
|
||||
name: {{ include "common.tplvalues.render" (dict "value" .Values.msgTopologyOperator.extraEnvVarsCM "context" $) }}
|
||||
{{- end }}
|
||||
{{- if .Values.msgTopologyOperator.extraEnvVarsSecret }}
|
||||
- secretRef:
|
||||
name: {{ include "common.tplvalues.render" (dict "value" .Values.msgTopologyOperator.extraEnvVarsSecret "context" $) }}
|
||||
{{- end }}
|
||||
{{- if .Values.msgTopologyOperator.resources }}
|
||||
resources: {{- toYaml .Values.msgTopologyOperator.resources | nindent 12 }}
|
||||
{{- end }}
|
||||
{{- if .Values.msgTopologyOperator.livenessProbe.enabled }}
|
||||
livenessProbe:
|
||||
httpGet:
|
||||
path: /metrics
|
||||
port: http-metrics
|
||||
initialDelaySeconds: {{ .Values.msgTopologyOperator.livenessProbe.initialDelaySeconds }}
|
||||
periodSeconds: {{ .Values.msgTopologyOperator.livenessProbe.periodSeconds }}
|
||||
timeoutSeconds: {{ .Values.msgTopologyOperator.livenessProbe.timeoutSeconds }}
|
||||
successThreshold: {{ .Values.msgTopologyOperator.livenessProbe.successThreshold }}
|
||||
failureThreshold: {{ .Values.msgTopologyOperator.livenessProbe.failureThreshold }}
|
||||
{{- else if .Values.msgTopologyOperator.customLivenessProbe }}
|
||||
livenessProbe: {{- include "common.tplvalues.render" (dict "value" .Values.msgTopologyOperator.customLivenessProbe "context" $) | nindent 12 }}
|
||||
{{- end }}
|
||||
{{- if .Values.msgTopologyOperator.readinessProbe.enabled }}
|
||||
readinessProbe:
|
||||
httpGet:
|
||||
path: /metrics
|
||||
port: http-metrics
|
||||
initialDelaySeconds: {{ .Values.msgTopologyOperator.readinessProbe.initialDelaySeconds }}
|
||||
periodSeconds: {{ .Values.msgTopologyOperator.readinessProbe.periodSeconds }}
|
||||
timeoutSeconds: {{ .Values.msgTopologyOperator.readinessProbe.timeoutSeconds }}
|
||||
successThreshold: {{ .Values.msgTopologyOperator.readinessProbe.successThreshold }}
|
||||
failureThreshold: {{ .Values.msgTopologyOperator.readinessProbe.failureThreshold }}
|
||||
{{- else if .Values.msgTopologyOperator.customReadinessProbe }}
|
||||
readinessProbe: {{- include "common.tplvalues.render" (dict "value" .Values.msgTopologyOperator.customReadinessProbe "context" $) | nindent 12 }}
|
||||
{{- end }}
|
||||
{{- if .Values.msgTopologyOperator.startupProbe.enabled }}
|
||||
startupProbe:
|
||||
httpGet:
|
||||
path: /metrics
|
||||
port: http-metrics
|
||||
initialDelaySeconds: {{ .Values.msgTopologyOperator.startupProbe.initialDelaySeconds }}
|
||||
periodSeconds: {{ .Values.msgTopologyOperator.startupProbe.periodSeconds }}
|
||||
timeoutSeconds: {{ .Values.msgTopologyOperator.startupProbe.timeoutSeconds }}
|
||||
successThreshold: {{ .Values.msgTopologyOperator.startupProbe.successThreshold }}
|
||||
failureThreshold: {{ .Values.msgTopologyOperator.startupProbe.failureThreshold }}
|
||||
{{- else if .Values.msgTopologyOperator.customStartupProbe }}
|
||||
startupProbe: {{- include "common.tplvalues.render" (dict "value" .Values.msgTopologyOperator.customStartupProbe "context" $) | nindent 12 }}
|
||||
{{- end }}
|
||||
{{- if .Values.msgTopologyOperator.lifecycleHooks }}
|
||||
lifecycle: {{- include "common.tplvalues.render" (dict "value" .Values.msgTopologyOperator.lifecycleHooks "context" $) | nindent 12 }}
|
||||
{{- end }}
|
||||
volumeMounts:
|
||||
- mountPath: /tmp/k8s-webhook-server/serving-certs
|
||||
name: cert
|
||||
readOnly: true
|
||||
{{- if .Values.msgTopologyOperator.extraVolumeMounts }}
|
||||
{{- include "common.tplvalues.render" (dict "value" .Values.msgTopologyOperator.extraVolumeMounts "context" $) | nindent 12 }}
|
||||
{{- end }}
|
||||
ports:
|
||||
- name: http-webhook
|
||||
containerPort: 9443
|
||||
protocol: TCP
|
||||
- name: http-metrics
|
||||
containerPort: {{ .Values.msgTopologyOperator.containerPorts.metrics }}
|
||||
protocol: TCP
|
||||
{{- if .Values.msgTopologyOperator.sidecars }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.msgTopologyOperator.sidecars "context" $) | nindent 8 }}
|
||||
{{- end }}
|
||||
volumes:
|
||||
- name: cert
|
||||
secret:
|
||||
defaultMode: 420
|
||||
secretName: {{ template "rmqco.msgTopologyOperator.webhook.secretName" . }}
|
||||
{{- if .Values.msgTopologyOperator.extraVolumes }}
|
||||
{{- include "common.tplvalues.render" (dict "value" .Values.msgTopologyOperator.extraVolumes "context" $) | nindent 8 }}
|
||||
{{- end }}
|
||||
@@ -0,0 +1,53 @@
|
||||
{{ if .Values.msgTopologyOperator.metrics.enabled }}
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
labels: {{- include "common.labels.standard" . | nindent 4 }}
|
||||
app.kubernetes.io/component: messaging-topology-operator
|
||||
app.kubernetes.io/part-of: rabbitmq
|
||||
type: metrics
|
||||
{{- if .Values.commonLabels }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
name: {{ template "rmqco.msgTopologyOperator.fullname" . }}-metrics
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
{{- if or .Values.commonAnnotations .Values.msgTopologyOperator.metrics.service.annotations }}
|
||||
annotations:
|
||||
{{- if .Values.msgTopologyOperator.metrics.service.annotations }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.msgTopologyOperator.metrics.service.annotations "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- if .Values.commonAnnotations }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
spec:
|
||||
type: {{ .Values.msgTopologyOperator.metrics.service.type }}
|
||||
{{- if (or (eq .Values.msgTopologyOperator.metrics.service.type "LoadBalancer") (eq .Values.msgTopologyOperator.metrics.service.type "NodePort")) }}
|
||||
externalTrafficPolicy: {{ .Values.msgTopologyOperator.metrics.service.externalTrafficPolicy | quote }}
|
||||
{{- end }}
|
||||
{{ if .Values.msgTopologyOperator.metrics.service.clusterIP }}
|
||||
clusterIP: {{ .Values.msgTopologyOperator.metrics.service.clusterIP }}
|
||||
{{ end }}
|
||||
{{ if eq .Values.msgTopologyOperator.metrics.service.type "LoadBalancer" }}
|
||||
loadBalancerSourceRanges: {{ .Values.msgTopologyOperator.metrics.service.loadBalancerSourceRanges }}
|
||||
{{ end }}
|
||||
{{- if (and (eq .Values.msgTopologyOperator.metrics.service.type "LoadBalancer") (not (empty .Values.msgTopologyOperator.metrics.service.loadBalancerIP))) }}
|
||||
loadBalancerIP: {{ .Values.msgTopologyOperator.metrics.service.loadBalancerIP }}
|
||||
{{- end }}
|
||||
ports:
|
||||
- name: http
|
||||
port: {{ .Values.msgTopologyOperator.metrics.service.port }}
|
||||
targetPort: http-metrics
|
||||
protocol: TCP
|
||||
{{- if (and (or (eq .Values.msgTopologyOperator.metrics.service.type "NodePort") (eq .Values.msgTopologyOperator.metrics.service.type "LoadBalancer")) (not (empty .Values.msgTopologyOperator.metrics.service.nodePorts.http))) }}
|
||||
nodePort: {{ .Values.msgTopologyOperator.metrics.service.nodePorts.http }}
|
||||
{{- else if eq .Values.msgTopologyOperator.metrics.service.type "ClusterIP" }}
|
||||
nodePort: null
|
||||
{{- end }}
|
||||
{{- if .Values.msgTopologyOperator.metrics.service.extraPorts }}
|
||||
{{- include "common.tplvalues.render" (dict "value" .Values.msgTopologyOperator.metrics.service.extraPorts "context" $) | nindent 4 }}
|
||||
{{- end }}
|
||||
selector: {{- include "common.labels.matchLabels" . | nindent 4 }}
|
||||
app.kubernetes.io/component: messaging-topology-operator
|
||||
app.kubernetes.io/part-of: rabbitmq
|
||||
{{- end }}
|
||||
@@ -0,0 +1,47 @@
|
||||
{{- if .Values.msgTopologyOperator.rbac.create }}
|
||||
apiVersion: {{ include "common.capabilities.rbac.apiVersion" . }}
|
||||
kind: Role
|
||||
metadata:
|
||||
labels: {{- include "common.labels.standard" . | nindent 4 }}
|
||||
app.kubernetes.io/component: messaging-topology-operator
|
||||
app.kubernetes.io/part-of: rabbitmq
|
||||
{{- if .Values.commonLabels }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
name: {{ template "rmqco.msgTopologyOperator.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
{{- if .Values.commonAnnotations }}
|
||||
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
rules:
|
||||
- apiGroups:
|
||||
- coordination.k8s.io
|
||||
resources:
|
||||
- leases
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- create
|
||||
- update
|
||||
- patch
|
||||
- delete
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- events
|
||||
verbs:
|
||||
- create
|
||||
- apiGroups:
|
||||
- ""
|
||||
resources:
|
||||
- configmaps
|
||||
verbs:
|
||||
- get
|
||||
- list
|
||||
- watch
|
||||
- create
|
||||
- update
|
||||
- patch
|
||||
- delete
|
||||
{{- end }}
|
||||
@@ -0,0 +1,24 @@
|
||||
{{- if .Values.msgTopologyOperator.rbac.create }}
|
||||
apiVersion: {{ include "common.capabilities.rbac.apiVersion" . }}
|
||||
kind: RoleBinding
|
||||
metadata:
|
||||
labels: {{- include "common.labels.standard" . | nindent 4 }}
|
||||
app.kubernetes.io/component: messaging-topology-operator
|
||||
app.kubernetes.io/part-of: rabbitmq
|
||||
{{- if .Values.commonLabels }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
name: {{ template "rmqco.msgTopologyOperator.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
{{- if .Values.commonAnnotations }}
|
||||
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
roleRef:
|
||||
apiGroup: rbac.authorization.k8s.io
|
||||
kind: Role
|
||||
name: {{ template "rmqco.msgTopologyOperator.fullname" . }}
|
||||
subjects:
|
||||
- kind: ServiceAccount
|
||||
name: {{ template "rmqco.msgTopologyOperator.serviceAccountName" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
{{- end }}
|
||||
@@ -0,0 +1,23 @@
|
||||
{{- if .Values.msgTopologyOperator.serviceAccount.create }}
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
labels: {{- include "common.labels.standard" . | nindent 4 }}
|
||||
app.kubernetes.io/component: messaging-topology-operator
|
||||
app.kubernetes.io/part-of: rabbitmq
|
||||
{{- if .Values.commonLabels }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
name: {{ template "rmqco.msgTopologyOperator.serviceAccountName" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
{{- if or .Values.commonAnnotations .Values.msgTopologyOperator.serviceAccount.annotations }}
|
||||
annotations:
|
||||
{{- if .Values.msgTopologyOperator.serviceAccount.annotations }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.msgTopologyOperator.serviceAccount.annotations "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- if .Values.commonAnnotations }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
automountServiceAccountToken: {{ .Values.msgTopologyOperator.serviceAccount.automountServiceAccountToken }}
|
||||
{{- end }}
|
||||
@@ -0,0 +1,48 @@
|
||||
{{- if and .Values.msgTopologyOperator.metrics.serviceMonitor.enabled .Values.msgTopologyOperator.metrics.enabled }}
|
||||
apiVersion: monitoring.coreos.com/v1
|
||||
kind: ServiceMonitor
|
||||
metadata:
|
||||
name: {{ include "common.names.fullname" . }}
|
||||
labels: {{- include "common.labels.standard" . | nindent 4 }}
|
||||
{{- if .Values.msgTopologyOperator.metrics.serviceMonitor.additionalLabels }}
|
||||
{{- include "common.tplvalues.render" (dict "value" .Values.msgTopologyOperator.metrics.serviceMonitor.additionalLabels "context" $) | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- if .Values.commonLabels }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
{{- if .Values.commonAnnotations }}
|
||||
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
jobLabel: {{ .Values.msgTopologyOperator.metrics.serviceMonitor.jobLabel }}
|
||||
selector:
|
||||
matchLabels: {{- include "common.labels.matchLabels" . | nindent 6 }}
|
||||
app.kubernetes.io/component: messaging-topology-operator
|
||||
app.kubernetes.io/part-of: rabbitmq
|
||||
# We need an extra label for the ServiceMonitor to scrape it correctly
|
||||
type: metrics
|
||||
{{- if .Values.msgTopologyOperator.metrics.serviceMonitor.selector }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.msgTopologyOperator.metrics.serviceMonitor.selector "context" $ ) | nindent 6 }}
|
||||
{{- end }}
|
||||
namespaceSelector:
|
||||
matchNames:
|
||||
- {{ .Release.Namespace }}
|
||||
endpoints:
|
||||
- port: http-metrics
|
||||
{{- if .Values.msgTopologyOperator.metrics.serviceMonitor.interval }}
|
||||
interval: {{ .Values.msgTopologyOperator.metrics.serviceMonitor.interval }}
|
||||
{{- end }}
|
||||
{{- if .Values.msgTopologyOperator.metrics.serviceMonitor.honorLabels }}
|
||||
honorLabels: {{ .Values.msgTopologyOperator.metrics.serviceMonitor.honorLabels }}
|
||||
{{- end }}
|
||||
{{- if .Values.msgTopologyOperator.metrics.serviceMonitor.scrapeTimeout }}
|
||||
scrapeTimeout: {{ .Values.msgTopologyOperator.metrics.serviceMonitor.scrapeTimeout }}
|
||||
{{- end }}
|
||||
{{- if .Values.msgTopologyOperator.metrics.serviceMonitor.metricRelabelings }}
|
||||
metricRelabelings: {{ toYaml .Values.msgTopologyOperator.metrics.serviceMonitor.metricRelabelings | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Values.msgTopologyOperator.metrics.serviceMonitor.relabelings }}
|
||||
relabelings: {{ toYaml .Values.msgTopologyOperator.metrics.serviceMonitor.relabelings | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
@@ -0,0 +1,274 @@
|
||||
{{/*
|
||||
If the user does not have cert-manager and is not providing a secret with the certificates, the chart needs to generate the secret
|
||||
*/}}
|
||||
{{- $ca := genCA "rmq-msg-topology-ca" 365 }}
|
||||
{{- $cert := genSignedCert (include "rmqco.msgTopologyOperator.fullname" .) nil (list (printf "%s.%s.svc" (include "rmqco.msgTopologyOperator.webhook.fullname" .) .Release.Namespace) (printf "%s.%s.svc.%s" (include "rmqco.msgTopologyOperator.webhook.fullname" .) .Release.Namespace .Values.clusterDomain)) 365 $ca }}
|
||||
|
||||
{{- if and (not .Values.useCertManager) (not .Values.msgTopologyOperator.existingWebhookCertSecret) }}
|
||||
apiVersion: v1
|
||||
kind: Secret
|
||||
metadata:
|
||||
name: {{ template "rmqco.msgTopologyOperator.webhook.fullname" . }}
|
||||
namespace: {{ .Release.Namespace }}
|
||||
labels: {{- include "common.labels.standard" . | nindent 4 }}
|
||||
{{- if .Values.commonLabels }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- if .Values.commonAnnotations }}
|
||||
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
type: kubernetes.io/tls
|
||||
data:
|
||||
tls.crt: {{ $cert.Cert | b64enc | quote }}
|
||||
tls.key: {{ $cert.Key | b64enc | quote }}
|
||||
ca.crt: {{ $ca.Cert | b64enc | quote }}
|
||||
{{- end }}
|
||||
---
|
||||
apiVersion: admissionregistration.k8s.io/v1
|
||||
kind: ValidatingWebhookConfiguration
|
||||
metadata:
|
||||
labels: {{- include "common.labels.standard" . | nindent 4 }}
|
||||
app.kubernetes.io/component: messaging-topology-operator
|
||||
app.kubernetes.io/part-of: rabbitmq
|
||||
{{- if .Values.commonLabels }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
annotations:
|
||||
{{- if .Values.useCertManager }}
|
||||
cert-manager.io/inject-ca-from: {{ printf "%s/%s" .Release.Namespace ( include "rmqco.msgTopologyOperator.webhook.secretName" . ) }}
|
||||
{{- end }}
|
||||
{{- if .Values.commonAnnotations }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
name: {{ template "rmqco.msgTopologyOperator.webhook.fullname" . }}
|
||||
webhooks:
|
||||
- admissionReviewVersions:
|
||||
- v1
|
||||
clientConfig:
|
||||
{{- if not .Values.useCertManager }}
|
||||
caBundle: {{ default $ca.Cert .Values.msgTopologyOperator.existingWebhookCertCABundle | b64enc | quote }}
|
||||
{{- end }}
|
||||
service:
|
||||
name: {{ template "rmqco.msgTopologyOperator.webhook.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
path: /validate-rabbitmq-com-v1beta1-binding
|
||||
failurePolicy: Fail
|
||||
name: vbinding.kb.io
|
||||
rules:
|
||||
- apiGroups:
|
||||
- rabbitmq.com
|
||||
apiVersions:
|
||||
- v1beta1
|
||||
operations:
|
||||
- CREATE
|
||||
- UPDATE
|
||||
resources:
|
||||
- bindings
|
||||
sideEffects: None
|
||||
- admissionReviewVersions:
|
||||
- v1
|
||||
clientConfig:
|
||||
{{- if not .Values.useCertManager }}
|
||||
caBundle: {{ default $ca.Cert .Values.msgTopologyOperator.existingWebhookCertCABundle | b64enc | quote }}
|
||||
{{- end }}
|
||||
service:
|
||||
name: {{ template "rmqco.msgTopologyOperator.webhook.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
path: /validate-rabbitmq-com-v1beta1-exchange
|
||||
failurePolicy: Fail
|
||||
name: vexchange.kb.io
|
||||
rules:
|
||||
- apiGroups:
|
||||
- rabbitmq.com
|
||||
apiVersions:
|
||||
- v1beta1
|
||||
operations:
|
||||
- CREATE
|
||||
- UPDATE
|
||||
resources:
|
||||
- exchanges
|
||||
sideEffects: None
|
||||
- admissionReviewVersions:
|
||||
- v1
|
||||
clientConfig:
|
||||
{{- if not .Values.useCertManager }}
|
||||
caBundle: {{ default $ca.Cert .Values.msgTopologyOperator.existingWebhookCertCABundle | b64enc | quote }}
|
||||
{{- end }}
|
||||
service:
|
||||
name: {{ template "rmqco.msgTopologyOperator.webhook.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
path: /validate-rabbitmq-com-v1beta1-federation
|
||||
failurePolicy: Fail
|
||||
name: vfederation.kb.io
|
||||
rules:
|
||||
- apiGroups:
|
||||
- rabbitmq.com
|
||||
apiVersions:
|
||||
- v1beta1
|
||||
operations:
|
||||
- CREATE
|
||||
- UPDATE
|
||||
resources:
|
||||
- federations
|
||||
sideEffects: None
|
||||
- admissionReviewVersions:
|
||||
- v1
|
||||
clientConfig:
|
||||
{{- if not .Values.useCertManager }}
|
||||
caBundle: {{ default $ca.Cert .Values.msgTopologyOperator.existingWebhookCertCABundle | b64enc | quote }}
|
||||
{{- end }}
|
||||
service:
|
||||
name: {{ template "rmqco.msgTopologyOperator.webhook.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
path: /validate-rabbitmq-com-v1beta1-permission
|
||||
failurePolicy: Fail
|
||||
name: vpermission.kb.io
|
||||
rules:
|
||||
- apiGroups:
|
||||
- rabbitmq.com
|
||||
apiVersions:
|
||||
- v1beta1
|
||||
operations:
|
||||
- CREATE
|
||||
- UPDATE
|
||||
resources:
|
||||
- permissions
|
||||
sideEffects: None
|
||||
- admissionReviewVersions:
|
||||
- v1
|
||||
clientConfig:
|
||||
{{- if not .Values.useCertManager }}
|
||||
caBundle: {{ default $ca.Cert .Values.msgTopologyOperator.existingWebhookCertCABundle | b64enc | quote }}
|
||||
{{- end }}
|
||||
service:
|
||||
name: {{ template "rmqco.msgTopologyOperator.webhook.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
path: /validate-rabbitmq-com-v1beta1-policy
|
||||
failurePolicy: Fail
|
||||
name: vpolicy.kb.io
|
||||
rules:
|
||||
- apiGroups:
|
||||
- rabbitmq.com
|
||||
apiVersions:
|
||||
- v1beta1
|
||||
operations:
|
||||
- CREATE
|
||||
- UPDATE
|
||||
resources:
|
||||
- policies
|
||||
sideEffects: None
|
||||
- admissionReviewVersions:
|
||||
- v1
|
||||
clientConfig:
|
||||
{{- if not .Values.useCertManager }}
|
||||
caBundle: {{ default $ca.Cert .Values.msgTopologyOperator.existingWebhookCertCABundle | b64enc | quote }}
|
||||
{{- end }}
|
||||
service:
|
||||
name: {{ template "rmqco.msgTopologyOperator.webhook.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
path: /validate-rabbitmq-com-v1beta1-queue
|
||||
failurePolicy: Fail
|
||||
name: vqueue.kb.io
|
||||
rules:
|
||||
- apiGroups:
|
||||
- rabbitmq.com
|
||||
apiVersions:
|
||||
- v1beta1
|
||||
operations:
|
||||
- CREATE
|
||||
- UPDATE
|
||||
resources:
|
||||
- queues
|
||||
sideEffects: None
|
||||
- admissionReviewVersions:
|
||||
- v1
|
||||
clientConfig:
|
||||
{{- if not .Values.useCertManager }}
|
||||
caBundle: {{ default $ca.Cert .Values.msgTopologyOperator.existingWebhookCertCABundle | b64enc | quote }}
|
||||
{{- end }}
|
||||
service:
|
||||
name: {{ template "rmqco.msgTopologyOperator.webhook.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
path: /validate-rabbitmq-com-v1beta1-schemareplication
|
||||
failurePolicy: Fail
|
||||
name: vschemareplication.kb.io
|
||||
rules:
|
||||
- apiGroups:
|
||||
- rabbitmq.com
|
||||
apiVersions:
|
||||
- v1beta1
|
||||
operations:
|
||||
- CREATE
|
||||
- UPDATE
|
||||
resources:
|
||||
- schemareplications
|
||||
sideEffects: None
|
||||
- admissionReviewVersions:
|
||||
- v1
|
||||
clientConfig:
|
||||
{{- if not .Values.useCertManager }}
|
||||
caBundle: {{ default $ca.Cert .Values.msgTopologyOperator.existingWebhookCertCABundle | b64enc | quote }}
|
||||
{{- end }}
|
||||
service:
|
||||
name: {{ template "rmqco.msgTopologyOperator.webhook.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
path: /validate-rabbitmq-com-v1beta1-shovel
|
||||
failurePolicy: Fail
|
||||
name: vshovel.kb.io
|
||||
rules:
|
||||
- apiGroups:
|
||||
- rabbitmq.com
|
||||
apiVersions:
|
||||
- v1beta1
|
||||
operations:
|
||||
- CREATE
|
||||
- UPDATE
|
||||
resources:
|
||||
- shovels
|
||||
sideEffects: None
|
||||
- admissionReviewVersions:
|
||||
- v1
|
||||
clientConfig:
|
||||
{{- if not .Values.useCertManager }}
|
||||
caBundle: {{ default $ca.Cert .Values.msgTopologyOperator.existingWebhookCertCABundle | b64enc | quote }}
|
||||
{{- end }}
|
||||
service:
|
||||
name: {{ template "rmqco.msgTopologyOperator.webhook.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
path: /validate-rabbitmq-com-v1beta1-user
|
||||
failurePolicy: Fail
|
||||
name: vuser.kb.io
|
||||
rules:
|
||||
- apiGroups:
|
||||
- rabbitmq.com
|
||||
apiVersions:
|
||||
- v1beta1
|
||||
operations:
|
||||
- CREATE
|
||||
- UPDATE
|
||||
resources:
|
||||
- users
|
||||
sideEffects: None
|
||||
- admissionReviewVersions:
|
||||
- v1
|
||||
clientConfig:
|
||||
{{- if not .Values.useCertManager }}
|
||||
caBundle: {{ default $ca.Cert .Values.msgTopologyOperator.existingWebhookCertCABundle | b64enc | quote }}
|
||||
{{- end }}
|
||||
service:
|
||||
name: {{ template "rmqco.msgTopologyOperator.webhook.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
path: /validate-rabbitmq-com-v1beta1-vhost
|
||||
failurePolicy: Fail
|
||||
name: vvhost.kb.io
|
||||
rules:
|
||||
- apiGroups:
|
||||
- rabbitmq.com
|
||||
apiVersions:
|
||||
- v1beta1
|
||||
operations:
|
||||
- CREATE
|
||||
- UPDATE
|
||||
resources:
|
||||
- vhosts
|
||||
sideEffects: None
|
||||
@@ -0,0 +1,46 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
labels: {{- include "common.labels.standard" . | nindent 4 }}
|
||||
app.kubernetes.io/component: messaging-topology-operator
|
||||
app.kubernetes.io/part-of: rabbitmq
|
||||
{{- if .Values.commonLabels }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
name: {{ template "rmqco.msgTopologyOperator.webhook.fullname" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
{{- if or .Values.commonAnnotations .Values.msgTopologyOperator.service.annotations }}
|
||||
annotations:
|
||||
{{- if .Values.msgTopologyOperator.service.annotations }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.msgTopologyOperator.service.annotations "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- if .Values.commonAnnotations }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
spec:
|
||||
type: {{ .Values.msgTopologyOperator.service.type }}
|
||||
{{- if (or (eq .Values.msgTopologyOperator.service.type "LoadBalancer") (eq .Values.msgTopologyOperator.service.type "NodePort")) }}
|
||||
externalTrafficPolicy: {{ .Values.msgTopologyOperator.service.externalTrafficPolicy | quote }}
|
||||
{{- end }}
|
||||
{{ if .Values.msgTopologyOperator.service.clusterIP }}
|
||||
clusterIP: {{ .Values.msgTopologyOperator.service.clusterIP }}
|
||||
{{ end }}
|
||||
{{ if eq .Values.msgTopologyOperator.service.type "LoadBalancer" }}
|
||||
loadBalancerSourceRanges: {{ .Values.msgTopologyOperator.service.loadBalancerSourceRanges }}
|
||||
{{ end }}
|
||||
{{- if (and (eq .Values.msgTopologyOperator.service.type "LoadBalancer") (not (empty .Values.msgTopologyOperator.service.loadBalancerIP))) }}
|
||||
loadBalancerIP: {{ .Values.msgTopologyOperator.service.loadBalancerIP }}
|
||||
{{- end }}
|
||||
ports:
|
||||
- name: http
|
||||
port: {{ .Values.msgTopologyOperator.service.ports.webhook }}
|
||||
targetPort: http-webhook
|
||||
protocol: TCP
|
||||
{{- if (and (or (eq .Values.msgTopologyOperator.service.type "NodePort") (eq .Values.msgTopologyOperator.service.type "LoadBalancer")) (not (empty .Values.msgTopologyOperator.service.nodePorts.http))) }}
|
||||
nodePort: {{ .Values.msgTopologyOperator.service.nodePorts.http }}
|
||||
{{- else if eq .Values.msgTopologyOperator.service.type "ClusterIP" }}
|
||||
nodePort: null
|
||||
{{- end }}
|
||||
selector: {{- include "common.labels.matchLabels" . | nindent 4 }}
|
||||
app.kubernetes.io/component: messaging-topology-operator
|
||||
@@ -1,49 +0,0 @@
|
||||
{{ if .Values.metrics.enabled }}
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
labels: {{- include "common.labels.standard" . | nindent 4 }}
|
||||
app.kubernetes.io/component: rabbitmq-operator
|
||||
app.kubernetes.io/part-of: rabbitmq
|
||||
{{- if .Values.commonLabels }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
name: {{ template "common.names.fullname" . }}-metrics
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
{{- if or .Values.commonAnnotations .Values.metrics.service.annotations }}
|
||||
annotations:
|
||||
{{- if .Values.metrics.service.annotations }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.metrics.service.annotations "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- if .Values.commonAnnotations }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
spec:
|
||||
type: {{ .Values.metrics.service.type }}
|
||||
{{- if (or (eq .Values.metrics.service.type "LoadBalancer") (eq .Values.metrics.service.type "NodePort")) }}
|
||||
externalTrafficPolicy: {{ .Values.metrics.service.externalTrafficPolicy | quote }}
|
||||
{{- end }}
|
||||
{{ if .Values.metrics.service.clusterIP }}
|
||||
clusterIP: {{ .Values.metrics.service.clusterIP }}
|
||||
{{ end }}
|
||||
{{ if eq .Values.metrics.service.type "LoadBalancer" }}
|
||||
loadBalancerSourceRanges: {{ .Values.metrics.service.loadBalancerSourceRanges }}
|
||||
{{ end }}
|
||||
{{- if (and (eq .Values.metrics.service.type "LoadBalancer") (not (empty .Values.metrics.service.loadBalancerIP))) }}
|
||||
loadBalancerIP: {{ .Values.metrics.service.loadBalancerIP }}
|
||||
{{- end }}
|
||||
ports:
|
||||
- name: http
|
||||
port: {{ .Values.metrics.service.port }}
|
||||
targetPort: http
|
||||
protocol: TCP
|
||||
{{- if (and (or (eq .Values.metrics.service.type "NodePort") (eq .Values.metrics.service.type "LoadBalancer")) (not (empty .Values.metrics.service.nodePorts.http))) }}
|
||||
nodePort: {{ .Values.metrics.service.nodePorts.http }}
|
||||
{{- else if eq .Values.metrics.service.type "ClusterIP" }}
|
||||
nodePort: null
|
||||
{{- end }}
|
||||
selector: {{- include "common.labels.matchLabels" . | nindent 4 }}
|
||||
app.kubernetes.io/component: rabbitmq-operator
|
||||
app.kubernetes.io/part-of: rabbitmq
|
||||
{{- end }}
|
||||
@@ -1,16 +0,0 @@
|
||||
{{- if .Values.serviceAccount.create }}
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
labels: {{- include "common.labels.standard" . | nindent 4 }}
|
||||
app.kubernetes.io/component: rabbitmq-operator
|
||||
app.kubernetes.io/part-of: rabbitmq
|
||||
{{- if .Values.commonLabels }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
name: {{ template "rmqco.serviceAccountName" . }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
{{- if .Values.commonAnnotations }}
|
||||
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
@@ -1,32 +0,0 @@
|
||||
{{- if and .Values.metrics.serviceMonitor.enabled .Values.metrics.enabled }}
|
||||
apiVersion: monitoring.coreos.com/v1
|
||||
kind: ServiceMonitor
|
||||
metadata:
|
||||
name: {{ include "common.names.fullname" . }}
|
||||
labels: {{- include "common.labels.standard" . | nindent 4 }}
|
||||
{{- if .Values.commonLabels }}
|
||||
{{- include "common.tplvalues.render" ( dict "value" .Values.commonLabels "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
namespace: {{ .Release.Namespace | quote }}
|
||||
{{- if .Values.commonAnnotations }}
|
||||
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
jobLabel: {{ .Values.metrics.serviceMonitor.jobLabel }}
|
||||
selector:
|
||||
matchLabels: {{- include "common.labels.matchLabels" . | nindent 6 }}
|
||||
namespaceSelector:
|
||||
matchNames:
|
||||
- {{ .Release.Namespace }}
|
||||
endpoints:
|
||||
- port: http
|
||||
{{- if .Values.metrics.serviceMonitor.interval }}
|
||||
interval: {{ .Values.metrics.serviceMonitor.interval }}
|
||||
{{- end }}
|
||||
{{- if .Values.metrics.serviceMonitor.metricRelabelings }}
|
||||
metricRelabelings: {{ toYaml .Values.metrics.serviceMonitor.metricRelabelings | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Values.metrics.serviceMonitor.relabelings }}
|
||||
relabelings: {{ toYaml .Values.metrics.serviceMonitor.relabelings | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user