Merge "Add and update Guide 'Running BP Processor in IDE"
[ccsdk/cds.git] / docs / CDS_Designer_Guide.rst
1
2
3 CDS Designer Guide
4 ==================
5
6 **Table of Contents**
7
8 -  `Getting
9    Started <file:////pages/viewpage.action%3fpageId=84650427#CDSDesignerGuide-GettingStarted>`__
10
11 -  `What is CDS Designer
12    UI? <file:////pages/viewpage.action%3fpageId=84650427#CDSDesignerGuide-WhatIsCDS>`__
13
14 -  `What’s
15    new? <file:////pages/viewpage.action%3fpageId=84650427#CDSDesignerGuide-WhatIsNew>`__
16
17 -  `Overview of CDS
18    Interface <file:////pages/viewpage.action%3fpageId=84650427#CDSDesignerGuide-OverviewOfCDS>`__
19
20 -  `CBA
21    Packages <file:////pages/viewpage.action%3fpageId=84650427#CDSDesignerGuide-CBAPackages>`__
22
23    -  `Package
24       list <file:////pages/viewpage.action%3fpageId=84650427#CDSDesignerGuide-PackageList>`__
25
26    -  `Create a CBA
27       Package <file:////pages/viewpage.action%3fpageId=84650427#CDSDesignerGuide-CreateNewCBAPackage>`__
28
29       -  `User
30          Flow <file:////pages/viewpage.action%3fpageId=84650427#CDSDesignerGuide-UserFlow>`__
31
32       -  `Create a New
33          Package <file:////pages/viewpage.action%3fpageId=84650427#CDSDesignerGuide-CreateNewPackage>`__
34
35          -  `MetaData <#CDSDesignerGuide-MetaData>`__
36
37          -  `Template & Mapping <#CDSDesignerGuide-TemplateMapping>`__
38
39          -  `Scripts <#CDSDesignerGuide-Scripts>`__
40
41          -  `Definitions <#CDSDesignerGuide-Definitions>`__
42
43          -  `External System Authentication
44             Properties <#CDSDesignerGuide-ExternalSystem>`__
45
46 Getting Started
47 ===============
48
49 This is your CDS Designer UI guide. No matter how experienced you are or
50 what you want to achieve, it should cover everything you need to know —
51 from navigating the interface to making the most of different features.
52
53 What is CDS Designer UI?
54 ========================
55
56 +----------------------------------------------+--------------+
57 | CDS Designer UI is a framework to automate   |              |
58 | the **resolution of resources** for          |    |image1|  |
59 | **instantiation** and any **config**         |              |
60 | provisioning operation, such as day0, day1,  |              |
61 | or day2 configuration.                       |              |
62 |                                              |              |
63 | CDS has both **design-time** and             |              |
64 | **run-time** activities; during design time, |              |
65 | **Designer** can **define** what **actions** |              |
66 | are required for a given service, along with |              |                                                                                                                
67 | anything comprising the action. The design   |              |                                                                                                                  
68 | produces a `CBA                              |              |                                                                                                                   
69 | Package <https://wik                         |              |                                                                                                                   
70 | i.onap.org/display/DW/Modeling+Concepts#Mode |              |                                                                                                                   
71 | lingConcepts-ControllerBlueprintArchive>`__. |              |                                                                                                                   
72 | Its **content** is driven from a **catalog** |              |                                                                                                                   
73 | of **reusable data dictionary** and          |              |                                                                                                                   
74 | **component**, delivering a reusable and     |              |                                                                                                                   
75 | simplified **self-service** experience.      |              |                                                                                                                   
76 |                                              |              |                                                                                                                   
77 | CDS modeling is mainly based on **the TOSCA  |              |                                                                                                                   
78 | standard**, using JSON as a representation.  |              |                                                                                                                   
79 +----------------------------------------------+--------------+
80
81 .. _section-3:
82
83 What's new?
84 ===========
85
86 +----------------------+----------------------+----------------------+
87 | |image2|             | |image3|             | |image4|             |
88 |                      |                      |                      |
89 | Create full CBA      | Import old packages  | Create sophisticated |
90 | packages from        | for edit and         | package workflows in |
91 | built-in forms       | collaboration        | a no-code graphical  |
92 | without programming  |                      | designer             |
93 |                      |                      |                      |
94 | |image5|             | |image6|             | |image7|             |
95 |                      |                      |                      |
96 | Customizable CBA     | Easily create and    | Integration between  |
97 | Package actions      | manage lists of data | CDS UI and SDC       |
98 |                      | via interface (Data  | Services             |
99 |                      | Dictionary,          |                      |
100 |                      | controller catalog,  |                      |
101 |                      | and config           |                      |
102 |                      | management)          |                      |
103 +----------------------+----------------------+----------------------+
104
105 Overview of CDS Interface
106 =========================
107
108 Full CDS UI screens are available in
109 `InVision <https://invis.io/PAUI9GLJH3Q>`__
110
111 |image8|
112
113 1. **CDS main menu:** Access all CDS module list including Packages,
114    Data Dictionary, Controller Catalog, etc.
115
116 2. **Profile:** Access user profile information
117
118 3. **Module Title:** See the current module name and the total number of
119    items in the module list
120
121 4. **Module list:** View all active items in module and tools for search
122    and filtering
123
124 CBA Packages
125 ============
126
127 -  .. rubric:: Package List
128       :name: package-list
129
130 It gives you quick access to all and most recent created/edit packages
131
132 |image9|
133
134 1.  **Module Tabs:** Access All, Deployed, Under Construction, or
135     Archived packages
136
137 2.  **Search:** Search for a package by title
138
139 3.  **Filter:** Filter packages by package tags
140
141 4.  **Package Sort:** Sort packages by recent or alphanumeric (name) or
142     version
143
144 5.  **List Pagination:** navigate between package list pages
145
146 6.  **Create Package:** Create a new CBA package
147
148 7.  **Import Package:** Import other packages that are created
149     previously on CDS Editor or Designer or created by other/current
150     user
151
152 8.  **Package box:** It shows a brief detail of the package and gives
153     access to some actions of the package
154
155 9.  **Package name and version**
156
157 10. **More menu:** Access a list of actions including Clone, Archive,
158     Download, and Delete
159
160 11. **Last modified:** Shows user name and date and time of last
161     modifications made in the package
162
163 12. **Package Description**
164
165 13. **Collaborators:** See who's collaborating to edit in the package
166
167 14. **Configuration button:** Go directly to package configuration
168
169 15. **Designer Mode:** It indicates package mode (Designer, Scripting,
170     and Generic scripting) and by clicking on it, it will load to mode
171     screen
172
173 Create a New CBA Package
174 ========================
175
176 -  .. rubric:: User Flow
177       :name: user-flow
178
179 |image10|
180
181 -  .. rubric:: Create a New Package
182       :name: create-a-new-package
183
184 You can create a new CBA Package by creating a new custom package or by
185 import package file that is already created before.
186
187 **Create/Import Package**
188
189 You can’t create/import a CBA package that has the same name and version
190 of an existing package. Packages can be in the same name but in
191 different version number (ex., Package one v1.0.0 & Package one v1.0.1).
192
193 **Create a New Custom CBA Package**
194
195 From the Packages page, click on the **Create Package** button to
196 navigate to **Package** **Configuration**
197
198 |image11|
199
200 -  .. rubric:: `MetaData <https://wiki.onap.org/display/DW/Modeling+Concepts#Concepts-958933373>`__
201       :name: metadata
202
203 In **MetaData Tab,** select Package Mode, enter package Name, Version,
204 Description and other configurations
205
206 |image12|
207
208 Once you fill all required inputs, you can save this package by click
209 **Save** button in the Actions menu
210
211 |image13|
212
213 **Package Info Box:** It is in top of configurations tabs and it appears
214 after you save a package for the first time
215
216 |image14|
217
218 You can continue adding package configuration or go directly to
219 **Designer Mode** screen from Package infobox
220
221 All changes will be saved when you click on **Save** button
222
223 To close the package configuration and go back to the Package list,
224 navigate to the top left in breadcrumb and click the **CBA Packages**
225 link or click on **Packages** link in the Main menu.
226
227 -  .. rubric:: `Template &
228       Mapping <https://wiki.onap.org/display/DW/Modeling+Concepts#Concepts--1256902502>`__
229       :name: template-mapping
230
231 You can create as many templates using
232 `artifact-mapping-resource <https://wiki.onap.org/display/DW/Modeling+Concepts#ModelingConcepts-artifact-mapping-resource>`__
233 or/and
234 `artifact-template-velocity. <https://wiki.onap.org/display/DW/Modeling+Concepts#ModelingConcepts-artifact-template-velocity>`__
235
236 |image15|
237
238 1. **Template name**
239
240 2. **Template Section:** Where you include template attributes
241
242 3. **Manage Mapping:** Here the automapping process occurs to template
243    attributes to refer to the data dictionary that will be used to
244    resolve a particular resource.
245
246 **Template Section**
247
248 |image16|
249
250 1. **Template Type:** Template is defined by one of three templates
251    (Velocity, Jinja, Kotlin)
252
253 2. **Import Template Attributes/Parameters:** You can add attributes by
254    Import attribute list file or by
255
256 3. **Insert Template Attributes/Parameters Manually:** You can insert
257    Attributes manually in the code editor. Code editor validates
258    attributes according to the pre-selected template type
259
260 **Import Template Attributes**
261
262 |image17|
263
264 After import attributes, you can add/edit/delete attributes in the code
265 editor.
266
267 |image18|
268
269 **Manage Mapping Section**
270
271 |image19|
272
273 1. **Use current Template Instance:** You can use attributes from
274    Template section
275
276 2. **Upload Attributes List:** In case you don’t have existing
277    attributes in Template section or have different attributes, you can
278    upload attributes list
279
280 Once you select the source of attributes, you get a confirmation of
281 success fetching.
282
283 |image20|
284
285 Then the Mapped Table appears to show the Resource Dictionary reference.
286
287 |image21|
288
289 When you finish the creation process, you must click on **the Finish
290 button (1)** to submit the template, or you can clear all data by click
291 on **the Clear button** **(2).**
292
293 |image22|
294
295 -  .. rubric:: `Scripts <https://wiki.onap.org/display/DW/Modeling+Concepts#Concepts--703799064>`__
296       :name: scripts
297
298 Allowed file type: Kotlin(kt), Python(py)
299
300 To add script file/s, you have two options:
301
302 1. **Enter file URL:** Script file can be stored in server and you can
303    add this script file by copy and paste file URL in URL input then
304    **press ENTER** key from the keyboard
305
306 |image23|
307
308 2. **Import File**
309
310 |image24|
311
312 By adding script file/s, you can:
313
314 1. Edit file: You can edit each script file from the code editor
315
316 2. Delete file
317
318 |image25|
319
320 -  .. rubric:: `Definitions <https://wiki.onap.org/display/DW/Modeling+Concepts#ModelingConcepts-dataType>`__
321       :name: definitions
322
323 Allowed file type: JSON
324
325 To define a data type that represents the **schema** of a specific type
326 of **data**, you have two options:
327
328 1. ** Enter file URL:**  Definition file can be stored in server and user can
329    add this script file by copy and paste file URL in URL input then
330    **press ENTER** key from the keyboard
331
332 |image26|
333
334 2. **Import File**
335
336 |image27|
337
338 By adding definition file/s, you can:
339
340 1. Edit file: You can edit each definition file from the code editor
341
342 2. Delete file
343
344 |image28|
345
346 -  .. rubric:: `External System Authentication
347       Properties <https://wiki.onap.org/display/DW/Modeling+Concepts#ModelingConcepts-FlexiblePlugIn>`__
348       :name: external-system-authentication-properties
349
350 In order to populate the system information within the package, you have
351 to provide **dsl_definitions**
352
353 |image29|
354
355
356 .. |image1| image:: https://wiki.onap.org/download/attachments/84650426/CDS%20Logo.png?version=1&modificationDate=1591034588000&api=v2     
357    :width: 200pt
358 .. |image2| image:: https://wiki.onap.org/download/thumbnails/84650426/Feature%201.png?version=1&modificationDate=1591032224000&api=v2
359    :width: 50pt
360 .. |image3| image:: https://wiki.onap.org/download/thumbnails/84650426/Feature%202.png?version=1&modificationDate=1591032225000&api=v2
361    :width: 47pt
362 .. |image4| image:: https://wiki.onap.org/download/thumbnails/84650426/Feature%203.png?version=1&modificationDate=1591032226000&api=v2
363    :width: 47pt
364 .. |image5| image:: https://wiki.onap.org/download/thumbnails/84650426/Feature%204.png?version=1&modificationDate=1591032227000&api=v2
365    :width: 60pt
366 .. |image6| image:: https://wiki.onap.org/download/thumbnails/84650426/Feature%205.png?version=1&modificationDate=1591032227000&api=v2
367    :width: 50pt
368 .. |image7| image:: https://wiki.onap.org/download/thumbnails/84650426/Feature%206.png?version=1&modificationDate=1591032228000&api=v2
369    :width: 30pt
370 .. |image8| image:: https://wiki.onap.org/download/attachments/84650426/Interface.jpg?version=1&modificationDate=1591033366000&api=v2
371    :width: 500pt
372 .. |image9| image:: https://wiki.onap.org/download/attachments/84650426/Package%20List.jpg?version=1&modificationDate=1591033938000&api=v2
373    :width: 500pt
374 .. |image10| image:: https://wiki.onap.org/download/attachments/84650426/Create%20Package%20User%20flow.jpg?version=1&modificationDate=1591034050000&api=v2
375    :width: 500pt
376 .. |image11| image:: https://wiki.onap.org/download/attachments/84650426/Create%20Package.jpg?version=1&modificationDate=1591034193000&api=v2
377    :width: 500pt
378 .. |image12| image:: https://wiki.onap.org/download/attachments/84650426/Package%20Configuration%20-%20MetaData.jpg?version=1&modificationDate=1591034297000&api=v2
379    :width: 500pt
380 .. |image13| image:: https://wiki.onap.org/download/attachments/84650426/Package%20Configuration%20-%20Action%20Menu.jpg?version=1&modificationDate=1591034344000&api=v2
381    :width: 500pt
382 .. |image14| image:: https://wiki.onap.org/download/attachments/84650426/Package%20Configuration%20-%20Info%20Box.jpg?version=1&modificationDate=1591034382000&api=v2
383    :width: 500pt
384 .. |image15| image:: https://wiki.onap.org/download/attachments/84650426/Temp%20%26%20Mapp%201.jpg?version=1&modificationDate=1591638883000&api=v2
385    :width: 500pt
386 .. |image16| image:: https://wiki.onap.org/download/attachments/84650426/Temp%20%26%20Mapp%202.jpg?version=1&modificationDate=1591638960000&api=v2
387    :width: 500pt
388 .. |image17| image:: https://wiki.onap.org/download/attachments/84650426/Temp%20%26%20Mapp%203.jpg?version=1&modificationDate=1591639023000&api=v2
389    :width: 500pt
390 .. |image18| image:: https://wiki.onap.org/download/attachments/84650426/Temp%20%26%20Mapp%206.jpg?version=1&modificationDate=1591639059000&api=v2
391    :width: 500pt
392 .. |image19| image:: https://wiki.onap.org/download/attachments/84650426/Temp%20%26%20Mapp%207.jpg?version=1&modificationDate=1591639152000&api=v2
393    :width: 500pt
394 .. |image20| image:: https://wiki.onap.org/download/attachments/84650426/Temp%20%26%20Mapp%208.jpg?version=1&modificationDate=1591639203000&api=v2
395    :width: 500pt
396 .. |image21| image:: https://wiki.onap.org/download/attachments/84650426/Temp%20%26%20Mapp%209.jpg?version=1&modificationDate=1591639235000&api=v2
397    :width: 500pt
398 .. |image22| image:: https://wiki.onap.org/download/attachments/84650426/Temp%20%26%20Mapp%2011.jpg?version=1&modificationDate=1591639260000&api=v2
399    :width: 500pt
400 .. |image23| image:: https://wiki.onap.org/download/attachments/84650426/Scripts%201.jpg?version=1&modificationDate=1591639325000&api=v2
401    :width: 500pt
402 .. |image24| image:: https://wiki.onap.org/download/attachments/84650426/Scripts%202.jpg?version=1&modificationDate=1591639391000&api=v2
403    :width: 500pt
404 .. |image25| image:: https://wiki.onap.org/download/attachments/84650426/Scripts%203.jpg?version=1&modificationDate=1591639425000&api=v2
405    :width: 500pt
406 .. |image26| image:: https://wiki.onap.org/download/attachments/84650426/Definitions%201.jpg?version=1&modificationDate=1591639459000&api=v2
407    :width: 500pt
408 .. |image27| image:: https://wiki.onap.org/download/attachments/84650426/Definitions%202.jpg?version=1&modificationDate=1591639514000&api=v2
409    :width: 500pt
410 .. |image28| image:: https://wiki.onap.org/download/attachments/84650426/Definitions%203.jpg?version=1&modificationDate=1591639556000&api=v2
411    :width: 500pt
412 .. |image29| image:: https://wiki.onap.org/download/attachments/84650426/External%20system.jpg?version=1&modificationDate=1591639581000&api=v2     
413    :width: 500pt