Helm

Helm charts can be found at https://agabani.github.io/tor-operator/index.yaml

Installation

  1. Add the chart repository.

    helm repo add agabani-tor-operator https://agabani.github.io/tor-operator
    
  2. Update the chart repository.

    helm repo update agabani-tor-operator
    
  3. Install the Tor Operator.

    helm upgrade tor-operator agabani-tor-operator/tor-operator \
        --create-namespace \
        --install \
        --namespace tor-operator
    
  4. Test the Tor Operator.

    helm test tor-operator --namespace tor-operator
    

Values

# Default values for tor-operator.
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.

replicaCount: 1

image:
  repository: ghcr.io/agabani/tor-operator
  pullPolicy: IfNotPresent
  # Overrides the image tag whose default is the chart appVersion.
  tag: ""

onionBalance:
  image:
    repository: ghcr.io/agabani/tor-operator
    pullPolicy: IfNotPresent
    tag: "onion-balance-0.2.2.1"

tor:
  image:
    repository: ghcr.io/agabani/tor-operator
    pullPolicy: IfNotPresent
    tag: "tor-0.4.8.13.0"

imagePullSecrets: []
nameOverride: ""
fullnameOverride: ""

customResourceDefinition:
  # Specifies whether a custom resource definition should be created
  create: true
  # Annotations to add to the custom resource definition
  annotations: {}

clusterRole:
  # Specifies whether a cluster role should be created
  create: true
  # Annotations to add to the cluster role
  annotations: {}
  # The name of the cluster role to use.
  # If not set and create is true, a name is generated using the fullname template
  name: ""

clusterRoleBinding:
  # Specifies whether a cluster role binding should be created
  create: true
  # Annotations to add to the cluster role binding
  annotations: {}
  # The name of the cluster role binding to use.
  # If not set and create is true, a name is generated using the fullname template
  name: ""

serviceAccount:
  # Specifies whether a service account should be created
  create: true
  # Annotations to add to the service account
  annotations: {}
  # The name of the service account to use.
  # If not set and create is true, a name is generated using the fullname template
  name: ""

podAnnotations: {}

podSecurityContext:
  # fsGroup: 2000
  runAsNonRoot: true
  runAsUser: 10001

securityContext:
  capabilities:
    drop:
    - ALL
  readOnlyRootFilesystem: true
  # runAsNonRoot: true
  # runAsUser: 1000

service:
  type: ClusterIP
  port: 8080

env:
  # Configures logging
  RUST_LOG:
    value: "info"

resources:
  {}
  # We usually recommend not to specify default resources and to leave this as a conscious
  # choice for the user. This also increases chances charts run on environments with little
  # resources, such as Minikube. If you do want to specify resources, uncomment the following
  # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
  # limits:
  #   cpu: 100m
  #   memory: 128Mi
  # requests:
  #   cpu: 100m
  #   memory: 128Mi

nodeSelector: {}

tolerations: []

affinity: {}

opentelemetry:
  enabled: false
  endpoint: ""