289 lines
7.9 KiB
YAML
289 lines
7.9 KiB
YAML
# Default values for maubot.
|
|
# This is a YAML-formatted file.
|
|
# Declare variables to be passed into your templates.
|
|
|
|
replicaCount: 1
|
|
|
|
image:
|
|
repository: dock.mau.dev/maubot/maubot
|
|
pullPolicy: IfNotPresent
|
|
# Overrides the image tag whose default is the chart appVersion.
|
|
tag: "latest"
|
|
|
|
imagePullSecrets: []
|
|
nameOverride: ""
|
|
fullnameOverride: ""
|
|
|
|
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: ""
|
|
|
|
podAnnotations: {}
|
|
podLabels: {}
|
|
|
|
podSecurityContext: {}
|
|
#fsGroup: 2000
|
|
|
|
|
|
securityContext: {}
|
|
#runAsGroup: 2000
|
|
#runAsUser: 2000
|
|
# capabilities:
|
|
# drop:
|
|
# - ALL
|
|
# readOnlyRootFilesystem: true
|
|
# runAsNonRoot: true
|
|
|
|
# standaloneMode port: 8080
|
|
# normalMode port: 29316
|
|
service:
|
|
type: ClusterIP
|
|
port: 29316
|
|
|
|
ingress:
|
|
enabled: false
|
|
className: "nginx"
|
|
annotations:
|
|
# standalone mode does not need 'app-root' redirect
|
|
nginx.ingress.kubernetes.io/app-root: /_matrix/maubot
|
|
#cert-manager.io/cluster-issuer: "letsencrypt-prod"
|
|
hosts:
|
|
- host: chart-example.local
|
|
paths:
|
|
- path: /
|
|
pathType: ImplementationSpecific
|
|
tls: []
|
|
#- secretName: maubot-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
|
|
|
|
livenessProbe:
|
|
httpGet:
|
|
path: /_matrix/maubot
|
|
port: http
|
|
readinessProbe:
|
|
httpGet:
|
|
path: /_matrix/maubot
|
|
port: http
|
|
|
|
autoscaling:
|
|
enabled: false
|
|
minReplicas: 1
|
|
maxReplicas: 2
|
|
targetCPUUtilizationPercentage: 80
|
|
# targetMemoryUtilizationPercentage: 80
|
|
|
|
# you want to persist a volume as plugins and their configs are stored there
|
|
# this Chart uses longhorn as default storageClass
|
|
persistence:
|
|
enabled: enabled
|
|
accessModes:
|
|
- ReadWriteMany
|
|
size: 10Gi
|
|
storageClassName:
|
|
|
|
# Additional volumes on the output Deployment definition.
|
|
volumes:
|
|
- name: maubot-data
|
|
persistentVolumeClaim:
|
|
claimName: maubot-data
|
|
- name: maubot-config
|
|
configMap:
|
|
name: "maubot-config"
|
|
defaultMode: 0660
|
|
|
|
# - name: foo
|
|
# secret:
|
|
# secretName: mysecret
|
|
# optional: false
|
|
|
|
# Additional volumeMounts on the output Deployment definition.
|
|
volumeMounts:
|
|
- name: maubot-data
|
|
mountPath: "/data"
|
|
- name: maubot-config
|
|
mountPath: "/config.yaml"
|
|
subPath: config.yaml
|
|
|
|
# - name: foo
|
|
# mountPath: "/etc/foo"
|
|
# readOnly: true
|
|
|
|
nodeSelector: {}
|
|
|
|
tolerations: []
|
|
|
|
affinity: {}
|
|
|
|
# configure either Standalone or Normal mode values
|
|
|
|
######## Standalone mode config values ########
|
|
standaloneMode:
|
|
enabled: false
|
|
configSA:
|
|
user:
|
|
# full bot mxid
|
|
id: "@bot:example.com"
|
|
# homeserver you're registering this bot at
|
|
# this is the `server_name` from your homeserver.yaml
|
|
homeserver: https://example.com
|
|
# you need to use maubot-cli to get an access token *and* device_id
|
|
# getting these from element is NOT possible as they will be bootstrapped to a client
|
|
# which makes it unusable for maubot
|
|
access_token:
|
|
device_id:
|
|
# needs to be true for almost any use case
|
|
sync: true
|
|
# Receive appservice transactions? This will add a /_matrix/app/v1/transactions endpoint on
|
|
# the HTTP server configured below. The base_path will not be applied for the /transactions path.
|
|
appservice: false
|
|
# hs_token is needed when `appservice` is true
|
|
hs_token:
|
|
autojoin: true
|
|
displayname: 'Mau Bot'
|
|
# needs to be an `mxc://` url to an existing image on a matrix server
|
|
avatar_url: mxc://maunium.net/AKwRzQkTbggfVZGEqexbYLIO
|
|
ignore_initial_sync: true
|
|
ignore_first_sync: false
|
|
|
|
server:
|
|
hostname: 0.0.0.0
|
|
port: 8080
|
|
# The public URL where the resources are available
|
|
public_url: https://example.com
|
|
# where the plugin's web resources will be served
|
|
# Unlike the normal mode,the webserver is dedicated for a single bot in standalone mode, so the default path
|
|
# is just /. If you want to emulate normal mode, set this to /_matrix/maubot/plugin/something
|
|
base_path: /
|
|
|
|
database:
|
|
# SQLite: sqlite:filename.db
|
|
# Postgres: postgresql://username:password@hostname/dbname
|
|
type: 'sqlite:bot.db'
|
|
# For sqlite, min_size is used as the connection thread pool size and max_size is ignored.
|
|
opts:
|
|
min: 10
|
|
max: 20
|
|
|
|
# for additional "plugins" aka other bots within the maubot framework
|
|
plugin_config:
|
|
has_config: false
|
|
# Who is allowed to use the bot?
|
|
whitelist:
|
|
- "@user:example.com"
|
|
# The prefix for the main command without the !
|
|
command_prefix: myBotCommand
|
|
|
|
# python logging configuration
|
|
logging:
|
|
format: "[%(asctime)s] [%(levelname)s@%(name)s] %(message)s"
|
|
loggers:
|
|
# DEBUG | INFO | WARN | ERROR | CRITICAL
|
|
maubot: DEBUG
|
|
mau: DEBUG
|
|
aiohttp: INFO
|
|
root:
|
|
level: DEBUG
|
|
handlers: console
|
|
|
|
######## Normal mode config values ########
|
|
|
|
normalMode:
|
|
enabled: true
|
|
configN:
|
|
# SQLite: sqlite:filename.db
|
|
# Postgres: postgresql://username:password@hostname/dbname
|
|
#
|
|
# IF SQLite is used enter plugin_database path for sqlite
|
|
database:
|
|
type: sqlite:/data/maubot.db
|
|
# For sqlite, min_size is used as the connection thread pool size and max_size is ignored.
|
|
opts:
|
|
min: 10
|
|
max: 20
|
|
# Separate database URL for the crypto database. "default" means use the same database as above.
|
|
crypto_database: default
|
|
|
|
plugin_directories:
|
|
upload: /data/plugins
|
|
load:
|
|
- /data/plugins
|
|
# set to "delete" to delete immediately
|
|
trash: /data/trash
|
|
plugin_databases:
|
|
# possible values: './plugins' OR null (default in template), but must use postgres
|
|
sqlite: /data/dbs
|
|
# possible values: 'default' (default in template) OR null
|
|
postgres:
|
|
max_conn_per_plugin: 3
|
|
# Overrides for the default database_opts when using a non-"default" postgres connection string.
|
|
postgres_opts: {}
|
|
|
|
server:
|
|
hostname: 0.0.0.0
|
|
port: 29316
|
|
public_url: https://example.com
|
|
ui_base_path: /_matrix/maubot
|
|
plugin_base_path: /_matrix/maubot/plugin/
|
|
override_resource_path: false
|
|
# The shared secret to sign API access tokens.
|
|
# Set to "generate" to generate and save a new token at startup.
|
|
unshared_secret: generate
|
|
|
|
homeservers:
|
|
server_name: matrix.org
|
|
# Client-server API URL
|
|
url: https://matrix-client.matrix.org
|
|
# registration_shared_secret from synapse config
|
|
# You can leave this empty if you don't have access to the homeserver.
|
|
# When this is empty, `mbc auth --register` won't work, but `mbc auth` (login) will.
|
|
secret: null
|
|
|
|
admins:
|
|
# leave password empty to prevent normal login
|
|
# passwords need to be bcrypt'ed https://bcrypt-generator.com
|
|
#username: "password"
|
|
|
|
api_feature:
|
|
login: true
|
|
plugin: true
|
|
plugin_upload: true
|
|
instance: true
|
|
instance_database: true
|
|
client: true
|
|
client_proxy: true
|
|
client_auth: true
|
|
dev_open: false
|
|
log: true
|
|
|
|
# python logging configuration
|
|
logging:
|
|
c_format: "[%(asctime)s] [%(levelname)s@%(name)s] %(message)s"
|
|
n_format: "[%(asctime)s] [%(levelname)s@%(name)s] %(message)s"
|
|
loggers:
|
|
# DEBUG | INFO | WARN | ERROR | CRITICAL
|
|
maubot: DEBUG
|
|
mau: DEBUG
|
|
aiohttp: INFO
|
|
root:
|
|
level: DEBUG
|
|
handlers: file,console |