Add allotted resource recipe table
[so/docker-config.git] / volumes / mariadb / docker-entrypoint-initdb.d / db-sql-scripts / main-schemas / MySQL-Catalog-schema.sql
1
2     alter table HEAT_TEMPLATE_PARAMS 
3         drop 
4         foreign key FK_p3ol1xcvp831glqohrlu6o07o;
5
6     alter table MODEL_RECIPE 
7         drop 
8         foreign key FK_c23r0puyqug6n44jg39dutm1c;
9
10     alter table SERVICE 
11         drop 
12         foreign key FK_l3qy594u2xr1tfpmma3uigsna;
13
14     alter table SERVICE_RECIPE 
15         drop 
16         foreign key FK_i3r1b8j6e7dg9hkp49evnnm5y;
17
18     alter table SERVICE_TO_RESOURCE_CUSTOMIZATIONS 
19         drop 
20         foreign key FK_kiddaay6cfe0aob1f1jaio1bb;
21
22     alter table VF_MODULE 
23         drop 
24         foreign key FK_12jptc9it7gs3pru08skobxxc;
25
26     alter table VNF_RESOURCE_CUSTOMIZATION 
27         drop 
28         foreign key FK_iff1ayhb1hrp5jhea3vvikuni;
29
30     drop table if exists ALLOTTED_RESOURCE;
31
32     drop table if exists ALLOTTED_RESOURCE_CUSTOMIZATION;
33         
34         drop table if exists AR_RECIPE;
35
36     drop table if exists HEAT_ENVIRONMENT;
37
38     drop table if exists HEAT_FILES;
39
40     drop table if exists HEAT_NESTED_TEMPLATE;
41
42     drop table if exists HEAT_TEMPLATE;
43
44     drop table if exists HEAT_TEMPLATE_PARAMS;
45
46     drop table if exists MODEL;
47
48     drop table if exists MODEL_RECIPE;
49
50     drop table if exists NETWORK_RECIPE;
51
52     drop table if exists NETWORK_RESOURCE;
53
54     drop table if exists NETWORK_RESOURCE_CUSTOMIZATION;
55
56     drop table if exists SERVICE;
57
58     drop table if exists SERVICE_RECIPE;
59
60     drop table if exists SERVICE_TO_ALLOTTED_RESOURCES;
61
62     drop table if exists SERVICE_TO_NETWORKS;
63
64     drop table if exists SERVICE_TO_RESOURCE_CUSTOMIZATIONS;
65
66     drop table if exists TEMP_NETWORK_HEAT_TEMPLATE_LOOKUP;
67
68     drop table if exists TOSCA_CSAR;
69
70     drop table if exists VF_MODULE;
71
72     drop table if exists VF_MODULE_CUSTOMIZATION;
73
74     drop table if exists VF_MODULE_TO_HEAT_FILES;
75
76     drop table if exists VNF_COMPONENTS;
77
78     drop table if exists VNF_COMPONENTS_RECIPE;
79
80     drop table if exists VNF_RECIPE;
81
82     drop table if exists VNF_RESOURCE;
83
84     drop table if exists VNF_RESOURCE_CUSTOMIZATION;
85
86     drop table if exists VNF_RES_CUSTOM_TO_VF_MODULE_CUSTOM;
87
88     create table ALLOTTED_RESOURCE (
89         MODEL_UUID varchar(255) not null,
90         MODEL_INVARIANT_UUID varchar(255),
91         MODEL_VERSION varchar(255),
92         MODEL_NAME varchar(255),
93         TOSCA_NODE_TYPE varchar(255),
94         SUBCATEGORY varchar(255),
95         DESCRIPTION varchar(255),
96         CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
97         primary key (MODEL_UUID)
98     );
99
100     create table ALLOTTED_RESOURCE_CUSTOMIZATION (
101         MODEL_CUSTOMIZATION_UUID varchar(200) not null,
102         MODEL_INSTANCE_NAME varchar(255),
103         AR_MODEL_UUID varchar(255),
104         PROVIDING_SERVICE_MODEL_INVARIANT_UUID varchar(255),
105         TARGET_NETWORK_ROLE varchar(255),
106         NF_FUNCTION varchar(255),
107         NF_TYPE varchar(255),
108         NF_ROLE varchar(255),
109         NF_NAMING_CODE varchar(255),
110         MIN_INSTANCES integer,
111         MAX_INSTANCES integer,
112         CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
113         primary key (MODEL_CUSTOMIZATION_UUID)
114     );
115
116         create table AR_RECIPE (
117         id integer not null auto_increment,
118         MODEL_NAME varchar(20) not null,
119         ACTION varchar(20) not null,
120         VERSION_STR varchar(20) not null,
121         SERVICE_TYPE varchar(45),
122         DESCRIPTION varchar(1200),
123         ORCHESTRATION_URI varchar(256) not null,
124         AR_PARAM_XSD varchar(2048),
125         RECIPE_TIMEOUT integer,
126         CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
127         primary key (id)
128     );
129         
130     create table HEAT_ENVIRONMENT (
131         ARTIFACT_UUID varchar(200) not null,
132         NAME varchar(100) not null,
133         VERSION varchar(20) not null,
134         DESCRIPTION varchar(1200),
135         BODY longtext not null,
136         CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
137         ARTIFACT_CHECKSUM varchar(200) default 'MANUAL RECORD',
138         primary key (ARTIFACT_UUID)
139     );
140
141     create table HEAT_FILES (
142         ARTIFACT_UUID varchar(255) not null,
143         DESCRIPTION varchar(255),
144         NAME varchar(255),
145         VERSION varchar(255),
146         BODY longtext,
147         CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
148         ARTIFACT_CHECKSUM varchar(255),
149         primary key (ARTIFACT_UUID)
150     );
151
152     create table HEAT_NESTED_TEMPLATE (
153         PARENT_HEAT_TEMPLATE_UUID varchar(200) not null,
154         CHILD_HEAT_TEMPLATE_UUID varchar(200) not null,
155         PROVIDER_RESOURCE_FILE varchar(100),
156         primary key (PARENT_HEAT_TEMPLATE_UUID, CHILD_HEAT_TEMPLATE_UUID)
157     );
158
159     create table HEAT_TEMPLATE (
160         ARTIFACT_UUID varchar(200) not null,
161         NAME varchar(200) not null,
162         VERSION varchar(20) not null,
163         BODY longtext not null,
164         TIMEOUT_MINUTES integer,
165         DESCRIPTION varchar(1200),
166         CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
167         ARTIFACT_CHECKSUM varchar(200) default 'MANUAL RECORD' not null,
168         primary key (ARTIFACT_UUID)
169     );
170
171     create table HEAT_TEMPLATE_PARAMS (
172         HEAT_TEMPLATE_ARTIFACT_UUID varchar(255) not null,
173         PARAM_NAME varchar(255) not null,
174         IS_REQUIRED bit not null,
175         PARAM_TYPE varchar(20),
176         PARAM_ALIAS varchar(45),
177         primary key (HEAT_TEMPLATE_ARTIFACT_UUID, PARAM_NAME)
178     );
179
180     create table MODEL (
181         id integer not null auto_increment,
182         MODEL_TYPE varchar(20) not null,
183         MODEL_VERSION_ID varchar(40) not null,
184         MODEL_INVARIANT_ID varchar(40),
185         MODEL_NAME varchar(40) not null,
186         MODEL_VERSION varchar(20),
187         MODEL_CUSTOMIZATION_ID varchar(40),
188         MODEL_CUSTOMIZATION_NAME varchar(40),
189         CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
190         primary key (id)
191     );
192
193     create table MODEL_RECIPE (
194         id integer not null auto_increment,
195         MODEL_ID integer not null,
196         ACTION varchar(20) not null,
197         SCHEMA_VERSION varchar(20),
198         DESCRIPTION varchar(1200),
199         ORCHESTRATION_URI varchar(256) not null,
200         MODEL_PARAM_XSD varchar(2048),
201         RECIPE_TIMEOUT integer,
202         CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
203         primary key (id)
204     );
205
206     create table NETWORK_RECIPE (
207         id integer not null auto_increment,
208         MODEL_NAME varchar(20) not null,
209         ACTION varchar(20) not null,
210         VERSION_STR varchar(20) not null,
211         SERVICE_TYPE varchar(45),
212         DESCRIPTION varchar(1200),
213         ORCHESTRATION_URI varchar(256) not null,
214         NETWORK_PARAM_XSD varchar(2048),
215         RECIPE_TIMEOUT integer,
216         CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
217         primary key (id)
218     );
219
220     create table NETWORK_RESOURCE (
221         MODEL_UUID varchar(200) not null,
222         MODEL_NAME varchar(200) not null,
223         MODEL_INVARIANT_UUID varchar(200),
224         MODEL_VERSION varchar(20),
225         TOSCA_NODE_TYPE varchar(200),
226         NEUTRON_NETWORK_TYPE varchar(20),
227         DESCRIPTION varchar(1200),
228         ORCHESTRATION_MODE varchar(20),
229         RESOURCE_CATEGORY varchar(20),
230         RESOURCE_SUB_CATEGORY varchar(20),
231         HEAT_TEMPLATE_ARTIFACT_UUID varchar(200) not null,
232         AIC_VERSION_MIN varchar(20) default 2.5 not null,
233         AIC_VERSION_MAX varchar(20) default 2.5,
234         CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
235         primary key (MODEL_UUID)
236     );
237
238     create table NETWORK_RESOURCE_CUSTOMIZATION (
239         MODEL_CUSTOMIZATION_UUID varchar(200) not null,
240         NETWORK_RESOURCE_MODEL_UUID varchar(200) not null,
241         MODEL_INSTANCE_NAME varchar(255),
242         NETWORK_TECHNOLOGY varchar(255),
243         NETWORK_TYPE varchar(255),
244         NETWORK_SCOPE varchar(255),
245         NETWORK_ROLE varchar(255),
246         CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
247         primary key (MODEL_CUSTOMIZATION_UUID)
248     );
249
250     create table SERVICE (
251         MODEL_UUID varchar(200) not null,
252         MODEL_NAME varchar(200) not null,
253         MODEL_VERSION varchar(20) not null,
254         DESCRIPTION varchar(1200),
255         TOSCA_CSAR_ARTIFACT_UUID varchar(200),
256         CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
257         MODEL_INVARIANT_UUID varchar(200) default 'MANUAL_RECORD' not null,
258         SERVICE_CATEGORY varchar(20),
259         SERVICE_TYPE varchar(20),
260         SERVICE_ROLE varchar(20),
261         primary key (MODEL_UUID)
262     );
263
264     create table SERVICE_RECIPE (
265         id integer not null auto_increment,
266         SERVICE_MODEL_UUID varchar(200) not null,
267         ACTION varchar(40) not null,
268         ORCHESTRATION_URI varchar(256) not null,
269         CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
270         VERSION_STR varchar(20),
271         DESCRIPTION varchar(1200),
272         SERVICE_PARAM_XSD varchar(2048),
273         RECIPE_TIMEOUT integer,
274         SERVICE_TIMEOUT_INTERIM integer,
275         primary key (id)
276     );
277
278     create table SERVICE_TO_ALLOTTED_RESOURCES (
279         SERVICE_MODEL_UUID varchar(200) not null,
280         AR_MODEL_CUSTOMIZATION_UUID varchar(200) not null,
281         CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
282         primary key (SERVICE_MODEL_UUID, AR_MODEL_CUSTOMIZATION_UUID)
283     );
284
285     create table SERVICE_TO_NETWORKS (
286         SERVICE_MODEL_UUID varchar(200) not null,
287         NETWORK_MODEL_CUSTOMIZATION_UUID varchar(200) not null,
288         CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
289         primary key (SERVICE_MODEL_UUID, NETWORK_MODEL_CUSTOMIZATION_UUID)
290     );
291
292     create table SERVICE_TO_RESOURCE_CUSTOMIZATIONS (
293         MODEL_TYPE varchar(20) not null,
294         RESOURCE_MODEL_CUSTOMIZATION_UUID varchar(200) not null,
295         CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
296         SERVICE_MODEL_UUID varchar(200) not null,
297         primary key (MODEL_TYPE, RESOURCE_MODEL_CUSTOMIZATION_UUID)
298     );
299
300     create table TEMP_NETWORK_HEAT_TEMPLATE_LOOKUP (
301         NETWORK_RESOURCE_MODEL_NAME varchar(200) not null,
302         HEAT_TEMPLATE_ARTIFACT_UUID varchar(200) not null,
303         AIC_VERSION_MIN varchar(20) not null,
304         AIC_VERSION_MAX varchar(20),
305         primary key (NETWORK_RESOURCE_MODEL_NAME)
306     );
307
308     create table TOSCA_CSAR (
309         ARTIFACT_UUID varchar(200) not null,
310         NAME varchar(200) not null,
311         VERSION varchar(20) not null,
312         ARTIFACT_CHECKSUM varchar(200) not null,
313         URL varchar(200) not null,
314         DESCRIPTION varchar(1200),
315         CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
316         primary key (ARTIFACT_UUID)
317     );
318
319     create table VF_MODULE (
320         MODEL_UUID varchar(200) not null,
321         VNF_RESOURCE_MODEL_UUID varchar(200),
322         MODEL_INVARIANT_UUID varchar(200),
323         MODEL_VERSION varchar(20) not null,
324         MODEL_NAME varchar(200) not null,
325         DESCRIPTION varchar(1200),
326         IS_BASE integer not null,
327         HEAT_TEMPLATE_ARTIFACT_UUID varchar(200) not null,
328         VOL_HEAT_TEMPLATE_ARTIFACT_UUID varchar(200),
329         CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
330         primary key (MODEL_UUID)
331     );
332
333     create table VF_MODULE_CUSTOMIZATION (
334         MODEL_CUSTOMIZATION_UUID varchar(200) not null,
335         VF_MODULE_MODEL_UUID varchar(200) not null,
336         VOL_ENVIRONMENT_ARTIFACT_UUID varchar(200),
337         CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
338         HEAT_ENVIRONMENT_ARTIFACT_UUID varchar(200),
339         MIN_INSTANCES integer,
340         MAX_INSTANCES integer,
341         INITIAL_COUNT integer,
342         AVAILABILITY_ZONE_COUNT integer,
343         LABEL varchar(200),
344         primary key (MODEL_CUSTOMIZATION_UUID)
345     );
346
347     create table VF_MODULE_TO_HEAT_FILES (
348         VF_MODULE_MODEL_UUID varchar(200) not null,
349         HEAT_FILES_ARTIFACT_UUID varchar(200) not null,
350         primary key (VF_MODULE_MODEL_UUID, HEAT_FILES_ARTIFACT_UUID)
351     );
352
353     create table VNF_COMPONENTS (
354         VNF_ID integer not null,
355         COMPONENT_TYPE varchar(20) not null,
356         HEAT_TEMPLATE_ID integer,
357         HEAT_ENVIRONMENT_ID integer,
358         CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
359         primary key (VNF_ID, COMPONENT_TYPE)
360     );
361
362     create table VNF_COMPONENTS_RECIPE (
363         id integer not null auto_increment,
364         VNF_TYPE varchar(200),
365         VF_MODULE_MODEL_UUID varchar(100),
366         VNF_COMPONENT_TYPE varchar(45) not null,
367         ACTION varchar(20) not null,
368         SERVICE_TYPE varchar(45),
369         VERSION varchar(20),
370         DESCRIPTION varchar(1200),
371         ORCHESTRATION_URI varchar(256) not null,
372         VNF_COMPONENT_PARAM_XSD varchar(2048),
373         RECIPE_TIMEOUT integer,
374         CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
375         primary key (id)
376     );
377
378     create table VNF_RECIPE (
379         id integer not null auto_increment,
380         VF_MODULE_ID varchar(100),
381         ACTION varchar(20) not null,
382         VERSION_STR varchar(20) not null,
383         VNF_TYPE varchar(200),
384         SERVICE_TYPE varchar(45) default null,
385         DESCRIPTION varchar(1200),
386         ORCHESTRATION_URI varchar(256) not null,
387         VNF_PARAM_XSD varchar(2048),
388         RECIPE_TIMEOUT integer,
389         CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
390         primary key (id)
391     );
392
393     create table VNF_RESOURCE (
394         MODEL_UUID varchar(200) not null,
395         MODEL_INVARIANT_UUID varchar(200),
396         MODEL_VERSION varchar(20) not null,
397         MODEL_NAME varchar(200),
398         TOSCA_NODE_TYPE varchar(200),
399         DESCRIPTION varchar(1200),
400         ORCHESTRATION_MODE varchar(20) not null,
401         AIC_VERSION_MIN varchar(20),
402         AIC_VERSION_MAX varchar(20),
403         RESOURCE_CATEGORY varchar(20),
404         RESOURCE_SUB_CATEGORY varchar(20),
405         HEAT_TEMPLATE_ARTIFACT_UUID varchar(200),
406         CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
407         primary key (MODEL_UUID)
408     );
409
410     create table VNF_RESOURCE_CUSTOMIZATION (
411         MODEL_CUSTOMIZATION_UUID varchar(200) not null,
412         MODEL_INSTANCE_NAME varchar(200) not null,
413         MIN_INSTANCES integer,
414         MAX_INSTANCES integer,
415         AVAILABILITY_ZONE_MAX_COUNT integer,
416         NF_FUNCTION varchar(200),
417         NF_TYPE varchar(200),
418         NF_ROLE varchar(200),
419         NF_NAMING_CODE varchar(200),
420         VNF_RESOURCE_MODEL_UUID varchar(200) not null,
421         CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
422         primary key (MODEL_CUSTOMIZATION_UUID)
423     );
424
425     create table VNF_RES_CUSTOM_TO_VF_MODULE_CUSTOM (
426         VNF_RESOURCE_CUST_MODEL_CUSTOMIZATION_UUID varchar(200) not null,
427         VF_MODULE_CUST_MODEL_CUSTOMIZATION_UUID varchar(200) not null,
428         CREATION_TIMESTAMP datetime default CURRENT_TIMESTAMP,
429         primary key (VNF_RESOURCE_CUST_MODEL_CUSTOMIZATION_UUID, VF_MODULE_CUST_MODEL_CUSTOMIZATION_UUID)
430     );
431
432     alter table MODEL 
433         add constraint UK_rra00f1rk6eyy7g00k9raxh2v  unique (MODEL_TYPE, MODEL_VERSION_ID);
434
435     alter table MODEL_RECIPE 
436         add constraint UK_b4g8j9wtqrkxfycyi3ursk7gb  unique (MODEL_ID, ACTION);
437
438     alter table NETWORK_RECIPE 
439         add constraint UK_pbsa8i44m8p10f9529jdgfuk9  unique (MODEL_NAME, ACTION, VERSION_STR);
440
441     alter table SERVICE_RECIPE 
442         add constraint UK_2lr377dpqnvl5aqlp5dtj2fcp  unique (SERVICE_MODEL_UUID, ACTION);
443
444     alter table VNF_COMPONENTS_RECIPE 
445         add constraint UK_g3je95aaxxiuest25f0qoy2u8  unique (VNF_TYPE, VF_MODULE_MODEL_UUID, VNF_COMPONENT_TYPE, ACTION, SERVICE_TYPE, VERSION);
446
447     alter table VNF_RECIPE 
448         add constraint UK_f3tvqau498vrifq3cr8qnigkr  unique (VF_MODULE_ID, ACTION, VERSION_STR);
449
450     alter table HEAT_TEMPLATE_PARAMS 
451         add constraint FK_p3ol1xcvp831glqohrlu6o07o 
452         foreign key (HEAT_TEMPLATE_ARTIFACT_UUID) 
453         references HEAT_TEMPLATE (ARTIFACT_UUID);
454
455     alter table MODEL_RECIPE 
456         add constraint FK_c23r0puyqug6n44jg39dutm1c 
457         foreign key (MODEL_ID) 
458         references MODEL (id);
459
460     alter table SERVICE 
461         add constraint FK_l3qy594u2xr1tfpmma3uigsna 
462         foreign key (TOSCA_CSAR_ARTIFACT_UUID) 
463         references TOSCA_CSAR (ARTIFACT_UUID);
464
465     alter table SERVICE_RECIPE 
466         add constraint FK_i3r1b8j6e7dg9hkp49evnnm5y 
467         foreign key (SERVICE_MODEL_UUID) 
468         references SERVICE (MODEL_UUID);
469
470     alter table SERVICE_TO_RESOURCE_CUSTOMIZATIONS 
471         add constraint FK_kiddaay6cfe0aob1f1jaio1bb 
472         foreign key (SERVICE_MODEL_UUID) 
473         references SERVICE (MODEL_UUID);
474
475     alter table VF_MODULE 
476         add constraint FK_12jptc9it7gs3pru08skobxxc 
477         foreign key (VNF_RESOURCE_MODEL_UUID) 
478         references VNF_RESOURCE (MODEL_UUID);
479
480     alter table VNF_RESOURCE_CUSTOMIZATION 
481         add constraint FK_iff1ayhb1hrp5jhea3vvikuni 
482         foreign key (VNF_RESOURCE_MODEL_UUID) 
483         references VNF_RESOURCE (MODEL_UUID);