{
  "servers": [
    {
      "name": "grpc_command",
      "port": 55555,
      "address": "localhost",
      "type": "grpc",
      "routers": [
        {
          "_TODO": "Suport a router list, remove the package and service from the router",
          "package": "voltha",
          "service": "VolthaService",
          "router": "vcore"
        }
      ]
    }
  ],
  "routers": [
    {
      "name": "vcore",
      "package": "voltha",
      "service": "VolthaService",
      "proto_descriptor": "vendor/github.com/opencord/voltha-protos/go/voltha.pb",
      "routes": [
        {
          "name": "dev_manager",
          "type": "rpc_affinity_message",
          "association": "round_robin",
          "routing_field": "id",
          "backend_cluster": "vcore",
          "_COMMENT": "Methods are naturally southbound affinity binding unless otherwise specified below",
          "methods": [
            "CreateDevice",
            "GetCoreInstance",
            "EnableLogicalDevicePort",
            "DisableLogicalDevicePort",
            "EnableDevice",
            "DisableDevice",
            "RebootDevice",
            "DeleteDevice",
            "DownloadImage",
            "CancelImageDownload",
            "ActivateImageUpdate",
            "RevertImageUpdate",
            "UpdateDevicePmConfigs",
            "CreateAlarmFilter",
            "UpdateAlarmFilter",
            "DeleteAlarmFilter",
            "SelfTest"
          ],
          "_COMMENT": "If a method is northbound affinity binding then association is used to route",
          "_COMMENT": "but affinity is not set southbound but only based on the response",
          "_COMMENT": "Methods here MUST be specified above, this overrides thier default beahvior",
          "nb_binding_methods": [
            "CreateDevice"
          ],
          "_TODO": "Overrides not implemented yet, config ignored",
          "overrides": [
            {
              "methods": [
                "abc",
                "def"
              ],
              "routing_field": "id"
            },
            {
              "methods": [
                "ghi",
                "jkl"
              ]
            },
            {
              "method": "mno",
              "routing_field": "id"
            },
            {
              "method": "pqr"
            }
          ]
        },
        {
          "name": "read_only",
          "type": "round_robin",
          "association": "round_robin",
          "backend_cluster": "ro_vcore",
          "methods": [
            "ListDevicePorts",
            "ListDevicePmConfigs",
            "GetImages",
            "GetImageDownloadStatus",
            "GetImageDownload",
            "ListImageDownloads",
            "ListDeviceFlows",
            "ListDeviceFlowGroups",
            "ListLogicalDeviceFlows",
            "ListLogicalDeviceFlowGroups",
            "ListDevices",
            "GetDevice",
            "ListLogicalDevices",
            "GetLogicalDevices",
            "GetDeviceType",
            "GetDeviceGroup",
            "GetLogicalDevice",
            "GetAlarmFilter",
            "ListLogicalDevicePorts",
            "GetLogicalDevicePort"
          ]
        },
        {
          "name": "dev_manager_ofagent",
          "type": "binding",
          "_association": "round_robin",
          "binding": {
            "type": "header",
            "field": "voltha_backend_name",
            "method": "Subscribe",
            "association": "round_robin"
          },
          "backend_cluster": "vcore",
          "methods": [
            "StreamPacketsOut",
            "ReceivePacketsIn",
            "ReceiveChangeEvents",
            "Subscribe",
            "UpdateLogicalDeviceFlowTable",
            "UpdateLogicalDeviceFlowGroupTable",
            "GetLogicalDevice",
            "GetLogicalDevicePort",
            "EnableLogicalDevicePort",
            "DisableLogicalDevicePort",
            "ListLogicalDevices",
            "ListLogicalDeviceFlows",
            "ListLogicalDeviceFlowGroups",
            "ListLogicalDevicePorts"
          ],
          "_TODO": "Overrides not implemented yet, config ignored",
          "overrides": [
            {
              "methods": [
                "abc",
                "def"
              ],
              "routing_field": "id"
            },
            {
              "methods": [
                "ghi",
                "jkl"
              ]
            },
            {
              "method": "mno",
              "routing_field": "id"
            },
            {
              "method": "pqr"
            }
          ]
        }
      ]
    }
  ],
  "backend_clusters": [
    {
      "name": "vcore",
      "backends": [
        {
          "name": "vcore1",
          "type": "active_active",
          "association": {
            "strategy": "serial_number",
            "location": "header",
            "_TODO": "The key below needs to be implemented, currently hard coded",
            "key": "voltha_serial_number"
          },
          "connections": [
            {
              "name": "vcore11",
              "addr": "voltha-rw-core-11.voltha.svc.cluster.local",
              "port": "50057"
            },
            {
              "name": "vcore12",
              "addr": "voltha-rw-core-12.voltha.svc.cluster.local",
              "port": "50057"
            }
          ]
        },
        {
          "name": "vcore2",
          "type": "active_active",
          "association": {
            "strategy": "serial_number",
            "location": "header",
            "_TODO": "The key below needs to be implemented, currently hard coded",
            "key": "voltha_serial_number"
          },
          "connections": [
            {
              "name": "vcore21",
              "addr": "voltha-rw-core-21.voltha.svc.cluster.local",
              "port": "50057"
            },
            {
              "name": "vcore22",
              "addr": "voltha-rw-core-22.voltha.svc.cluster.local",
              "port": "50057"
            }
          ]
        },
        {
          "name": "vcore3",
          "type": "active_active",
          "association": {
            "strategy": "serial_number",
            "location": "header",
            "_TODO": "The key below needs to be implemented, currently hard coded",
            "key": "voltha_serial_number"
          },
          "connections": [
            {
              "name": "vcore31",
              "addr": "voltha-rw-core-31.voltha.svc.cluster.local",
              "port": "50057"
            },
            {
              "name": "vcore32",
              "addr": "voltha-rw-core-32.voltha.svc.cluster.local",
              "port": "50057"
            }
          ]
        }
      ]
    },
    {
      "name": "ro_vcore",
      "backends": [
        {
          "name": "ro_vcore1",
          "type": "server",
          "connections": [
            {
              "name": "ro_vcore11",
              "addr": "voltha-ro-core-0.voltha-ro-core.voltha.svc.cluster.local",
              "port": "50057"
            }
          ]
        },
        {
          "name": "ro_vcore2",
          "type": "server",
          "connections": [
            {
              "name": "ro_vcore21",
              "addr": "voltha-ro-core-1.voltha-ro-core.voltha.svc.cluster.local",
              "port": "50057"
            }
          ]
        },
        {
          "name": "ro_vcore3",
          "type": "server",
          "connections": [
            {
              "name": "ro_vcore31",
              "addr": "voltha-ro-core-2.voltha-ro-core.voltha.svc.cluster.local",
              "port": "50057"
            }
          ]
        }
      ]
    }
  ],
  "api": {
    "_comment": "If this isn't defined then no api is available for dynamic configuration and queries",
    "address": "localhost",
    "port": 55554
  }
}
