blob: 7118c979a4235bde0db8a7148c5d66652830df39 [file] [log] [blame]
// SPDX-FileCopyrightText: 2021 Open Networking Foundation
//
// SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
module onf-site {
namespace "http://opennetworking.org/aether/site";
prefix st;
import ietf-inet-types { prefix inet; }
import ietf-yang-types{ prefix yg; }
import onf-aether-types{ prefix at; }
import onf-enterprise{ prefix ent; }
organization "Open Networking Foundation.";
contact "Scott Baker";
description
"An Aether site is a location where resources are deployed.";
revision "2021-09-10" {
description "An Aether Site.";
reference "RFC 6087";
}
typedef site-id {
type yg:yang-identifier {
length 1..32;
}
}
container site {
description "The top level container";
list site {
key "id";
description
"List of site";
leaf id {
type site-id;
description "ID for this site.";
}
leaf display-name {
type string {
length 1..80;
}
description "display name to use in GUI or CLI";
}
list small-cell {
key "small-cell-id";
leaf small-cell-id {
type yg:yang-identifier;
description
"Id of small cell";
}
leaf address {
type inet:host;
description
"Address of small cell";
}
leaf tac {
type at:tac;
mandatory true;
description
"Type Allocation Code";
}
leaf enable {
type boolean;
default true;
description
"Enable this small cell";
}
leaf display-name {
type string {
length 1..80;
}
description "display name to use in GUI or CLI";
}
description
"List of small cell addresses";
}
container monitoring {
leaf edge-cluster-prometheus-url {
type inet:uri;
description
"URL of edge cluster prometheus";
}
leaf edge-monitoring-prometheus-url {
type inet:uri;
description
"URL of monitoring prometheus";
}
list edge-device {
key "edge-device-id";
leaf edge-device-id {
type yg:yang-identifier;
description
"Id of edge monitoring device";
}
leaf display-name {
type string {
length 1..80;
}
description "display name to use in GUI or CLI";
}
leaf description {
type at:description;
description "description of this site";
}
description
"List of edge monitoring devices";
}
}
leaf enterprise {
type leafref {
path "/ent:enterprise/ent:enterprise/ent:id";
}
description
"Link to enterprise that owns this site";
mandatory true;
}
container imsi-definition {
leaf mcc {
type at:mcc;
description "mobile country code";
mandatory true;
}
leaf mnc {
type at:mnc;
description "mobile network code";
mandatory true;
}
leaf enterprise {
type at:ent;
description "enterprise-specific identifier";
mandatory true;
}
leaf format {
type string {
length 15;
}
mandatory true;
description "IMSI format specifier, describes how fields are packed into an IMSI. Must be exactly 15 characters long. For example, CCCNNNEEESSSSSS.";
// Format specifiers:
// C = MCC
// N = MNC
// E = Enterprise
// 0 = Forced Zero
// S = Subscriber ID
// default is
// 3 digit MCC
// 3 digit MNC
// 3 digit enterprise ID
// 5 digit subscriber ID
}
}
leaf description {
type at:description;
description "description of this site";
}
}
}
}