feat(argo-events): Upgrade argo-events to v1.7.0 (#1269)
* feat(argo-events) : Upgrade argo-events to v1.7.0 Signed-off-by: Petr Drastil <petr.drastil@gmail.com> * Fix typos Signed-off-by: Petr Drastil <petr.drastil@gmail.com> * Add missing braces Signed-off-by: Petr Drastil <petr.drastil@gmail.com> * Use templates for service account names Signed-off-by: Petr Drastil <petr.drastil@gmail.com> * Drop application labels Signed-off-by: Petr Drastil <petr.drastil@gmail.com> * Update documentation Signed-off-by: Petr Drastil <petr.drastil@gmail.com> * Move CRDs to template folder Signed-off-by: Petr Drastil <petr.drastil@gmail.com> * Disable webhook by default Signed-off-by: Petr Drastil <petr.drastil@gmail.com> * Fix indentation Signed-off-by: Petr Drastil <petr.drastil@gmail.com> * Update README Signed-off-by: Petr Drastil <petr.drastil@gmail.com> * Drop prefix from aggregate-roles Signed-off-by: Petr Drastil <petr.drastil@gmail.com> * Fix typo aggragate-roles.yaml -> aggregate-roles.yaml Signed-off-by: Marco Kilchhofer <mkilchhofer@users.noreply.github.com> * Use helm-docs.sh Signed-off-by: Marco Kilchhofer <mkilchhofer@users.noreply.github.com> * Fix typo REALEASE -> RELEASE Signed-off-by: Marco Kilchhofer <mkilchhofer@users.noreply.github.com> * Use consistent wording/style Signed-off-by: Marco Kilchhofer <mkilchhofer@users.noreply.github.com> Co-authored-by: Marco Kilchhofer <mkilchhofer@users.noreply.github.com>
This commit is contained in:
parent
99f97cafd9
commit
d2c2055290
32 changed files with 1520 additions and 909 deletions
|
|
@ -1,29 +1,43 @@
|
|||
# Argo-Events Chart
|
||||
|
||||
This is a **community maintained** chart. It installs the [argo-events](https://github.com/argoproj/argo-events) application. This application comes packaged with:
|
||||
|
||||
- Sensor Custom Resource Definition (See CRD Notes)
|
||||
- EventSource Custom Resource Definition (See CRD Notes)
|
||||
- EventBus Custom Resource Definition (See CRD Notes)
|
||||
- Sensor Controller Deployment
|
||||
- EventSource Controller Deployment
|
||||
- EventBus Controller Deployment
|
||||
- Service Account
|
||||
- Roles
|
||||
- Role Bindings
|
||||
- Cluster Roles
|
||||
- Cluster Role Bindings
|
||||
- Controller Deployment
|
||||
- Validation Webhook Deployment
|
||||
- Service Accounts
|
||||
- Roles / Cluster Roles
|
||||
- Role Bindings / Cluster Role Bindings
|
||||
|
||||
To regenerate this document, from the root of this chart directory run:
|
||||
To regenerate this document, please run:
|
||||
|
||||
```shell
|
||||
docker run --rm --volume "$(pwd):/helm-docs" -u $(id -u) jnorwood/helm-docs:latest
|
||||
./scripts/helm-docs.sh
|
||||
```
|
||||
|
||||
## Notes on CRD Installation
|
||||
## Upgrading
|
||||
|
||||
Some users would prefer to install the CRDs _outside_ of the chart. You can disable the CRD installation of this chart by using `--skip-crds` when installing the chart.
|
||||
### Custom resource definitions
|
||||
|
||||
You can install the CRDs manually from `crds` folder.
|
||||
Some users would prefer to install the CRDs _outside_ of the chart. You can disable the CRD installation of this chart by using `--set crds.install=false` when installing the chart.
|
||||
|
||||
You can install the CRDs manually from `templates/crds` folder.
|
||||
|
||||
### 2.0.*
|
||||
|
||||
Custom resource definitions were moved to `templates` folder so they can be managed by Helm.
|
||||
|
||||
To adopt already created CRDs please use following command:
|
||||
|
||||
```bash
|
||||
for crd in "eventbus.argoproj.io" "eventsources.argoproj.io" "sensors.argoproj.io"; do
|
||||
kubectl label --overwrite crd $crd app.kubernetes.io/managed-by=Helm
|
||||
kubectl annotate --overwrite crd $crd meta.helm.sh/release-namespace=<YOUR_NAMESPACE>
|
||||
kubectl annotate --overwrite crd $crd meta.helm.sh/release-name=<YOUR_HELM_RELEASE>
|
||||
done
|
||||
```
|
||||
|
||||
## Values
|
||||
|
||||
|
|
@ -31,81 +45,135 @@ You can install the CRDs manually from `crds` folder.
|
|||
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
| additionalSaNamespaces | list | `[]` | Create service accounts in additional namespaces specified The SA will always be created in the release namespaces |
|
||||
| additionalServiceAccountRules | list | (See [values.yaml]) | Additional rules |
|
||||
| createAggregateRoles | bool | `true` | Create clusterroles that extend existing clusterroles to interact with argo-events CRDs. Only applies for cluster-wide installation (`singleNamespace: true`) |
|
||||
| configs.jetstream.settings.maxFileStore | int | `-1` | Maximum size of the file storage (e.g. 20G) |
|
||||
| configs.jetstream.settings.maxMemoryStore | int | `-1` | Maximum size of the memory storage (e.g. 1G) |
|
||||
| configs.jetstream.streamConfig.duplicates | string | `"300s"` | Not documented at the moment |
|
||||
| configs.jetstream.streamConfig.maxAge | string | `"72h"` | Maximum age of existing messages, i.e. “72h”, “4h35m” |
|
||||
| configs.jetstream.streamConfig.maxBytes | string | `"1GB"` | |
|
||||
| configs.jetstream.streamConfig.maxMsgs | int | `1000000` | Maximum number of messages before expiring oldest message |
|
||||
| configs.jetstream.streamConfig.replicas | int | `3` | Number of replicas, defaults to 3 and requires minimal 3 |
|
||||
| configs.jetstream.versions | list | `[]` | |
|
||||
| configs.nats.versions | list | `[]` (See [values.yaml]) | Supported versions of NATS event bus |
|
||||
| crds.annotations | object | `{}` | Annotations to be added to all CRDs |
|
||||
| crds.install | bool | `true` | Install and upgrade CRDs |
|
||||
| crds.keep | bool | `true` | Keep CRDs on chart uninstall |
|
||||
| createAggregateRoles | bool | `false` | Create clusterroles that extend existing clusterroles to interact with argo-events crds Only applies for cluster-wide installation (`controller.rbac.namespaced: false`) |
|
||||
| fullnameOverride | string | `""` | String to fully override "argo-events.fullname" template |
|
||||
| imagePullPolicy | string | `"Always"` | The image pull policy |
|
||||
| imagePullSecrets | list | `[]` | Secrets with credentials to pull images from a private registry |
|
||||
| nameOverride | string | `""` | String to partially override "argo-events.fullname" template |
|
||||
| registry | string | `"quay.io"` | docker registry |
|
||||
| securityContext | object | `{"runAsNonRoot":true,"runAsUser":9731}` | Common PodSecurityContext for all controllers |
|
||||
| serviceAccount | string | `"argo-events-sa"` | ServiceAccount to use for running controller. |
|
||||
| serviceAccountAnnotations | object | `{}` | Annotations applied to created service account. Can be used to enable GKE workload identity, or other use-cases |
|
||||
| singleNamespace | bool | `true` | Whether to run in namespaced scope. Set `singleNamespace` to false to have the controllers listen on all namespaces. Otherwise the controllers will listen on the namespace where the chart is installed in. |
|
||||
| global.additionalLabels | object | `{}` | Additional labels to add to all resources |
|
||||
| global.hostAliases | list | `[]` | Mapping between IP and hostnames that will be injected as entries in the pod's hosts files |
|
||||
| global.image.imagePullPolicy | string | `"IfNotPresent"` | If defined, a imagePullPolicy applied to all Argo Events deployments |
|
||||
| global.image.repository | string | `"quay.io/argoproj/argo-events"` | If defined, a repository applied to all Argo Events deployments |
|
||||
| global.image.tag | string | `""` | Overrides the global Argo Events image tag whose default is the chart appVersion |
|
||||
| global.imagePullSecrets | list | `[]` | If defined, uses a Secret to pull an image from a private Docker registry or repository |
|
||||
| global.podAnnotations | object | `{}` | Annotations for the all deployed pods |
|
||||
| global.podLabels | object | `{}` | Labels for the all deployed pods |
|
||||
| global.securityContext | object | `{}` | Toggle and define securityContext. See [values.yaml] |
|
||||
| nameOverride | string | `"argo-events"` | Provide a name in place of `argo-events` |
|
||||
| openshift | bool | `false` | Deploy on OpenShift |
|
||||
|
||||
### Event Bus Controller
|
||||
### Controller
|
||||
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
| eventbusController.affinity | object | `{}` | Assign custom [affinity] rules to the event bus controller |
|
||||
| eventbusController.containerSecurityContext | object | `{}` | Event bus controller container-level security context |
|
||||
| eventbusController.extraEnv | list | `[]` | Additional environment variables to pass to event bus controller |
|
||||
| eventbusController.image | string | `"argoproj/argo-events"` | Repository to use for the event bus controller |
|
||||
| eventbusController.name | string | `"eventbus-controller"` | Event bus controller name |
|
||||
| eventbusController.natsMetricsExporterImage | string | `"natsio/prometheus-nats-exporter:0.8.0"` | NATS metrics exporter container image to use for the event bus |
|
||||
| eventbusController.natsStreamingImage | string | `"nats-streaming:0.22.1"` | NATS streaming container image to use for the event bus |
|
||||
| eventbusController.nodeSelector | object | `{}` | [Node selector] |
|
||||
| eventbusController.podAnnotations | object | `{}` | Annotations to be added to event bus controller pods |
|
||||
| eventbusController.podLabels | object | `{}` | Labels to be added to event event bus controller pods |
|
||||
| eventbusController.priorityClassName | string | `""` | Priority class for the event bus controller |
|
||||
| eventbusController.replicaCount | int | `1` | The number of event bus controller pods to run |
|
||||
| eventbusController.resources | object | `{}` | Resource limits and requests for the event bus controller pods |
|
||||
| eventbusController.tag | string | `""` (default is the chart appVersion) | Overrides the image tag |
|
||||
| eventbusController.tolerations | list | `[]` | [Tolerations] for use with node taints |
|
||||
| controller.affinity | object | `{}` | Assign custom [affinity] rules to the deployment |
|
||||
| controller.containerSecurityContext | object | `{}` | Events controller container-level security context |
|
||||
| controller.env | list | `[]` | Environment variables to pass to events controller |
|
||||
| controller.envFrom | list | `[]` (See [values.yaml]) | envFrom to pass to events controller |
|
||||
| controller.extraContainers | list | `[]` | Additional containers to be added to the events controller pods |
|
||||
| controller.image.imagePullPolicy | string | `""` (defaults to global.image.imagePullPolicy) | Image pull policy for the events controller |
|
||||
| controller.image.repository | string | `""` (defaults to global.image.repository) | Repository to use for the events controller |
|
||||
| controller.image.tag | string | `""` (defaults to global.image.tag) | Tag to use for the events controller |
|
||||
| controller.initContainers | list | `[]` | Init containers to add to the events controller pods |
|
||||
| controller.livenessProbe.failureThreshold | int | `3` | Minimum consecutive failures for the [probe] to be considered failed after having succeeded |
|
||||
| controller.livenessProbe.initialDelaySeconds | int | `10` | Number of seconds after the container has started before [probe] is initiated |
|
||||
| controller.livenessProbe.periodSeconds | int | `10` | How often (in seconds) to perform the [probe] |
|
||||
| controller.livenessProbe.successThreshold | int | `1` | Minimum consecutive successes for the [probe] to be considered successful after having failed |
|
||||
| controller.livenessProbe.timeoutSeconds | int | `1` | Number of seconds after which the [probe] times out |
|
||||
| controller.metrics.enabled | bool | `false` | Deploy metrics service |
|
||||
| controller.metrics.service.annotations | object | `{}` | Metrics service annotations |
|
||||
| controller.metrics.service.labels | object | `{}` | Metrics service labels |
|
||||
| controller.metrics.service.servicePort | int | `8082` | Metrics service port |
|
||||
| controller.metrics.serviceMonitor.additionalLabels | object | `{}` | Prometheus ServiceMonitor labels |
|
||||
| controller.metrics.serviceMonitor.enabled | bool | `false` | Enable a prometheus ServiceMonitor |
|
||||
| controller.metrics.serviceMonitor.interval | string | `"30s"` | Prometheus ServiceMonitor interval |
|
||||
| controller.metrics.serviceMonitor.metricRelabelings | list | `[]` | Prometheus [MetricRelabelConfigs] to apply to samples before ingestion |
|
||||
| controller.metrics.serviceMonitor.namespace | string | `""` | Prometheus ServiceMonitor namespace |
|
||||
| controller.metrics.serviceMonitor.relabelings | list | `[]` | Prometheus [RelabelConfigs] to apply to samples before scraping |
|
||||
| controller.metrics.serviceMonitor.selector | object | `{}` | Prometheus ServiceMonitor selector |
|
||||
| controller.name | string | `"controller-manager"` | Argo Events controller name string |
|
||||
| controller.nodeSelector | object | `{}` | [Node selector] |
|
||||
| controller.pdb.annotations | object | `{}` | Annotations to be added to events controller pdb |
|
||||
| controller.pdb.enabled | bool | `false` | Deploy a PodDisruptionBudget for the events controller |
|
||||
| controller.pdb.labels | object | `{}` | Labels to be added to events controller pdb |
|
||||
| controller.podAnnotations | object | `{}` | Annotations to be added to events controller pods |
|
||||
| controller.podLabels | object | `{}` | Labels to be added to events controller pods |
|
||||
| controller.priorityClassName | string | `""` | Priority class for the events controller pods |
|
||||
| controller.rbac.enabled | bool | `true` | Create events controller RBAC |
|
||||
| controller.rbac.namespaced | bool | `false` | Restrict events controller to operate only in a single namespace instead of cluster-wide scope. |
|
||||
| controller.rbac.rules | list | `[]` | Additional user rules for event controller's rbac |
|
||||
| controller.readinessProbe.failureThreshold | int | `3` | Minimum consecutive failures for the [probe] to be considered failed after having succeeded |
|
||||
| controller.readinessProbe.initialDelaySeconds | int | `10` | Number of seconds after the container has started before [probe] is initiated |
|
||||
| controller.readinessProbe.periodSeconds | int | `10` | How often (in seconds) to perform the [probe] |
|
||||
| controller.readinessProbe.successThreshold | int | `1` | Minimum consecutive successes for the [probe] to be considered successful after having failed |
|
||||
| controller.readinessProbe.timeoutSeconds | int | `1` | Number of seconds after which the [probe] times out |
|
||||
| controller.replicas | int | `1` | The number of events controller pods to run. |
|
||||
| controller.resources | object | `{}` | Resource limits and requests for the events controller pods |
|
||||
| controller.serviceAccount.annotations | object | `{}` | Annotations applied to created service account |
|
||||
| controller.serviceAccount.automountServiceAccountToken | bool | `true` | Automount API credentials for the Service Account |
|
||||
| controller.serviceAccount.create | bool | `true` | Create a service account for the events controller |
|
||||
| controller.serviceAccount.name | string | `""` | Service account name |
|
||||
| controller.tolerations | list | `[]` | [Tolerations] for use with node taints |
|
||||
| controller.topologySpreadConstraints | list | `[]` | Assign custom [TopologySpreadConstraints] rules to the events controller |
|
||||
| controller.volumeMounts | list | `[]` | Additional volumeMounts to the events controller main container |
|
||||
| controller.volumes | list | `[]` | Additional volumes to the events controller pod |
|
||||
|
||||
### Event Source Controller
|
||||
### Webhook
|
||||
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
| eventsourceController.affinity | object | `{}` | Assign custom [affinity] rules to the event source controller |
|
||||
| eventsourceController.containerSecurityContext | object | `{}` | Event source controller container-level security context |
|
||||
| eventsourceController.eventsourceImage | string | `"argoproj/argo-events"` | Repository to use for the event source image |
|
||||
| eventsourceController.extraEnv | list | `[]` | Additional environment variables to pass to event source controller |
|
||||
| eventsourceController.image | string | `"argoproj/argo-events"` | Repository to use for the event source controller |
|
||||
| eventsourceController.name | string | `"eventsource-controller"` | Event source controller name |
|
||||
| eventsourceController.nodeSelector | object | `{}` | [Node selector] |
|
||||
| eventsourceController.podAnnotations | object | `{}` | Annotations to be added to event source controller pods |
|
||||
| eventsourceController.podLabels | object | `{}` | Labels to be added to event source controller pods |
|
||||
| eventsourceController.priorityClassName | string | `""` | Priority class for the event source controller |
|
||||
| eventsourceController.replicaCount | int | `1` | The number of event source controller pods to run |
|
||||
| eventsourceController.resources | object | `{}` | Resource limits and requests for the event source controller pods |
|
||||
| eventsourceController.tag | string | `""` (default is the chart appVersion) | Overrides the image tag |
|
||||
| eventsourceController.tolerations | list | `[]` | [Tolerations] for use with node taints |
|
||||
|
||||
### Sensor Controller
|
||||
|
||||
| Key | Type | Default | Description |
|
||||
|-----|------|---------|-------------|
|
||||
| sensorController.affinity | object | `{}` | Assign custom [affinity] rules to the sensor controller |
|
||||
| sensorController.containerSecurityContext | object | `{}` | Sensor controllers container-level security context |
|
||||
| sensorController.extraEnv | list | `[]` | Additional environment variables to pass to sensor controller |
|
||||
| sensorController.image | string | `"argoproj/argo-events"` | Repository to use for the sensor controller |
|
||||
| sensorController.name | string | `"sensor-controller"` | Sensor controller name |
|
||||
| sensorController.nodeSelector | object | `{}` | [Node selector] |
|
||||
| sensorController.podAnnotations | object | `{}` | Annotations to be added to sensor controller pods |
|
||||
| sensorController.podLabels | object | `{}` | Labels to be added to sensor controller pods |
|
||||
| sensorController.priorityClassName | string | `""` | Priority class for the sensor controller |
|
||||
| sensorController.replicaCount | int | `1` | The number of sensor controller pods to run |
|
||||
| sensorController.resources | object | `{}` | Resource limits and requests for the sensor controller pods |
|
||||
| sensorController.sensorImage | string | `"argoproj/argo-events"` | Repository to use for the sensor image |
|
||||
| sensorController.tag | string | `""` (default is the chart appVersion) | Overrides the image tag |
|
||||
| sensorController.tolerations | list | `[]` | [Tolerations] for use with node taints |
|
||||
| webhook.affinity | object | `{}` | Assign custom [affinity] rules to the deployment |
|
||||
| webhook.containerSecurityContext | object | `{}` | Event controller container-level security context |
|
||||
| webhook.enabled | bool | `false` | Enable admission webhook. Applies only for cluster-wide installation |
|
||||
| webhook.env | list | `[]` (See [values.yaml]) | Environment variables to pass to event controller |
|
||||
| webhook.envFrom | list | `[]` (See [values.yaml]) | envFrom to pass to event controller |
|
||||
| webhook.image.imagePullPolicy | string | `""` (defaults to global.image.imagePullPolicy) | Image pull policy for the event controller |
|
||||
| webhook.image.repository | string | `""` (defaults to global.image.repository) | Repository to use for the event controller |
|
||||
| webhook.image.tag | string | `""` (defaults to global.image.tag) | Tag to use for the event controller |
|
||||
| webhook.livenessProbe.failureThreshold | int | `3` | Minimum consecutive failures for the [probe] to be considered failed after having succeeded |
|
||||
| webhook.livenessProbe.initialDelaySeconds | int | `10` | Number of seconds after the container has started before [probe] is initiated |
|
||||
| webhook.livenessProbe.periodSeconds | int | `10` | How often (in seconds) to perform the [probe] |
|
||||
| webhook.livenessProbe.successThreshold | int | `1` | Minimum consecutive successes for the [probe] to be considered successful after having failed |
|
||||
| webhook.livenessProbe.timeoutSeconds | int | `1` | Number of seconds after which the [probe] times out |
|
||||
| webhook.name | string | `"events-webhook"` | Argo Events admission webhook name string |
|
||||
| webhook.nodeSelector | object | `{}` | [Node selector] |
|
||||
| webhook.pdb.annotations | object | `{}` | Annotations to be added to admission webhook pdb |
|
||||
| webhook.pdb.enabled | bool | `false` | Deploy a PodDisruptionBudget for the admission webhook |
|
||||
| webhook.pdb.labels | object | `{}` | Labels to be added to admission webhook pdb |
|
||||
| webhook.podAnnotations | object | `{}` | Annotations to be added to event controller pods |
|
||||
| webhook.podLabels | object | `{}` | Labels to be added to event controller pods |
|
||||
| webhook.priorityClassName | string | `""` | Priority class for the event controller pods |
|
||||
| webhook.readinessProbe.failureThreshold | int | `3` | Minimum consecutive failures for the [probe] to be considered failed after having succeeded |
|
||||
| webhook.readinessProbe.initialDelaySeconds | int | `10` | Number of seconds after the container has started before [probe] is initiated |
|
||||
| webhook.readinessProbe.periodSeconds | int | `10` | How often (in seconds) to perform the [probe] |
|
||||
| webhook.readinessProbe.successThreshold | int | `1` | Minimum consecutive successes for the [probe] to be considered successful after having failed |
|
||||
| webhook.readinessProbe.timeoutSeconds | int | `1` | Number of seconds after which the [probe] times out |
|
||||
| webhook.replicas | int | `1` | The number of webhook pods to run. |
|
||||
| webhook.resources | object | `{}` | Resource limits and requests for the event controller pods |
|
||||
| webhook.serviceAccount.annotations | object | `{}` | Annotations applied to created service account |
|
||||
| webhook.serviceAccount.automountServiceAccountToken | bool | `true` | Automount API credentials for the Service Account |
|
||||
| webhook.serviceAccount.create | bool | `true` | Create a service account for the admission webhook |
|
||||
| webhook.serviceAccount.name | string | `""` | Service account name |
|
||||
| webhook.tolerations | list | `[]` | [Tolerations] for use with node taints |
|
||||
| webhook.topologySpreadConstraints | list | `[]` | Assign custom [TopologySpreadConstraints] rules to the event controller |
|
||||
| webhook.volumeMounts | list | `[]` | Additional volumeMounts to the event controller main container |
|
||||
| webhook.volumes | list | `[]` | Additional volumes to the event controller pod |
|
||||
|
||||
----------------------------------------------
|
||||
Autogenerated from chart metadata using [helm-docs](https://github.com/norwoodj/helm-docs)
|
||||
|
||||
[affinity]: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
|
||||
[Node selector]: https://kubernetes.io/docs/user-guide/node-selection/
|
||||
[probe]: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes
|
||||
[Tolerations]: https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
|
||||
[TopologySpreadConstraints]: https://kubernetes.io/docs/concepts/workloads/pods/pod-topology-spread-constraints/
|
||||
[values.yaml]: values.yaml
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue