2 * Copyright (c) 2014 Cisco Systems, Inc. and others. All rights reserved.
4 * This program and the accompanying materials are made available under the
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
12 namespace "urn:opendaylight:groupbasedpolicy:opflex";
15 import ietf-inet-types { prefix "inet"; revision-date 2010-09-24; }
17 import yang-ext {prefix ext; revision-date "2013-07-09";}
18 import gbp-common {prefix gbp-common;}
19 import endpoint {prefix endpoint;}
22 "This module defines the group-based policy OpFlex renderer model.";
24 revision "2014-05-28" {
29 typedef serialization {
31 "The serialization to use for OpFlex messages.";
36 "JSON 1.0 serialization.";
44 "OpFlex binary serialization.";
49 container discovery-definitions {
51 "The nodes that any OpFlex agent needs to communicate
52 with in an OpFlex policy fabric.";
58 "The OpFlex administrative domain.";
65 list policy-repository {
67 "A repository that the OpFlex agent can use for resolving
74 "The id for the policy repository.";
79 "The port number to use for the connection";
82 leaf serialization-type {
84 "The serialization to use for this connection.";
89 list endpoint-registry {
91 "A repository that the OpFlex agent can use for registration
92 and lookup of endpoints.";
98 "The id for the endpoint registry.";
103 "The port number to use for the connection";
106 leaf serialization-type {
108 "The serialization to use for this connection.";
115 "A repository that the OpFlex agent can send State Report
122 "The id for the Observer.";
127 "The port number to use for the connection";
130 leaf serialization-type {
132 "The serialization to use for this connection.";
138 grouping endpoint-location {
140 "The location for this endpoint in the overlay network";
148 "The endpoint is located on a port that is part of
149 the overlay network. You must include the node
150 ID and port number for this endpoint.";
153 description "This endpoint is not inside the overlay.";
159 "The OpFlex agent where the endpoing is located. Must be included
160 for all internal endpoints. The format is the agent identifier,
161 which is an IP address or DNS name ':' port number.";
164 leaf agent-ep-location {
166 "The location of the endpoint on the OpFlex agent. The format of
167 this is dependent on the renderer used by the agent.";
172 augment "/endpoint:endpoints/endpoint:endpoint" {
173 ext:augment-identifier "opflex-overlay-context";
174 uses endpoint-location;
177 augment "/endpoint:register-endpoint/endpoint:input" {
178 ext:augment-identifier "opflex-overlay-context-input";
179 uses endpoint-location;
182 augment "/endpoint:endpoints/endpoint:endpoint-l3" {
183 ext:augment-identifier "opflex-overlay-context-l3";
184 uses endpoint-location;