Commit new Chart releases for TrueCharts
Signed-off-by: TrueCharts-Bot <bot@truecharts.org>
This commit is contained in:
parent
5b5c69bbe4
commit
fd7750c2d5
|
@ -1,11 +0,0 @@
|
|||
# Changelog
|
||||
|
||||
|
||||
|
||||
## [kavitaemail-0.0.1]kavitaemail-0.0.1 (2022-10-01)
|
||||
|
||||
### Feat
|
||||
|
||||
- Add kavitaemail ([#3826](https://github.com/truecharts/charts/issues/3826))
|
||||
|
||||
|
|
@ -0,0 +1,19 @@
|
|||
# Changelog
|
||||
|
||||
|
||||
|
||||
## [kavitaemail-0.0.2](https://github.com/truecharts/charts/compare/kavitaemail-0.0.1...kavitaemail-0.0.2) (2022-10-01)
|
||||
|
||||
### Chore
|
||||
|
||||
- Auto-update chart README [skip ci]
|
||||
- Auto-update chart README [skip ci]
|
||||
|
||||
|
||||
|
||||
|
||||
## [kavitaemail-0.0.1]kavitaemail-0.0.1 (2022-10-01)
|
||||
|
||||
### Feat
|
||||
|
||||
- Add kavitaemail ([#3826](https://github.com/truecharts/charts/issues/3826))
|
|
@ -3,4 +3,4 @@ dependencies:
|
|||
repository: https://library-charts.truecharts.org
|
||||
version: 10.6.5
|
||||
digest: sha256:d7d292c2a6b47bf7073864e210e66f0ba2ea60fc6952afcb07de8bb7b4d7c56b
|
||||
generated: "2022-10-01T12:25:27.865999233Z"
|
||||
generated: "2022-10-01T21:26:01.258478055Z"
|
|
@ -1,9 +1,9 @@
|
|||
apiVersion: v2
|
||||
kubeVersion: ">=1.16.0-0"
|
||||
name: kavitaemail
|
||||
version: 0.0.1
|
||||
version: 0.0.2
|
||||
appVersion: "0.1.6"
|
||||
description: Simple email relay server for the kavita.
|
||||
description: Simple email relay server for kavita.
|
||||
type: application
|
||||
deprecated: false
|
||||
home: https://truecharts.org/docs/charts/incubator/kavitaemail
|
|
@ -1,6 +1,6 @@
|
|||
# kavitaemail
|
||||
|
||||
Simple email relay server for the kavita.
|
||||
Simple email relay server for kavita.
|
||||
|
||||
TrueCharts can be installed as both *normal* Helm Charts or as Apps on TrueNAS SCALE.
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
Simple email relay server for the kavita.
|
||||
Simple email relay server for kavita.
|
||||
|
||||
This App is supplied by TrueCharts, for more information visit the manual: [https://truecharts.org/docs/charts/incubator/kavitaemail](https://truecharts.org/docs/charts/incubator/kavitaemail)
|
||||
|
|
@ -29,5 +29,10 @@ service:
|
|||
port: 15003
|
||||
targetPort: 5003
|
||||
|
||||
persistence:
|
||||
config:
|
||||
enabled: false
|
||||
mountPath: /app/config
|
||||
|
||||
portal:
|
||||
enabled: false
|
|
@ -748,6 +748,191 @@ questions:
|
|||
schema:
|
||||
type: int
|
||||
required: true
|
||||
- variable: persistence
|
||||
label: Integrated Persistent Storage
|
||||
description: Integrated Persistent Storage
|
||||
group: Storage and Persistence
|
||||
schema:
|
||||
additional_attrs: true
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: config
|
||||
label: App Config Storage
|
||||
description: Stores the Application Configuration.
|
||||
schema:
|
||||
additional_attrs: true
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: type
|
||||
label: Type of Storage
|
||||
description: Sets the persistence type, Anything other than PVC could break rollback!
|
||||
schema:
|
||||
type: string
|
||||
default: simplePVC
|
||||
enum:
|
||||
- value: simplePVC
|
||||
description: PVC (simple)
|
||||
- value: simpleHP
|
||||
description: Host Path (simple)
|
||||
- value: emptyDir
|
||||
description: emptyDir
|
||||
- value: pvc
|
||||
description: PVC
|
||||
- value: hostPath
|
||||
description: Host Path
|
||||
- value: nfs
|
||||
description: NFS Share
|
||||
- variable: server
|
||||
label: NFS Server
|
||||
schema:
|
||||
show_if: [["type", "=", "nfs"]]
|
||||
type: string
|
||||
default: ""
|
||||
- variable: path
|
||||
label: Path on NFS Server
|
||||
schema:
|
||||
show_if: [["type", "=", "nfs"]]
|
||||
type: string
|
||||
default: ""
|
||||
- variable: setPermissionsSimple
|
||||
label: Automatic Permissions
|
||||
description: Automatically set permissions on install
|
||||
schema:
|
||||
show_if: [["type", "=", "simpleHP"]]
|
||||
type: boolean
|
||||
default: false
|
||||
- variable: setPermissions
|
||||
label: Automatic Permissions
|
||||
description: Automatically set permissions on install
|
||||
schema:
|
||||
show_if: [["type", "=", "hostPath"]]
|
||||
type: boolean
|
||||
default: false
|
||||
- variable: readOnly
|
||||
label: Read Only
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
- variable: hostPathSimple
|
||||
label: Host Path
|
||||
description: Path inside the container the storage is mounted
|
||||
schema:
|
||||
show_if: [["type", "=", "simpleHP"]]
|
||||
type: hostpath
|
||||
- variable: hostPath
|
||||
label: Host Path
|
||||
description: Path inside the container the storage is mounted
|
||||
schema:
|
||||
show_if: [["type", "=", "hostPath"]]
|
||||
type: hostpath
|
||||
- variable: medium
|
||||
label: EmptyDir Medium
|
||||
schema:
|
||||
show_if: [["type", "=", "emptyDir"]]
|
||||
type: string
|
||||
default: ""
|
||||
enum:
|
||||
- value: ""
|
||||
description: Default
|
||||
- value: Memory
|
||||
description: Memory
|
||||
- variable: size
|
||||
label: Size quotum of Storage
|
||||
schema:
|
||||
show_if: [["type", "=", "pvc"]]
|
||||
type: string
|
||||
default: 256Gi
|
||||
- variable: hostPathType
|
||||
label: (Advanced) hostPath Type
|
||||
schema:
|
||||
show_if: [["type", "=", "hostPath"]]
|
||||
type: string
|
||||
default: ""
|
||||
enum:
|
||||
- value: ""
|
||||
description: Default
|
||||
- value: DirectoryOrCreate
|
||||
description: DirectoryOrCreate
|
||||
- value: Directory
|
||||
description: Directory
|
||||
- value: FileOrCreate
|
||||
description: FileOrCreate
|
||||
- value: File
|
||||
description: File
|
||||
- value: Socket
|
||||
description: Socket
|
||||
- value: CharDevice
|
||||
description: CharDevice
|
||||
- value: BlockDevice
|
||||
description: BlockDevice
|
||||
- variable: storageClass
|
||||
label: (Advanced) storageClass
|
||||
description: "Warning: Anything other than SCALE-ZFS or empty will break rollback!"
|
||||
schema:
|
||||
show_if: [["type", "=", "pvc"]]
|
||||
type: string
|
||||
default: SCALE-ZFS
|
||||
- variable: accessMode
|
||||
label: (Advanced) Access Mode
|
||||
description: Allow or disallow multiple PVC's writhing to the same PV
|
||||
schema:
|
||||
show_if: [["type", "=", "pvc"]]
|
||||
type: string
|
||||
default: ReadWriteOnce
|
||||
enum:
|
||||
- value: ReadWriteOnce
|
||||
description: ReadWriteOnce
|
||||
- value: ReadOnlyMany
|
||||
description: ReadOnlyMany
|
||||
- value: ReadWriteMany
|
||||
description: ReadWriteMany
|
||||
- variable: advanced
|
||||
label: Show Advanced Options
|
||||
schema:
|
||||
type: boolean
|
||||
default: false
|
||||
show_subquestions_if: true
|
||||
subquestions:
|
||||
- variable: labelsList
|
||||
label: Labels
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: labelItem
|
||||
label: Label
|
||||
schema:
|
||||
additional_attrs: true
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: name
|
||||
label: Name
|
||||
schema:
|
||||
type: string
|
||||
- variable: value
|
||||
label: Value
|
||||
schema:
|
||||
type: string
|
||||
- variable: annotationsList
|
||||
label: Annotations
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: annotationItem
|
||||
label: Label
|
||||
schema:
|
||||
additional_attrs: true
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: name
|
||||
label: Name
|
||||
schema:
|
||||
type: string
|
||||
- variable: value
|
||||
label: Value
|
||||
schema:
|
||||
type: string
|
||||
- variable: persistenceList
|
||||
label: Additional App Storage
|
||||
group: Storage and Persistence
|
||||
|
@ -950,182 +1135,6 @@ questions:
|
|||
label: Value
|
||||
schema:
|
||||
type: string
|
||||
- variable: ingressList
|
||||
label: Add Manual Custom Ingresses
|
||||
group: Ingress
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: ingressListEntry
|
||||
label: Custom Ingress
|
||||
schema:
|
||||
additional_attrs: true
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: enabled
|
||||
label: Enable Ingress
|
||||
schema:
|
||||
type: boolean
|
||||
default: true
|
||||
hidden: true
|
||||
- variable: name
|
||||
label: Name
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: ingressClassName
|
||||
label: IngressClass Name
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: labelsList
|
||||
label: Labels
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: labelItem
|
||||
label: Label
|
||||
schema:
|
||||
additional_attrs: true
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: name
|
||||
label: Name
|
||||
schema:
|
||||
type: string
|
||||
- variable: value
|
||||
label: Value
|
||||
schema:
|
||||
type: string
|
||||
- variable: annotationsList
|
||||
label: Annotations
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: annotationItem
|
||||
label: Label
|
||||
schema:
|
||||
additional_attrs: true
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: name
|
||||
label: Name
|
||||
schema:
|
||||
type: string
|
||||
- variable: value
|
||||
label: Value
|
||||
schema:
|
||||
type: string
|
||||
- variable: hosts
|
||||
label: Hosts
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: hostEntry
|
||||
label: Host
|
||||
schema:
|
||||
additional_attrs: true
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: host
|
||||
label: HostName
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
required: true
|
||||
- variable: paths
|
||||
label: Paths
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: pathEntry
|
||||
label: Host
|
||||
schema:
|
||||
additional_attrs: true
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: path
|
||||
label: Path
|
||||
schema:
|
||||
type: string
|
||||
required: true
|
||||
default: "/"
|
||||
- variable: pathType
|
||||
label: Path Type
|
||||
schema:
|
||||
type: string
|
||||
required: true
|
||||
default: Prefix
|
||||
- variable: service
|
||||
label: Linked Service
|
||||
schema:
|
||||
additional_attrs: true
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: name
|
||||
label: Service Name
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
- variable: port
|
||||
label: Service Port
|
||||
schema:
|
||||
type: int
|
||||
- variable: tls
|
||||
label: TLS-Settings
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: tlsEntry
|
||||
label: Host
|
||||
schema:
|
||||
additional_attrs: true
|
||||
type: dict
|
||||
attrs:
|
||||
- variable: hosts
|
||||
label: Certificate Hosts
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: host
|
||||
label: Host
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
required: true
|
||||
- variable: scaleCert
|
||||
label: Select TrueNAS SCALE Certificate
|
||||
schema:
|
||||
type: int
|
||||
$ref:
|
||||
- "definitions/certificate"
|
||||
- variable: entrypoint
|
||||
label: Traefik Entrypoint
|
||||
description: Entrypoint used by Traefik when using Traefik as Ingress Provider
|
||||
schema:
|
||||
type: string
|
||||
default: websecure
|
||||
required: true
|
||||
- variable: middlewares
|
||||
label: Traefik Middlewares
|
||||
description: Add previously created Traefik Middlewares to this Ingress
|
||||
schema:
|
||||
type: list
|
||||
default: []
|
||||
items:
|
||||
- variable: name
|
||||
label: Name
|
||||
schema:
|
||||
type: string
|
||||
default: ""
|
||||
required: true
|
||||
- variable: ingress
|
||||
label: ""
|
||||
group: Ingress
|
|
@ -2,6 +2,19 @@
|
|||
|
||||
|
||||
|
||||
## [authentik-7.1.2](https://github.com/truecharts/charts/compare/authentik-7.1.1...authentik-7.1.2) (2022-10-01)
|
||||
|
||||
### Chore
|
||||
|
||||
- Auto-update chart README [skip ci]
|
||||
|
||||
### Fix
|
||||
|
||||
- move some files that left behind ([#3983](https://github.com/truecharts/charts/issues/3983))
|
||||
|
||||
|
||||
|
||||
|
||||
## [authentik-7.1.1](https://github.com/truecharts/charts/compare/authentik-7.1.0...authentik-7.1.1) (2022-10-01)
|
||||
|
||||
### Chore
|
||||
|
@ -84,16 +97,3 @@
|
|||
|
||||
|
||||
|
||||
## [authentik-6.0.4](https://github.com/truecharts/charts/compare/authentik-6.0.3...authentik-6.0.4) (2022-09-21)
|
||||
|
||||
### Chore
|
||||
|
||||
- Auto-update chart README [skip ci]
|
||||
- Auto-update chart README [skip ci]
|
||||
- Auto-update chart README [skip ci]
|
||||
- Auto-update chart README [skip ci]
|
||||
- Auto-update chart README [skip ci]
|
||||
- Auto-update chart README [skip ci]
|
||||
- Auto-update chart README [skip ci]
|
||||
- Auto-update chart README [skip ci]
|
||||
- Auto-update chart README [skip ci]
|
|
@ -9,4 +9,4 @@ dependencies:
|
|||
repository: https://charts.truecharts.org
|
||||
version: 3.0.85
|
||||
digest: sha256:30efd46858717b8c1689ca9990a510b87c2e9eb223e6297bcd93fdafbf86ec1e
|
||||
generated: "2022-10-01T19:38:45.218510225Z"
|
||||
generated: "2022-10-01T21:26:11.985295578Z"
|
|
@ -27,7 +27,7 @@ sources:
|
|||
- https://github.com/truecharts/charts/tree/master/charts/stable/authentik
|
||||
- https://github.com/goauthentik/authentik
|
||||
- https://goauthentik.io/docs/
|
||||
version: 7.1.1
|
||||
version: 7.1.2
|
||||
annotations:
|
||||
truecharts.org/catagories: |
|
||||
- authentication
|
|
@ -0,0 +1,160 @@
|
|||
{{- if hasKey .Values "metrics" }}
|
||||
{{- if and .Values.metrics.enabled .Values.metrics.prometheusRule.enabled }}
|
||||
apiVersion: monitoring.coreos.com/v1
|
||||
kind: PrometheusRule
|
||||
metadata:
|
||||
name: {{ include "tc.common.names.fullname" . }}
|
||||
labels:
|
||||
{{- include "tc.common.labels" . | nindent 4 }}
|
||||
{{- with .Values.metrics.prometheusRule.labels }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
groups:
|
||||
- name: {{ include "tc.common.names.fullname" . }}
|
||||
rules:
|
||||
{{- with .Values.metrics.prometheusRule.rules }}
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
{{- if .Values.metrics.prometheusRule.useDefault }}
|
||||
- name: authentik Aggregate request counters
|
||||
rules:
|
||||
- record: job:django_http_requests_before_middlewares_total:sum_rate30s
|
||||
expr: sum(rate(django_http_requests_before_middlewares_total[30s])) by (job)
|
||||
- record: job:django_http_requests_unknown_latency_total:sum_rate30s
|
||||
expr: sum(rate(django_http_requests_unknown_latency_total[30s])) by (job)
|
||||
- record: job:django_http_ajax_requests_total:sum_rate30s
|
||||
expr: sum(rate(django_http_ajax_requests_total[30s])) by (job)
|
||||
- record: job:django_http_responses_before_middlewares_total:sum_rate30s
|
||||
expr: sum(rate(django_http_responses_before_middlewares_total[30s])) by (job)
|
||||
- record: job:django_http_requests_unknown_latency_including_middlewares_total:sum_rate30s
|
||||
expr: sum(rate(django_http_requests_unknown_latency_including_middlewares_total[30s])) by (job)
|
||||
- record: job:django_http_requests_body_total_bytes:sum_rate30s
|
||||
expr: sum(rate(django_http_requests_body_total_bytes[30s])) by (job)
|
||||
- record: job:django_http_responses_streaming_total:sum_rate30s
|
||||
expr: sum(rate(django_http_responses_streaming_total[30s])) by (job)
|
||||
- record: job:django_http_responses_body_total_bytes:sum_rate30s
|
||||
expr: sum(rate(django_http_responses_body_total_bytes[30s])) by (job)
|
||||
- record: job:django_http_requests_total:sum_rate30s
|
||||
expr: sum(rate(django_http_requests_total_by_method[30s])) by (job)
|
||||
- record: job:django_http_requests_total_by_method:sum_rate30s
|
||||
expr: sum(rate(django_http_requests_total_by_method[30s])) by (job,method)
|
||||
- record: job:django_http_requests_total_by_transport:sum_rate30s
|
||||
expr: sum(rate(django_http_requests_total_by_transport[30s])) by (job,transport)
|
||||
- record: job:django_http_requests_total_by_view:sum_rate30s
|
||||
expr: sum(rate(django_http_requests_total_by_view_transport_method[30s])) by (job,view)
|
||||
- record: job:django_http_requests_total_by_view_transport_method:sum_rate30s
|
||||
expr: sum(rate(django_http_requests_total_by_view_transport_method[30s])) by (job,view,transport,method)
|
||||
- record: job:django_http_responses_total_by_templatename:sum_rate30s
|
||||
expr: sum(rate(django_http_responses_total_by_templatename[30s])) by (job,templatename)
|
||||
- record: job:django_http_responses_total_by_status:sum_rate30s
|
||||
expr: sum(rate(django_http_responses_total_by_status[30s])) by (job,status)
|
||||
- record: job:django_http_responses_total_by_status_name_method:sum_rate30s
|
||||
expr: sum(rate(django_http_responses_total_by_status_name_method[30s])) by (job,status,name,method)
|
||||
- record: job:django_http_responses_total_by_charset:sum_rate30s
|
||||
expr: sum(rate(django_http_responses_total_by_charset[30s])) by (job,charset)
|
||||
- record: job:django_http_exceptions_total_by_type:sum_rate30s
|
||||
expr: sum(rate(django_http_exceptions_total_by_type[30s])) by (job,type)
|
||||
- record: job:django_http_exceptions_total_by_view:sum_rate30s
|
||||
expr: sum(rate(django_http_exceptions_total_by_view[30s])) by (job,view)
|
||||
- name: authentik Aggregate latency histograms
|
||||
rules:
|
||||
- record: job:django_http_requests_latency_including_middlewares_seconds:quantile_rate30s
|
||||
expr: histogram_quantile(0.50, sum(rate(django_http_requests_latency_including_middlewares_seconds_bucket[30s])) by (job, le))
|
||||
labels:
|
||||
quantile: "50"
|
||||
- record: job:django_http_requests_latency_including_middlewares_seconds:quantile_rate30s
|
||||
expr: histogram_quantile(0.95, sum(rate(django_http_requests_latency_including_middlewares_seconds_bucket[30s])) by (job, le))
|
||||
labels:
|
||||
quantile: "95"
|
||||
- record: job:django_http_requests_latency_including_middlewares_seconds:quantile_rate30s
|
||||
expr: histogram_quantile(0.99, sum(rate(django_http_requests_latency_including_middlewares_seconds_bucket[30s])) by (job, le))
|
||||
labels:
|
||||
quantile: "99"
|
||||
- record: job:django_http_requests_latency_including_middlewares_seconds:quantile_rate30s
|
||||
expr: histogram_quantile(0.999, sum(rate(django_http_requests_latency_including_middlewares_seconds_bucket[30s])) by (job, le))
|
||||
labels:
|
||||
quantile: "99.9"
|
||||
- record: job:django_http_requests_latency_seconds:quantile_rate30s
|
||||
expr: histogram_quantile(0.50, sum(rate(django_http_requests_latency_seconds_bucket[30s])) by (job, le))
|
||||
labels:
|
||||
quantile: "50"
|
||||
- record: job:django_http_requests_latency_seconds:quantile_rate30s
|
||||
expr: histogram_quantile(0.95, sum(rate(django_http_requests_latency_seconds_bucket[30s])) by (job, le))
|
||||
labels:
|
||||
quantile: "95"
|
||||
- record: job:django_http_requests_latency_seconds:quantile_rate30s
|
||||
expr: histogram_quantile(0.99, sum(rate(django_http_requests_latency_seconds_bucket[30s])) by (job, le))
|
||||
labels:
|
||||
quantile: "99"
|
||||
- record: job:django_http_requests_latency_seconds:quantile_rate30s
|
||||
expr: histogram_quantile(0.999, sum(rate(django_http_requests_latency_seconds_bucket[30s])) by (job, le))
|
||||
labels:
|
||||
quantile: "99.9"
|
||||
- name: authentik Aggregate model operations
|
||||
rules:
|
||||
- record: job:django_model_inserts_total:sum_rate1m
|
||||
expr: sum(rate(django_model_inserts_total[1m])) by (job, model)
|
||||
- record: job:django_model_updates_total:sum_rate1m
|
||||
expr: sum(rate(django_model_updates_total[1m])) by (job, model)
|
||||
- record: job:django_model_deletes_total:sum_rate1m
|
||||
expr: sum(rate(django_model_deletes_total[1m])) by (job, model)
|
||||
- name: authentik Aggregate database operations
|
||||
rules:
|
||||
- record: job:django_db_new_connections_total:sum_rate30s
|
||||
expr: sum(rate(django_db_new_connections_total[30s])) by (alias, vendor)
|
||||
- record: job:django_db_new_connection_errors_total:sum_rate30s
|
||||
expr: sum(rate(django_db_new_connection_errors_total[30s])) by (alias, vendor)
|
||||
- record: job:django_db_execute_total:sum_rate30s
|
||||
expr: sum(rate(django_db_execute_total[30s])) by (alias, vendor)
|
||||
- record: job:django_db_execute_many_total:sum_rate30s
|
||||
expr: sum(rate(django_db_execute_many_total[30s])) by (alias, vendor)
|
||||
- record: job:django_db_errors_total:sum_rate30s
|
||||
expr: sum(rate(django_db_errors_total[30s])) by (alias, vendor, type)
|
||||
- name: authentik Aggregate migrations
|
||||
rules:
|
||||
- record: job:django_migrations_applied_total:max
|
||||
expr: max(django_migrations_applied_total) by (job, connection)
|
||||
- record: job:django_migrations_unapplied_total:max
|
||||
expr: max(django_migrations_unapplied_total) by (job, connection)
|
||||
- name: authentik Alerts
|
||||
rules:
|
||||
- alert: NoWorkersConnected
|
||||
expr: max without (pid) (authentik_admin_workers) < 1
|
||||
annotations:
|
||||
message: |
|
||||
authentik instance {{ printf "{{ $labels.instance }}" }}'s worker are either not running or not connected.
|
||||
summary: No workers connected
|
||||
for: 10m
|
||||
labels:
|
||||
severity: critical
|
||||
- alert: PendingMigrations
|
||||
expr: max without (pid) (django_migrations_unapplied_total) > 0
|
||||
annotations:
|
||||
message: |
|
||||
authentik instance {{ printf "{{ $labels.instance }}" }} has pending database migrations
|
||||
summary: Pending database migrations
|
||||
for: 10m
|
||||
labels:
|
||||
severity: critical
|
||||
- alert: FailedSystemTasks
|
||||
expr: sum(increase(authentik_system_tasks{status="TaskResultStatus.ERROR"}[2h])) > 0
|
||||
annotations:
|
||||
message: |
|
||||
System task {{ printf "{{ $labels.task_name }}" }} has failed
|
||||
summary: Failed system tasks
|
||||
for: 2h
|
||||
labels:
|
||||
severity: critical
|
||||
- alert: DisconnectedOutposts
|
||||
expr: sum by (outpost) (max without (pid) (authentik_outposts_connected{uid!~"specific.*"})) < 1
|
||||
annotations:
|
||||
message: |
|
||||
Outpost {{ printf "{{ $labels.outpost }}" }} has at least 1 disconnected instance
|
||||
summary: Disconnected outpost
|
||||
for: 30m
|
||||
labels:
|
||||
severity: critical
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
|
@ -0,0 +1,44 @@
|
|||
{{- if hasKey .Values "metrics" }}
|
||||
{{- if .Values.metrics.enabled }}
|
||||
apiVersion: monitoring.coreos.com/v1
|
||||
kind: ServiceMonitor
|
||||
metadata:
|
||||
name: {{ include "tc.common.names.fullname" . }}
|
||||
labels:
|
||||
{{- include "tc.common.labels" . | nindent 4 }}
|
||||
{{- with .Values.metrics.serviceMonitor.labels }}
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
selector:
|
||||
matchLabels:
|
||||
{{- include "tc.common.labels.selectorLabels" . | nindent 6 }}
|
||||
endpoints:
|
||||
- port: metrics
|
||||
{{- with .Values.metrics.serviceMonitor.interval }}
|
||||
interval: {{ . }}
|
||||
{{- end }}
|
||||
{{- with .Values.metrics.serviceMonitor.scrapeTimeout }}
|
||||
scrapeTimeout: {{ . }}
|
||||
{{- end }}
|
||||
path: /metrics
|
||||
|
||||
- port: ldapmetrics
|
||||
{{- with .Values.metrics.serviceMonitor.interval }}
|
||||
interval: {{ . }}
|
||||
{{- end }}
|
||||
{{- with .Values.metrics.serviceMonitor.scrapeTimeout }}
|
||||
scrapeTimeout: {{ . }}
|
||||
{{- end }}
|
||||
path: /metrics
|
||||
|
||||
- port: proxymetrics
|
||||
{{- with .Values.metrics.serviceMonitor.interval }}
|
||||
interval: {{ . }}
|
||||
{{- end }}
|
||||
{{- with .Values.metrics.serviceMonitor.scrapeTimeout }}
|
||||
scrapeTimeout: {{ . }}
|
||||
{{- end }}
|
||||
path: /metrics
|
||||
{{- end }}
|
||||
{{- end }}
|
Loading…
Reference in New Issue