replicaCount: 1

initContainers: []
  # - name: init-myservice
  #   image: busybox
  #   command: ['sh', '-c', 'chown -R 1000:1000 /storage']

image:
  repository: mintplexlabs/anythingllm
  pullPolicy: IfNotPresent
  tag: "1.9.0"

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

persistentVolume:
  # AnythingLLM storage data Persistent Volume access modes
  # Must match those of existing PV or dynamic provisioner
  # Ref: http://kubernetes.io/docs/user-guide/persistent-volumes/
  #
  accessModes:
    - ReadWriteOnce

  # AnythingLLM storage data Persistent Volume labels
  #
  labels: {}

  # AnythingLLM storage data Persistent Volume annotations
  #
  annotations: {}

  # AnythingLLM storage data Persistent Volume  existing claim name
  # If defined, PVC must be created manually before volume will be bound
  #
  existingClaim: ""

  # AnythingLLM storage data Persistent Volume size
  #
  size: 8Gi

  # AnythingLLM storage data Persistent Volume mount path
  # Must match the STORAGE_DIR config value
  #
  mountPath: /app/server/storage

  # AnythingLLM storage data Persistent Volume Storage Class
  # If defined, storageClassName: <storageClass>
  # If set to "-", storageClassName: "", which disables dynamic provisioning
  # If undefined (the default) or set to null, no storageClassName spec is
  #   set, choosing the default provisioner.  (gp2 on AWS, standard on
  #   GKE, AWS & OpenStack)
  #
  storageClass: ""

  # AnythingLLM storage data Persistent Volume Claim Selector
  # Useful if Persistent Volumes have been provisioned in advance
  # Ref: https://kubernetes.io/docs/concepts/storage/persistent-volumes/#selector
  #
  selector: {}
  # selector:
  #  matchLabels:
  #    release: "stable"
  #  matchExpressions:
  #    - { key: environment, operator: In, values: [ dev ] }
  
  # AnythingLLM storage data Persistent Volume Name
  # Useful if Persistent Volumes have been provisioned in advance and you want to use a specific one
  #
  volumeName: ""

serviceAccount:
  # Specifies whether a service account should be created
  create: true
  # Automatically mount a ServiceAccount's API credentials?
  automount: 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: ""

# The Anything LLM application  deployment strategy
# This is set to "Recreate" by default as AnythingLLM support is not yet
# production ready.  Once it is, this can be changed to "RollingUpdate"
# Ref: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#strategy
#
strategy:
  # Type of deployment. Can be "Recreate" or "RollingUpdate". Default is "Recreate"
  type: Recreate
  # If type is "RollingUpdate", the following values can be set:
  # rollingUpdate:
  #   maxUnavailable: 1
  #   maxSurge: 1

podAnnotations: {}
podLabels: {}

podSecurityContext:
  # fsGroup needs to be set as the same as the uid/gid used to run the application
  # in order to have the right permissions on mounted volumes
  fsGroup: 1000

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

# AnythingLLM configuration options, these are stored in a ConfigMap and passed
# to the container as environment variables.
# See https://github.com/Mintplex-Labs/anything-llm/blob/render/docker/.env.example
# for all available environment variables to use as configuration options
#
config:
  DISABLE_TELEMETRY: "true"
  NODE_ENV: production
  STORAGE_DIR: /app/server/storage
  UID: "1000"
  GID: "1000"

# The preferred method for setting secret environment variables
# Ref: https://kubernetes.io/docs/tasks/inject-data-application/distribute-credentials-secure/#define-a-container-environment-variable-with-data-from-a-single-secret
#
env: {}
# - name: OPEN_AI_KEY
#   valueFrom:
#     secretKeyRef:
#       name: openai-secret
#       key: openai_key

# Typically used to reference a pre existing Secret containing multiple environment variables
# Ref: https://kubernetes.io/docs/tasks/inject-data-application/distribute-credentials-secure/#define-a-container-environment-variable-with-data-from-a-single-secret
#
envFrom: {}
  # - secretRef:
  #     name: mysecret

service:
  type: ClusterIP
  port: 3001

ingress:
  enabled: false
  className: ""
  annotations: {}
    # kubernetes.io/ingress.class: nginx
    # kubernetes.io/tls-acme: "true"
  hosts:
    - host: chart-example.local
      paths:
        - path: /
          pathType: ImplementationSpecific
  tls: []
  #  - secretName: chart-example-tls
  #    hosts:
  #      - chart-example.local

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

readinessProbe:
  httpGet:
    path: /v1/api/health
    port: 8888
  initialDelaySeconds: 15
  periodSeconds: 5
  successThreshold: 2
livenessProbe:
  httpGet:
    path: /v1/api/health
    port: 8888
  initialDelaySeconds: 15
  periodSeconds: 5
  failureThreshold: 3

# Additional volumes on the output Deployment definition.
#
volumes: []
# - name: foo
#   secret:
#     secretName: mysecret
#     optional: false

# Additional volumeMounts on the output Deployment definition.
#
volumeMounts: []
# - name: foo
#   mountPath: "/etc/foo"
#   readOnly: true

nodeSelector: {}

tolerations: []

affinity: {}

## Array of extra manifests/obhects to create
#
extraObjects: []
# - apiVersion: external-secrets.io/v1beta1
#   kind: ExternalSecret
#   metadata:
#     name: open-ai-api-key-external-secret
#     namespace: default
#   spec:
#     refreshInterval: 1h
#     secretStoreRef:
#       name: vault
#       kind: ClusterSecretStore
#     target:
#       name: open-ai-api-key-secret
#       template:
#         type: Opaque
#     data:
#       - secretKey: open_ai_key
#         remoteRef:
#           key: secret/data/anything-llm
#           property: open_ai_key

