Helm Values
Helm Values Reference
Section titled “Helm Values Reference”This page documents all available Helm values for customizing your TRIGRA installation.
Quick Reference
Section titled “Quick Reference”helm install trigra ./helm/trigra \ --set replicaCount=2 \ --set github.webhookSecret="your-secret" \ --set service.type=NodePortAll Values
Section titled “All Values”Replica Count
Section titled “Replica Count”# Number of pod replicasreplicaCount: 1For high availability, set to 2 or more.
Image Configuration
Section titled “Image Configuration”image: repository: taiwrash/trigra pullPolicy: IfNotPresent tag: "latest" # Overrides chart appVersion| Value | Default | Description |
|---|---|---|
repository | taiwrash/trigra | Docker image repository |
pullPolicy | IfNotPresent | When to pull the image |
tag | latest | Image tag to deploy |
Service Configuration
Section titled “Service Configuration”service: type: LoadBalancer port: 80 nodePort: "" # Only used if type is NodePort| Value | Default | Description |
|---|---|---|
type | LoadBalancer | Service type: LoadBalancer, NodePort, ClusterIP |
port | 80 | Service port |
nodePort | "" | Specific NodePort (30000-32767) |
Examples:
# NodePort with specific porthelm install trigra ./helm/trigra \ --set service.type=NodePort \ --set service.nodePort=30080
# ClusterIP (internal only)helm install trigra ./helm/trigra \ --set service.type=ClusterIPGitHub Configuration
Section titled “GitHub Configuration”github: token: "" webhookSecret: ""| Value | Default | Description |
|---|---|---|
token | "" | GitHub token for private repos (optional) |
webhookSecret | "" | Required. Secret for webhook validation |
Resource Limits
Section titled “Resource Limits”resources: limits: cpu: 500m memory: 256Mi requests: cpu: 100m memory: 128MiAdjust based on your cluster capacity.
Node Selection
Section titled “Node Selection”nodeSelector: {}# Example:# nodeSelector:# kubernetes.io/arch: amd64# node-type: workerTolerations
Section titled “Tolerations”tolerations: []# Example:# tolerations:# - key: "dedicated"# operator: "Equal"# value: "trigra"# effect: "NoSchedule"Affinity Rules
Section titled “Affinity Rules”affinity: {}# Example for anti-affinity:# affinity:# podAntiAffinity:# requiredDuringSchedulingIgnoredDuringExecution:# - labelSelector:# matchLabels:# app: trigra# topologyKey: kubernetes.io/hostnameTarget Namespace
Section titled “Target Namespace”namespace: defaultThe namespace where TRIGRA deploys resources. Different from the namespace where TRIGRA itself runs.
Service Account
Section titled “Service Account”serviceAccount: create: true name: "" # If empty, uses release name annotations: {}Pod Annotations
Section titled “Pod Annotations”podAnnotations: {}# Example:# podAnnotations:# prometheus.io/scrape: "true"# prometheus.io/port: "8080"Security Context
Section titled “Security Context”securityContext: runAsNonRoot: true runAsUser: 1000 fsGroup: 1000Complete Example
Section titled “Complete Example”replicaCount: 3
image: repository: taiwrash/trigra tag: "v1.0.0" pullPolicy: Always
service: type: LoadBalancer port: 80
github: webhookSecret: "" # Set via --set
namespace: production
resources: limits: cpu: 1000m memory: 512Mi requests: cpu: 200m memory: 256Mi
affinity: podAntiAffinity: requiredDuringSchedulingIgnoredDuringExecution: - labelSelector: matchLabels: app: trigra topologyKey: kubernetes.io/hostname
podAnnotations: prometheus.io/scrape: "true"Deploy with:
helm install trigra ./helm/trigra \ -f values-production.yaml \ --set github.webhookSecret="$WEBHOOK_SECRET"