Merge "Fix bug when creating SRG termination points"
[transportpce.git] / ordmodels / device / src / main / yang / org-openroadm-ipv4-unicast-routing@2020-05-29.yang
1 module org-openroadm-ipv4-unicast-routing {
2   namespace "http://org/openroadm/ipv4-unicast-routing";
3   prefix org-openroadm-ipv4-unicast-routing;
4
5   import org-openroadm-routing {
6     prefix org-openroadm-routing;
7     revision-date 2020-05-29;
8   }
9   import ietf-inet-types {
10     prefix inet;
11     revision-date 2013-07-15;
12   }
13   import org-openroadm-device {
14     prefix org-openroadm-device;
15     revision-date 2020-05-29;
16   }
17
18   organization
19     "Open ROADM MSA";
20   contact
21     "OpenROADM.org";
22   description
23     "This model defines Yang model for IPv4 unicast routing.
24
25      This model reuses data items defined in the IETF YANG model for
26      interfaces described by RFC 8022.
27
28      Some attributes which are not required in Open ROADM MSA are removed.
29      Yang file included are changed to fit into Open ROADM MSA yang structure.
30
31      IETF code is subject to the following copyright and license:
32      Copyright (c) IETF Trust and the persons identified as authors of
33      the code.
34      All rights reserved.
35
36      Redistribution and use in source and binary forms, with or without
37      modification, is permitted pursuant to, and subject to the license
38      terms contained in, the Simplified BSD License set forth in
39      Section 4.c of the IETF Trust's Legal Provisions Relating
40      to IETF Documents (http://trustee.ietf.org/license-info).";
41
42   revision 2020-05-29 {
43     description
44       "Version 7.1.0";
45   }
46   revision 2020-03-27 {
47     description
48       "Version 7.0.0";
49   }
50   revision 2019-11-29 {
51     description
52       "Version 6.1.0";
53   }
54   revision 2019-09-27 {
55     description
56       "Version 6.0.0";
57   }
58   revision 2019-05-31 {
59     description
60       "Version 5.1.0";
61   }
62   revision 2019-03-29 {
63     description
64       "Version 5.0.0";
65   }
66   revision 2015-05-25 {
67     description
68       "Initial revision.";
69     reference
70       "RFC XXXX: A YANG Data Model for Routing Management";
71   }
72
73   identity ipv4-unicast {
74     base org-openroadm-routing:ipv4;
75     description
76       "This identity represents the IPv4 unicast address family.";
77   }
78
79   grouping ipv4-uni-grp {
80     container ipv4 {
81       description
82         "Configuration of a 'static' pseudo-protocol instance
83          consists of a list of routes.";
84       list route {
85         key "destination-prefix";
86         max-elements 32;
87         ordered-by user;
88         description
89           "A user-ordered list of static routes.";
90         leaf destination-prefix {
91           type inet:ipv4-prefix;
92           mandatory true;
93           description
94             "IPv4 destination prefix.";
95         }
96         leaf description {
97           type string;
98           description
99             "Textual description of the route.";
100         }
101         container next-hop {
102           description
103             "Configuration of next-hop.";
104           uses org-openroadm-routing:next-hop-content {
105             augment "next-hop-options" {
106               description
107                 "Add next-hop address case.";
108               leaf next-hop-address {
109                 type inet:ipv4-address;
110                 description
111                   "IPv4 address of the next-hop.";
112               }
113             }
114           }
115         }
116       }
117     }
118     description
119      "Grouping for IPv4";
120   }
121
122   augment "/org-openroadm-device:org-openroadm-device/org-openroadm-routing:routing/org-openroadm-routing:routing-instance/org-openroadm-routing:routing-protocols/org-openroadm-routing:routing-protocol/org-openroadm-routing:static-routes" {
123     description
124       "This augment defines the configuration of the 'static'
125        pseudo-protocol with data specific to IPv4 unicast.";
126     uses ipv4-uni-grp;
127   }
128 }