Skip to content

Install TriggerMesh on Kubernetes with Helm

This guide takes you through installing TriggerMesh on a Kubernetes cluster using our provided Helm charts. The Charts will install the required TriggerMesh custom resource definitions (CRDs) and controllers onto your cluster.


  • Kubernetes v1.22+
  • Knative Serving v1.0.0+
  • Helm 3.0+

Installing Knative Serving

TriggerMesh relies on Knative Serving to run some of its components as Knative Services. We plan to relax this dependency in the near future.

Please refer to the official Knative Serving installation instructions. Knative Eventing is not a prerequisite for TriggerMesh to run, but we do provide compatibility for Knative Eventing users.

Installing the Chart

Add the TriggerMesh chart repository to Helm:

helm repo add triggermesh

To install the chart with the release name triggermesh:

helm install -n triggermesh triggermesh triggermesh/triggermesh --create-namespace

The command deploys the TriggerMesh open-source components and uses the default configuration that can be adapted depending on your needs.

Doesn't work?

Please let us know by filing a GitHub issue.

Uninstalling the Chart

To uninstall the triggermesh deployment:

helm uninstall triggermesh -n triggermesh

The Kubernetes resources associated with chart will be removed and the Helm release will be deleted.


Parameter Description Default
nameOverride Override the name for controller resources ""
fullnameOverride Override the fullname for controller resources ""
image.registry Image registry name
image.tag Image tag .Chart.AppVersion
image.pullPolicy Image pull policy IfNotPresent
imagePullSecrets Specify image pull secrets []
replicaCount Number of replicas 1
rbac.create Create RBAC resources true
serviceAccount.create Create service account for the controller true
serviceAccount.annotations Annotations to add to controller service account {} Override the name for the service account nil
podAnnotations Annotations to add to the controller pod {}
podSecurityContext Security context for controller pods {}
securityContext Security context for controller containers {}
resources Resource requests/limits for the controller {}
nodeSelector Controller node selector {}
tolerations Tolerations for use with node taints []
affinity Assign custom affinity rules to the controller pods {}
webhook.podAnnotations Annotations to add to the webhook pod { 'false'}
webhook.podSecurityContext Security context for webhook pods {}
webhook.securityContext Security context for webhook containers {}
webhook.resources Resource requests/limits for the webhook {}
webhook.nodeSelector Webhook node selector {}
webhook.tolerations Tolerations for use with node taints []
webhook.affinity Assign custom affinity rules to the webhook pods {}