Compare commits

...

48 Commits

Author SHA1 Message Date
cedricve
839c6ba0f5 Update terminology to use "Agent" instead of "Kerberos Agent" for consistency across documentation and templates 2026-06-22 13:21:19 +00:00
Cédric Verstraeten
52757a66ae Merge pull request #108 from kerberos-io/feature/optional-disable-frontend-demo
feature/optional-disable-frontend-demo
2026-06-02 20:40:36 +02:00
Cédric Verstraeten
e664e78d01 Add topology/volume hooks and bump chart
Bump chart version to 0.113.0 and add optional pod topologySpreadConstraints, volumes and volumeMounts hooks across many templates (admin, oauth2-proxy, kerberoshub services, kerberospipeline components, and vault components). Add conditionals to control rendering of hub-api and hub-frontend Services and make the demo front-end conditional on demoEnabled. Update values.yaml with new defaults (empty arrays) and commented examples for topologySpreadConstraints, volumes and volumeMounts for each relevant component.
2026-06-02 20:36:50 +02:00
Cédric Verstraeten
14508d3ebf Merge pull request #107 from kerberos-io/feature/override-translation-file
feature/override-translation-file
2026-06-01 09:50:05 +02:00
Cédric Verstraeten
5b15104951 Refactor code structure for improved readability and maintainability 2026-06-01 07:42:20 +00:00
Kilian
daa17bb623 Merge pull request #106 from kerberos-io/KilianBoute-patch-1
Bump chart version to 0.111.0
2026-05-29 17:02:53 +02:00
Kilian
cf4b475ad0 Bump chart version to 0.111.0 2026-05-29 17:02:40 +02:00
Kilian
262a572302 Merge pull request #105 from kerberos-io/feature/cases-max-retention-days
feat(hub): add casesMaxRetentionDays cap
2026-05-29 16:54:44 +02:00
Kilian Boute
0800e56f00 feat(hub): add video edits feature toggle in values.yaml and templates 2026-05-29 14:53:29 +00:00
Kilian
398ddc0a15 feat(hub): add casesMaxRetentionDays cap
New optional value kerberoshub.api.casesMaxRetentionDays exposed to the
hub-api container as CASES_MAX_RETENTION_DAYS. Acts as a hard ceiling
on a task's expires_at; "0" (the default) disables the cap and
preserves existing behavior. Mirrors the existing
defaultTaskRetentionDays plumbing.
2026-05-29 10:51:21 +00:00
Cédric Verstraeten
9d51b0ef48 Merge pull request #104 from kerberos-io/feature/add-mongodb-flavor-variable
feature/add-mongodb-flavor-variable
2026-05-26 15:21:00 +02:00
Cédric Verstraeten
c47bb70777 Bump chart version to 0.110.0 2026-05-26 13:16:17 +00:00
Cédric Verstraeten
250a3aa124 Merge branch 'main' into feature/add-mongodb-flavor-variable 2026-05-26 15:13:33 +02:00
Cédric Verstraeten
9524f43157 Merge pull request #103 from kerberos-io/feature/move-credentials-to-api
feature/move-credentials-to-api
2026-05-26 15:13:10 +02:00
Cédric Verstraeten
d85758389a Bump chart version to 0.109.0 2026-05-26 13:12:35 +00:00
Cédric Verstraeten
8ce56a0fbd Add MongoDB flavor variable to configuration options 2026-05-26 12:58:57 +00:00
Cédric Verstraeten
932ded63a1 Bump chart version to 0.109.0 2026-05-26 11:32:39 +00:00
Cédric Verstraeten
ca30ebfd3c Move MQTT and TURN credentials to hub-api for enhanced security 2026-05-26 06:50:39 +00:00
Cédric Verstraeten
ea5705c03c Merge pull request #102 from kerberos-io/feature/update-readme
Feature/update readme
2026-05-25 21:53:51 +02:00
Cédric Verstraeten
acac39eccd Update README.md to include default live stream mode parameter 2026-05-25 19:45:01 +00:00
Cédric Verstraeten
029f288f4d Update README.md 2026-05-25 21:39:48 +02:00
Cédric Verstraeten
376819719f Merge pull request #101 from kerberos-io/feature/add-pagination-feature-flag
feature/add-pagination-feature-flag
2026-05-25 21:26:02 +02:00
Cédric Verstraeten
0b2a4fb8a9 Bump chart version to 0.108.0 for release 2026-05-25 19:23:09 +00:00
Cédric Verstraeten
12cf8218c3 Remove deprecated front-end configuration options and update documentation for internationalization 2026-05-25 19:16:57 +00:00
Cédric Verstraeten
3767a430fc Add pagination feature for live view in hub charts 2026-05-25 17:10:33 +00:00
Cédric Verstraeten
5061ba014a Merge pull request #100 from kerberos-io/feature/add-task-retention-add-internalization
feature/add-task-retention-add-internalization
2026-05-22 16:35:48 +02:00
Cédric Verstraeten
3e54eef0d3 Bump hub chart and set retention to 0
Update Chart.yaml version to 0.107.0 and change kerberoshub.defaultTaskRetentionDays in values.yaml from "365" to "0". This adjusts the chart version and updates the default task retention value (used by kerberoshub.api.defaultTaskRetentionDays).
2026-05-22 16:31:28 +02:00
Cédric Verstraeten
291ac48102 Add task retention and internationalization features to hub charts 2026-05-22 13:00:47 +00:00
Kilian
88ff3e9e33 Merge pull request #98 from kerberos-io/KilianBoute-bump-chart-version
Bump chart version to 0.106.0
2026-05-13 12:04:14 +02:00
Kilian
58e8f2d8d9 Merge pull request #99 from kerberos-io/add-redaction-template
redaction template
2026-05-13 12:03:59 +02:00
Kilian
555b69c15a redaction template 2026-05-13 11:58:46 +02:00
Kilian
6f82740be8 Bump chart version to 0.106.0 2026-05-13 11:44:20 +02:00
Kilian
8a739069d9 Merge pull request #97 from kerberos-io/Add-redaction-service
Add redaction service configuration to values.yaml
2026-05-13 10:41:26 +02:00
Kilian
6c52794509 Add redaction service configuration to values.yaml
Added configuration for redaction service including repository, pull policy, tag, replicas, log level, and resource requests/limits.
2026-05-13 10:37:09 +02:00
Kilian
f07230406a Merge pull request #95 from kerberos-io/Export-Add-player.html-path
Add-player.html-path
2026-05-08 11:27:25 +02:00
Cédric Verstraeten
f5b45a5e0d Merge pull request #96 from kerberos-io/feature/add-workflow-enabled
feature/add-workflow-enabled
2026-05-06 20:48:47 +02:00
Cédric Verstraeten
5bf9f4cefa Add workflows feature flag and bump chart version
Expose a WORKFLOWS feature flag to the frontend by adding FEATURE_WORKFLOWS_ENABLED to both hub-frontend and hub-frontend-demo deployment templates. Add a default `kerberoshub.frontend.features.workflows.enabled: "false"` in values.yaml so the feature is off by default. Bump chart version from 0.104.0 to 0.105.0 to reflect the changes.
2026-05-06 20:42:00 +02:00
Kilian
05c2a0d04d Add-player.html-path 2026-05-06 15:39:32 +02:00
Cédric Verstraeten
e7b90f5953 Merge pull request #94 from kerberos-io/public-release-1777896450
A new public release - 1777896450
2026-05-04 14:08:57 +02:00
uug4ai
ae7cf770e8 A new public release - 1777896450 2026-05-04 12:07:32 +00:00
Cédric Verstraeten
078b64d474 Merge pull request #93 from kerberos-io/public-release-1776688403
A new public release - 1776688403
2026-04-20 14:47:37 +02:00
uug4ai
4e160c4b9d A new public release - 1776688403 2026-04-20 12:33:25 +00:00
Cédric Verstraeten
e7aeacae17 Merge pull request #92 from kerberos-io/cedricve-patch-3
Add invoice and suitcase SVG icons to icons.js
2026-04-16 17:24:24 +02:00
Cédric Verstraeten
a307e6a3f2 Add invoice and suitcase SVG icons to icons.js 2026-04-16 17:20:33 +02:00
Kilian
0878453ed9 Merge pull request #91 from kerberos-io/Add-cleanup-fields
Add cleanup fields
2026-04-10 16:48:52 +02:00
Kilian
52f3124ee7 Add configurable options for hub-cleanup service in values.yaml and update README 2026-04-10 16:45:22 +02:00
Kilian
ea3186cdaa Add configurable options for hub-cleanup service in values.yaml and update README 2026-04-10 16:44:38 +02:00
Cédric Verstraeten
e25e63c841 Merge pull request #90 from kerberos-io/feature/update-values-yaml
feature/update-values-yaml
2026-04-03 10:06:24 +02:00
33 changed files with 4052 additions and 542 deletions

View File

@@ -16,7 +16,7 @@ type: application
# This is the chart version. This version number should be incremented each time you make changes
# to the chart and its templates, including the app version.
# Versions are expected to follow Semantic Versioning (https://semver.org/)
version: 0.104.0
version: 0.113.0
# This is the version number of the application being deployed. This version number should be
# incremented each time you make changes to the application. Versions are not expected to

View File

@@ -1,6 +1,6 @@
# Kerberos Hub
Kerberos Hub is the single pane of glass for your Kerberos agents. It comes with a best of breed open source technology stack, modular and scale first mindset, and allows you to build and maintain an everless growing video surveillance and video analytics landscape.
Kerberos Hub is the single pane of glass for your Agents. It comes with a best of breed open source technology stack, modular and scale first mindset, and allows you to build and maintain an everless growing video surveillance and video analytics landscape.
![Kerberos Hub Interface](assets/images/hub-dashboard.png)
@@ -37,114 +37,118 @@ Below all configuration options and parameters are listed.
| Name | Description | Value |
| ------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | ----- |
| `license` | The license key you received from support@kerberos.io. If not available request one. | `""` |
| `license` | The license key you received from support@kerberos.io. If not available request one. | `"L/+DAwEBB2xpY2Vuc2UB/4QAAQIBB1BheWxvYWQBCgABCVNpZ25hdHVyZQEKAAAA/gMk/4QB/gEZ/8sQACxnaXRodWIuY29tL3V1Zy1haS9odWItbGljZW5zZS9tb2RlbHMuTGljZW5zZX8DAQEHTGljZW5zZQH/gAABDAECSWQB/4IAAQNLZXkBDAABB0NvbXBhbnkBDAABB0V4cFRpbWUBBAABBERheXMBBAABB0NhbWVyYXMBBAABBVNpdGVzAQQAAQZWYXVsdHMBBAABCk1lZGlhTGltaXQBBAABCVBlcnBldHVhbAECAAEGQWN0aXZlAQIAAQlJcEFkZHJlc3MBDAAAABj/gQEBAQhPYmplY3RJRAH/ggABBgEYAAAy/4AvAQwAAAAAAAAAAAAAAAACDGZyZWUtbGljZW5zZQH81iZi6gH+AtoBEAEUARQDAQAB/gIAfeXxQb6kaPfAgOWeSAE6qEiQviFD6sciNmNfMel1mEL53FeV0GQe4cYBip9wyJag35az8A1yppxSymZD5V4my2FckyN2zmEW4E2sO/v+8eKepiAGYEzrKtfNCLxdWLmrHd0zjYQ3qk+PNfoPyzCOefeulw3aFsqBlzg9wDkF8cRx6tUW0qNTzki6sFGOuLoxS49cWqsftAvZmt+CRWa8u0VArIAjOpywN0RIZCkEYzp5RYF3LSVyWYEyvVhjE19DDnevzpJyCHRsIHTRcpTQkhboeapOdlEz8cx+PaOvxktN8hBWceTAH+nw96FARG7y6Cpjw3xo+NV1xb0tvRXGaGoK77JnErKLhd/haXji98rGvMakDt18WSbQfTVS84+Fw+/gKGsW3uS3fROAaZw1kZj4PgsEPZDvbVkCVyuS0O87UoYqpxH8S4by8cTF3wDP7FwyIRZbEbYjN2wzHSmlADYOBtdsdb1VGm7wvtB85vML9n7ZSlIpJdqfci06mGks102mDyG2LRMhUEvpUW3D/weErIvj2WiAwf6r0EUj+LO8VmAsYkME9da7FXEN6Vg/5f1u485LOpYki332RaDOhDn2eMG9DVb/HnmQSFagX+XXc/QwfsWiehCgKYGk4jQpyklTqoGu8BAt6Sm8CaoH8ngZ3cHLQT5DcZElV36/N/wA"` |
| `licenseServer.url` | The license server for validating the license of your Kerberos Hub, by default `'"https://license.kerberos.io/verify"'`. | `""` |
| `licenseServer.token` | The license server API token to sign the license validation by default `'214%ˆ#ddfsf@#3rfdsgl_)23sffeqasSwefDSFNBM'`. | `""` |
| `environment` | A colored banner will be shown on top of the application to illustrate a non-production environment: `staging`, `demo`, .. | `""` |
| `isPrivate` | Global StorageClass for Persistent Volume(s) | `""` |
| `readOnly` | This will stop any write process to mongodb or any processing done in the Kerberos Hub pipeline. | `""` |
| `environment` | A colored banner will be shown on top of the application to illustrate a non-production environment: `staging`, `demo`, .. | `"production"` |
| `isPrivate` | Global StorageClass for Persistent Volume(s) | `true` |
| `readOnly` | This will stop any write process to mongodb or any processing done in the Kerberos Hub pipeline. | `false` |
| `mode` | Deployment mode: `all`, `pipeline`, or `ui`. `all` renders everything, `pipeline` only pipeline services, `ui` only hub services. | `"all"` |
| `global.imageRegistry` | Global container registry override used for all images. | `""` |
| `ingress` | The ingress being used for `kerberoshub.api.url` and `kerberoshub.frontend.url`. | `""` |
| `mongodb.host` | MongoDB hostname (`'mongodb:27017'`) or mongodb replicas (`'mongodb-0:27017,mongodb-1:27017'`). | `""` |
| `mongodb.adminDatabase` | MongoDB admin database, this is named `admin` by default. | `""` |
| `mongodb.authenticationMechanism` | MongoDB authentication mechanism (for example `SCRAM-SHA-256`). | `""` |
| `mongodb.username` | MongoDB user account, we are using in the hub installation `'root'`. | `""` |
| `mongodb.password` | MongoDB user password, by default `'yourmongodbpassword'` | `""` |
| `mongodb.retryWrites` | Enable or disable MongoDB retryable writes. | `""` |
| `mqtt.host` | MQTT (Vernemq) hostname. | `""` |
| `mqtt.port` | MQTT (Vernemq) port for WSS (secure sockets), by default `'8443'`. | `""` |
| `mqtt.protocol` | MQTT (Vernemq) protocol, by default `'wss'`. | `""` |
| `mqtt.username` | MQTT (Vernemq) username, by default `'yourusername'`. | `""` |
| `mqtt.password` | MQTT (Vernemq) password, by default `'yourpassword'`. | `""` |
| `ingress` | The ingress being used for `kerberoshub.api.url` and `kerberoshub.frontend.url`. | `"nginx"` |
| `mongodb.host` | MongoDB hostname (`'mongodb:27017'`) or mongodb replicas (`'mongodb-0:27017,mongodb-1:27017'`). | `"mongodb.mongodb"` |
| `mongodb.adminDatabase` | MongoDB admin database, this is named `admin` by default. | `"admin"` |
| `mongodb.authenticationMechanism` | MongoDB authentication mechanism (for example `SCRAM-SHA-256`). | `"SCRAM-SHA-256"` |
| `mongodb.username` | MongoDB user account, we are using in the hub installation `'root'`. | `"yourusername"` |
| `mongodb.password` | MongoDB user password, by default `'yourmongodbpassword'` | `"yourpassword"` |
| `mongodb.retryWrites` | Enable or disable MongoDB retryable writes. | `"true"` |
| `mongodb.flavor` | Backend engine flavor: `"mongodb"` (native MongoDB / Atlas) or `"documentdb"` (AWS DocumentDB). The `documentdb` flavor disables features DocumentDB does not support (geospatial queries/indexes, complex `$lookup` pipelines). When set to `documentdb`, also set `mongodb.retryWrites: "false"`. | `"mongodb"` |
| `mqtt.host` | MQTT (Vernemq) hostname. | `"mqtt.yourdomain.com"` |
| `mqtt.port` | MQTT (Vernemq) port for WSS (secure sockets), by default `'8443'`. | `"8443"` |
| `mqtt.protocol` | MQTT (Vernemq) protocol, by default `'wss'`. | `"wss"` |
| `mqtt.username` | MQTT (Vernemq) username, by default `'yourusername'`. | `"yourusername"` |
| `mqtt.password` | MQTT (Vernemq) password, by default `'yourpassword'`. | `"yourpassword"` |
| `mqtt.legacy.host` | Legacy MQTT broker host used for backward-compatible clients. | `""` |
| `mqtt.legacy.port` | Legacy MQTT broker port used for backward-compatible clients. | `""` |
| `queueProvider` | The queue we are using for the [pipeline](https://doc.kerberos.io/hub/pipeline/): 'SQS', 'KAFKA' or `RABBITMQ`. | `""` |
| `queueName` | The event queue which is propagating messages in the [Kerberos Hub pipeline](https://doc.kerberos.io/hub/pipeline/). | `""` |
| `rabbitmq.host` | RabbitMQ host, by default `'rabbitmq.yourdomain.com:5671'` | `""` |
| `rabbitmq.username` | RabbitMQ username, by default `'yourusername'` | `""` |
| `rabbitmq.password` | RabbitMQ password, by default `'yourpassword'` | `""` |
| `queueProvider` | The queue we are using for the [pipeline](https://doc.kerberos.io/hub/pipeline/): 'SQS', 'KAFKA' or `RABBITMQ`. | `"RABBITMQ"` |
| `queueName` | The event queue which is propagating messages in the [Kerberos Hub pipeline](https://doc.kerberos.io/hub/pipeline/). | `"kcloud-event-queue"` |
| `rabbitmq.host` | RabbitMQ host, by default `'rabbitmq.yourdomain.com:5671'` | `"rabbitmq.rabbitmq:5672"` |
| `rabbitmq.username` | RabbitMQ username, by default `'yourusername'` | `"yourusername"` |
| `rabbitmq.password` | RabbitMQ password, by default `'yourpassword'` | `"yourpassword"` |
| `rabbitmq.exchange` | RabbitMQ exchange, by default `''` | `""` |
| `kafka.broker` | Kafka brokers, by default `'kafka1.yourdomain.com:9094,kafka2.yourdomain.com:9094'` | `""` |
| `kafka.username` | Kafka username, by default `'yourusername'` | `""` |
| `kafka.password` | Kafka password, by default `'yourpassword'` | `""` |
| `kafka.mechanism` | Kafka mechanism, by default `'PLAIN'` | `""` |
| `kafka.security` | Kafka security, by default `'SASL_PLAINTEXT'` | `""` |
| `turn.host` | TURN/STUN hostname, by default `'turn:turn.yourdomain.com:8443'` | `""` |
| `turn.username` | TURN/STUN username, by default `'username1'` | `""` |
| `turn.password` | TURN/STUN password, by default `'password1'` | `""` |
| `opentelemetry.enabled` | Enable or disable OpenTelemetry instrumentation. | `""` |
| `opentelemetry.routingEnabled` | Enable or disable OpenTelemetry routing/export behavior. | `""` |
| `opentelemetry.collector.endpoint` | OpenTelemetry collector endpoint used for trace export. | `""` |
| `openai.enabled` | Enable or disable OpenAI-backed semantic features. | `""` |
| `openai.apikey` | OpenAI API key used when OpenAI integration is enabled. | `""` |
| `kerberosvault.uri` | The default Kerberos Vault uri (you can add multiple within the app), by default `'https://api.storage.yourdomain.com'` | `""` |
| `kerberosvault.provider` | The default Kerberos Vault provider`'a-provider'` | `""` |
| `kerberosvault.accesskey` | The default Kerberos Vault access key, by default `'xxx'` | `""` |
| `kerberosvault.secretkey` | The default Kerberos Vault secret key, by default `'xxx'` | `""` |
| `kerberosvault.archive.provider` | When a task is created, the relevant recording is moved to this provider `'an-archive-provider'` | `""` |
| `kerberosvault.archive.accesskey` | When a task is created, the relevant recording is moved to another provider, using this access key `'xxx'` | `""` |
| `kerberosvault.archive.secretkey` | When a task is created, the relevant recording is moved to another provider, using this secret key`'xxx'` | `""` |
| `kerberosvault.thumbnail.provider` | Configuration value for `kerberosvault.thumbnail.provider`. | `""` |
| `kerberosvault.thumbnail.accessKey` | Access key for `kerberosvault.thumbnail`. | `""` |
| `kerberosvault.thumbnail.secretKey` | Secret key for `kerberosvault.thumbnail`. | `""` |
| `kerberosvault.sprite.provider` | Configuration value for `kerberosvault.sprite.provider`. | `""` |
| `kerberosvault.sprite.accessKey` | Access key for `kerberosvault.sprite`. | `""` |
| `kerberosvault.sprite.secretKey` | Secret key for `kerberosvault.sprite`. | `""` |
| `admin.repository` | Container image repository for `admin`. | `""` |
| `admin.pullPolicy` | Image pull policy for `admin`. | `""` |
| `admin.tag` | Container image tag/version for `admin`. | `""` |
| `admin.replicas` | Number of replicas for `admin`. | `""` |
| `admin.logLevel` | Log verbosity level for `admin`. | `""` |
| `admin.resources.requests.memory` | Memory request for `admin`. | `""` |
| `admin.resources.requests.cpu` | CPU request for `admin`. | `""` |
| `admin.url` | URL for `admin`. | `""` |
| `kafka.broker` | Kafka brokers, by default `'kafka1.yourdomain.com:9094,kafka2.yourdomain.com:9094'` | `"kafka1.yourdomain.com:9094"` |
| `kafka.username` | Kafka username, by default `'yourusername'` | `"yourusername"` |
| `kafka.password` | Kafka password, by default `'yourpassword'` | `"yourpassword"` |
| `kafka.mechanism` | Kafka mechanism, by default `'PLAIN'` | `"PLAIN"` |
| `kafka.security` | Kafka security, by default `'SASL_PLAINTEXT'` | `"SASL_PLAINTEXT"` |
| `turn.host` | TURN/STUN hostname, by default `'turn:turn.yourdomain.com:8443'` | `"turn:turn.yourdomain.com:8443"` |
| `turn.username` | TURN/STUN username, by default `'username1'` | `"username1"` |
| `turn.password` | TURN/STUN password, by default `'password1'` | `"password1"` |
| `opentelemetry.enabled` | Enable or disable OpenTelemetry instrumentation. | `false` |
| `opentelemetry.routingEnabled` | Enable or disable OpenTelemetry routing/export behavior. | `false` |
| `opentelemetry.collector.endpoint` | OpenTelemetry collector endpoint used for trace export. | `"http://otel-collector:4317"` |
| `openai.enabled` | Enable or disable OpenAI-backed semantic features. | `false` |
| `openai.apikey` | OpenAI API key used when OpenAI integration is enabled. | `"xxx"` |
| `kerberosvault.uri` | The default Kerberos Vault uri (you can add multiple within the app), by default `'https://api.storage.yourdomain.com'` | `"https://api.vault.yourdomain.com"` |
| `kerberosvault.provider` | The default Kerberos Vault provider`'a-provider'` | `"a-provider"` |
| `kerberosvault.accesskey` | The default Kerberos Vault access key, by default `'xxx'` | `"xxx"` |
| `kerberosvault.secretkey` | The default Kerberos Vault secret key, by default `'xxx'` | `"xxx"` |
| `kerberosvault.archive.provider` | When a task is created, the relevant recording is moved to this provider `'an-archive-provider'` | `"an-archive-provider"` |
| `kerberosvault.archive.accesskey` | When a task is created, the relevant recording is moved to another provider, using this access key `'xxx'` | `"xxx"` |
| `kerberosvault.archive.secretkey` | When a task is created, the relevant recording is moved to another provider, using this secret key`'xxx'` | `"xxx"` |
| `kerberosvault.thumbnail.provider` | Configuration value for `kerberosvault.thumbnail.provider`. | `"a-thumbnail-provider"` |
| `kerberosvault.thumbnail.accessKey` | Access key for `kerberosvault.thumbnail`. | `"xxx"` |
| `kerberosvault.thumbnail.secretKey` | Secret key for `kerberosvault.thumbnail`. | `"xxx"` |
| `kerberosvault.sprite.provider` | Configuration value for `kerberosvault.sprite.provider`. | `"a-sprite-provider"` |
| `kerberosvault.sprite.accessKey` | Access key for `kerberosvault.sprite`. | `"xxx"` |
| `kerberosvault.sprite.secretKey` | Secret key for `kerberosvault.sprite`. | `"xxx"` |
| `admin.repository` | Container image repository for `admin`. | `"uugai/admin"` |
| `admin.pullPolicy` | Image pull policy for `admin`. | `"IfNotPresent"` |
| `admin.tag` | Container image tag/version for `admin`. | `"v1.3.0"` |
| `admin.replicas` | Number of replicas for `admin`. | `2` |
| `admin.logLevel` | Log verbosity level for `admin`. | `"info"` |
| `admin.resources.requests.memory` | Memory request for `admin`. | `"100Mi"` |
| `admin.resources.requests.cpu` | CPU request for `admin`. | `"250m"` |
| `admin.url` | URL for `admin`. | `"admin.yourdomain.com"` |
| `admin.tls.secretName` | Kubernetes Secret name used by `admin.tls`. | `""` |
| `admin.oauth2Proxy.enabled` | Enable or disable `admin.oauth2Proxy`. | `""` |
| `admin.oauth2Proxy.github.clientId` | Client ID used by `admin.oauth2Proxy.github`. | `""` |
| `admin.oauth2Proxy.github.clientSecret` | Client secret used by `admin.oauth2Proxy.github`. | `""` |
| `admin.oauth2Proxy.github.cookieSecret` | Cookie secret used by `admin.oauth2Proxy.github`. | `""` |
| `admin.oauth2Proxy.github.organization` | Organization value used by `admin.oauth2Proxy.github`. | `""` |
| `admin.oauth2Proxy.github.team` | Team value used by `admin.oauth2Proxy.github`. | `""` |
| `kerberoshub.extraEnv` | Additional environment variables injected into Kerberos Hub pods. | `""` |
| `kerberoshub.serviceAccount.create` | Create or manage `kerberoshub.serviceAccount` resources. | `""` |
| `admin.oauth2Proxy.enabled` | Enable or disable `admin.oauth2Proxy`. | `false` |
| `admin.oauth2Proxy.github.clientId` | Client ID used by `admin.oauth2Proxy.github`. | `"github-client-id"` |
| `admin.oauth2Proxy.github.clientSecret` | Client secret used by `admin.oauth2Proxy.github`. | `"github-client-secret"` |
| `admin.oauth2Proxy.github.cookieSecret` | Cookie secret used by `admin.oauth2Proxy.github`. | `"generate-a-random-cookie-secret"` |
| `admin.oauth2Proxy.github.organization` | Organization value used by `admin.oauth2Proxy.github`. | `"github-organization"` |
| `admin.oauth2Proxy.github.team` | Team value used by `admin.oauth2Proxy.github`. | `"github-team"` |
| `kerberoshub.extraEnv` | Additional environment variables injected into Kerberos Hub pods. | `[]` |
| `kerberoshub.serviceAccount.create` | Create or manage `kerberoshub.serviceAccount` resources. | `false` |
| `kerberoshub.serviceAccount.name` | Name value for `kerberoshub.serviceAccount`. | `""` |
| `kerberoshub.serviceAccount.annotations` | Annotations applied to `kerberoshub.serviceAccount` resources. | `""` |
| `kerberoshub.serviceAccount.labels` | Labels applied to `kerberoshub.serviceAccount` resources. | `""` |
| `kerberoshub.api.repository` | The Docker registry where the Kerberos Hub API container is hosted. | `""` |
| `kerberoshub.api.pullPolicy` | The Docker registry pull policy. | `""` |
| `kerberoshub.api.tag` | The Docker image tag/version. | `""` |
| `kerberoshub.api.replicas` | The number of pods/replicas running for the Kerberos Hub API deployment. | `""` |
| `kerberoshub.api.logLevel` | Log verbosity level for `kerberoshub.api`. | `""` |
| `kerberoshub.api.jwtSecret` | A secret that is for generating JWT tokens. | `""` |
| `kerberoshub.api.schema` | The protocol to serve the Kerberos Hub API, `'http'` or `'https'`. | `""` |
| `kerberoshub.api.url` | The Kerberos Hub API ingress to access the API. | `""` |
| `kerberoshub.api.resources.requests.memory` | Memory request for `kerberoshub.api`. | `""` |
| `kerberoshub.api.resources.requests.cpu` | CPU request for `kerberoshub.api`. | `""` |
| `kerberoshub.api.serverTLS.enabled` | Enable or disable `kerberoshub.api.serverTLS`. | `""` |
| `kerberoshub.api.repository` | The Docker registry where the Kerberos Hub API container is hosted. | `"ghcr.io/uug-ai/hub-api"` |
| `kerberoshub.api.pullPolicy` | The Docker registry pull policy. | `"IfNotPresent"` |
| `kerberoshub.api.tag` | The Docker image tag/version. | `"v1.9.8"` |
| `kerberoshub.api.replicas` | The number of pods/replicas running for the Kerberos Hub API deployment. | `2` |
| `kerberoshub.api.logLevel` | Log verbosity level for `kerberoshub.api`. | `"info"` |
| `kerberoshub.api.jwtSecret` | A secret that is for generating JWT tokens. | `"this-is-a-secret-please-change-to-random-string"` |
| `kerberoshub.api.schema` | The protocol to serve the Kerberos Hub API, `'http'` or `'https'`. | `"https"` |
| `kerberoshub.api.url` | The Kerberos Hub API ingress to access the API. | `"api.yourdomain.com"` |
| `kerberoshub.api.resources.requests.memory` | Memory request for `kerberoshub.api`. | `"100Mi"` |
| `kerberoshub.api.resources.requests.cpu` | CPU request for `kerberoshub.api`. | `"250m"` |
| `kerberoshub.api.resources.limits.memory` | Memory limit for `kerberoshub.api`. | `"100Mi"` |
| `kerberoshub.api.resources.limits.cpu` | CPU limit for `kerberoshub.api`. | `"250m"` |
| `kerberoshub.api.serverTLS.enabled` | Enable or disable `kerberoshub.api.serverTLS`. | `false` |
| `kerberoshub.api.serverTLS.secretName` | Kubernetes Secret name used by `kerberoshub.api.serverTLS`. | `""` |
| `kerberoshub.api.serverTLS.mountPath` | Filesystem path where the Hub API TLS secret is mounted. | `""` |
| `kerberoshub.api.serverTLS.certFile` | Path to the TLS certificate file used by Hub API server-side TLS. | `""` |
| `kerberoshub.api.serverTLS.keyFile` | Path to the TLS private key file used by Hub API server-side TLS. | `""` |
| `kerberoshub.api.mfaIssuer` | When enabling the MFA access, this is the name that will be shown in the MFA app. | `""` |
| `kerberoshub.api.apiKey` | API key for `kerberoshub.api`. | `""` |
| `kerberoshub.api.tls` | Bring your own TLS certificates for Kerberos Hub API ingress. | `""` |
| `kerberoshub.api.serverTLS.mountPath` | Filesystem path where the Hub API TLS secret is mounted. | `"/etc/hub-api/tls"` |
| `kerberoshub.api.serverTLS.certFile` | Path to the TLS certificate file used by Hub API server-side TLS. | `"/etc/hub-api/tls/tls.crt"` |
| `kerberoshub.api.serverTLS.keyFile` | Path to the TLS private key file used by Hub API server-side TLS. | `"/etc/hub-api/tls/tls.key"` |
| `kerberoshub.api.mfaIssuer` | When enabling the MFA access, this is the name that will be shown in the MFA app. | `"yourdomain.com"` |
| `kerberoshub.api.apiKey` | API key for `kerberoshub.api`. | `"a-random-admin-api-key"` |
| `kerberoshub.api.defaultTaskRetentionDays` | Default retention (in days) applied to tasks without an explicit `retention_days`. New tasks are stamped with this value. Set to `"0"` or a negative value to keep tasks indefinitely. Must match `kerberoshub.cleanup.defaultTaskRetentionDays`. | `"0"` |
| `kerberoshub.api.tls` | Bring your own TLS certificates for Kerberos Hub API ingress. | `<list>` |
| `kerberoshub.api.tls.secretName` | Kubernetes Secret name used by `kerberoshub.api.tls`. | `""` |
| `kerberoshub.api.language` | The language of Kerberos Hub API responses, error messages will be communicated in the specified language. | `""` |
| `kerberoshub.api.fallbackLanguage` | The fallback language, if a specific translation is not available. | `""` |
| `kerberoshub.api.aws.region` | AWS region used by the Hub API legacy S3 integration. | `""` |
| `kerberoshub.api.aws.bucket` | AWS S3 bucket used by the Hub API legacy S3 integration. | `""` |
| `kerberoshub.api.aws.accessKey` | Access key for `kerberoshub.api.aws`. | `""` |
| `kerberoshub.api.aws.secretKey` | Secret key for `kerberoshub.api.aws`. | `""` |
| `kerberoshub.api.stripe.privateKey` | Private key for `kerberoshub.api.stripe`. | `""` |
| `kerberoshub.api.slack.enabled` | Slack integration for sending events and notifications coming from the Kerberos Hub API, `'true'` or `'false'`. | `""` |
| `kerberoshub.api.slack.hook` | Slack integration hook url. | `""` |
| `kerberoshub.api.slack.username` | Slack integration username. | `""` |
| `kerberoshub.api.elasticsearch.enabled` | Elasticsearch for storing events coming from the Kerberos Hub API, `'true'` or `'false'` | `""` |
| `kerberoshub.api.elasticsearch.protocol` | Elasticsearch protocol, `'http'` or `'https'`. | `""` |
| `kerberoshub.api.elasticsearch.host` | Elasticsearch host. | `""` |
| `kerberoshub.api.elasticsearch.port` | Elasticsearch port. | `""` |
| `kerberoshub.api.elasticsearch.index` | Elasticsearch index which is used to store the events. | `""` |
| `kerberoshub.api.language` | The language of Kerberos Hub API responses, error messages will be communicated in the specified language. | `"english"` |
| `kerberoshub.api.fallbackLanguage` | The fallback language, if a specific translation is not available. | `"english"` |
| `kerberoshub.api.aws.region` | AWS region used by the Hub API legacy S3 integration. | `"xxx"` |
| `kerberoshub.api.aws.bucket` | AWS S3 bucket used by the Hub API legacy S3 integration. | `"xxx"` |
| `kerberoshub.api.aws.accessKey` | Access key for `kerberoshub.api.aws`. | `"xxx"` |
| `kerberoshub.api.aws.secretKey` | Secret key for `kerberoshub.api.aws`. | `"xxx"` |
| `kerberoshub.api.stripe.privateKey` | Private key for `kerberoshub.api.stripe`. | `"xxx"` |
| `kerberoshub.api.slack.enabled` | Slack integration for sending events and notifications coming from the Kerberos Hub API, `'true'` or `'false'`. | `"true"` |
| `kerberoshub.api.slack.hook` | Slack integration hook url. | `"yourslackhook"` |
| `kerberoshub.api.slack.username` | Slack integration username. | `"Kerberos Hub"` |
| `kerberoshub.api.elasticsearch.enabled` | Elasticsearch for storing events coming from the Kerberos Hub API, `'true'` or `'false'` | `"false"` |
| `kerberoshub.api.elasticsearch.protocol` | Elasticsearch protocol, `'http'` or `'https'`. | `"http"` |
| `kerberoshub.api.elasticsearch.host` | Elasticsearch host. | `"yourelasticsearchinstance.com"` |
| `kerberoshub.api.elasticsearch.port` | Elasticsearch port. | `"9200"` |
| `kerberoshub.api.elasticsearch.index` | Elasticsearch index which is used to store the events. | `"kerberos-cloud"` |
| `kerberoshub.api.elasticsearch.username` | Elasticsearch username. | `""` |
| `kerberoshub.api.elasticsearch.password` | Elasticsearch password. | `""` |
| `kerberoshub.api.sso.redirectUrl` | The OIC redirectUrl, once the authentication is validated. | `""` |
@@ -156,55 +160,30 @@ Below all configuration options and parameters are listed.
| `kerberoshub.api.sso.clientVerificationId` | Optional client verification ID used for SSO chaining scenarios. | `""` |
| `kerberoshub.api.sso.extraHeaders` | Additional headers appended to outbound SSO provider requests. | `""` |
| `kerberoshub.api.sso.extraHeaders.value` | Header value for each configured SSO extra header entry. | `""` |
| `kerberoshub.frontend.repository` | The Docker registry where the Kerberos Hub frontend is hosted. | `""` |
| `kerberoshub.frontend.pullPolicy` | The Docker registry pull policy. | `""` |
| `kerberoshub.frontend.tag` | The Docker image tag/version. | `""` |
| `kerberoshub.frontend.replicas` | The number of pods/replicas running for the Kerberos Hub frontend deployment. | `""` |
| `kerberoshub.frontend.logLevel` | Log verbosity level for `kerberoshub.frontend`. | `""` |
| `kerberoshub.frontend.schema` | The protocol to serve the Kerberos Hub frontend, `'http'` or `'https'`. | `""` |
| `kerberoshub.frontend.url` | The Kerberos Hub frontend ingress to access the frontend. | `""` |
| `kerberoshub.frontend.resources.requests.memory` | Memory request for `kerberoshub.frontend`. | `""` |
| `kerberoshub.frontend.resources.requests.cpu` | CPU request for `kerberoshub.frontend`. | `""` |
| `kerberoshub.frontend.tls` | Bring your own TLS certificates for Kerberos Hub frontend ingress. | `""` |
| `kerberoshub.frontend.repository` | The Docker registry where the Kerberos Hub frontend is hosted. | `"ghcr.io/uug-ai/hub-frontend"` |
| `kerberoshub.frontend.pullPolicy` | The Docker registry pull policy. | `"IfNotPresent"` |
| `kerberoshub.frontend.tag` | The Docker image tag/version. | `"v1.9.11"` |
| `kerberoshub.frontend.replicas` | The number of pods/replicas running for the Kerberos Hub frontend deployment. | `2` |
| `kerberoshub.frontend.logLevel` | Log verbosity level for `kerberoshub.frontend`. | `"info"` |
| `kerberoshub.frontend.schema` | The protocol to serve the Kerberos Hub frontend, `'http'` or `'https'`. | `"https"` |
| `kerberoshub.frontend.url` | The Kerberos Hub frontend ingress to access the frontend. | `"yourdomain.com"` |
| `kerberoshub.frontend.resources.requests.memory` | Memory request for `kerberoshub.frontend`. | `"50Mi"` |
| `kerberoshub.frontend.resources.requests.cpu` | CPU request for `kerberoshub.frontend`. | `"50m"` |
| `kerberoshub.frontend.resources.limits.memory` | Memory limit for `kerberoshub.frontend`. | `"50Mi"` |
| `kerberoshub.frontend.resources.limits.cpu` | CPU limit for `kerberoshub.frontend`. | `"50m"` |
| `kerberoshub.frontend.tls` | Bring your own TLS certificates for Kerberos Hub frontend ingress. | `<list>` |
| `kerberoshub.frontend.tls.secretName` | Kubernetes Secret name used by `kerberoshub.frontend.tls`. | `""` |
| `kerberoshub.frontend.mixpanel.apikey` | No longer used. | `""` |
| `kerberoshub.frontend.sentry.url` | No longer used. | `""` |
| `kerberoshub.frontend.mixpanel.apikey` | No longer used. | `"xxx"` |
| `kerberoshub.frontend.sentry.url` | No longer used. | `"https://xxx@sentry.io/xxx"` |
| `kerberoshub.frontend.stripe.publicKey` | Public key for `kerberoshub.frontend.stripe`. | `""` |
| `kerberoshub.frontend.googlemaps.apikey` | Within Kerberos Hub frontend a couple of maps are being used, the google maps is leveraged for that. | `""` |
| `kerberoshub.frontend.zendesk.url` | No longer used. | `""` |
| `kerberoshub.frontend.posthog.key` | The API key retrieved from the Posthog instance. | `""` |
| `kerberoshub.frontend.posthog.url` | Posthog's endpoint (http/https). | `""` |
| `kerberoshub.frontend.hideAddAgent` | Configuration value for `kerberoshub.frontend.hideAddAgent`. | `""` |
| `kerberoshub.frontend.multiTenant` | Configuration value for `kerberoshub.frontend.multiTenant`. | `""` |
| `kerberoshub.frontend.title` | Title text used for `kerberoshub.frontend`. | `""` |
| `kerberoshub.frontend.logo` | The logo being used in the Kerberos Hub frontend, set to 'custom' if you want to mount your own stylesheet. | `""` |
| `kerberoshub.frontend.floorPlanName` | Configuration value for `kerberoshub.frontend.floorPlanName`. | `""` |
| `kerberoshub.frontend.sitesName` | Configuration value for `kerberoshub.frontend.sitesName`. | `""` |
| `kerberoshub.frontend.sitesDescription` | Custom description text for `sites` in the frontend UI. | `""` |
| `kerberoshub.frontend.groupsName` | Configuration value for `kerberoshub.frontend.groupsName`. | `""` |
| `kerberoshub.frontend.groupsDescription` | Custom description text for `groups` in the frontend UI. | `""` |
| `kerberoshub.frontend.siteGroupName` | Configuration value for `kerberoshub.frontend.siteGroupName`. | `""` |
| `kerberoshub.frontend.siteGroupDescription` | Custom description text for `site group` in the frontend UI. | `""` |
| `kerberoshub.frontend.deviceGroupName` | Configuration value for `kerberoshub.frontend.deviceGroupName`. | `""` |
| `kerberoshub.frontend.deviceGroupDescription` | Custom description text for `device group` in the frontend UI. | `""` |
| `kerberoshub.frontend.markersName` | Configuration value for `kerberoshub.frontend.markersName`. | `""` |
| `kerberoshub.frontend.eventsName` | Configuration value for `kerberoshub.frontend.eventsName`. | `""` |
| `kerberoshub.frontend.loginDescription` | Custom description text for `login` in the frontend UI. | `""` |
| `kerberoshub.frontend.loginCopyright` | Configuration value for `kerberoshub.frontend.loginCopyright`. | `""` |
| `kerberoshub.frontend.dashboardTitle` | Custom title text for `dashboard` in the frontend UI. | `""` |
| `kerberoshub.frontend.dashboardSubTitle` | Custom title text for `dashboard sub` in the frontend UI. | `""` |
| `kerberoshub.frontend.latestEventsTitle` | Custom title text for `latest events` in the frontend UI. | `""` |
| `kerberoshub.frontend.latestEventsSubTitle` | Custom title text for `latest events sub` in the frontend UI. | `""` |
| `kerberoshub.frontend.dayTitle` | Custom title text for `day` in the frontend UI. | `""` |
| `kerberoshub.frontend.daySubTitle` | Custom title text for `day sub` in the frontend UI. | `""` |
| `kerberoshub.frontend.livestreamTitle` | Custom title text for `livestream` in the frontend UI. | `""` |
| `kerberoshub.frontend.livestreamSubTitle` | Custom title text for `livestream sub` in the frontend UI. | `""` |
| `kerberoshub.frontend.mediaTitle` | Custom title text for `media` in the frontend UI. | `""` |
| `kerberoshub.frontend.mediaSubTitle` | Custom title text for `media sub` in the frontend UI. | `""` |
| `kerberoshub.frontend.cpuUsageDescription` | Custom description text for `cpu usage` in the frontend UI. | `""` |
| `kerberoshub.frontend.framesPerSecondDescription` | Custom description text for `frames per second` in the frontend UI. | `""` |
| `kerberoshub.frontend.mlaUtilizationDescription` | Custom description text for `mla utilization` in the frontend UI. | `""` |
| `kerberoshub.frontend.objectsDetectedDescription` | Custom description text for `objects detected` in the frontend UI. | `""` |
| `kerberoshub.frontend.googlemaps.apikey` | Within Kerberos Hub frontend a couple of maps are being used, the google maps is leveraged for that. | `"xxxx"` |
| `kerberoshub.frontend.zendesk.url` | No longer used. | `"yourdomain.zendesk.com"` |
| `kerberoshub.frontend.posthog.key` | The API key retrieved from the Posthog instance. | `"xxx"` |
| `kerberoshub.frontend.posthog.url` | Posthog's endpoint (http/https). | `"https://posthog.domain.com"` |
| `kerberoshub.frontend.hideAddAgent` | Configuration value for `kerberoshub.frontend.hideAddAgent`. | `"false"` |
| `kerberoshub.frontend.multiTenant` | Configuration value for `kerberoshub.frontend.multiTenant`. | `false` |
| `kerberoshub.frontend.title` | Title text used for `kerberoshub.frontend`. | `"Kerberos Hub - Video surveillance as it should be"` |
| `kerberoshub.frontend.logo` | The logo being used in the Kerberos Hub frontend, set to 'custom' if you want to mount your own stylesheet. | `"custom"` |
| `kerberoshub.frontend.navigationLinkTitle1` | Custom navigation item (title 1) | `""` |
| `kerberoshub.frontend.navigationLinkUrl1` | Custom navigation item (url 1) | `""` |
| `kerberoshub.frontend.navigationLinkTitle2` | Custom navigation item (title 2) | `""` |
@@ -215,202 +194,236 @@ Below all configuration options and parameters are listed.
| `kerberoshub.frontend.navigationLinkUrl4` | Custom navigation item (url 4) | `""` |
| `kerberoshub.frontend.navigationLinkTitle5` | Custom navigation item (title 5) | `""` |
| `kerberoshub.frontend.navigationLinkUrl5` | Custom navigation item (url 5) | `""` |
| `kerberoshub.frontend.caseFilterAssigneesDefault` | Default assignee filter behavior for cases in the frontend. | `""` |
| `kerberoshub.frontend.features.case.enabled` | Enable or disable the case feature in the frontend. | `""` |
| `kerberoshub.frontend.features.darkModeEnabled` | Enable or disable dark mode in the frontend. | `""` |
| `kerberoshub.frontend.features.landingPage` | Frontend landing page configuration. | `""` |
| `kerberoshub.frontend.features.map.tileUrlLight` | Tile URL used by the map in light mode. | `""` |
| `kerberoshub.frontend.features.map.tileUrlDark` | Tile URL used by the map in dark mode. | `""` |
| `kerberoshub.frontend.features.map.attribution` | Attribution text displayed on the map tiles. | `""` |
| `kerberoshub.frontend.features.liveview.defaultStreamMode` | Liveview behavior setting: `defaultStreamMode`. | `""` |
| `kerberoshub.frontend.features.liveview.paginationEnabled` | Liveview behavior setting: `paginationEnabled`. | `""` |
| `kerberoshub.frontend.features.liveview.emptyByDefault` | Liveview behavior setting: `emptyByDefault`. | `""` |
| `kerberoshub.frontend.features.liveview.maxStreams` | Liveview behavior setting: `maxStreams`. | `""` |
| `kerberoshub.frontend.features.devices.hideAgent` | Hide agent controls in the devices section of the frontend. | `""` |
| `kerberoshub.frontend.features.media.filter.date.enabled` | Enable or disable `kerberoshub.frontend.features.media.filter.date`. | `""` |
| `kerberoshub.frontend.features.media.filter.sites.enabled` | Enable or disable `kerberoshub.frontend.features.media.filter.sites`. | `""` |
| `kerberoshub.frontend.features.media.filter.groups.enabled` | Enable or disable `kerberoshub.frontend.features.media.filter.groups`. | `""` |
| `kerberoshub.frontend.features.media.filter.devices.enabled` | Enable or disable `kerberoshub.frontend.features.media.filter.devices`. | `""` |
| `kerberoshub.frontend.features.media.filter.objectDetection.enabled` | Enable or disable `kerberoshub.frontend.features.media.filter.objectDetection`. | `""` |
| `kerberoshub.frontend.features.media.filter.star.enabled` | Enable or disable `kerberoshub.frontend.features.media.filter.star`. | `""` |
| `kerberoshub.frontend.features.media.filter.region.enabled` | Enable or disable `kerberoshub.frontend.features.media.filter.region`. | `""` |
| `kerberoshub.frontend.features.media.filter.sort.enabled` | Enable or disable `kerberoshub.frontend.features.media.filter.sort`. | `""` |
| `kerberoshub.frontend.features.media.filter.category.enabled` | Enable or disable `kerberoshub.frontend.features.media.filter.category`. | `""` |
| `kerberoshub.frontend.features.media.filter.markers.enabled` | Enable or disable `kerberoshub.frontend.features.media.filter.markers`. | `""` |
| `kerberoshub.frontend.features.media.filter.events.enabled` | Enable or disable `kerberoshub.frontend.features.media.filter.events`. | `""` |
| `kerberoshub.frontend.features.media.filter.tags.enabled` | Enable or disable `kerberoshub.frontend.features.media.filter.tags`. | `""` |
| `kerberoshub.frontend.features.floorplan.enabled` | Enable or disable `kerberoshub.frontend.features.floorplan`. | `""` |
| `kerberoshub.frontend.features.floorplan.colorDeviceActive` | Color customization for `floorplan` in the frontend. | `""` |
| `kerberoshub.frontend.features.floorplan.colorDeviceInactive` | Color customization for `floorplan` in the frontend. | `""` |
| `kerberoshub.frontend.features.floorplan.colorDeviceIdle` | Color customization for `floorplan` in the frontend. | `""` |
| `kerberoshub.frontend.features.floorplan.colorDeviceMotion` | Color customization for `floorplan` in the frontend. | `""` |
| `kerberoshub.frontend.features.floorplan.colorLiveViewControlActive` | Color customization for `floorplan` in the frontend. | `""` |
| `kerberoshub.frontend.features.floorplan.colorLiveViewControlMotion` | Color customization for `floorplan` in the frontend. | `""` |
| `kerberoshub.frontend.features.floorplan.colorFloorPlanLabelText` | Color customization for `floorplan` in the frontend. | `""` |
| `kerberoshub.frontend.features.floorplan.colorFloorPlanLabelBackground` | Color customization for `floorplan` in the frontend. | `""` |
| `kerberoshub.frontend.features.floorplan.colorDeviceMarkerBorder` | Color customization for `floorplan` in the frontend. | `""` |
| `kerberoshub.frontend.features.floorplan.colorTrackBox` | Color customization for `floorplan` in the frontend. | `""` |
| `kerberoshub.frontend.features.floorplan.colorTrackBoxHover` | Color customization for `floorplan` in the frontend. | `""` |
| `kerberoshub.frontend.features.floorplan.colorTrackBoxDrawing` | Color customization for `floorplan` in the frontend. | `""` |
| `kerberoshub.frontend.features.floorplan.colorTrackBoxControlsDelete` | Color customization for `floorplan` in the frontend. | `""` |
| `kerberoshub.frontend.features.faceRedaction.enabled` | Enable or disable `kerberoshub.frontend.features.faceRedaction`. | `""` |
| `kerberoshub.support.enabled` | Enable or disable in-app support features. | `""` |
| `kerberoshub.oauth2Proxy.enabled` | Enable or disable `kerberoshub.oauth2Proxy`. | `""` |
| `kerberoshub.oauth2Proxy.github.clientId` | Client ID used by `kerberoshub.oauth2Proxy.github`. | `""` |
| `kerberoshub.oauth2Proxy.github.clientSecret` | Client secret used by `kerberoshub.oauth2Proxy.github`. | `""` |
| `kerberoshub.oauth2Proxy.github.cookieSecret` | Cookie secret used by `kerberoshub.oauth2Proxy.github`. | `""` |
| `kerberoshub.oauth2Proxy.github.organization` | Organization value used by `kerberoshub.oauth2Proxy.github`. | `""` |
| `kerberoshub.oauth2Proxy.github.team` | Team value used by `kerberoshub.oauth2Proxy.github`. | `""` |
| `kerberoshub.cleanup.repository` | The Docker container that is responsible for cleaning up the Kerberos Hub API content and related MongoDB collections. | `""` |
| `kerberoshub.cleanup.pullPolicy` | The Docker registry pull policy. | `""` |
| `kerberoshub.cleanup.tag` | The Docker image tag/version. | `""` |
| `kerberoshub.cleanup.replicas` | Number of replicas for `kerberoshub.cleanup`. | `""` |
| `kerberoshub.cleanup.logLevel` | Log verbosity level for `kerberoshub.cleanup`. | `""` |
| `kerberoshub.cleanup.maxDays` | Maximum age (in days) of data retained by the cleanup process. | `""` |
| `kerberoshub.cleanup.resources.requests.memory` | Memory request for `kerberoshub.cleanup`. | `""` |
| `kerberoshub.cleanup.resources.requests.cpu` | CPU request for `kerberoshub.cleanup`. | `""` |
| `kerberoshub.monitordevice.repository` | The monitoring microservice, following up the status of your cameras and Kerberos Agents. | `""` |
| `kerberoshub.monitordevice.pullPolicy` | The Docker registry pull policy. | `""` |
| `kerberoshub.monitordevice.tag` | The Docker image tag/version. | `""` |
| `kerberoshub.monitordevice.replicas` | Number of replicas for `kerberoshub.monitordevice`. | `""` |
| `kerberoshub.monitordevice.logLevel` | Log verbosity level for `kerberoshub.monitordevice`. | `""` |
| `kerberoshub.monitordevice.resources.requests.memory` | Memory request for `kerberoshub.monitordevice`. | `""` |
| `kerberoshub.monitordevice.resources.requests.cpu` | CPU request for `kerberoshub.monitordevice`. | `""` |
| `kerberoshub.reactivate.repository` | Container image repository for `kerberoshub.reactivate`. | `""` |
| `kerberoshub.reactivate.pullPolicy` | Image pull policy for `kerberoshub.reactivate`. | `""` |
| `kerberoshub.reactivate.tag` | Container image tag/version for `kerberoshub.reactivate`. | `""` |
| `kerberoshub.reactivate.replicas` | Number of replicas for `kerberoshub.reactivate`. | `""` |
| `kerberoshub.reactivate.logLevel` | Log verbosity level for `kerberoshub.reactivate`. | `""` |
| `kerberoshub.reactivate.resources.requests.memory` | Memory request for `kerberoshub.reactivate`. | `""` |
| `kerberoshub.reactivate.resources.requests.cpu` | CPU request for `kerberoshub.reactivate`. | `""` |
| `kerberoshub.forwarder.enabled` | Enable or disable the Hub forwarder component. | `""` |
| `kerberoshub.proxy.repository` | Container image repository for `kerberoshub.proxy`. | `""` |
| `kerberoshub.proxy.pullPolicy` | Image pull policy for `kerberoshub.proxy`. | `""` |
| `kerberoshub.proxy.tag` | Container image tag/version for `kerberoshub.proxy`. | `""` |
| `kerberoshub.proxy.replicas` | Number of replicas for `kerberoshub.proxy`. | `""` |
| `kerberoshub.proxy.logLevel` | Log verbosity level for `kerberoshub.proxy`. | `""` |
| `kerberoshub.proxy.resources.requests.memory` | Memory request for `kerberoshub.proxy`. | `""` |
| `kerberoshub.proxy.resources.requests.cpu` | CPU request for `kerberoshub.proxy`. | `""` |
| `kerberospipeline.event.repository` | The [event orchestration](https://doc.kerberos.io/hub/pipeline/#orchestrator) microservice. | `""` |
| `kerberospipeline.event.pullPolicy` | The Docker registry pull policy. | `""` |
| `kerberospipeline.event.tag` | The Docker image tag/version. | `""` |
| `kerberospipeline.event.replicas` | Number of replicas for `kerberospipeline.event`. | `""` |
| `kerberospipeline.event.logLevel` | Log verbosity level for `kerberospipeline.event`. | `""` |
| `kerberospipeline.event.resources.requests.memory` | Memory request for `kerberospipeline.event`. | `""` |
| `kerberospipeline.event.resources.requests.cpu` | CPU request for `kerberospipeline.event`. | `""` |
| `kerberospipeline.monitor.repository` | The [monitoring microservice](https://doc.kerberos.io/hub/pipeline/#monitoring), calculating metrics of incoming messages. | `""` |
| `kerberospipeline.monitor.pullPolicy` | The Docker registry pull policy. | `""` |
| `kerberospipeline.monitor.tag` | The Docker image tag/version. | `""` |
| `kerberospipeline.monitor.replicas` | Number of replicas for `kerberospipeline.monitor`. | `""` |
| `kerberospipeline.monitor.resources.requests.memory` | Memory request for `kerberospipeline.monitor`. | `""` |
| `kerberospipeline.monitor.resources.requests.cpu` | CPU request for `kerberospipeline.monitor`. | `""` |
| `kerberospipeline.sequence.repository` | The [sequencer microservice](https://doc.kerberos.io/hub/pipeline/#sequencer), grouping recordings in chunks/groups. | `""` |
| `kerberospipeline.sequence.pullPolicy` | The Docker registry pull policy. | `""` |
| `kerberospipeline.sequence.tag` | The Docker image tag/version. | `""` |
| `kerberospipeline.sequence.replicas` | Number of replicas for `kerberospipeline.sequence`. | `""` |
| `kerberospipeline.sequence.resources.requests.memory` | Memory request for `kerberospipeline.sequence`. | `""` |
| `kerberospipeline.sequence.resources.requests.cpu` | CPU request for `kerberospipeline.sequence`. | `""` |
| `kerberospipeline.throttler.repository` | The [throttler microservice](https://doc.kerberos.io/hub/pipeline/#throttler), throttling events. | `""` |
| `kerberospipeline.throttler.pullPolicy` | The Docker registry pull policy. | `""` |
| `kerberospipeline.throttler.tag` | The Docker image tag/version. | `""` |
| `kerberospipeline.throttler.replicas` | Number of replicas for `kerberospipeline.throttler`. | `""` |
| `kerberospipeline.throttler.logLevel` | Log verbosity level for `kerberospipeline.throttler`. | `""` |
| `kerberospipeline.throttler.resources.requests.memory` | Memory request for `kerberospipeline.throttler`. | `""` |
| `kerberospipeline.throttler.resources.requests.cpu` | CPU request for `kerberospipeline.throttler`. | `""` |
| `kerberospipeline.notify.repository` | The [notification microservice](https://doc.kerberos.io/hub/pipeline/#notification), sending notifications on events. | `""` |
| `kerberospipeline.notify.pullPolicy` | The Docker registry pull policy. | `""` |
| `kerberospipeline.notify.tag` | The Docker image tag/version. | `""` |
| `kerberospipeline.notify.replicas` | Number of replicas for `kerberospipeline.notify`. | `""` |
| `kerberospipeline.notify.logLevel` | Log verbosity level for `kerberospipeline.notify`. | `""` |
| `kerberospipeline.notify.resources.requests.memory` | Memory request for `kerberospipeline.notify`. | `""` |
| `kerberospipeline.notify.resources.requests.cpu` | CPU request for `kerberospipeline.notify`. | `""` |
| `kerberospipeline.notifyTest.repository` | The notification service for testing, the different channels. | `""` |
| `kerberospipeline.notifyTest.pullPolicy` | The Docker registry pull policy. | `""` |
| `kerberospipeline.notifyTest.tag` | The Docker image tag/version. | `""` |
| `kerberospipeline.notifyTest.replicas` | Number of replicas for `kerberospipeline.notifyTest`. | `""` |
| `kerberospipeline.notifyTest.resources.requests.memory` | Memory request for `kerberospipeline.notifyTest`. | `""` |
| `kerberospipeline.notifyTest.resources.requests.cpu` | CPU request for `kerberospipeline.notifyTest`. | `""` |
| `kerberospipeline.analysis.repository` | The [analysis microservices](https://doc.kerberos.io/hub/pipeline/#analyser) which executed specific analysis in parallel. | `""` |
| `kerberospipeline.analysis.pullPolicy` | The Docker registry pull policy. | `""` |
| `kerberospipeline.analysis.tag` | The Docker image tag/version. | `""` |
| `kerberospipeline.analysis.replicas` | Number of replicas for `kerberospipeline.analysis`. | `""` |
| `kerberospipeline.analysis.logLevel` | Log verbosity level for `kerberospipeline.analysis`. | `""` |
| `kerberospipeline.analysis.resources.requests.memory` | Memory request for `kerberospipeline.analysis`. | `""` |
| `kerberospipeline.analysis.resources.requests.cpu` | CPU request for `kerberospipeline.analysis`. | `""` |
| `kerberospipeline.dominantColor.repository` | The dominant color microservices is computing a top 3 color histogram. | `""` |
| `kerberospipeline.dominantColor.pullPolicy` | The Docker registry pull policy. | `""` |
| `kerberospipeline.dominantColor.tag` | The Docker image tag/version. | `""` |
| `kerberospipeline.dominantColor.replicas` | Number of replicas for `kerberospipeline.dominantColor`. | `""` |
| `kerberospipeline.dominantColor.logLevel` | Log verbosity level for `kerberospipeline.dominantColor`. | `""` |
| `kerberospipeline.dominantColor.resources.requests.memory` | Memory request for `kerberospipeline.dominantColor`. | `""` |
| `kerberospipeline.dominantColor.resources.requests.cpu` | CPU request for `kerberospipeline.dominantColor`. | `""` |
| `kerberospipeline.dominantColor.resources.limits.memory` | Memory limit for `kerberospipeline.dominantColor`. | `""` |
| `kerberospipeline.dominantColor.resources.limits.cpu` | CPU limit for `kerberospipeline.dominantColor`. | `""` |
| `kerberospipeline.thumbnail.repository` | The thumbnail microservices generated a thumbnail for a recordings. | `""` |
| `kerberospipeline.thumbnail.pullPolicy` | The Docker registry pull policy. | `""` |
| `kerberospipeline.thumbnail.tag` | The Docker image tag/version. | `""` |
| `kerberospipeline.thumbnail.replicas` | Number of replicas for `kerberospipeline.thumbnail`. | `""` |
| `kerberospipeline.thumbnail.logLevel` | Log verbosity level for `kerberospipeline.thumbnail`. | `""` |
| `kerberospipeline.thumbnail.quality` | Configuration value for `kerberospipeline.thumbnail.quality`. | `""` |
| `kerberospipeline.thumbnail.width` | Configuration value for `kerberospipeline.thumbnail.width`. | `""` |
| `kerberospipeline.thumbnail.height` | Configuration value for `kerberospipeline.thumbnail.height`. | `""` |
| `kerberospipeline.thumbnail.kerberosvault.enabled` | Enable or disable `kerberospipeline.thumbnail.kerberosvault`. | `""` |
| `kerberospipeline.thumbnail.resources.requests.memory` | Memory request for `kerberospipeline.thumbnail`. | `""` |
| `kerberospipeline.thumbnail.resources.requests.cpu` | CPU request for `kerberospipeline.thumbnail`. | `""` |
| `kerberospipeline.thumbnail.resources.limits.memory` | Memory limit for `kerberospipeline.thumbnail`. | `""` |
| `kerberospipeline.thumbnail.resources.limits.cpu` | CPU limit for `kerberospipeline.thumbnail`. | `""` |
| `kerberospipeline.counting.repository` | The counting microservices computes objects passing different line segments. | `""` |
| `kerberospipeline.counting.pullPolicy` | The Docker registry pull policy. | `""` |
| `kerberospipeline.counting.tag` | The Docker image tag/version. | `""` |
| `kerberospipeline.counting.replicas` | Number of replicas for `kerberospipeline.counting`. | `""` |
| `kerberospipeline.counting.logLevel` | Log verbosity level for `kerberospipeline.counting`. | `""` |
| `kerberospipeline.counting.resources.requests.memory` | Memory request for `kerberospipeline.counting`. | `""` |
| `kerberospipeline.counting.resources.requests.cpu` | CPU request for `kerberospipeline.counting`. | `""` |
| `kerberospipeline.sprite.enabled` | Enable or disable `kerberospipeline.sprite`. | `""` |
| `kerberospipeline.sprite.repository` | Container image repository for `kerberospipeline.sprite`. | `""` |
| `kerberospipeline.sprite.pullPolicy` | Image pull policy for `kerberospipeline.sprite`. | `""` |
| `kerberospipeline.sprite.tag` | Container image tag/version for `kerberospipeline.sprite`. | `""` |
| `kerberospipeline.sprite.replicas` | Number of replicas for `kerberospipeline.sprite`. | `""` |
| `kerberospipeline.sprite.logLevel` | Log verbosity level for `kerberospipeline.sprite`. | `""` |
| `kerberospipeline.sprite.interval` | Configuration value for `kerberospipeline.sprite.interval`. | `""` |
| `kerberospipeline.sprite.width` | Configuration value for `kerberospipeline.sprite.width`. | `""` |
| `kerberospipeline.sprite.height` | Configuration value for `kerberospipeline.sprite.height`. | `""` |
| `kerberospipeline.sprite.resources.requests.memory` | Memory request for `kerberospipeline.sprite`. | `""` |
| `kerberospipeline.sprite.resources.requests.cpu` | CPU request for `kerberospipeline.sprite`. | `""` |
| `kerberospipeline.sprite.resources.limits.memory` | Memory limit for `kerberospipeline.sprite`. | `""` |
| `kerberospipeline.sprite.resources.limits.cpu` | CPU limit for `kerberospipeline.sprite`. | `""` |
| `kerberospipeline.export.repository` | Container image repository for `kerberospipeline.export`. | `""` |
| `kerberospipeline.export.pullPolicy` | Image pull policy for `kerberospipeline.export`. | `""` |
| `kerberospipeline.export.tag` | Container image tag/version for `kerberospipeline.export`. | `""` |
| `kerberospipeline.export.replicas` | Number of replicas for `kerberospipeline.export`. | `""` |
| `kerberospipeline.export.logLevel` | Log verbosity level for `kerberospipeline.export`. | `""` |
| `kerberospipeline.export.resources.requests.memory` | Memory request for `kerberospipeline.export`. | `""` |
| `kerberospipeline.export.resources.requests.cpu` | CPU request for `kerberospipeline.export`. | `""` |
| `email.provider` | The email service provider for sending out messages over email , use `'mailgun'` or `'smtp'`. | `""` |
| `email.from` | The email address that is sending messages in name of, by default `'support@yourdomain.com'`. | `""` |
| `email.displayName` | The display name that is sending messages in name of, by default `'yourdomain.com'` | `""` |
| `email.mailgun.domain` | While using `mailgun` as email service provider, you will need to provide your Mailgun domain. | `""` |
| `email.mailgun.apikey` | Mailgun API key (lowercase variant) used when provider is `mailgun`. | `""` |
| `email.smtp.server` | While using `smtp` as email service provider, use the SMTP server. | `""` |
| `email.smtp.port` | SMTP port specified by your SMTP server, by default `'456'`. | `""` |
| `email.smtp.username` | SMTP username. | `""` |
| `email.smtp.password` | SMTP password. | `""` |
| `email.templates.welcome` | The template which is send when a new user registered on the platform (`IS_PRIVATE='false'`), by default `'disabled'`. | `""` |
| `email.templates.welcomeTitle` | The welcome title use in the subject of the email. | `""` |
| `email.templates.activate` | The template which is send when a user is required to activate his account , by default `'activate'`. | `""` |
| `email.templates.activateTitle` | The activation title use in the subject of the email. | `""` |
| `email.templates.forgot` | The template which is send when an account is requesting a forgot password, by default `'forgot'`. | `""` |
| `email.templates.forgotTitle` | The forgot title use in the subject of the email. | `""` |
| `email.templates.share` | Email template name/key for `share` notifications. | `""` |
| `email.templates.shareTitle` | Email subject title for the `share` template. | `""` |
| `email.templates.assignTask` | Email template name/key for `assign task` notifications. | `""` |
| `email.templates.assignTaskTitle` | Email subject title for the `assign task` template. | `""` |
| `email.templates.detection` | We use templates to send notifications, this allow you to bring your own `Mailgun` templates, by default `'detection'`. | `""` |
| `email.templates.disabled` | The template which is send when an account is disabled due to reaching its upload limit, by default `'disabled'`. | `""` |
| `email.templates.highupload` | The template which is send when an account is reaching a specific upload threshold, by default `'threshold'`. | `""` |
| `email.templates.device` | The template which is send when a camera goes online or offline, by default `'device'`. | `""` |
| `email.templates.alertTitle` | Email subject title for the `alert` template. | `""` |
| `email.templates.deviceTitle` | Email subject title for the `device` template. | `""` |
| `kerberoshub.frontend.caseFilterAssigneesDefault` | Default assignee filter behavior for cases in the frontend. | `"false"` |
| `kerberoshub.frontend.features.case.enabled` | Enable or disable the case feature in the frontend. | `"true"` |
| `kerberoshub.frontend.features.darkModeEnabled` | Enable or disable dark mode in the frontend. | `"true"` |
| `kerberoshub.frontend.features.landingPage` | Frontend landing page configuration. | `"/dashboard"` |
| `kerberoshub.frontend.features.i18n.enabled` | Enable or disable the runtime language switcher in the front-end. When `"false"`, `defaultLanguage` is forced and users cannot change it. | `"true"` |
| `kerberoshub.frontend.features.i18n.defaultLanguage` | Default language code used by the front-end (e.g. `en`, `nl`, `pl`, `tr`, `fr`, `sv`, `de`). | `"en"` |
| `kerberoshub.frontend.features.workflows.enabled` | Enable or disable the workflows feature in the frontend. | `"false"` |
| `kerberoshub.frontend.features.map.tileUrlLight` | Tile URL used by the map in light mode. | `"https://{s}.basemaps.cartocdn.com/rastertiles/voyager/{z}/{x}/{y}{r}.png"` |
| `kerberoshub.frontend.features.map.tileUrlDark` | Tile URL used by the map in dark mode. | `"https://{s}.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}{r}.png"` |
| `kerberoshub.frontend.features.map.attribution` | Attribution text displayed on the map tiles. | `"&copy; <a href='https://www.openstreetmap.org/copyright' target='_blank'>OpenStreetMap</a>"` |
| `kerberoshub.frontend.features.liveview.defaultStreamMode` | Liveview behavior setting: `defaultStreamMode`. | `"SD"` |
| `kerberoshub.frontend.features.liveview.paginationMode` | Liveview behavior setting: `paginationMode` (`scroll`, `numbered` or `maxStreams`). | `"scroll"` |
| `kerberoshub.frontend.features.liveview.pageSize` | Liveview behavior setting: `pageSize` (max streams shown per page in `numbered` mode). | `"6"` |
| `kerberoshub.frontend.features.liveview.maxStreams` | Liveview behavior setting: `maxStreams`. | `"-1"` |
| `kerberoshub.frontend.features.chart.colorChartSelectionFill` | Fill color for chart selection regions. | `"rgba(132, 86, 159, 0.07)"` |
| `kerberoshub.frontend.features.chart.colorChartSelectionStroke` | Stroke color for chart selection regions. | `"rgba(132, 86, 159, 0.4)"` |
| `kerberoshub.frontend.features.chart.colorChartGridStroke` | Stroke color for chart grid lines. | `"rgba(0, 106, 255, 0.18)"` |
| `kerberoshub.frontend.features.devices.hideAgent` | Hide agent controls in the devices section of the frontend. | `"false"` |
| `kerberoshub.frontend.features.media.filter.date.enabled` | Enable or disable `kerberoshub.frontend.features.media.filter.date`. | `"true"` |
| `kerberoshub.frontend.features.media.filter.sites.enabled` | Enable or disable `kerberoshub.frontend.features.media.filter.sites`. | `"true"` |
| `kerberoshub.frontend.features.media.filter.groups.enabled` | Enable or disable `kerberoshub.frontend.features.media.filter.groups`. | `"true"` |
| `kerberoshub.frontend.features.media.filter.devices.enabled` | Enable or disable `kerberoshub.frontend.features.media.filter.devices`. | `"true"` |
| `kerberoshub.frontend.features.media.filter.objectDetection.enabled` | Enable or disable `kerberoshub.frontend.features.media.filter.objectDetection`. | `"true"` |
| `kerberoshub.frontend.features.media.filter.star.enabled` | Enable or disable `kerberoshub.frontend.features.media.filter.star`. | `"true"` |
| `kerberoshub.frontend.features.media.filter.region.enabled` | Enable or disable `kerberoshub.frontend.features.media.filter.region`. | `"true"` |
| `kerberoshub.frontend.features.media.filter.sort.enabled` | Enable or disable `kerberoshub.frontend.features.media.filter.sort`. | `"true"` |
| `kerberoshub.frontend.features.media.filter.category.enabled` | Enable or disable `kerberoshub.frontend.features.media.filter.category`. | `"true"` |
| `kerberoshub.frontend.features.media.filter.markers.enabled` | Enable or disable `kerberoshub.frontend.features.media.filter.markers`. | `"true"` |
| `kerberoshub.frontend.features.media.filter.events.enabled` | Enable or disable `kerberoshub.frontend.features.media.filter.events`. | `"true"` |
| `kerberoshub.frontend.features.liveview.defaultStreamMode` | Default live stream mode: `SD` or `HD`. | `"SD"` |lter.tags`. | `"true"` |
| `kerberoshub.frontend.features.media.filter.defaultView` | Default view for the media page: `timeline` or `grid`. | `"timeline"` |
| `kerberoshub.frontend.features.floorplan.enabled` | Enable or disable `kerberoshub.frontend.features.floorplan`. | `"true"` |
| `kerberoshub.frontend.features.floorplan.colorDeviceActive` | Color customization for `floorplan` in the frontend. | `"hsla(131, 31%, 52%, 1)"` |
| `kerberoshub.frontend.features.floorplan.colorDeviceInactive` | Color customization for `floorplan` in the frontend. | `"hsla(0, 3%, 41%, 1)"` |
| `kerberoshub.frontend.features.floorplan.colorDeviceIdle` | Color customization for `floorplan` in the frontend. | `"hsla(47, 86%, 47%, 1)"` |
| `kerberoshub.frontend.features.floorplan.colorDeviceMotion` | Color customization for `floorplan` in the frontend. | `"hsla(2, 58%, 48%, 1)"` |
| `kerberoshub.frontend.features.floorplan.colorLiveViewControlActive` | Color customization for `floorplan` in the frontend. | `"hsla(131, 31%, 52%, 1)"` |
| `kerberoshub.frontend.features.floorplan.colorLiveViewControlMotion` | Color customization for `floorplan` in the frontend. | `"hsla(2, 58%, 48%, 1)"` |
| `kerberoshub.frontend.features.floorplan.colorFloorPlanLabelText` | Color customization for `floorplan` in the frontend. | `"hsla(0, 0%, 100%, 1)"` |
| `kerberoshub.frontend.features.floorplan.colorFloorPlanLabelBackground` | Color customization for `floorplan` in the frontend. | `"hsla(0, 0%, 0%, 0.8)"` |
| `kerberoshub.frontend.features.floorplan.colorDeviceMarkerBorder` | Color customization for `floorplan` in the frontend. | `"hsla(0, 0%, 100%, 1)"` |
| `kerberoshub.frontend.features.floorplan.colorTrackBox` | Color customization for `floorplan` in the frontend. | `"hsla(278, 30%, 48%, 1)"` |
| `kerberoshub.frontend.features.floorplan.colorTrackBoxHover` | Color customization for `floorplan` in the frontend. | `"hsla(47, 86%, 47%, 1)"` |
| `kerberoshub.frontend.features.floorplan.colorTrackBoxDrawing` | Color customization for `floorplan` in the frontend. | `"hsla(204, 100%, 50%, 1)"` |
| `kerberoshub.frontend.features.floorplan.colorTrackBoxControlsDelete` | Color customization for `floorplan` in the frontend. | `"hsla(219, 100%, 94%, 1)"` |
| `kerberoshub.frontend.features.faceRedaction.enabled` | Enable or disable `kerberoshub.frontend.features.faceRedaction`. | `"false"` |
| `kerberoshub.support.enabled` | Enable or disable in-app support features. | `false` |
| `kerberoshub.oauth2Proxy.enabled` | Enable or disable `kerberoshub.oauth2Proxy`. | `false` |
| `kerberoshub.oauth2Proxy.github.clientId` | Client ID used by `kerberoshub.oauth2Proxy.github`. | `"github-client-id"` |
| `kerberoshub.oauth2Proxy.github.clientSecret` | Client secret used by `kerberoshub.oauth2Proxy.github`. | `"github-client-secret"` |
| `kerberoshub.oauth2Proxy.github.cookieSecret` | Cookie secret used by `kerberoshub.oauth2Proxy.github`. | `"generate-a-random-cookie-secret"` |
| `kerberoshub.oauth2Proxy.github.organization` | Organization value used by `kerberoshub.oauth2Proxy.github`. | `"github-organization"` |
| `kerberoshub.oauth2Proxy.github.team` | Team value used by `kerberoshub.oauth2Proxy.github`. | `"github-team"` |
| `kerberoshub.cleanup.repository` | The Docker container that is responsible for cleaning up the Kerberos Hub API content and related MongoDB collections. | `"ghcr.io/uug-ai/hub-cleanup"` |
| `kerberoshub.cleanup.pullPolicy` | The Docker registry pull policy. | `"IfNotPresent"` |
| `kerberoshub.cleanup.tag` | The Docker image tag/version. | `"v1.4.13"` |
| `kerberoshub.cleanup.replicas` | Number of replicas for `kerberoshub.cleanup`. | `1` |
| `kerberoshub.cleanup.mode` | Cleanup service mode: `serve`, `dry-run`, or `version`. | `"serve"` |
| `kerberoshub.cleanup.logLevel` | Log verbosity level for `kerberoshub.cleanup`. | `"info"` |
| `kerberoshub.cleanup.maxDays` | Hard maximum age (in days) used by the optional global cleanup pass. | `"365"` |
| `kerberoshub.cleanup.runIntervalMinutes` | Minutes between cleanup cycles. | `"10"` |
| `kerberoshub.cleanup.cleanupUsernames` | Optional comma-separated usernames to target. | `""` |
| `kerberoshub.cleanup.batchSize` | Delete batch size per collection operation. | `"250"` |
| `kerberoshub.cleanup.userBatchSize` | Number of users processed per inner batch. | `"100"` |
| `kerberoshub.cleanup.maxUsersPerRun` | Maximum users processed per run. | `"100"` |
| `kerberoshub.cleanup.progressEvery` | Print progress every N processed users. | `"100"` |
| `kerberoshub.cleanup.activeUserRescanHours` | Rescan interval for active users. | `"6"` |
| `kerberoshub.cleanup.inactiveUserRescanHours` | Rescan interval for inactive users. | `"24"` |
| `kerberoshub.cleanup.readTimeoutSeconds` | Timeout for MongoDB read operations. | `"30"` |
| `kerberoshub.cleanup.deleteTimeoutSeconds` | Timeout for delete operations. | `"120"` |
| `kerberoshub.cleanup.reportIncludeStats` | Include richer per-user dry-run summary stats. | `"false"` |
| `kerberoshub.cleanup.dryRun` | Force dry-run behavior through env var. | `"false"` |
| `kerberoshub.cleanup.debug` | Enable extra cleanup debug logging. | `"false"` |
| `kerberoshub.cleanup.globalPassEnabled` | Enable optional global orphan cleanup pass. | `"false"` |
| `kerberoshub.cleanup.globalPassIntervalHours` | Minimum hours between global cleanup passes. | `"0"` |
| `kerberoshub.cleanup.globalPassDeleteBudget` | Max documents deleted during a global pass. | `"0"` |
| `kerberoshub.cleanup.defaultTaskRetentionDays` | Default retention (in days) applied to tasks without an explicit `retention_days`. Tasks older than this (anchored on `creation_date`) are deleted with their `case_media` rows. Set to `"0"` or a negative value to keep tasks forever. Must match `kerberoshub.api.defaultTaskRetentionDays`. | `"0"` |
| `kerberoshub.cleanup.resources.requests.memory` | Memory request for `kerberoshub.cleanup`. | `"10Mi"` |
| `kerberoshub.cleanup.resources.requests.cpu` | CPU request for `kerberoshub.cleanup`. | `"10m"` |
| `kerberoshub.monitordevice.repository` | The monitoring microservice, following up the status of your cameras and Agents. | `"ghcr.io/uug-ai/hub-monitor-device"` |
| `kerberoshub.monitordevice.pullPolicy` | The Docker registry pull policy. | `"IfNotPresent"` |
| `kerberoshub.monitordevice.tag` | The Docker image tag/version. | `"v1.4.0"` |
| `kerberoshub.monitordevice.replicas` | Number of replicas for `kerberoshub.monitordevice`. | `1` |
| `kerberoshub.monitordevice.logLevel` | Log verbosity level for `kerberoshub.monitordevice`. | `"info"` |
| `kerberoshub.monitordevice.resources.requests.memory` | Memory request for `kerberoshub.monitordevice`. | `"10Mi"` |
| `kerberoshub.monitordevice.resources.requests.cpu` | CPU request for `kerberoshub.monitordevice`. | `"10m"` |
| `kerberoshub.reactivate.repository` | Container image repository for `kerberoshub.reactivate`. | `"uugai/hub-reactivatesubscriptions"` |
| `kerberoshub.reactivate.pullPolicy` | Image pull policy for `kerberoshub.reactivate`. | `"IfNotPresent"` |
| `kerberoshub.reactivate.tag` | Container image tag/version for `kerberoshub.reactivate`. | `"v1.0.2"` |
| `kerberoshub.reactivate.replicas` | Number of replicas for `kerberoshub.reactivate`. | `1` |
| `kerberoshub.reactivate.logLevel` | Log verbosity level for `kerberoshub.reactivate`. | `"info"` |
| `kerberoshub.reactivate.resources.requests.memory` | Memory request for `kerberoshub.reactivate`. | `"10Mi"` |
| `kerberoshub.reactivate.resources.requests.cpu` | CPU request for `kerberoshub.reactivate`. | `"10m"` |
| `kerberoshub.forwarder.enabled` | Enable or disable the Hub forwarder component. | `false` |
| `kerberoshub.proxy.repository` | Container image repository for `kerberoshub.proxy`. | `"uugai/hub-proxy"` |
| `kerberoshub.proxy.pullPolicy` | Image pull policy for `kerberoshub.proxy`. | `"IfNotPresent"` |
| `kerberoshub.proxy.tag` | Container image tag/version for `kerberoshub.proxy`. | `"v1.0.0"` |
| `kerberoshub.proxy.replicas` | Number of replicas for `kerberoshub.proxy`. | `1` |
| `kerberoshub.proxy.logLevel` | Log verbosity level for `kerberoshub.proxy`. | `"info"` |
| `kerberoshub.proxy.resources.requests.memory` | Memory request for `kerberoshub.proxy`. | `"10Mi"` |
| `kerberoshub.proxy.resources.requests.cpu` | CPU request for `kerberoshub.proxy`. | `"10m"` |
| `kerberospipeline.event.repository` | The [event orchestration](https://doc.kerberos.io/hub/pipeline/#orchestrator) microservice. | `"ghcr.io/uug-ai/hub-pipeline-event"` |
| `kerberospipeline.event.pullPolicy` | The Docker registry pull policy. | `"IfNotPresent"` |
| `kerberospipeline.event.tag` | The Docker image tag/version. | `"v1.3.0"` |
| `kerberospipeline.event.replicas` | Number of replicas for `kerberospipeline.event`. | `1` |
| `kerberospipeline.event.logLevel` | Log verbosity level for `kerberospipeline.event`. | `"info"` |
| `kerberospipeline.event.resources.requests.memory` | Memory request for `kerberospipeline.event`. | `"10Mi"` |
| `kerberospipeline.event.resources.requests.cpu` | CPU request for `kerberospipeline.event`. | `"10m"` |
| `kerberospipeline.monitor.repository` | The [monitoring microservice](https://doc.kerberos.io/hub/pipeline/#monitoring), calculating metrics of incoming messages. | `"ghcr.io/uug-ai/hub-pipeline-monitor"` |
| `kerberospipeline.monitor.pullPolicy` | The Docker registry pull policy. | `"IfNotPresent"` |
| `kerberospipeline.monitor.tag` | The Docker image tag/version. | `"v1.3.9"` |
| `kerberospipeline.monitor.replicas` | Number of replicas for `kerberospipeline.monitor`. | `1` |
| `kerberospipeline.monitor.resources.requests.memory` | Memory request for `kerberospipeline.monitor`. | `"10Mi"` |
| `kerberospipeline.monitor.resources.requests.cpu` | CPU request for `kerberospipeline.monitor`. | `"10m"` |
| `kerberospipeline.sequence.repository` | The [sequencer microservice](https://doc.kerberos.io/hub/pipeline/#sequencer), grouping recordings in chunks/groups. | `"ghcr.io/uug-ai/hub-pipeline-sequence"` |
| `kerberospipeline.sequence.pullPolicy` | The Docker registry pull policy. | `"IfNotPresent"` |
| `kerberospipeline.sequence.tag` | The Docker image tag/version. | `"v1.6.18"` |
| `kerberospipeline.sequence.replicas` | Number of replicas for `kerberospipeline.sequence`. | `1` |
| `kerberospipeline.sequence.resources.requests.memory` | Memory request for `kerberospipeline.sequence`. | `"10Mi"` |
| `kerberospipeline.sequence.resources.requests.cpu` | CPU request for `kerberospipeline.sequence`. | `"10m"` |
| `kerberospipeline.throttler.repository` | The [throttler microservice](https://doc.kerberos.io/hub/pipeline/#throttler), throttling events. | `"uugai/hub-pipeline-throttler"` |
| `kerberospipeline.throttler.pullPolicy` | The Docker registry pull policy. | `"IfNotPresent"` |
| `kerberospipeline.throttler.tag` | The Docker image tag/version. | `"v1.2.0"` |
| `kerberospipeline.throttler.replicas` | Number of replicas for `kerberospipeline.throttler`. | `1` |
| `kerberospipeline.throttler.logLevel` | Log verbosity level for `kerberospipeline.throttler`. | `"info"` |
| `kerberospipeline.throttler.resources.requests.memory` | Memory request for `kerberospipeline.throttler`. | `"10Mi"` |
| `kerberospipeline.throttler.resources.requests.cpu` | CPU request for `kerberospipeline.throttler`. | `"10m"` |
| `kerberospipeline.notify.repository` | The [notification microservice](https://doc.kerberos.io/hub/pipeline/#notification), sending notifications on events. | `"ghcr.io/uug-ai/hub-pipeline-notification"` |
| `kerberospipeline.notify.pullPolicy` | The Docker registry pull policy. | `"IfNotPresent"` |
| `kerberospipeline.notify.tag` | The Docker image tag/version. | `"v1.3.9"` |
| `kerberospipeline.notify.replicas` | Number of replicas for `kerberospipeline.notify`. | `1` |
| `kerberospipeline.notify.logLevel` | Log verbosity level for `kerberospipeline.notify`. | `"info"` |
| `kerberospipeline.notify.resources.requests.memory` | Memory request for `kerberospipeline.notify`. | `"10Mi"` |
| `kerberospipeline.notify.resources.requests.cpu` | CPU request for `kerberospipeline.notify`. | `"10m"` |
| `kerberospipeline.notifyTest.repository` | The notification service for testing, the different channels. | `"uugai/hub-pipeline-notification-test"` |
| `kerberospipeline.notifyTest.pullPolicy` | The Docker registry pull policy. | `"IfNotPresent"` |
| `kerberospipeline.notifyTest.tag` | The Docker image tag/version. | `"v1.2.1"` |
| `kerberospipeline.notifyTest.replicas` | Number of replicas for `kerberospipeline.notifyTest`. | `1` |
| `kerberospipeline.notifyTest.resources.requests.memory` | Memory request for `kerberospipeline.notifyTest`. | `"10Mi"` |
| `kerberospipeline.notifyTest.resources.requests.cpu` | CPU request for `kerberospipeline.notifyTest`. | `"10m"` |
| `kerberospipeline.analysis.repository` | The [analysis microservices](https://doc.kerberos.io/hub/pipeline/#analyser) which executed specific analysis in parallel. | `"ghcr.io/uug-ai/hub-pipeline-analysis"` |
| `kerberospipeline.analysis.pullPolicy` | The Docker registry pull policy. | `"IfNotPresent"` |
| `kerberospipeline.analysis.tag` | The Docker image tag/version. | `"v1.7.8"` |
| `kerberospipeline.analysis.replicas` | Number of replicas for `kerberospipeline.analysis`. | `1` |
| `kerberospipeline.analysis.logLevel` | Log verbosity level for `kerberospipeline.analysis`. | `"info"` |
| `kerberospipeline.analysis.resources.requests.memory` | Memory request for `kerberospipeline.analysis`. | `"10Mi"` |
| `kerberospipeline.analysis.resources.requests.cpu` | CPU request for `kerberospipeline.analysis`. | `"10m"` |
| `kerberospipeline.dominantColor.repository` | The dominant color microservices is computing a top 3 color histogram. | `"ghcr.io/uug-ai/hub-pipeline-dominantcolors"` |
| `kerberospipeline.dominantColor.pullPolicy` | The Docker registry pull policy. | `"IfNotPresent"` |
| `kerberospipeline.dominantColor.tag` | The Docker image tag/version. | `"v2.0.2"` |
| `kerberospipeline.dominantColor.replicas` | Number of replicas for `kerberospipeline.dominantColor`. | `3` |
| `kerberospipeline.dominantColor.logLevel` | Log verbosity level for `kerberospipeline.dominantColor`. | `"info"` |
| `kerberospipeline.dominantColor.resources.requests.memory` | Memory request for `kerberospipeline.dominantColor`. | `"512Mi"` |
| `kerberospipeline.dominantColor.resources.requests.cpu` | CPU request for `kerberospipeline.dominantColor`. | `"500m"` |
| `kerberospipeline.dominantColor.resources.limits.memory` | Memory limit for `kerberospipeline.dominantColor`. | `"2Gi"` |
| `kerberospipeline.dominantColor.resources.limits.cpu` | CPU limit for `kerberospipeline.dominantColor`. | `"1000m"` |
| `kerberospipeline.thumbnail.repository` | The thumbnail microservices generated a thumbnail for a recordings. | `"ghcr.io/uug-ai/hub-pipeline-thumbnail"` |
| `kerberospipeline.thumbnail.pullPolicy` | The Docker registry pull policy. | `"IfNotPresent"` |
| `kerberospipeline.thumbnail.tag` | The Docker image tag/version. | `"v1.3.4"` |
| `kerberospipeline.thumbnail.replicas` | Number of replicas for `kerberospipeline.thumbnail`. | `2` |
| `kerberospipeline.thumbnail.logLevel` | Log verbosity level for `kerberospipeline.thumbnail`. | `"info"` |
| `kerberospipeline.thumbnail.quality` | Configuration value for `kerberospipeline.thumbnail.quality`. | `"1"` |
| `kerberospipeline.thumbnail.width` | Configuration value for `kerberospipeline.thumbnail.width`. | `"600"` |
| `kerberospipeline.thumbnail.height` | Configuration value for `kerberospipeline.thumbnail.height`. | `"-1"` |
| `kerberospipeline.thumbnail.kerberosvault.enabled` | Enable or disable `kerberospipeline.thumbnail.kerberosvault`. | `true` |
| `kerberospipeline.thumbnail.resources.requests.memory` | Memory request for `kerberospipeline.thumbnail`. | `"512Mi"` |
| `kerberospipeline.thumbnail.resources.requests.cpu` | CPU request for `kerberospipeline.thumbnail`. | `"500m"` |
| `kerberospipeline.thumbnail.resources.limits.memory` | Memory limit for `kerberospipeline.thumbnail`. | `"2Gi"` |
| `kerberospipeline.thumbnail.resources.limits.cpu` | CPU limit for `kerberospipeline.thumbnail`. | `"1000m"` |
| `kerberospipeline.counting.repository` | The counting microservices computes objects passing different line segments. | `"uugai/hub-pipeline-counting"` |
| `kerberospipeline.counting.pullPolicy` | The Docker registry pull policy. | `"IfNotPresent"` |
| `kerberospipeline.counting.tag` | The Docker image tag/version. | `"v1.6.3"` |
| `kerberospipeline.counting.replicas` | Number of replicas for `kerberospipeline.counting`. | `1` |
| `kerberospipeline.counting.logLevel` | Log verbosity level for `kerberospipeline.counting`. | `"info"` |
| `kerberospipeline.counting.resources.requests.memory` | Memory request for `kerberospipeline.counting`. | `"10Mi"` |
| `kerberospipeline.counting.resources.requests.cpu` | CPU request for `kerberospipeline.counting`. | `"10m"` |
| `kerberospipeline.sprite.enabled` | Enable or disable `kerberospipeline.sprite`. | `false` |
| `kerberospipeline.sprite.repository` | Container image repository for `kerberospipeline.sprite`. | `"ghcr.io/uug-ai/hub-pipeline-sprite"` |
| `kerberospipeline.sprite.pullPolicy` | Image pull policy for `kerberospipeline.sprite`. | `"IfNotPresent"` |
| `kerberospipeline.sprite.tag` | Container image tag/version for `kerberospipeline.sprite`. | `"v1.1.12"` |
| `kerberospipeline.sprite.replicas` | Number of replicas for `kerberospipeline.sprite`. | `5` |
| `kerberospipeline.sprite.logLevel` | Log verbosity level for `kerberospipeline.sprite`. | `"info"` |
| `kerberospipeline.sprite.interval` | Configuration value for `kerberospipeline.sprite.interval`. | `"1"` |
| `kerberospipeline.sprite.width` | Configuration value for `kerberospipeline.sprite.width`. | `"240"` |
| `kerberospipeline.sprite.height` | Configuration value for `kerberospipeline.sprite.height`. | `"135"` |
| `kerberospipeline.sprite.resources.requests.memory` | Memory request for `kerberospipeline.sprite`. | `"512Mi"` |
| `kerberospipeline.sprite.resources.requests.cpu` | CPU request for `kerberospipeline.sprite`. | `"500m"` |
| `kerberospipeline.sprite.resources.limits.memory` | Memory limit for `kerberospipeline.sprite`. | `"2Gi"` |
| `kerberospipeline.sprite.resources.limits.cpu` | CPU limit for `kerberospipeline.sprite`. | `"1000m"` |
| `kerberospipeline.export.repository` | Container image repository for `kerberospipeline.export`. | `"ghcr.io/uug-ai/hub-pipeline-export"` |
| `kerberospipeline.export.pullPolicy` | Image pull policy for `kerberospipeline.export`. | `"IfNotPresent"` |
| `kerberospipeline.export.tag` | Container image tag/version for `kerberospipeline.export`. | `"v1.2.4"` |
| `kerberospipeline.export.replicas` | Number of replicas for `kerberospipeline.export`. | `2` |
| `kerberospipeline.export.logLevel` | Log verbosity level for `kerberospipeline.export`. | `"info"` |
| `kerberospipeline.export.resources.requests.memory` | Memory request for `kerberospipeline.export`. | `"10Mi"` |
| `kerberospipeline.export.resources.requests.cpu` | CPU request for `kerberospipeline.export`. | `"10m"` |
| `kerberospipeline.redaction.repository` | Container image repository for `kerberospipeline.redaction`. | `"ghcr.io/uug-ai/hub-pipeline-redaction"` |
| `kerberospipeline.redaction.pullPolicy` | Image pull policy for `kerberospipeline.redaction`. | `"IfNotPresent"` |
| `kerberospipeline.redaction.tag` | Container image tag/version for `kerberospipeline.redaction`. | `"v1.0.0"` |
| `kerberospipeline.redaction.replicas` | Number of replicas for `kerberospipeline.redaction`. | `2` |
| `kerberospipeline.redaction.logLevel` | Log verbosity level for `kerberospipeline.redaction`. | `"info"` |
| `kerberospipeline.redaction.resources.requests.memory` | Memory request for `kerberospipeline.redaction`. | `"512Mi"` |
| `kerberospipeline.redaction.resources.requests.cpu` | CPU request for `kerberospipeline.redaction`. | `"500m"` |
| `kerberospipeline.redaction.resources.limits.memory` | Memory limit for `kerberospipeline.redaction`. | `"2Gi"` |
| `kerberospipeline.redaction.resources.limits.cpu` | CPU limit for `kerberospipeline.redaction`. | `"1000m"` |
| `email.provider` | The email service provider for sending out messages over email , use `'mailgun'` or `'smtp'`. | `"mailgun"` |
| `email.from` | The email address that is sending messages in name of, by default `'support@yourdomain.com'`. | `"support@yourdomain.com"` |
| `email.displayName` | The display name that is sending messages in name of, by default `'yourdomain.com'` | `"yourdomain.com"` |
| `email.mailgun.domain` | While using `mailgun` as email service provider, you will need to provide your Mailgun domain. | `"mg.yourdomain.com"` |
| `email.mailgun.apikey` | Mailgun API key (lowercase variant) used when provider is `mailgun`. | `"xxxx"` |
| `email.smtp.server` | While using `smtp` as email service provider, use the SMTP server. | `"smtp.yourdomain.com"` |
| `email.smtp.port` | SMTP port specified by your SMTP server, by default `'456'`. | `"465"` |
| `email.smtp.username` | SMTP username. | `"yourusername"` |
| `email.smtp.password` | SMTP password. | `"yourpassword"` |
| `email.templates.welcome` | The template which is send when a new user registered on the platform (`IS_PRIVATE='false'`), by default `'disabled'`. | `"welcome"` |
| `email.templates.welcomeTitle` | The welcome title use in the subject of the email. | `"Welcome to Kerberos Hub"` |
| `email.templates.activate` | The template which is send when a user is required to activate his account , by default `'activate'`. | `"activate"` |
| `email.templates.activateTitle` | The activation title use in the subject of the email. | `"Wonderful! Your Kerberos Hub is now active"` |
| `email.templates.forgot` | The template which is send when an account is requesting a forgot password, by default `'forgot'`. | `"forgot"` |
| `email.templates.forgotTitle` | The forgot title use in the subject of the email. | `"Password reset Kerberos Hub. You forgot your password"` |
| `email.templates.share` | Email template name/key for `share` notifications. | `"share"` |
| `email.templates.shareTitle` | Email subject title for the `share` template. | `"[Action] You received a recording from Kerberos Hub"` |
| `email.templates.assignTask` | Email template name/key for `assign task` notifications. | `"assign_task"` |
| `email.templates.assignTaskTitle` | Email subject title for the `assign task` template. | `"[Action] You've been assigned to a task"` |
| `email.templates.detection` | We use templates to send notifications, this allow you to bring your own `Mailgun` templates, by default `'detection'`. | `"detection"` |
| `email.templates.disabled` | The template which is send when an account is disabled due to reaching its upload limit, by default `'disabled'`. | `"disabled"` |
| `email.templates.highupload` | The template which is send when an account is reaching a specific upload threshold, by default `'threshold'`. | `"highupload"` |
| `email.templates.device` | The template which is send when a camera goes online or offline, by default `'device'`. | `"device"` |
| `email.templates.alertTitle` | Email subject title for the `alert` template. | `"[Alert] Kerberos Hub detected something an event"` |
| `email.templates.deviceTitle` | Email subject title for the `device` template. | `"[Device] An Agent's status has been changed"` |
| `email.mailgun.apiKey` | The Mailgun API key linked to your Mailgun domain. | `""` |
| `imagePullSecrets.name` | Docker registry secret name, which is also granted with the license. This allows you to download the Docker images. | `""` |
| `kerberoshub.forwarder.pullPolicy` | The Docker registry pull policy. | `""` |

File diff suppressed because it is too large Load Diff

View File

@@ -926,6 +926,13 @@
<path fill-rule="evenodd" clip-rule="evenodd" d="M9 4C9.55228 4 10 4.44772 10 5V13C10 13.5523 9.55228 14 9 14C8.44772 14 8 13.5523 8 13V5C8 4.44772 8.44772 4 9 4Z" fill="currentColor"/>
</svg>`
/* Invoice */
window["env"]["svg"]["invoice"] = `<svg class="icon icon-invoice" width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M5.9453 5.54295C6.58555 5.11611 7.47538 5 8.5 5H11C11.5523 5 12 5.44772 12 6C12 6.55228 11.5523 7 11 7H8.5C7.52462 7 7.16445 7.13389 7.0547 7.20705C7.03426 7.22067 7.03361 7.22365 7.03297 7.22658C7.03285 7.22715 7.03272 7.22772 7.03245 7.22837C7.02311 7.2508 7 7.32539 7 7.5C7 7.65149 7.01759 7.7156 7.02407 7.734C7.02962 7.73847 7.04039 7.74633 7.05864 7.75676C7.24508 7.8633 7.75279 8 9 8C10.2528 8 11.2451 8.1133 11.9336 8.50676C12.3184 8.72663 12.6117 9.03408 12.7919 9.4271C12.9615 9.79718 13 10.1769 13 10.5C13 10.8231 12.9615 11.2028 12.7919 11.5729C12.6117 11.9659 12.3184 12.2734 11.9336 12.4932C11.2451 12.8867 10.2528 13 9 13H7C6.44772 13 6 12.5523 6 12C6 11.4477 6.44772 11 7 11H9C10.2472 11 10.7549 10.8633 10.9414 10.7568C10.9596 10.7463 10.9704 10.7385 10.9759 10.734C10.9824 10.7156 11 10.6515 11 10.5C11 10.3485 10.9824 10.2844 10.9759 10.266C10.9704 10.2615 10.9596 10.2537 10.9414 10.2432C10.7549 10.1367 10.2472 10 9 10C7.74721 10 6.75492 9.8867 6.06636 9.49324C5.68159 9.27337 5.38825 8.96592 5.20812 8.5729C5.0385 8.20282 5 7.82305 5 7.5C5 6.82469 5.18169 6.05202 5.9453 5.54295Z" fill="currentColor"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M9 4C9.55228 4 10 4.44772 10 5V13C10 13.5523 9.55228 14 9 14C8.44772 14 8 13.5523 8 13V5C8 4.44772 8.44772 4 9 4Z" fill="currentColor"/>
<path fill-rule="evenodd" clip-rule="evenodd" d="M1 2C1 0.89543 1.89543 0 3 0H15C16.1046 0 17 0.89543 17 2V17C17 17.3214 16.8455 17.6233 16.5847 17.8112C16.3239 17.9992 15.9887 18.0503 15.6838 17.9487L13.0767 17.0797L11.4472 17.8944C11.1657 18.0352 10.8343 18.0352 10.5528 17.8944L9 17.118L7.44721 17.8944C7.16569 18.0352 6.83431 18.0352 6.55279 17.8944L4.92327 17.0797L2.31623 17.9487C2.01128 18.0503 1.67606 17.9992 1.41529 17.8112C1.15452 17.6233 1 17.3214 1 17V2ZM15 2H3V15.6126L4.68377 15.0513C4.93538 14.9674 5.21 14.987 5.44721 15.1056L7 15.882L8.55279 15.1056C8.83431 14.9648 9.16569 14.9648 9.44721 15.1056L11 15.882L12.5528 15.1056C12.79 14.987 13.0646 14.9674 13.3162 15.0513L15 15.6126V2Z" fill="currentColor"/>
</svg>`
/* Suitcase (detection classification) */
window["env"]["svg"]["suitcase"] = `<svg class="icon icon-suitcase" width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg">
<path fill-rule="evenodd" clip-rule="evenodd" d="M1 4C1 3.44772 1.44772 3 2 3H16C16.5523 3 17 3.44772 17 4V17C17 17.5523 16.5523 18 16 18H2C1.44772 18 1 17.5523 1 17V4ZM3 5V16H15V5H3Z" fill="currentColor"/>

View File

@@ -225,7 +225,7 @@
margin-bottom: 0;
padding-bottom: 0;
padding-left: 0;
padding-right: 0;">One of your Kerberos Agents changed</h2>
padding-right: 0;">One of your Agents changed</h2>
<h2 style=" font-family: Inter;
font-size: 20px;
font-style: normal;
@@ -265,7 +265,7 @@
letter-spacing: 0em;
text-align: left;
color: #262424;
width: 480px">The status your Kerberos Agent changed</h3>
width: 480px">The status your Agent changed</h3>
<p style=" font-family: Inter;
font-size: 14px;
font-style: normal;
@@ -275,8 +275,8 @@
letter-spacing: 0em;
text-align: left;
color: #6D6666;
margin-top: 12px;">Kerberos Agents go offline due to a variety of reasons. The machine, node, micro controller on which your Kerberos Agent runs, gets corrupted or disconnected from the internet.
The camera itself is broken, damaged or in the worst case tampered. Have a look into your Kerberos Hub account for the latest recordings and/or verify the connection and status of your Kerberos Agent.</p>
margin-top: 12px;">Agents go offline due to a variety of reasons. The machine, node, micro controller on which your Agent runs, gets corrupted or disconnected from the internet.
The camera itself is broken, damaged or in the worst case tampered. Have a look into your Kerberos Hub account for the latest recordings and/or verify the connection and status of your Agent.</p>
<a style="text-decoration: none;color: none;" href="{{link}}">
<p style="font-family: Inter;

View File

@@ -286,7 +286,7 @@ Tomorrow your account will be reset, and recordings will be uploaded again to yo
letter-spacing: 0em;
text-align: left;
color: #6D6666;
margin-top: 12px;">If you are hitting your daily limits a lot, you might consider upgrading your Kerberos Hub subscription, or fine-tune your Kerberos Agents so they record less recordings.</p>
margin-top: 12px;">If you are hitting your daily limits a lot, you might consider upgrading your Kerberos Hub subscription, or fine-tune your Agents so they record less recordings.</p>
<a style="text-decoration: none;color: none;" href="{{link}}">
<p style="font-family: Inter;

View File

@@ -225,7 +225,7 @@
margin-bottom: 0;
padding-bottom: 0;
padding-left: 0;
padding-right: 0;">High upload detected by one or more Kerberos Agents</h2>
padding-right: 0;">High upload detected by one or more Agents</h2>
</td>
<td class="corner-td" align="right"></td>
</tr>

View File

@@ -14,6 +14,14 @@ spec:
labels:
app: admin
spec:
{{- with .Values.admin.volumes }}
volumes:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.admin.topologySpreadConstraints }}
topologySpreadConstraints:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
- name: admin
image: "{{ .Values.global.imageRegistry }}{{ .Values.admin.repository }}:{{ .Values.admin.tag }}"
@@ -22,6 +30,10 @@ spec:
resources:
{{- toYaml . | nindent 12 }}
{{- end }}
{{- with .Values.admin.volumeMounts }}
volumeMounts:
{{- toYaml . | nindent 12 }}
{{- end }}
ports:
- name: http
containerPort: 80

View File

@@ -46,6 +46,14 @@ spec:
labels:
k8s-app: oauth2-proxy-admin
spec:
{{- with .Values.admin.oauth2Proxy.volumes }}
volumes:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.admin.oauth2Proxy.topologySpreadConstraints }}
topologySpreadConstraints:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
- args:
- --provider=github
@@ -53,6 +61,10 @@ spec:
- --upstream=file:///dev/null
- --http-address=0.0.0.0:4180
- --skip-auth-preflight=true
{{- with .Values.admin.oauth2Proxy.volumeMounts }}
volumeMounts:
{{- toYaml . | nindent 12 }}
{{- end }}
env:
- name: OAUTH2_PROXY_CLIENT_ID
value: "{{ .Values.admin.oauth2Proxy.github.clientId }}"

View File

@@ -11,4 +11,5 @@ data:
MONGODB_USERNAME: "{{ .Values.mongodb.username }}"
MONGODB_PASSWORD: "{{ .Values.mongodb.password }}"
MONGODB_RETRY_WRITES: "{{ .Values.mongodb.retryWrites }}"
MONGODB_FLAVOR: "{{ .Values.mongodb.flavor | default "mongodb" }}"
MONGODB_DATABASE_CLOUD: "Kerberos"

View File

@@ -1,4 +1,5 @@
{{- if or (eq .Values.mode "all") (eq .Values.mode "ui") -}}
{{- if .Values.kerberoshub.api.serviceEnabled }}
apiVersion: v1
kind: Service
metadata:
@@ -18,6 +19,7 @@ spec:
protocol: TCP
selector:
app: hub-api
{{- end }}
{{ if ne .Values.ingress "" }}
---
{{ if .Capabilities.APIVersions.Has "networking.k8s.io/v1" }}
@@ -140,6 +142,10 @@ spec:
secretName: {{ $serverTLS.secretName }}
{{- end }}
{{- end }}
{{- with .Values.kerberoshub.api.topologySpreadConstraints }}
topologySpreadConstraints:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
- name: hub-api
image: "{{ .Values.global.imageRegistry }}{{ .Values.kerberoshub.api.repository }}:{{ .Values.kerberoshub.api.tag }}"
@@ -194,6 +200,20 @@ spec:
value: "{{ .Values.kerberoshub.api.fallbackLanguage }}"
- name: API_KEY
value: "{{ .Values.kerberoshub.api.apiKey }}"
# MQTT credentials (served via /runtime/config to authenticated
# frontend clients; no longer exposed in the public env.js).
- name: MQTT_USERNAME
value: "{{ .Values.mqtt.username }}"
- name: MQTT_PASSWORD
value: "{{ .Values.mqtt.password }}"
# TURN credentials (served via /runtime/config to authenticated
# frontend clients; no longer exposed in the public env.js).
- name: TURN_USERNAME
value: "{{ .Values.turn.username }}"
- name: TURN_PASSWORD
value: "{{ .Values.turn.password }}"
{{- if .Values.kerberoshub.api.serverTLS.enabled }}
- name: TLS_CERT_FILE
value: "{{ .Values.kerberoshub.api.serverTLS.certFile }}"
@@ -337,6 +357,10 @@ spec:
value: "{{ .Values.email.templates.assignTask }}"
- name: ASSIGN_TASK_TITLE
value: "{{ .Values.email.templates.assignTaskTitle }}"
- name: DEFAULT_TASK_RETENTION_DAYS
value: "{{ .Values.kerberoshub.api.defaultTaskRetentionDays }}"
- name: CASES_MAX_RETENTION_DAYS
value: "{{ .Values.kerberoshub.api.casesMaxRetentionDays }}"
# SMTP
- name: SMTP_SERVER

View File

@@ -29,6 +29,14 @@ spec:
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberoshub.cleanup.volumes }}
volumes:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberoshub.cleanup.topologySpreadConstraints }}
topologySpreadConstraints:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
- name: hub-cleanup
image: "{{ .Values.global.imageRegistry }}{{ .Values.kerberoshub.cleanup.repository }}:{{ .Values.kerberoshub.cleanup.tag }}"
@@ -37,6 +45,10 @@ spec:
resources:
{{- toYaml . | nindent 12 }}
{{- end }}
{{- with .Values.kerberoshub.cleanup.volumeMounts }}
volumeMounts:
{{- toYaml . | nindent 12 }}
{{- end }}
envFrom:
- configMapRef:
name: mongodb-config
@@ -47,10 +59,44 @@ spec:
value: "{{ .Values.kerberoshub.cleanup.mode }}"
- name: LOG_LEVEL
value: "{{ .Values.kerberoshub.cleanup.logLevel }}"
- name: RUN_INTERVAL_MINUTES
value: "{{ .Values.kerberoshub.cleanup.runIntervalMinutes }}"
- name: CLEANUP_USERNAMES
value: "{{ .Values.kerberoshub.cleanup.cleanupUsernames }}"
- name: READ_ONLY
value: "{{ .Values.readonly }}"
value: "{{ .Values.readOnly }}"
- name: MAX_DAYS
value: "{{ .Values.kerberoshub.cleanup.maxDays }}"
- name: BATCH_SIZE
value: "{{ .Values.kerberoshub.cleanup.batchSize }}"
- name: USER_BATCH_SIZE
value: "{{ .Values.kerberoshub.cleanup.userBatchSize }}"
- name: MAX_USERS_PER_RUN
value: "{{ .Values.kerberoshub.cleanup.maxUsersPerRun }}"
- name: PROGRESS_EVERY
value: "{{ .Values.kerberoshub.cleanup.progressEvery }}"
- name: ACTIVE_USER_RESCAN_HOURS
value: "{{ .Values.kerberoshub.cleanup.activeUserRescanHours }}"
- name: INACTIVE_USER_RESCAN_HOURS
value: "{{ .Values.kerberoshub.cleanup.inactiveUserRescanHours }}"
- name: READ_TIMEOUT_SECONDS
value: "{{ .Values.kerberoshub.cleanup.readTimeoutSeconds }}"
- name: DELETE_TIMEOUT_SECONDS
value: "{{ .Values.kerberoshub.cleanup.deleteTimeoutSeconds }}"
- name: REPORT_INCLUDE_STATS
value: "{{ .Values.kerberoshub.cleanup.reportIncludeStats }}"
- name: DRY_RUN
value: "{{ .Values.kerberoshub.cleanup.dryRun }}"
- name: DEBUG
value: "{{ .Values.kerberoshub.cleanup.debug }}"
- name: GLOBAL_PASS_ENABLED
value: "{{ .Values.kerberoshub.cleanup.globalPassEnabled }}"
- name: GLOBAL_PASS_INTERVAL_HOURS
value: "{{ .Values.kerberoshub.cleanup.globalPassIntervalHours }}"
- name: GLOBAL_PASS_DELETE_BUDGET
value: "{{ .Values.kerberoshub.cleanup.globalPassDeleteBudget }}"
- name: DEFAULT_TASK_RETENTION_DAYS
value: "{{ .Values.kerberoshub.cleanup.defaultTaskRetentionDays }}"
{{- if .Values.kerberoshub.extraEnv }}
{{- toYaml .Values.kerberoshub.extraEnv | nindent 12 }}
{{- end }}

View File

@@ -1,4 +1,4 @@
{{- if or (eq .Values.mode "all") (eq .Values.mode "ui") -}}
{{- if and (or (eq .Values.mode "all") (eq .Values.mode "ui")) .Values.kerberoshub.frontend.demoEnabled -}}
apiVersion: v1
kind: Service
metadata:
@@ -93,6 +93,10 @@ spec:
volumes:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberoshub.frontend.topologySpreadConstraints }}
topologySpreadConstraints:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
- name: hub-frontend-demo
image: "{{ .Values.global.imageRegistry }}{{ .Values.kerberoshub.frontend.repository }}:{{ .Values.kerberoshub.frontend.tag }}"
@@ -148,10 +152,9 @@ spec:
value: "{{ .Values.mqtt.host }}"
- name: MQTT_PORT
value: "{{ .Values.mqtt.port }}"
- name: MQTT_USERNAME
value: "{{ .Values.mqtt.username }}"
- name: MQTT_PASSWORD
value: "{{ .Values.mqtt.password }}"
# MQTT_USERNAME / MQTT_PASSWORD are intentionally not exposed to the
# frontend. They are fetched from the authenticated hub-api endpoint
# /runtime/config after login. See hub-api deployment.
- name: MQTT_LEGACY_SERVER
value: "{{ .Values.mqtt.legacy.host }}"
- name: MQTT_LEGACY_PORT
@@ -164,10 +167,9 @@ spec:
# Turn (Pion)
- name: TURN_SERVER
value: "{{ .Values.turn.host }}"
- name: TURN_USERNAME
value: "{{ .Values.turn.username }}"
- name: TURN_PASSWORD
value: "{{ .Values.turn.password }}"
# TURN_USERNAME / TURN_PASSWORD are intentionally not exposed to the
# frontend. They are fetched from the authenticated hub-api endpoint
# /runtime/config after login. See hub-api deployment.
# Mixpanel for monitoring
- name: MIXPANEL_KEY
@@ -195,39 +197,6 @@ spec:
- name: ZENDESK_URL
value: "{{ .Values.kerberoshub.frontend.zendesk.url }}"
# Titles and descriptions on pages
- name: LOGIN_DESCRIPTION
value: "{{ .Values.kerberoshub.frontend.loginDescription }}"
- name: LOGIN_COPYRIGHT
value: "{{ .Values.kerberoshub.frontend.loginCopyright }}"
- name: PAGE_DASHBOARD_TITLE
value: "{{ .Values.kerberoshub.frontend.dashboardTitle }}"
- name: PAGE_DASHBOARD_SUB_TITLE
value: "{{ .Values.kerberoshub.frontend.dashboardSubTitle }}"
- name: PAGE_LATESTEVENTS_TITLE
value: "{{ .Values.kerberoshub.frontend.latestEventsTitle }}"
- name: PAGE_LATESTEVENTS_SUB_TITLE
value: "{{ .Values.kerberoshub.frontend.latestEventsSubTitle }}"
- name: PAGE_LIVESTREAM_TITLE
value: "{{ .Values.kerberoshub.frontend.livestreamTitle }}"
- name: PAGE_LIVESTREAM_SUB_TITLE
value: "{{ .Values.kerberoshub.frontend.livestreamSubTitle }}"
- name: PAGE_MEDIA_TITLE
value: "{{ .Values.kerberoshub.frontend.mediaTitle }}"
- name: PAGE_MEDIA_SUB_TITLE
value: "{{ .Values.kerberoshub.frontend.mediaSubTitle }}"
- name: PAGE_DAY_TITLE
value: "{{ .Values.kerberoshub.frontend.dayTitle }}"
- name: PAGE_DAY_SUB_TITLE
value: "{{ .Values.kerberoshub.frontend.daySubTitle }}"
- name: PAGE_DASHBOARD_CPU_USAGE
value: "{{ .Values.kerberoshub.frontend.cpuUsageDescription }}"
- name: PAGE_DASHBOARD_FPS
value: "{{ .Values.kerberoshub.frontend.framesPerSecondDescription }}"
- name: PAGE_DASHBOARD_MLA
value: "{{ .Values.kerberoshub.frontend.mlaUtilizationDescription }}"
- name: PAGE_DASHBOARD_OBJECTS
value: "{{ .Values.kerberoshub.frontend.objectsDetectedDescription }}"
- name: HIDE_ADD_AGENT
value: "{{ .Values.kerberoshub.frontend.hideAddAgent }}"
@@ -258,16 +227,24 @@ spec:
# features > general
- name: FEATURE_CASE_ENABLED
value: "{{ .Values.kerberoshub.frontend.features.case.enabled }}"
- name: FEATURE_WORKFLOWS_ENABLED
value: "{{ .Values.kerberoshub.frontend.features.workflows.enabled }}"
- name: FEATURE_DARK_MODE
value: "{{ .Values.kerberoshub.frontend.features.darkMode }}"
- name: FEATURE_LANDING_PAGE
value: "{{ .Values.kerberoshub.frontend.features.landingPage }}"
# features > internationalization (i18n)
- name: FEATURE_I18N_ENABLED
value: "{{ .Values.kerberoshub.frontend.features.i18n.enabled }}"
- name: DEFAULT_LANGUAGE
value: "{{ .Values.kerberoshub.frontend.features.i18n.defaultLanguage }}"
# features > liveview
- name: FEATURE_LIVEVIEW_PAGINATION_ENABLED
value: "{{ .Values.kerberoshub.frontend.features.liveview.paginationEnabled }}"
- name: FEATURE_LIVEVIEW_EMPTY_BY_DEFAULT
value: "{{ .Values.kerberoshub.frontend.features.liveview.emptyByDefault }}"
- name: FEATURE_LIVEVIEW_PAGINATION_MODE
value: "{{ .Values.kerberoshub.frontend.features.liveview.paginationMode }}"
- name: FEATURE_LIVEVIEW_PAGE_SIZE
value: "{{ .Values.kerberoshub.frontend.features.liveview.pageSize }}"
- name: FEATURE_LIVEVIEW_MAX_STREAMS
value: "{{ .Values.kerberoshub.frontend.features.liveview.maxStreams }}"
@@ -305,6 +282,10 @@ spec:
- name: COLOR_DEVICE_MARKER_BORDER
value: "{{ .Values.kerberoshub.frontend.colorDeviceMarkerBorder }}"
# features > video edits
- name: FEATURE_VIDEO_EDITS_ENABLED
value: "{{ .Values.kerberoshub.frontend.features.videoEdits.enabled }}"
# features > face redaction
- name: FEATURE_FACE_REDACTION_ENABLED
value: "{{ .Values.kerberoshub.frontend.features.faceRedaction.enabled }}"
@@ -335,30 +316,6 @@ spec:
- name: FEATURE_MEDIA_FILTER_TAGS_ENABLED
value: "{{ .Values.kerberoshub.frontend.features.media.filter.tags.enabled }}"
- name: MARKERS_NAME
value: "{{ .Values.kerberoshub.frontend.markersName }}"
- name: EVENTS_NAME
value: "{{ .Values.kerberoshub.frontend.eventsName }}"
- name: FLOOR_PLAN_NAME
value: "{{ .Values.kerberoshub.frontend.floorPlanName }}"
- name: SITES_NAME
value: "{{ .Values.kerberoshub.frontend.sitesName }}"
- name: SITES_DESCRIPTION
value: "{{ .Values.kerberoshub.frontend.sitesDescription }}"
- name: GROUPS_NAME
value: "{{ .Values.kerberoshub.frontend.groupsName }}"
- name: GROUPS_DESCRIPTION
value: "{{ .Values.kerberoshub.frontend.groupsDescription }}"
- name: SITE_GROUP_NAME
value: "{{ .Values.kerberoshub.frontend.siteGroupName }}"
- name: SITE_GROUP_DESCRIPTION
value: "{{ .Values.kerberoshub.frontend.siteGroupDescription }}"
- name: DEVICE_GROUP_NAME
value: "{{ .Values.kerberoshub.frontend.deviceGroupName }}"
- name: DEVICE_GROUP_DESCRIPTION
value: "{{ .Values.kerberoshub.frontend.deviceGroupDescription }}"
{{- if .Values.kerberoshub.extraEnv }}
{{- toYaml .Values.kerberoshub.extraEnv | nindent 8 }}
{{- end }}

View File

@@ -1,4 +1,5 @@
{{- if or (eq .Values.mode "all") (eq .Values.mode "ui") -}}
{{- if .Values.kerberoshub.frontend.serviceEnabled }}
apiVersion: v1
kind: Service
metadata:
@@ -14,6 +15,7 @@ spec:
name: http
selector:
app: hub-frontend
{{- end }}
{{ if ne .Values.ingress "" }}
---
{{- if .Capabilities.APIVersions.Has "networking.k8s.io/v1" }}
@@ -172,6 +174,10 @@ spec:
volumes:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberoshub.frontend.topologySpreadConstraints }}
topologySpreadConstraints:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
- name: hub-frontend
image: "{{ .Values.global.imageRegistry }}{{ .Values.kerberoshub.frontend.repository }}:{{ .Values.kerberoshub.frontend.tag }}"
@@ -229,10 +235,9 @@ spec:
value: "{{ .Values.mqtt.host }}"
- name: MQTT_PORT
value: "{{ .Values.mqtt.port }}"
- name: MQTT_USERNAME
value: "{{ .Values.mqtt.username }}"
- name: MQTT_PASSWORD
value: "{{ .Values.mqtt.password }}"
# MQTT_USERNAME / MQTT_PASSWORD are intentionally not exposed to the
# frontend. They are fetched from the authenticated hub-api endpoint
# /runtime/config after login. See hub-api deployment.
- name: MQTT_LEGACY_SERVER
value: "{{ .Values.mqtt.legacy.host }}"
- name: MQTT_LEGACY_PORT
@@ -245,10 +250,9 @@ spec:
# Turn (Pion)
- name: TURN_SERVER
value: "{{ .Values.turn.host }}"
- name: TURN_USERNAME
value: "{{ .Values.turn.username }}"
- name: TURN_PASSWORD
value: "{{ .Values.turn.password }}"
# TURN_USERNAME / TURN_PASSWORD are intentionally not exposed to the
# frontend. They are fetched from the authenticated hub-api endpoint
# /runtime/config after login. See hub-api deployment.
# Mixpanel for monitoring
- name: MIXPANEL_KEY
@@ -276,39 +280,6 @@ spec:
- name: ZENDESK_URL
value: "{{ .Values.kerberoshub.frontend.zendesk.url }}"
# Titles and descriptions on pages
- name: LOGIN_DESCRIPTION
value: "{{ .Values.kerberoshub.frontend.loginDescription }}"
- name: LOGIN_COPYRIGHT
value: "{{ .Values.kerberoshub.frontend.loginCopyright }}"
- name: PAGE_DASHBOARD_TITLE
value: "{{ .Values.kerberoshub.frontend.dashboardTitle }}"
- name: PAGE_DASHBOARD_SUB_TITLE
value: "{{ .Values.kerberoshub.frontend.dashboardSubTitle }}"
- name: PAGE_LATESTEVENTS_TITLE
value: "{{ .Values.kerberoshub.frontend.latestEventsTitle }}"
- name: PAGE_LATESTEVENTS_SUB_TITLE
value: "{{ .Values.kerberoshub.frontend.latestEventsSubTitle }}"
- name: PAGE_LIVESTREAM_TITLE
value: "{{ .Values.kerberoshub.frontend.livestreamTitle }}"
- name: PAGE_LIVESTREAM_SUB_TITLE
value: "{{ .Values.kerberoshub.frontend.livestreamSubTitle }}"
- name: PAGE_MEDIA_TITLE
value: "{{ .Values.kerberoshub.frontend.mediaTitle }}"
- name: PAGE_MEDIA_SUB_TITLE
value: "{{ .Values.kerberoshub.frontend.mediaSubTitle }}"
- name: PAGE_DAY_TITLE
value: "{{ .Values.kerberoshub.frontend.dayTitle }}"
- name: PAGE_DAY_SUB_TITLE
value: "{{ .Values.kerberoshub.frontend.daySubTitle }}"
- name: PAGE_DASHBOARD_CPU_USAGE
value: "{{ .Values.kerberoshub.frontend.cpuUsageDescription }}"
- name: PAGE_DASHBOARD_FPS
value: "{{ .Values.kerberoshub.frontend.framesPerSecondDescription }}"
- name: PAGE_DASHBOARD_MLA
value: "{{ .Values.kerberoshub.frontend.mlaUtilizationDescription }}"
- name: PAGE_DASHBOARD_OBJECTS
value: "{{ .Values.kerberoshub.frontend.objectsDetectedDescription }}"
- name: HIDE_ADD_AGENT
value: "{{ .Values.kerberoshub.frontend.hideAddAgent }}"
@@ -339,18 +310,26 @@ spec:
# features > general
- name: FEATURE_CASE_ENABLED
value: "{{ .Values.kerberoshub.frontend.features.case.enabled }}"
- name: FEATURE_WORKFLOWS_ENABLED
value: "{{ .Values.kerberoshub.frontend.features.workflows.enabled }}"
- name: FEATURE_DARK_MODE
value: "{{ .Values.kerberoshub.frontend.features.darkModeEnabled }}"
- name: FEATURE_LANDING_PAGE
value: "{{ .Values.kerberoshub.frontend.features.landingPage }}"
# features > internationalization (i18n)
- name: FEATURE_I18N_ENABLED
value: "{{ .Values.kerberoshub.frontend.features.i18n.enabled }}"
- name: DEFAULT_LANGUAGE
value: "{{ .Values.kerberoshub.frontend.features.i18n.defaultLanguage }}"
# features > liveview
- name: FEATURE_DEFAULT_STREAM_MODE
value: "{{ .Values.kerberoshub.frontend.features.liveview.defaultStreamMode }}"
- name: FEATURE_LIVEVIEW_PAGINATION_ENABLED
value: "{{ .Values.kerberoshub.frontend.features.liveview.paginationEnabled }}"
- name: FEATURE_LIVEVIEW_EMPTY_BY_DEFAULT
value: "{{ .Values.kerberoshub.frontend.features.liveview.emptyByDefault }}"
- name: FEATURE_LIVEVIEW_PAGINATION_MODE
value: "{{ .Values.kerberoshub.frontend.features.liveview.paginationMode }}"
- name: FEATURE_LIVEVIEW_PAGE_SIZE
value: "{{ .Values.kerberoshub.frontend.features.liveview.pageSize }}"
- name: FEATURE_LIVEVIEW_MAX_STREAMS
value: "{{ .Values.kerberoshub.frontend.features.liveview.maxStreams }}"
@@ -405,6 +384,10 @@ spec:
- name: COLOR_CHART_GRID_STROKE
value: "{{ .Values.kerberoshub.frontend.features.chart.colorChartGridStroke }}"
# features > video edits
- name: FEATURE_VIDEO_EDITS_ENABLED
value: "{{ .Values.kerberoshub.frontend.features.videoEdits.enabled }}"
# features > face redaction
- name: FEATURE_FACE_REDACTION_ENABLED
value: "{{ .Values.kerberoshub.frontend.features.faceRedaction.enabled }}"
@@ -438,29 +421,6 @@ spec:
value: "{{ .Values.kerberoshub.frontend.features.media.filter.tags.enabled }}"
- name: MARKERS_NAME
value: "{{ .Values.kerberoshub.frontend.markersName }}"
- name: EVENTS_NAME
value: "{{ .Values.kerberoshub.frontend.eventsName }}"
- name: FLOOR_PLAN_NAME
value: "{{ .Values.kerberoshub.frontend.floorPlanName }}"
- name: SITES_NAME
value: "{{ .Values.kerberoshub.frontend.sitesName }}"
- name: SITES_DESCRIPTION
value: "{{ .Values.kerberoshub.frontend.sitesDescription }}"
- name: GROUPS_NAME
value: "{{ .Values.kerberoshub.frontend.groupsName }}"
- name: GROUPS_DESCRIPTION
value: "{{ .Values.kerberoshub.frontend.groupsDescription }}"
- name: SITE_GROUP_NAME
value: "{{ .Values.kerberoshub.frontend.siteGroupName }}"
- name: SITE_GROUP_DESCRIPTION
value: "{{ .Values.kerberoshub.frontend.siteGroupDescription }}"
- name: DEVICE_GROUP_NAME
value: "{{ .Values.kerberoshub.frontend.deviceGroupName }}"
- name: DEVICE_GROUP_DESCRIPTION
value: "{{ .Values.kerberoshub.frontend.deviceGroupDescription }}"
{{- if .Values.kerberoshub.extraEnv }}
{{- toYaml .Values.kerberoshub.extraEnv | nindent 8 }}
{{- end }}

View File

@@ -33,6 +33,10 @@ spec:
volumes:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberoshub.monitordevice.topologySpreadConstraints }}
topologySpreadConstraints:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
- name: hub-monitor-device
image: "{{ .Values.global.imageRegistry }}{{ .Values.kerberoshub.monitordevice.repository }}:{{ .Values.kerberoshub.monitordevice.tag }}"

View File

@@ -16,6 +16,14 @@ spec:
labels:
k8s-app: oauth2-proxy
spec:
{{- with .Values.kerberoshub.oauth2Proxy.volumes }}
volumes:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberoshub.oauth2Proxy.topologySpreadConstraints }}
topologySpreadConstraints:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
- args:
- --provider=github
@@ -23,6 +31,10 @@ spec:
- --upstream=file:///dev/null
- --http-address=0.0.0.0:4180
- --skip-auth-preflight=true
{{- with .Values.kerberoshub.oauth2Proxy.volumeMounts }}
volumeMounts:
{{- toYaml . | nindent 12 }}
{{- end }}
env:
- name: OAUTH2_PROXY_CLIENT_ID
value: "{{ .Values.kerberoshub.oauth2Proxy.github.clientId }}"

View File

@@ -26,10 +26,22 @@ spec:
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberoshub.reactivate.volumes }}
volumes:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberoshub.reactivate.topologySpreadConstraints }}
topologySpreadConstraints:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
- name: hub-reactivate-subscription
image: "{{ .Values.global.imageRegistry }}{{ .Values.kerberoshub.reactivate.repository }}:{{ .Values.kerberoshub.reactivate.tag }}"
imagePullPolicy: {{ .Values.kerberoshub.reactivate.pullPolicy }}
{{- with .Values.kerberoshub.reactivate.volumeMounts }}
volumeMounts:
{{- toYaml . | nindent 12 }}
{{- end }}
envFrom:
- configMapRef:
name: mongodb-config

View File

@@ -29,6 +29,14 @@ spec:
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberospipeline.analysis.volumes }}
volumes:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberospipeline.analysis.topologySpreadConstraints }}
topologySpreadConstraints:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
- name: pipe-analysis
image: "{{ .Values.global.imageRegistry }}{{ .Values.kerberospipeline.analysis.repository }}:{{ .Values.kerberospipeline.analysis.tag }}"
@@ -37,6 +45,10 @@ spec:
resources:
{{- toYaml . | nindent 12 }}
{{- end }}
{{- with .Values.kerberospipeline.analysis.volumeMounts }}
volumeMounts:
{{- toYaml . | nindent 12 }}
{{- end }}
envFrom:
- configMapRef:
name: mongodb-config

View File

@@ -27,6 +27,14 @@ spec:
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberospipeline.counting.volumes }}
volumes:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberospipeline.counting.topologySpreadConstraints }}
topologySpreadConstraints:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
- name: pipe-counting
image: "{{ .Values.global.imageRegistry }}{{ .Values.kerberospipeline.counting.repository }}:{{ .Values.kerberospipeline.counting.tag }}"
@@ -35,6 +43,10 @@ spec:
resources:
{{- toYaml . | nindent 12 }}
{{- end }}
{{- with .Values.kerberospipeline.counting.volumeMounts }}
volumeMounts:
{{- toYaml . | nindent 12 }}
{{- end }}
env:
- name: LOG_LEVEL
value: "{{ .Values.kerberospipeline.counting.logLevel }}"

View File

@@ -27,6 +27,14 @@ spec:
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberospipeline.dominantColor.volumes }}
volumes:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberospipeline.dominantColor.topologySpreadConstraints }}
topologySpreadConstraints:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
- name: pipe-dominantcolor
image: "{{ .Values.global.imageRegistry }}{{ .Values.kerberospipeline.dominantColor.repository }}:{{ .Values.kerberospipeline.dominantColor.tag }}"
@@ -35,6 +43,10 @@ spec:
resources:
{{- toYaml . | nindent 12 }}
{{- end }}
{{- with .Values.kerberospipeline.dominantColor.volumeMounts }}
volumeMounts:
{{- toYaml . | nindent 12 }}
{{- end }}
env:
- name: LOG_LEVEL
value: "{{ .Values.kerberospipeline.dominantColor.logLevel }}"

View File

@@ -29,6 +29,14 @@ spec:
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberospipeline.event.volumes }}
volumes:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberospipeline.event.topologySpreadConstraints }}
topologySpreadConstraints:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
- name: pipe-event
image: "{{ .Values.global.imageRegistry }}{{ .Values.kerberospipeline.event.repository }}:{{ .Values.kerberospipeline.event.tag }}"
@@ -37,6 +45,10 @@ spec:
resources:
{{- toYaml . | nindent 12 }}
{{- end }}
{{- with .Values.kerberospipeline.event.volumeMounts }}
volumeMounts:
{{- toYaml . | nindent 12 }}
{{- end }}
ports:
- containerPort: 8080
envFrom:

View File

@@ -29,6 +29,14 @@ spec:
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberospipeline.export.volumes }}
volumes:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberospipeline.export.topologySpreadConstraints }}
topologySpreadConstraints:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
- name: pipe-export
image: "{{ .Values.global.imageRegistry }}{{ .Values.kerberospipeline.export.repository }}:{{ .Values.kerberospipeline.export.tag }}"
@@ -37,12 +45,20 @@ spec:
resources:
{{- toYaml . | nindent 12 }}
{{- end }}
{{- with .Values.kerberospipeline.export.volumeMounts }}
volumeMounts:
{{- toYaml . | nindent 12 }}
{{- end }}
envFrom:
- configMapRef:
name: mongodb-config
env:
- name: LOG_LEVEL
value: "{{ .Values.kerberospipeline.export.logLevel }}"
{{- if .Values.kerberospipeline.export.playerAssetsPath }}
- name: PLAYER_ASSETS_PATH
value: "{{ .Values.kerberospipeline.export.playerAssetsPath }}"
{{- end }}
- name: CLOUD_PROVIDER
value: "{{ .Values.cloudProvider }}"
- name: QUEUE_SYSTEM

View File

@@ -29,6 +29,14 @@ spec:
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberospipeline.monitor.volumes }}
volumes:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberospipeline.monitor.topologySpreadConstraints }}
topologySpreadConstraints:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
- name: pipe-monitor
image: "{{ .Values.global.imageRegistry }}{{ .Values.kerberospipeline.monitor.repository }}:{{ .Values.kerberospipeline.monitor.tag }}"
@@ -37,6 +45,10 @@ spec:
resources:
{{- toYaml . | nindent 12 }}
{{- end }}
{{- with .Values.kerberospipeline.monitor.volumeMounts }}
volumeMounts:
{{- toYaml . | nindent 12 }}
{{- end }}
envFrom:
- configMapRef:
name: mongodb-config

View File

@@ -33,6 +33,10 @@ spec:
volumes:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberospipeline.notifyTest.topologySpreadConstraints }}
topologySpreadConstraints:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
- name: pipe-notify-test
image: "{{ .Values.global.imageRegistry }}{{ .Values.kerberospipeline.notifyTest.repository }}:{{ .Values.kerberospipeline.notifyTest.tag }}"
@@ -89,6 +93,8 @@ spec:
value: "{{ .Values.email.from }}"
- name: EMAIL_FROM_DISPLAYNAME
value: "{{ .Values.email.displayName }}"
- name: PUBLIC_URL
value: "{{ .Values.kerberoshub.frontend.schema }}://{{ .Values.kerberoshub.frontend.url }}"
# Mail templates
- name: DETECT_TEMPLATE
@@ -128,4 +134,4 @@ spec:
protocol: TCP
selector:
app: pipe-notify-test
{{- end }}
{{- end }}

View File

@@ -33,6 +33,10 @@ spec:
volumes:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberospipeline.notify.topologySpreadConstraints }}
topologySpreadConstraints:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
- name: pipe-notify
image: "{{ .Values.global.imageRegistry }}{{ .Values.kerberospipeline.notify.repository }}:{{ .Values.kerberospipeline.notify.tag }}"
@@ -92,6 +96,8 @@ spec:
value: "{{ .Values.email.from }}"
- name: EMAIL_FROM_DISPLAYNAME
value: "{{ .Values.email.displayName }}"
- name: PUBLIC_URL
value: "{{ .Values.kerberoshub.frontend.schema }}://{{ .Values.kerberoshub.frontend.url }}"
# Mail templates
- name: DETECT_TEMPLATE
@@ -160,4 +166,4 @@ spec:
protocol: TCP
selector:
app: pipe-notify
{{- end }}
{{- end }}

View File

@@ -0,0 +1,114 @@
{{- if or (eq .Values.mode "all") (eq .Values.mode "pipeline") -}}
apiVersion: apps/v1
kind: Deployment
metadata:
name: pipe-redaction
namespace: {{ .Release.Namespace }}
spec:
replicas: {{ .Values.kerberospipeline.redaction.replicas }}
selector:
matchLabels:
app: pipe-redaction
minReadySeconds: 10
strategy:
type: RollingUpdate
rollingUpdate:
maxUnavailable: 1
maxSurge: 1
template:
metadata:
labels:
app: pipe-redaction
spec:
{{- if .Values.kerberoshub.serviceAccount.create }}
serviceAccountName: {{ default (printf "%s-%s-sa" .Release.Name .Chart.Name | trunc 63 | trimSuffix "-") .Values.kerberoshub.serviceAccount.name }}
{{- end }}
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberospipeline.redaction.volumes }}
volumes:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberospipeline.redaction.topologySpreadConstraints }}
topologySpreadConstraints:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
- name: pipe-redaction
image: "{{ .Values.global.imageRegistry }}{{ .Values.kerberospipeline.redaction.repository }}:{{ .Values.kerberospipeline.redaction.tag }}"
imagePullPolicy: {{ .Values.kerberospipeline.redaction.pullPolicy }}
{{- with .Values.kerberospipeline.redaction.resources }}
resources:
{{- toYaml . | nindent 12 }}
{{- end }}
{{- with .Values.kerberospipeline.redaction.volumeMounts }}
volumeMounts:
{{- toYaml . | nindent 12 }}
{{- end }}
env:
- name: LOG_LEVEL
value: "{{ .Values.kerberospipeline.redaction.logLevel }}"
- name: CLOUD_PROVIDER
value: "{{ .Values.cloudProvider }}"
- name: QUEUE_SYSTEM
value: "{{ .Values.queueProvider }}"
# Kafka settings
- name: KAFKA_BROKER
value: "{{ .Values.kafka.broker }}"
- name: KAFKA_USERNAME
value: "{{ .Values.kafka.username }}"
- name: KAFKA_PASSWORD
value: "{{ .Values.kafka.password }}"
- name: KAFKA_MECHANISM
value: "{{ .Values.kafka.mechanism }}"
- name: KAFKA_SECURITY
value: "{{ .Values.kafka.security }}"
# RabbitMQ settings
- name: RABBITMQ_HOST
value: "{{ .Values.rabbitmq.host }}"
- name: RABBITMQ_EXCHANGE
value: "{{ .Values.rabbitmq.exchange }}"
- name: RABBITMQ_USERNAME
value: "{{ .Values.rabbitmq.username }}"
- name: RABBITMQ_PASSWORD
value: "{{ .Values.rabbitmq.password }}"
# Kerberos Vault (used to download the source media and upload the redacted artifact).
- name: KERBEROS_STORAGE_URI
value: "{{ .Values.kerberosvault.uri }}"
- name: KERBEROS_STORAGE_PROVIDER
value: "{{ .Values.kerberosvault.provider }}"
- name: KERBEROS_STORAGE_ACCESS_KEY
value: "{{ .Values.kerberosvault.accesskey }}"
- name: KERBEROS_STORAGE_SECRET
value: "{{ .Values.kerberosvault.secretkey }}"
# Open Telemetry tracing
- name: OTEL_EXPORTED_OTLP_ENABLED
value: "{{ .Values.opentelemetry.enabled }}"
- name: OTEL_EXPORTED_OTLP_ROUTING_ENABLED
value: "{{ .Values.opentelemetry.routingEnabled }}"
- name: OTEL_EXPORTER_OTLP_ENDPOINT
value: "{{ .Values.opentelemetry.collector.endpoint }}"
---
apiVersion: v1
kind: Service
metadata:
name: pipe-redaction
namespace: {{ .Release.Namespace }}
labels:
app: pipe-redaction
service: pipe
spec:
ports:
- name: hub-metrics
port: 8080
targetPort: 8080
protocol: TCP
selector:
app: pipe-redaction
{{- end }}

View File

@@ -29,6 +29,14 @@ spec:
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberospipeline.sequence.volumes }}
volumes:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberospipeline.sequence.topologySpreadConstraints }}
topologySpreadConstraints:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
- name: pipe-sequence
image: "{{ .Values.global.imageRegistry }}{{ .Values.kerberospipeline.sequence.repository }}:{{ .Values.kerberospipeline.sequence.tag }}"
@@ -37,6 +45,10 @@ spec:
resources:
{{- toYaml . | nindent 12 }}
{{- end }}
{{- with .Values.kerberospipeline.sequence.volumeMounts }}
volumeMounts:
{{- toYaml . | nindent 12 }}
{{- end }}
envFrom:
- configMapRef:
name: mongodb-config

View File

@@ -27,6 +27,14 @@ spec:
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberospipeline.sprite.volumes }}
volumes:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberospipeline.sprite.topologySpreadConstraints }}
topologySpreadConstraints:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
- name: pipe-sprite
image: "{{ .Values.global.imageRegistry }}{{ .Values.kerberospipeline.sprite.repository }}:{{ .Values.kerberospipeline.sprite.tag }}"
@@ -35,6 +43,10 @@ spec:
resources:
{{- toYaml . | nindent 12 }}
{{- end }}
{{- with .Values.kerberospipeline.sprite.volumeMounts }}
volumeMounts:
{{- toYaml . | nindent 12 }}
{{- end }}
env:
- name: LOG_LEVEL
value: "{{ .Values.kerberospipeline.sprite.logLevel }}"

View File

@@ -29,6 +29,14 @@ spec:
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberospipeline.throttler.volumes }}
volumes:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberospipeline.throttler.topologySpreadConstraints }}
topologySpreadConstraints:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
- name: pipe-throttler
image: "{{ .Values.global.imageRegistry }}{{ .Values.kerberospipeline.throttler.repository }}:{{ .Values.kerberospipeline.throttler.tag }}"
@@ -37,6 +45,10 @@ spec:
resources:
{{- toYaml . | nindent 12 }}
{{- end }}
{{- with .Values.kerberospipeline.throttler.volumeMounts }}
volumeMounts:
{{- toYaml . | nindent 12 }}
{{- end }}
envFrom:
- configMapRef:
name: mongodb-config

View File

@@ -27,6 +27,14 @@ spec:
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberospipeline.thumbnail.volumes }}
volumes:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberospipeline.thumbnail.topologySpreadConstraints }}
topologySpreadConstraints:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
- name: pipe-thumbnail
image: "{{ .Values.global.imageRegistry }}{{ .Values.kerberospipeline.thumbnail.repository }}:{{ .Values.kerberospipeline.thumbnail.tag }}"
@@ -35,6 +43,10 @@ spec:
resources:
{{- toYaml . | nindent 12 }}
{{- end }}
{{- with .Values.kerberospipeline.thumbnail.volumeMounts }}
volumeMounts:
{{- toYaml . | nindent 12 }}
{{- end }}
env:
- name: LOG_LEVEL
value: "{{ .Values.kerberospipeline.thumbnail.logLevel }}"

View File

@@ -27,6 +27,14 @@ spec:
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberoshub.forwarder.volumes }}
volumes:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberoshub.forwarder.topologySpreadConstraints }}
topologySpreadConstraints:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
- name: vault-forwarder
image: "{{ .Values.global.imageRegistry }}{{ .Values.kerberoshub.forwarder.repository }}:{{ .Values.kerberoshub.forwarder.tag }}"
@@ -35,6 +43,10 @@ spec:
requests:
memory: 10Mi
cpu: 10m
{{- with .Values.kerberoshub.forwarder.volumeMounts }}
volumeMounts:
{{- toYaml . | nindent 12 }}
{{- end }}
envFrom:
- configMapRef:
name: mongodb-config

View File

@@ -24,10 +24,22 @@ spec:
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberoshub.proxy.volumes }}
volumes:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.kerberoshub.proxy.topologySpreadConstraints }}
topologySpreadConstraints:
{{- toYaml . | nindent 8 }}
{{- end }}
containers:
- name: vault-proxy
image: "{{ .Values.global.imageRegistry }}{{ .Values.kerberoshub.proxy.repository }}:{{ .Values.kerberoshub.proxy.tag }}"
imagePullPolicy: {{ .Values.kerberoshub.proxy.pullPolicy }}
{{- with .Values.kerberoshub.proxy.volumeMounts }}
volumeMounts:
{{- toYaml . | nindent 12 }}
{{- end }}
ports:
- containerPort: 8080
name: http

View File

@@ -54,13 +54,19 @@ mongodb:
username: yourusername
password: "yourpassword"
retryWrites: "true"
# Backend engine flavor. Use "mongodb" for native MongoDB / Atlas (default)
# or "documentdb" for AWS DocumentDB. The "documentdb" flavor makes the
# hub-api disable features DocumentDB does not support (geospatial queries
# and indexes, complex $lookup pipelines, etc.). When using DocumentDB you
# should also set retryWrites: "false".
flavor: "mongodb"
###################################################
# MQTT configuration (bi-directional communication)
###################################################
# A MQTT broker (vernemq or other like mosquitto) is used to have a bi-directional communication between Agents and Hub.
# We recommend to use VernemQ (as part of this installation), but a stand-alone mosquitto broker is also possible.
mqtt:
host: "mqtt.yourdomain.com" # this needs to be a public accessible DNS name (it's used to communicate between Kerberos Agents and Kerberos Hub)
host: "mqtt.yourdomain.com" # this needs to be a public accessible DNS name (it's used to communicate between Agents and Kerberos Hub)
port: "8443"
protocol: "wss"
username: "yourusername"
@@ -157,6 +163,23 @@ admin:
pullPolicy: IfNotPresent
tag: "v1.3.0"
replicas: 2
# Optional pod topology spread constraints for this deployment. Empty by
# default. Example:
# topologySpreadConstraints:
# - maxSkew: 1
# topologyKey: kubernetes.io/hostname
# whenUnsatisfiable: ScheduleAnyway
# labelSelector:
# matchLabels:
# app: admin
topologySpreadConstraints: []
# Optional extra volumes / volumeMounts for this deployment (empty = none).
#volumes:
# - name: extra
# emptyDir: {}
#volumeMounts:
# - name: extra
# mountPath: /data
logLevel: "info" # possible values: trace, debug, info, warn, error
resources:
requests:
@@ -169,6 +192,14 @@ admin:
secretName: admin
oauth2Proxy:
enabled: false
topologySpreadConstraints: [] # Optional pod topology spread constraints (empty = none).
# Optional extra volumes / volumeMounts for this deployment (empty = none).
#volumes:
# - name: extra
# emptyDir: {}
#volumeMounts:
# - name: extra
# mountPath: /data
github:
clientId: "github-client-id"
clientSecret: "github-client-secret"
@@ -195,8 +226,12 @@ kerberoshub:
api:
repository: ghcr.io/uug-ai/hub-api
pullPolicy: IfNotPresent
tag: "v1.8.25"
tag: "v1.9.8"
replicas: 2
topologySpreadConstraints: [] # Optional pod topology spread constraints (empty = none).
# Set to false to skip rendering the hub-api Service (e.g. when an
# external/shared Service is managed elsewhere).
serviceEnabled: true
logLevel: "info" # possible values: trace, debug, info, warn, error
jwtSecret: "this-is-a-secret-please-change-to-random-string" # change to a random value, this is for generating JWT tokens.
schema: "https"
@@ -234,6 +269,18 @@ kerberoshub:
# Admin API's are made available for automation of Kerberos Hub.
# To access those API's (e.g. creation of owner users), an API key needs to be provided.
apiKey: "a-random-admin-api-key"
# Default retention (in days) applied to tasks that do not have an
# explicit `retention_days` set. New tasks created without a custom
# retention are stamped with this value. Set to "0" (or a negative
# value) to disable the default retention (tasks are kept indefinitely
# unless an explicit value is provided). Must match the value used by
# `kerberoshub.cleanup.defaultTaskRetentionDays`.
defaultTaskRetentionDays: "0"
# Maximum retention (in days) allowed on a task. When a caller
# supplies an `expires_at` (or the default retention above resolves)
# beyond this cap, the value is clamped down to `now + casesMaxRetentionDays`.
# Set to "0" (or a negative value) to disable the cap (no maximum).
casesMaxRetentionDays: "0"
## Certificates
tls:
- hosts:
@@ -292,8 +339,12 @@ kerberoshub:
frontend:
repository: ghcr.io/uug-ai/hub-frontend
pullPolicy: IfNotPresent
tag: "v1.8.23"
tag: "v1.9.11"
replicas: 2
topologySpreadConstraints: [] # Optional pod topology spread constraints (empty = none).
# Set to false to skip rendering the hub-frontend Service (e.g. when an
# external/shared Service is managed elsewhere).
serviceEnabled: true
logLevel: "info" # possible values: trace, debug, info, warn, error
schema: "https"
url: "yourdomain.com"
@@ -304,7 +355,9 @@ kerberoshub:
limits:
memory: 50Mi
cpu: 50m
# The front-end but in read-only mode
# The front-end but in read-only mode. Set demoEnabled to true to deploy
# the demo front-end (service, ingress and deployment).
demoEnabled: false
#demoUrl: "demo.yourdomain.com"
# When migrating to another url, this might help migrating.
#legacyUrl: "legacy.yourdomain.com"
@@ -319,8 +372,8 @@ kerberoshub:
# - hosts:
# - "demo.yourdomain.com"
# secretName: kerberoshub-demo
# You can disable the Kerberos agent buttons, this make sense
# in a white-label setup, or where you are managing the Kerberos Agents for your customers.
# You can disable the Agent buttons, this make sense
# in a white-label setup, or where you are managing the Agents for your customers.
hideAddAgent: "false"
# Multi tenancy (domains)
# By default the Kerberos Hub allows multi-tenancy through the concept
@@ -336,14 +389,19 @@ kerberoshub:
# 2. you bring your own logo (set logo to 'custom'), and mount the css file and favicons.
# we will need to include your logo in the Docker image, so please reach out to us.
logo: "custom"
# Custom layout: override css
# By providing a style.css file in the custom folder
# this file will override any css styling.
# Custom layout: override css, favicons and translations (i18n)
# By providing a style.css file in the custom folder this file will override
# any css styling. Favicons are mounted into the favicon folder. Custom
# translation files (e.g. en.json, nl.json, ...) can be mounted into the
# i18n folder to override the built-in translations shipped in the image.
# An example translation file can be found in custom-layout/i18n/en.json.
#volumeMounts:
# - name: custom-layout
# mountPath: /usr/share/nginx/html/assets/custom
# - name: custom-favicon
# mountPath: /usr/share/nginx/html/assets/favicon
# - name: custom-i18n
# mountPath: /usr/share/nginx/html/assets/i18n
#volumes:
# - name: custom-layout
# persistentVolumeClaim:
@@ -351,44 +409,13 @@ kerberoshub:
# - name: custom-favicon
# persistentVolumeClaim:
# claimName: custom-favicon-claim
# - name: custom-i18n
# persistentVolumeClaim:
# claimName: custom-i18n-claim
# Override naming conventions within the front-end.
floorPlanName: "map" # The name of the 'floor plan' feature to use in the front-end.
sitesName: "site" # The name of the 'sites' feature to use in the front-end.
sitesDescription: "" # The description of the 'sites' feature to use in the front-end.
groupsName: "group" # The name of the 'groups' feature to use in the front-end.
groupsDescription: "" # The description of the 'groups' feature to use in the front-end.
siteGroupName: "site Group" # The name of the 'site groups' feature to use in the front-end.
siteGroupDescription: "" # The description of the 'site groups' feature to use in the front-end.
deviceGroupName: "device Group" # The name of the 'device groups' feature to use in the front-end.
deviceGroupDescription: "" # The description of the 'device groups' feature to use in the front-end.
markersName: "marker" # The name of the 'markers' feature to use in the front-end.
eventsName: "event" # The name of the 'events' feature to use in the front-end.
# By specifying the below environments variables, you can tweak the
# headings and paragraphs of Kerberos Hub front-end.
# Login page
loginDescription: ""
loginCopyright: ""
# Dashboard page
dashboardTitle: ""
dashboardSubTitle: ""
# Latest events page
latestEventsTitle: ""
latestEventsSubTitle: ""
# Day title
dayTitle: ""
daySubTitle: ""
# Livestream/view page
livestreamTitle: ""
livestreamSubTitle: ""
# Media page
mediaTitle: ""
mediaSubTitle: ""
# Optional - for custom page.
cpuUsageDescription: ""
framesPerSecondDescription: ""
mlaUtilizationDescription: ""
objectsDetectedDescription: ""
# Note: Front-end naming/labelling and page headings are sourced from the
# built-in internationalization files (assets/i18n/*.json) and are no
# longer configurable via the Helm chart.
# You can add custom links to the navigation bar.
navigationLinkTitle1: ""
navigationLinkUrl1: ""
@@ -407,9 +434,18 @@ kerberoshub:
# General
darkModeEnabled: "true" # Enable or disable dark mode toggle 'true' or 'false'
landingPage: "/dashboard" # Landing page after login '/dashboard', '/liveview', '/media', '/devices', '/sites', '/groups'
# Internationalization (i18n): controls the runtime language behaviour
# of the front-end. When `enabled` is "false" the language switcher is
# hidden and `defaultLanguage` is always forced; users cannot change it.
i18n:
enabled: "true" # Enable or disable the language switcher 'true' or 'false'
defaultLanguage: "en" # Default language code: en, nl, pl, tr, fr, sv, de
# Case management is a feature that allows you to create cases, and link recordings, devices, sites, groups, markers and events to those cases.
case:
enabled: "true" # Enable or disable case management feature 'true' or 'false'
# Workflows allow you to define automated processes and actions in the front-end.
workflows:
enabled: "false" # Enable or disable workflows feature 'true' or 'false'
# Map tile configuration
map:
tileUrlLight: "https://{s}.basemaps.cartocdn.com/rastertiles/voyager/{z}/{x}/{y}{r}.png" # Map tile URL for light mode
@@ -418,8 +454,8 @@ kerberoshub:
# Live view page
liveview:
defaultStreamMode: "SD" # Default stream mode 'SD' or 'HD' (will be migrated to 'preview' or 'live')
paginationEnabled: "false" # Enable or disable pagination in live view 'true' or 'false'
emptyByDefault: "false" # Show empty live view when there are no active devices 'true' or 'false'
paginationMode: "scroll" # Pagination mode in live view 'scroll', 'numbered' or 'maxStreams'
pageSize: "6" # Max streams shown per page when paginationMode is 'numbered' (4, 8, 12, 16 or 25)
maxStreams: "-1" # Maximum number of live streams to show in live view, -1 for unlimited
# Device page
devices:
@@ -475,6 +511,9 @@ kerberoshub:
colorTrackBoxHover: "hsla(47, 86%, 47%, 1)" # Boxes while hovering over the associated track
colorTrackBoxDrawing: "hsla(204, 100%, 50%, 1)" # New box while drawing
colorTrackBoxControlsDelete: "hsla(219, 100%, 94%, 1)" # Delete icon top right of the box while editing
# Video edits feature (umbrella flag for in-app video editing tools, e.g. face redaction)
videoEdits:
enabled: "false" # Enable or disable video edit tools 'true' or 'false'
# Face redaction feature
faceRedaction:
enabled: "false" # Enable or disable face redaction 'true' or 'false'
@@ -496,6 +535,14 @@ kerberoshub:
enabled: false
oauth2Proxy:
enabled: false
topologySpreadConstraints: [] # Optional pod topology spread constraints (empty = none).
# Optional extra volumes / volumeMounts for this deployment (empty = none).
#volumes:
# - name: extra
# emptyDir: {}
#volumeMounts:
# - name: extra
# mountPath: /data
github:
clientId: "github-client-id"
clientSecret: "github-client-secret"
@@ -505,11 +552,42 @@ kerberoshub:
cleanup:
repository: ghcr.io/uug-ai/hub-cleanup
pullPolicy: IfNotPresent
tag: "v1.4.8"
tag: "v1.4.13"
replicas: 1 # Number of pods for the service.
mode: "serve" # The mode the cleanup service operates in.
topologySpreadConstraints: [] # Optional pod topology spread constraints (empty = none).
# Optional extra volumes / volumeMounts for this deployment (empty = none).
#volumes:
# - name: extra
# emptyDir: {}
#volumeMounts:
# - name: extra
# mountPath: /data
mode: "serve" # The mode the cleanup service operates in: serve | dry-run | version
logLevel: "info" # possible values: trace, debug, info, warn, error
maxDays: "365" # The maximum number of days to keep orphaned recordings.
maxDays: "365" # Hard maximum age (days) for global orphan cleanup.
runIntervalMinutes: "10" # Minutes between cleanup cycles.
cleanupUsernames: "" # Optional comma-separated usernames to target.
batchSize: "250" # Delete batch size per collection operation.
userBatchSize: "100" # Users processed per in-memory batch.
maxUsersPerRun: "100" # Hard cap of users processed each run.
progressEvery: "100" # Print progress every N processed users.
activeUserRescanHours: "6" # Next scan delay for active subscriptions.
inactiveUserRescanHours: "24" # Next scan delay for inactive users.
readTimeoutSeconds: "30" # Read/find/count timeout.
deleteTimeoutSeconds: "120" # Delete timeout.
reportIncludeStats: "false" # Include richer dry-run/user summary stats.
dryRun: "false" # Force dry-run behavior without using mode=dry-run.
debug: "false" # Extra per-user/global debug logging.
globalPassEnabled: "false" # Enable post-user global cleanup pass.
globalPassIntervalHours: "0" # 0 = every cycle when enabled.
globalPassDeleteBudget: "0" # 0 = unlimited deletes during global pass.
# Default retention (in days) applied to tasks without an explicit
# `retention_days`. Tasks older than this (anchored on `creation_date`)
# are deleted along with their `case_media` rows. Set to "0" (or a
# negative value) to keep tasks without an explicit retention forever.
# Tasks with `legal_hold=true` are never deleted. Must match the value
# used by `kerberoshub.api.defaultTaskRetentionDays`.
defaultTaskRetentionDays: "0"
resources:
requests:
memory: 10Mi
@@ -519,6 +597,7 @@ kerberoshub:
pullPolicy: IfNotPresent
tag: "v1.4.0"
replicas: 1 # Number of pods for the service.
topologySpreadConstraints: [] # Optional pod topology spread constraints (empty = none).
logLevel: "info" # possible values: trace, debug, info, warn, error
resources:
requests:
@@ -537,6 +616,14 @@ kerberoshub:
pullPolicy: IfNotPresent
tag: "v1.0.2"
replicas: 1 # Number of pods for the service.
topologySpreadConstraints: [] # Optional pod topology spread constraints (empty = none).
# Optional extra volumes / volumeMounts for this deployment (empty = none).
#volumes:
# - name: extra
# emptyDir: {}
#volumeMounts:
# - name: extra
# mountPath: /data
logLevel: "info" # possible values: trace, debug, info, warn, error
resources:
requests:
@@ -544,6 +631,14 @@ kerberoshub:
cpu: 10m
forwarder:
enabled: false
topologySpreadConstraints: [] # Optional pod topology spread constraints (empty = none).
# Optional extra volumes / volumeMounts for this deployment (empty = none).
#volumes:
# - name: extra
# emptyDir: {}
#volumeMounts:
# - name: extra
# mountPath: /data
#repository: kerberos/vault-forwarder
#pullPolicy: IfNotPresent
#tag: "1.0.2732389692"
@@ -557,6 +652,14 @@ kerberoshub:
pullPolicy: IfNotPresent
tag: "v1.0.0"
replicas: 1 # Number of pods for the service.
topologySpreadConstraints: [] # Optional pod topology spread constraints (empty = none).
# Optional extra volumes / volumeMounts for this deployment (empty = none).
#volumes:
# - name: extra
# emptyDir: {}
#volumeMounts:
# - name: extra
# mountPath: /data
logLevel: "info" # possible values: trace, debug, info, warn, error
resources:
requests:
@@ -572,6 +675,14 @@ kerberospipeline:
pullPolicy: IfNotPresent
tag: "v1.3.0"
replicas: 1 # Number of pods for the service.
topologySpreadConstraints: [] # Optional pod topology spread constraints (empty = none).
# Optional extra volumes / volumeMounts for this deployment (empty = none).
#volumes:
# - name: extra
# emptyDir: {}
#volumeMounts:
# - name: extra
# mountPath: /data
logLevel: "info" # possible values: trace, debug, info, warn, error
resources:
requests:
@@ -582,6 +693,14 @@ kerberospipeline:
pullPolicy: IfNotPresent
tag: "v1.3.9"
replicas: 1 # Number of pods for the service.
topologySpreadConstraints: [] # Optional pod topology spread constraints (empty = none).
# Optional extra volumes / volumeMounts for this deployment (empty = none).
#volumes:
# - name: extra
# emptyDir: {}
#volumeMounts:
# - name: extra
# mountPath: /data
resources:
requests:
memory: 10Mi
@@ -589,8 +708,16 @@ kerberospipeline:
sequence:
repository: ghcr.io/uug-ai/hub-pipeline-sequence
pullPolicy: IfNotPresent
tag: "v1.6.14"
tag: "v1.6.18"
replicas: 1 # Number of pods for the service.
topologySpreadConstraints: [] # Optional pod topology spread constraints (empty = none).
# Optional extra volumes / volumeMounts for this deployment (empty = none).
#volumes:
# - name: extra
# emptyDir: {}
#volumeMounts:
# - name: extra
# mountPath: /data
resources:
requests:
memory: 10Mi
@@ -600,6 +727,14 @@ kerberospipeline:
pullPolicy: IfNotPresent
tag: "v1.2.0"
replicas: 1 # Number of pods for the service.
topologySpreadConstraints: [] # Optional pod topology spread constraints (empty = none).
# Optional extra volumes / volumeMounts for this deployment (empty = none).
#volumes:
# - name: extra
# emptyDir: {}
#volumeMounts:
# - name: extra
# mountPath: /data
logLevel: "info" # possible values: trace, debug, info, warn, error
resources:
requests:
@@ -608,8 +743,9 @@ kerberospipeline:
notify:
repository: ghcr.io/uug-ai/hub-pipeline-notification
pullPolicy: IfNotPresent
tag: "v1.3.6"
tag: "v1.3.9"
replicas: 1 # Number of pods for the service.
topologySpreadConstraints: [] # Optional pod topology spread constraints (empty = none).
logLevel: "info" # possible values: trace, debug, info, warn, error
resources:
requests:
@@ -628,6 +764,7 @@ kerberospipeline:
pullPolicy: IfNotPresent
tag: "v1.2.1"
replicas: 1 # Number of pods for the service.
topologySpreadConstraints: [] # Optional pod topology spread constraints (empty = none).
resources:
requests:
memory: 10Mi
@@ -645,6 +782,14 @@ kerberospipeline:
pullPolicy: IfNotPresent
tag: "v1.7.8"
replicas: 1 # Number of pods for the service.
topologySpreadConstraints: [] # Optional pod topology spread constraints (empty = none).
# Optional extra volumes / volumeMounts for this deployment (empty = none).
#volumes:
# - name: extra
# emptyDir: {}
#volumeMounts:
# - name: extra
# mountPath: /data
logLevel: "info" # possible values: trace, debug, info, warn, error
resources:
requests:
@@ -655,6 +800,14 @@ kerberospipeline:
pullPolicy: IfNotPresent
tag: "v2.0.2"
replicas: 3 # Number of pods for the service.
topologySpreadConstraints: [] # Optional pod topology spread constraints (empty = none).
# Optional extra volumes / volumeMounts for this deployment (empty = none).
#volumes:
# - name: extra
# emptyDir: {}
#volumeMounts:
# - name: extra
# mountPath: /data
logLevel: "info" # possible values: trace, debug, info, warn,
resources:
requests:
@@ -668,6 +821,14 @@ kerberospipeline:
pullPolicy: IfNotPresent
tag: "v1.3.4"
replicas: 2 # Number of pods for the service.
topologySpreadConstraints: [] # Optional pod topology spread constraints (empty = none).
# Optional extra volumes / volumeMounts for this deployment (empty = none).
#volumes:
# - name: extra
# emptyDir: {}
#volumeMounts:
# - name: extra
# mountPath: /data
logLevel: "info" # possible values: trace, debug, info, warn, error
quality: "1" # 1 (best) - 31 (worst)
width: "600"
@@ -686,6 +847,14 @@ kerberospipeline:
pullPolicy: IfNotPresent
tag: "v1.6.3"
replicas: 1 # Number of pods for the service.
topologySpreadConstraints: [] # Optional pod topology spread constraints (empty = none).
# Optional extra volumes / volumeMounts for this deployment (empty = none).
#volumes:
# - name: extra
# emptyDir: {}
#volumeMounts:
# - name: extra
# mountPath: /data
logLevel: "info" # possible values: trace, debug, info, warn,
resources:
requests:
@@ -697,6 +866,14 @@ kerberospipeline:
pullPolicy: IfNotPresent
tag: "v1.1.12"
replicas: 5 # Number of pods for the service.
topologySpreadConstraints: [] # Optional pod topology spread constraints (empty = none).
# Optional extra volumes / volumeMounts for this deployment (empty = none).
#volumes:
# - name: extra
# emptyDir: {}
#volumeMounts:
# - name: extra
# mountPath: /data
logLevel: "info" # possible values: trace, debug, info, warn,
interval: "1" # Number of secondes between each thumbnail in the sprite
width: "240" # Should not be changed for the moment (hard coded in UI)
@@ -711,13 +888,43 @@ kerberospipeline:
export:
repository: ghcr.io/uug-ai/hub-pipeline-export
pullPolicy: IfNotPresent
tag: "v1.2.1"
tag: "v1.2.4"
replicas: 2 # Number of pods for the service.
topologySpreadConstraints: [] # Optional pod topology spread constraints (empty = none).
logLevel: "info" # possible values: trace, debug, info, warn, error
# playerAssetsPath: "/custom/player-assets/" # Path to custom player.html template (overrides the embedded default)
# volumeMounts:
# - name: custom-player-assets
# mountPath: /custom/player-assets
# volumes:
# - name: custom-player-assets
# configMap:
# name: custom-player-html
resources:
requests:
memory: 10Mi
cpu: 10m
redaction:
repository: ghcr.io/uug-ai/hub-pipeline-redaction
pullPolicy: IfNotPresent
tag: "v1.0.0"
replicas: 2 # Number of pods for the service.
topologySpreadConstraints: [] # Optional pod topology spread constraints (empty = none).
# Optional extra volumes / volumeMounts for this deployment (empty = none).
#volumes:
# - name: extra
# emptyDir: {}
#volumeMounts:
# - name: extra
# mountPath: /data
logLevel: "info" # possible values: trace, debug, info, warn, error
resources:
requests:
memory: 512Mi
cpu: 500m
limits:
memory: 2Gi
cpu: 1000m
###########################################################################
# Email configuration
#
@@ -752,4 +959,4 @@ email:
highupload: "highupload"
device: "device"
alertTitle: "[Alert] Kerberos Hub detected something an event"
deviceTitle: "[Device] A Kerberos Agent's status has been changed"
deviceTitle: "[Device] An Agent's status has been changed"