# Copyright 2020-present Open Networking Foundation
# SPDX-License-Identifier: Apache-2.0

# Default values for edge-maintenance-agent.
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.

replicaCount: 1

image:
  # The agent is bundled in the edge-monitoring-server image.
  repository: docker.io/omecproject/edge-monitoring-server
  pullPolicy: IfNotPresent
  # Overrides the image tag whose default is the chart appVersion.
  tag: ""

# Specify edge monitoring server URL, with /edges at end
# E.g., https://monitoring.aetherproject.org/edges
edgeMonitoringServerURL: ""

# Name of edge in edge monitoring server output
edgeName: ""

# Secret containing basic auth username / password for edge monitoring server
# Will be created if useExistingSecret = false
secretName: "edge-maintenance-agent-secret"

# Basic auth username and password (if not using existing secret)
basicAuthUsername: ""
basicAuthPassword: ""

# Use existing secret; don't create it
useExistingSecret: false

prometheus:
  enabled: true

imagePullSecrets: []
nameOverride: ""
fullnameOverride: ""

podAnnotations: {}

podSecurityContext: {}
  # fsGroup: 2000

securityContext: {}
  # capabilities:
  #   drop:
  #   - ALL
  # readOnlyRootFilesystem: true
  # runAsNonRoot: true
  # runAsUser: 1000

service:
  type: ClusterIP
  port: 8080

resources: {}
  # We usually recommend not to specify default resources and to leave this as a conscious
  # choice for the user. This also increases chances charts run on environments with little
  # resources, such as Minikube. If you do want to specify resources, uncomment the following
  # lines, adjust them as necessary, and remove the curly braces after 'resources:'.
  # limits:
  #   cpu: 100m
  #   memory: 128Mi
  # requests:
  #   cpu: 100m
  #   memory: 128Mi

nodeSelector: {}

tolerations: []

affinity: {}
