blob: 9b1bbb3513ecf912a16612dc8e995e57619d7c53 [file] [log] [blame]
Rene_Robertfb177972019-07-09 14:39:47 +02001.. This work is licensed under a Creative Commons Attribution 4.0
2.. International License. http://creativecommons.org/licenses/by/4.0
3.. Copyright 2019 ONAP Contributors. All rights reserved.
4
andreasgeissler7789a222019-07-16 18:44:23 +02005.. _doc_guide_user_ser_inst_so2:
Rene_Robertfb177972019-07-09 14:39:47 +02006
7
8Macro mode Service Instantiation via ONAP SO API
9================================================
10
Rene_Robertf45d05a2019-07-31 17:13:35 +020011Using Macro mode, you have to build and send one and only one
12request to ONAP SO.
Rene_Robertfb177972019-07-09 14:39:47 +020013
14In that request you need to indicate all object instances
15that you want to be instantiated.
16
17Reminder : ONAP SO in Macro mode will perform the VNF parameters/values
18assignment based on CDS Blueprint templates
19that are supposed to be defined during Design and Onboard steps.
Rene_Robertf45d05a2019-07-31 17:13:35 +020020That means ONAP should have all information
Rene_Robertfb177972019-07-09 14:39:47 +020021to be able to get all necessary values by itself (there is no longer need
Rene_Robertf45d05a2019-07-31 17:13:35 +020022for a user to provide those values via the "SDNC preload" operation).
Rene_Robertfb177972019-07-09 14:39:47 +020023
andreasgeissler7789a222019-07-16 18:44:23 +020024Additional info in:
25
andreasgeisslerac9fd412020-02-05 17:20:11 +010026* CDS Documentation: :ref:`cds_main-doc`
27* CDS vDNS Usecase Description in `Wiki <https://wiki.onap.org/display/DW/vDNS+CDS+Dublin>`_
andreasgeissler7789a222019-07-16 18:44:23 +020028
Rene_Robertfb177972019-07-09 14:39:47 +020029Request Example :
30
31::
32
33 curl -X POST \
34 'http://{{k8s}}:30277/onap/so/infra/serviceInstantiation/v7/serviceInstances' \
35 -H 'Content-Type: application/json' \
36 -H 'cache-control: no-cache' \
37 -d '{
38 "requestDetails": {
39 "subscriberInfo": {
40 "globalSubscriberId": "Demonstration"
41 },
42 "requestInfo": {
43 "suppressRollback": false,
44 "productFamilyId": "a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb",
45 "requestorId": "adt",
46 "instanceName": "{{cds-instance-name}}",
47 "source": "VID"
48 },
49 "cloudConfiguration": {
50 "lcpCloudRegionId": "fr1",
51 "tenantId": "6270eaa820934710960682c506115453"
52 },
53 "requestParameters": {
54 "subscriptionServiceType": "vFW",
55 "userParams": [
56 {
57 "Homing_Solution": "none"
58 },
59 {
60 "service": {
61 "instanceParams": [
62
63 ],
64 "instanceName": "{{cds-instance-name}}",
65 "resources": {
66 "vnfs": [
67 {
68 "modelInfo": {
69 "modelName": "{{vnf-modelinfo-modelname}}",
70 "modelVersionId": "{{vnf-modelinfo-modeluuid}}",
71 "modelInvariantUuid": "{{vnf-modelinfo-modelinvariantuuid}}",
72 "modelVersion": "1.0",
73 "modelCustomizationId": "{{vnf-modelinfo-modelcustomizationuuid}}",
74 "modelInstanceName": "{{vnf-modelinfo-modelinstancename}}"
75 },
76 "cloudConfiguration": {
77 "lcpCloudRegionId": "fr1",
78 "tenantId": "6270eaa820934710960682c506115453"
79 },
80 "platform": {
81 "platformName": "test"
82 },
83 "lineOfBusiness": {
84 "lineOfBusinessName": "someValue"
85 },
86 "productFamilyId": "a9a77d5a-123e-4ca2-9eb9-0b015d2ee0fb",
87 "instanceName": "{{vnf-modelinfo-modelinstancename}}",
88 "instanceParams": [
89 {
90 "onap_private_net_id": "olc-private",
91 "onap_private_subnet_id": "olc-private",
92 "pub_key": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCwj7uJMyKiP1ogEsZv5kKDFw9mFNhxI+woR3Tuv8vjfNnqdB1GfSnvTFyNbdpyNdR8BlljkiZ1SlwJLEkvPk0HpOoSVVek/QmBeGC7mxyRcpMB2cNQwjXGfsVrforddXOnOkj+zx1aNdVGMc52Js3pex8B/L00H68kOcwP26BI1o77Uh+AxjOkIEGs+wlWNUmXabLDCH8l8IJk9mCTruKEN9KNj4NRZcaNC+XOz42SyHV9RT3N6efp31FqKzo8Ko63QirvKEEBSOAf9VlJ7mFMrGIGH37AP3JJfFYEHDdOA3N64ZpJLa39y25EWwGZNlWpO/GW5bNjTME04dl4eRyd",
93 "image_name": "Ubuntu 14.04",
94 "flavor_name":"s1.cw.small-1"
95 }
96 ],
97 "vfModules": [
98 {
99 "modelInfo": {
100 "modelName": "{{vnf-vfmodule-0-modelinfo-modelname}}",
101 "modelVersionId": "{{vnf-vfmodule-0-modelinfo-modeluuid}}",
102 "modelInvariantUuid": "{{vnf-vfmodule-0-modelinfo-modelinvariantuuid}}",
103 "modelVersion": "1",
104 "modelCustomizationId": "{{vnf-vfmodule-0-modelinfo-modelcustomizationuuid}}"
105 },
106 "instanceName": "{{vnf-vfmodule-0-modelinfo-modelname}}",
107 "instanceParams": [
108 {
109 "sec_group": "olc-open",
110 "public_net_id": "olc-net"
111 }
112 ]
113 },
114 {
115 "modelInfo": {
116 "modelName": "{{vnf-vfmodule-1-modelinfo-modelname}}",
117 "modelVersionId": "{{vnf-vfmodule-1-modelinfo-modeluuid}}",
118 "modelInvariantUuid": "{{vnf-vfmodule-1-modelinfo-modelinvariantuuid}}",
119 "modelVersion": "1",
120 "modelCustomizationId": "{{vnf-vfmodule-1-modelinfo-modelcustomizationuuid}}"
121 },
122 "instanceName": "{{vnf-vfmodule-1-modelinfo-modelname}}",
123 "instanceParams": [
124 {
125 "sec_group": "olc-open",
126 "public_net_id": "olc-net"
127 }
128 ]
129 },
130 {
131 "modelInfo": {
132 "modelName": "{{vnf-vfmodule-2-modelinfo-modelname}}",
133 "modelVersionId": "{{vnf-vfmodule-2-modelinfo-modeluuid}}",
134 "modelInvariantUuid": "{{vnf-vfmodule-2-modelinfo-modelinvariantuuid}}",
135 "modelVersion": "1",
136 "modelCustomizationId": "{{vnf-vfmodule-2-modelinfo-modelcustomizationuuid}}"
137 },
138 "instanceName": "{{vnf-vfmodule-2-modelinfo-modelname}}",
139 "instanceParams": [
140 {
141 "sec_group": "olc-open",
142 "public_net_id": "olc-net"
143 }
144 ]
145 },
146 {
147 "modelInfo": {
148 "modelName": "{{vnf-vfmodule-3-modelinfo-modelname}}",
149 "modelVersionId": "{{vnf-vfmodule-3-modelinfo-modeluuid}}",
150 "modelInvariantUuid": "{{vnf-vfmodule-3-modelinfo-modelinvariantuuid}}",
151 "modelVersion": "1",
152 "modelCustomizationId": "{{vnf-vfmodule-3-modelinfo-modelcustomizationuuid}}"
153 },
154 "instanceName": "{{vnf-vfmodule-3-modelinfo-modelname}}",
155 "instanceParams": [
156 {
157 "sec_group": "olc-open",
158 "public_net_id": "olc-net"
159 }
160 ]
161 }
162 ]
163 }
164 ]
165 },
166 "modelInfo": {
167 "modelVersion": "1.0",
168 "modelVersionId": "{{service-uuid}}",
169 "modelInvariantId": "{{service-invariantUUID}}",
170 "modelName": "{{service-name}}",
171 "modelType": "service"
172 }
173 }
174 }
175 ],
176 "aLaCarte": false
177 },
178 "project": {
179 "projectName": "Project-Demonstration"
180 },
181 "owningEntity": {
182 "owningEntityId": "24ef5425-bec4-4fa3-ab03-c0ecf4eaac96",
183 "owningEntityName": "OE-Demonstration"
184 },
185 "modelInfo": {
186 "modelVersion": "1.0",
187 "modelVersionId": "{{service-uuid}}",
188 "modelInvariantId": "{{service-invariantUUID}}",
189 "modelName": "{{service-name}}",
190 "modelType": "service"
191 }
192 }
193 }'