base_url: localhost:8080 base_url_protocol: http env: - name: GRAFANA_CLOUD_NOTIFICATIONS_ENABLED value: "False" - name: FEATURE_PROMETHEUS_EXPORTER_ENABLED value: "True" - name: DJANGO_SETTINGS_MODULE value: "settings.dev" - name: FEATURE_TELEGRAM_INTEGRATION_ENABLED value: "True" - name: FEATURE_SLACK_INTEGRATION_ENABLED value: "True" - name: SLACK_SLASH_COMMAND_NAME value: "/oncall" # enabled to be able to test docker.host.internal in the webhook e2e tests - name: DANGEROUS_WEBHOOKS_ENABLED value: "True" image: repository: localhost:63628/oncall/engine tag: dev pullPolicy: IfNotPresent broker: type: redis redis: architecture: standalone # don't run replicas, just eats up resources image: repository: redis # the default, bitnami/redis does not support ARM64 tag: 7.0.5 auth: password: oncallpassword master: disableCommands: [] rabbitmq: enabled: false oncall: devMode: true engine: replicaCount: 1 celery: replicaCount: 1 worker_beat_enabled: true externalGrafana: url: http://grafana:3000 grafana: enabled: false grafana.ini: feature_toggles: accessControlOnCall: false server: domain: localhost:3000 root_url: "%(protocol)s://%(domain)s" replicas: 1 extraInitContainers: - name: create-db-if-not-exists image: mysql:8.0.32 command: # yamllint disable rule:line-length [ "bash", "-c", 'while ! mysqladmin ping -h "$DATABASE_HOST" --silent; do echo ''awaiting mysql db to be available'' && sleep 1; done && mysql -h "$DATABASE_HOST" -u "$DATABASE_USER" -p"$DATABASE_PASSWORD" -e ''CREATE DATABASE IF NOT EXISTS grafana CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;''', ] # yamllint enable rule:line-length env: - name: DATABASE_HOST value: oncall-dev-mariadb - name: DATABASE_USER value: root - name: DATABASE_PASSWORD value: oncallpassword env: GF_FEATURE_TOGGLES_ENABLE: externalServiceAccounts GF_AUTH_MANAGED_SERVICE_ACCOUNTS_ENABLED: true GF_SECURITY_ADMIN_PASSWORD: oncall GF_SECURITY_ADMIN_USER: oncall GF_PLUGINS_ALLOW_LOADING_UNSIGNED_PLUGINS: grafana-oncall-app GF_DATABASE_TYPE: mysql GF_DATABASE_HOST: oncall-dev-mariadb:3306 GF_DATABASE_USER: root GF_DATABASE_SSL_MODE: disable GF_DATABASE_PASSWORD: oncallpassword # by settings grafana.plugins to [] and configuring grafana.extraVolumeMounts we are using the locally built # OnCall plugin rather than the latest published version plugins: [] # hostPaths are defined in dev/kind.yml extraVolumeMounts: - name: plugins mountPath: /var/lib/grafana/plugins/grafana-plugin hostPath: /oncall-plugin readOnly: true - name: configuration-file mountPath: /var/lib/grafana/grafana.ini hostPath: /dev-config/grafana/grafana.dev.ini readOnly: true - name: provisioning mountPath: /var/lib/grafana/provisioning hostPath: /dev-config/grafana/provisioning readOnly: true service: type: NodePort nodePort: 30002 database: type: mysql mariadb: enabled: true primary: service: type: NodePort nodePort: 30003 extraEnvVars: # See "Passing extra command line flags to mysqld startup" section # https://hub.docker.com/r/bitnami/mariadb # # max_allowed_packet is set to 128mb in bytes # # this avoids "Got an error reading communication packets" errors that arise from the grafana container # apparently sending too much data to mariadb at once # https://mariadb.com/docs/skysql-dbaas/ref/mdb/system-variables/max_allowed_packet/ - name: MARIADB_EXTRA_FLAGS value: "--max_allowed_packet=134217728 --max_connections=1024" - name: MARIADB_CHARACTER_SET value: utf8mb4 - name: MARIADB_COLLATE value: utf8mb4_unicode_ci auth: rootPassword: oncallpassword ingress: enabled: false ingress-nginx: enabled: false cert-manager: enabled: false service: enabled: true type: NodePort port: 8080 nodePort: 30001 prometheus: enabled: true alertmanager: enabled: false kube-state-metrics: enabled: false prometheus-node-exporter: enabled: false prometheus-pushgateway: enabled: false server: global: scrape_interval: 10s extraScrapeConfigs: | - job_name: 'oncall-exporter' metrics_path: /metrics/ static_configs: - targets: - oncall-dev-engine.default.svc.cluster.local:8080