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

apiVersion: v1
name: edge-monitoring-server
description: A Helm chart for deploying Aether's edge monitoring server

# 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.5.5

# 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
# follow Semantic Versioning. They should reflect the version the application is using.
appVersion: 0.7.6
