1f684b25d064cc13f4130eaf6601542ff6917d29
[osm/SO.git] / models / plugins / yang / mano-rift-groupings.yang
1 /*
2  * 
3  *   Copyright 2016-2017 RIFT.IO Inc
4  *
5  *   Licensed under the Apache License, Version 2.0 (the "License");
6  *   you may not use this file except in compliance with the License.
7  *   You may obtain a copy of the License at
8  *
9  *       http://www.apache.org/licenses/LICENSE-2.0
10  *
11  *   Unless required by applicable law or agreed to in writing, software
12  *   distributed under the License is distributed on an "AS IS" BASIS,
13  *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  *   See the License for the specific language governing permissions and
15  *   limitations under the License.
16  *
17  *
18  */
19
20  module mano-rift-groupings
21 {
22   namespace "urn:ietf:params:xml:ns:yang:nfvo:mano-rift-groupings";
23   prefix "mano-rift";
24
25   import vnfd {
26     prefix "vnfd";
27   }
28
29   import mano-types {
30     prefix "manotypes";
31   }
32
33   import nsd {
34     prefix "nsd";
35   }
36
37   import project-vnfd {
38     prefix "project-vnfd";
39   }
40
41   grouping custom-meta-data {
42     description "Grouping for instance-specific meta data";
43     list custom-meta-data {
44       description
45           "List of meta-data to be associated with the instance";
46       key "name";
47       leaf name {
48         description "Name of the meta-data parameter";
49         type string;
50       }
51
52       leaf data-type {
53         description "Data-type the meta-data parameter";
54         type manotypes:meta-data-type;
55         default "STRING";
56       }
57
58       leaf value {
59         description "Value of the meta-data parameter";
60         type string;
61       }
62
63       leaf destination {
64         description "Type of input parameter";
65         type enumeration {
66             enum "CLOUD_INIT";
67             enum "CLOUD_METADATA";
68         }
69         default "CLOUD_METADATA";
70       }
71     }
72   }
73
74   grouping volume-info-additions {
75         leaf boot-volume {
76       description "This flag indicates if this is boot volume or not";
77       type boolean;
78     }
79
80     leaf boot-priority {
81       description "Boot priority associated with volume";
82       type int32;
83     }
84   }
85
86   grouping http-end-point-additions {
87         leaf data {
88       description
89         "This is the data to be sent with POST ";
90       type  string;
91     }
92   }
93
94   grouping ssh-key-generated {
95         container ssh-key-generated {
96       description "SSH key pair generated for this NS";
97       leaf public-key {
98         description "Public key generated";
99         type string;
100       }
101       leaf private-key-file {
102         description "Path to the private key file";
103         type string;
104       }
105     }
106   }
107 }