diff options
author | Andrej Kozemcak <andrej.kozemcak@pantheon.tech> | 2018-12-20 17:49:33 +0100 |
---|---|---|
committer | Andrej Kozemcak <andrej.kozemcak@pantheon.tech> | 2018-12-20 17:51:10 +0100 |
commit | 639509ad42f8bd6baf9b6f5b668a9bbfb05108d4 (patch) | |
tree | 83de866d2e47bd71dae0c6ff9e03f51c3269413b /src/plugins/yang/openconfig/openconfig-network-instance-policy.yang | |
parent | ba089324594f450a1b549906ec7fde1ba63a1e89 (diff) |
Add Openconfig YANG modules.
Change-Id: I7e98bf1ca7196cff042a35b8bf096d2ea9d80028
Signed-off-by: Andrej Kozemcak <andrej.kozemcak@pantheon.tech>
Diffstat (limited to 'src/plugins/yang/openconfig/openconfig-network-instance-policy.yang')
-rw-r--r-- | src/plugins/yang/openconfig/openconfig-network-instance-policy.yang | 115 |
1 files changed, 115 insertions, 0 deletions
diff --git a/src/plugins/yang/openconfig/openconfig-network-instance-policy.yang b/src/plugins/yang/openconfig/openconfig-network-instance-policy.yang new file mode 100644 index 0000000..afbcacd --- /dev/null +++ b/src/plugins/yang/openconfig/openconfig-network-instance-policy.yang @@ -0,0 +1,115 @@ +module openconfig-network-instance-policy { + + yang-version "1"; + + // namespace + namespace "http://openconfig.net/yang/network-instance/policy"; + + prefix "oc-ni-pol"; + + // import some basic types + import openconfig-extensions { prefix oc-ext; } + import openconfig-routing-policy { prefix oc-rpol; } + import openconfig-policy-types { prefix oc-pol-types; } + + + // meta + organization "OpenConfig working group"; + + contact + "OpenConfig working group + www.openconfig.net"; + + description + "This module defines routing policy statements (conditions and + actions) for the network instance model. These statements are + generally added to the routing policy model."; + + oc-ext:openconfig-version "0.1.0"; + + revision "2017-02-15" { + description + "Initial revision"; + reference "0.1.0"; + } + + // grouping statements + + grouping protocol-instance-policy-config { + description + "Configuration data for policy matching on protocol instance"; + + leaf protocol-identifier { + type identityref { + base oc-pol-types:INSTALL_PROTOCOL_TYPE; + } + description + "The identifier (protocol type) of the + protocol instance to match on in the local network + instance."; + } + + leaf protocol-name { + type string; + description + "The name of the protocol instance to match + on in the local network instance"; + } + } + + grouping protocol-instance-policy-state { + description + "Operational state data for policy matching on protocol + instance"; + } + + grouping protocol-instance-policy-top { + description + "Top-level grouping for policy matching on protocol instance"; + + container match-protocol-instance { + description + "Top-level container for protocol instance match condition + in policy statements. The protocol instance is referenced + by an identifier and name"; + + container config { + description + "Configuration data for policy matching on protocol + instance"; + + uses protocol-instance-policy-config; + } + + container state { + + config false; + + description + "Operational state data for policy matching on protocol instance"; + + uses protocol-instance-policy-config; + uses protocol-instance-policy-state; + } + } + } + + // data definition statements + + // augment statements + + augment "/oc-rpol:routing-policy/oc-rpol:policy-definitions/" + + "oc-rpol:policy-definition/oc-rpol:statements/oc-rpol:statement/" + + "oc-rpol:conditions" { + description + "Add match conditions for protocol instances to the routing + policy model."; + + uses protocol-instance-policy-top; + } + + // rpc statements + + // notification statements + +} |