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

SD_CORE_CHART            := aether/sd-core --version 0.10.20

# For installing the ROC
AETHER_ROC_UMBRELLA_CHART := aether/aether-roc-umbrella --version 2.0.43
ATOMIX_CONTROLLER_CHART   := atomix/atomix-controller --version 0.6.9
ATOMIX_RAFT_STORAGE_CHART := atomix/atomix-raft-storage --version 0.1.25
ONOS_OPERATOR_CHART       := onosproject/onos-operator --version 0.5.1

# Config files to use
ROC_VALUES     := $(MAKEDIR)/roc-values.yaml
ROC_4G_MODELS  := $(MAKEDIR)/roc-4g-models.json
ROC_5G_MODELS  := $(MAKEDIR)/roc-5g-models.json
4G_CORE_VALUES := $(MAKEDIR)/sd-core-4g-values.yaml
5G_CORE_VALUES := $(MAKEDIR)/sd-core-5g-values.yaml
