Merge from OSM SO master
[osm/SO.git] / models / plugins / yang / vnffgd.yang
1
2 /*
3  * 
4  *   Copyright 2016-2017 RIFT.IO Inc
5  *
6  *   Licensed under the Apache License, Version 2.0 (the "License");
7  *   you may not use this file except in compliance with the License.
8  *   You may obtain a copy of the License at
9  *
10  *       http://www.apache.org/licenses/LICENSE-2.0
11  *
12  *   Unless required by applicable law or agreed to in writing, software
13  *   distributed under the License is distributed on an "AS IS" BASIS,
14  *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15  *   See the License for the specific language governing permissions and
16  *   limitations under the License.
17  *
18  *
19  */
20
21 module vnffgd
22 {
23   namespace "urn:ietf:params:xml:ns:yang:nfvo:vnffgd";
24   prefix "vnffgd";
25
26   import rw-pb-ext {
27     prefix "rwpb";
28   }
29
30   import ietf-inet-types {
31     prefix "inet";
32   }
33
34   import ietf-yang-types {
35     prefix "yang";
36   }
37
38   import mano-types {
39     prefix "manotypes";
40   }
41
42   import rw-project {
43     prefix "rw-project";
44   }
45
46   revision 2017-02-08 {
47     description
48       "Update model to support projects.";
49   }
50
51   revision 2014-10-27 {
52     description
53       "Initial revision. This YANG file defines 
54        the VNF Forwarding Graph Descriptor (VNFFGD)";
55     reference
56       "Derived from earlier versions of base YANG files";
57   }
58
59   augment "/rw-project:project" {
60     container vnffgd-catalog {
61
62       list vnffgd {
63         key "id";
64
65         leaf name {
66           description "VNF Forwarding Graph Descriptor name.";
67           type string;
68         }
69
70         leaf id {
71           description "Identifier for the VNFFGD.";
72           type yang:uuid;
73         }
74
75         leaf provider {
76           description "Provider of the VNFFGD.";
77           type string;
78         }
79
80         leaf description {
81           description "Description of the VNFFGD.";
82           type string;
83         }
84
85         leaf version {
86           description "Version of the VNFFGD";
87           type string;
88         }
89
90         //TODO: Add more content here
91       }
92     }
93   }
94 }