Update vnfc-relations
[osm/IM.git] / models / yang / netslice-instantiation-parameters.yang
1 /*
2  *
3  *   Copyright 2018 CTTC
4  *   Copyright 2018 Telefonica Investigacion y Desarrollo S.A.U.
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 netslice-instantiation-parameters {
22   //header information
23   yang-version 1;
24   namespace "urn:etsi:osm:yang:netslice-instantiation-parameters";
25   prefix "netslice-instantiation-parameters";
26   
27   import nsd {
28     prefix "nsd";
29   }
30
31   import ietf-inet-types {
32     prefix "inet";
33   }
34
35   import nst {
36     prefix "nst";
37   }
38   
39   import instantiation-parameters {
40     prefix "instantiation-parameters";
41   }
42
43   //revision history
44   revision 2018-11-28 {
45     description "Initial version";
46   }
47
48   grouping netslice_params {
49     leaf vimAccountId {
50       mandatory true;
51       type string;
52     }
53     leaf ssh_keys {
54       type string;
55     }
56     list netslice-subnet {
57       key "id";
58       uses netslice_subnet_params;
59     }
60     list netslice-vld {
61       key "name";
62       uses netslice_vld_params;
63     }
64   }
65
66   grouping netslice_subnet_params {
67     leaf id {
68       mandatory true;
69       type string;
70     }
71     uses instantiation-parameters:ns_params;
72   }
73
74   grouping netslice_vld_params {
75     uses instantiation-parameters:vld_common_params;
76     list nss-connection-point-ref {
77       key "nss-ref nsd-connection-point-ref";
78       leaf nss-ref {
79         description "Reference to slice subnet";
80         type leafref {
81           path "/nst:nst/nst:netslice-subnet/nst:id";
82         }
83       }
84       leaf nsd-connection-point-ref {
85         type leafref {
86           path "/nsd:nsd-catalog/nsd:nsd/nsd:connection-point/nsd:name";
87         }
88       }
89       leaf ip-address{
90         type inet:ip-address;
91       }
92     }
93   }
94
95 }