Files
k8scd/owntracks/mosquitto-helm.yaml
T
2025-03-09 18:10:57 +01:00

167 lines
5.4 KiB
YAML

apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: mosquitto-helm
namespace: argocd
finalizers:
- resources-finalizer.argocd.argoproj.io
spec:
syncPolicy:
syncOptions:
- CreateNamespace=true
automated:
prune: true
selfHeal: true
project: default
sources:
- chart: mosquitto
repoURL: https://storage.googleapis.com/t3n-helm-charts
targetRevision: v2.4.1 # Replace with the Longhorn version you'd like to install or upgrade to
helm:
values: |
replicaCount: 1
strategyType: Recreate
image:
repository: eclipse-mosquitto
tag: 1.6.12
pullPolicy: IfNotPresent
imagePullSecrets: []
nameOverride: ""
fullnameOverride: ""
serviceAccount:
# Specifies whether a service account should be created
create: true
# The name of the service account to use.
# If not set and create is true, a name is generated using the fullname template
name:
service:
type: ClusterIP
externalTrafficPolicy: Local
annotations: {}
# metallb.universe.tf/allow-shared-ip: pi-hole
ports:
mqtt:
port: 1883
# sets consistent nodePort, required to set service.type=NodePort
# nodePort: 31883
protocol: TCP
websocket:
port: 9090
protocol: TCP
persistence:
enabled: true
accessMode: ReadWriteOnce
existingClaim: ""
mountPath: /mosquitto/data
subPath: ""
## database 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: "-"
size: 1Gi
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
podSecurityContext: {}
# runAsUser: 1001
# fsGroup: 10000
securityContext: {}
# runAsUser: 1001
# fsGroup: 10000
nodeSelector: {}
tolerations: []
affinity: {}
authentication:
passwordEntries: ""
# To use authentication with mosquitto, you can set a list of password entries to be used.
# reference https://mosquitto.org/man/mosquitto_passwd-1.html to generate these entries.
# For example:
# passwordEntries: |-
# user1:$6$BKzw0RKerxV4Esbj$Uz5slWGB1TiOtYIEokEl0eR1YSEQAdKpcdRYMsLYbwjktlVzdLyGk41YCPGyMLnBePtdwPhkcm8kjGI0R9s57w==
# user2:$6$b5vYuHrSLj48Ii32$NjlbnatIaUQSsNvxxTpawpav6NPyZ8QhGrdEVGtyU1rgEGjNzVGKlstRg29FV6MFTPs/ugPA8D5I5+qRcIMXSg==
passwordFilePath: "/etc/mosquitto/passwordfile"
authorization:
acls: ""
# To use authorizations with mosquitto, you can set a list of per user or pattern-based rules.
# reference https://mosquitto.org/man/mosquitto-conf-5.html for further information.
# For example:
# acls: |-
# zigbee2mqtt ACLs
# user zigbee2mqtt
# topic readwrite zigbee2mqtt/#
# topic readwrite homeassistant/#
# Tasmota-compatible ACLs
# pattern read cmnd/%u/#
# pattern write stat/%u/#
# pattern write tele/%u/#
aclfilePath: "/etc/mosquitto/aclfile"
existingConfigMap: ""
config: |
persistence true
persistence_location /mosquitto/data/
log_dest stdout
listener 1883
listener 9090
protocol websockets
## Additional volumes.
extraVolumes: []
# - name: tls
# secret:
# secretName: mosquitto-certs
## Additional volumeMounts to the main container.
extraVolumeMounts: []
# - name: tls
# mountPath: /certs
# subPath: cafile
monitoring:
podMonitor:
enabled: false
sidecar:
enabled: false
port: 9234
# nodePort: 32234
image:
repository: nolte/mosquitto-exporter
tag: v0.6.3
pullPolicy: IfNotPresent
resources:
limits:
cpu: 300m
memory: 128Mi
requests:
cpu: 100m
memory: 64Mi
destination:
server: https://kubernetes.default.svc
namespace: owntracks