From b3e815f76055b4a5743cbcecf79bf2a266a2aa9b Mon Sep 17 00:00:00 2001 From: Kumar Rishabh Date: Tue, 28 Mar 2017 01:14:31 +0530 Subject: Add docker-compose files and requirements This adds docker-compose file to define a multi-container vnf_catalogue service alongwith helper service to migrate the schema. Requires docker-compose installation To run :: docker-compose up The webapp by default would be accessible at ip_address:3000 Change-Id: I32daf7f76fb1d82116545187395cd96535c94541 Signed-off-by: Kumar Rishabh --- .../vnfcatalogue/VNF_Catalogue/migration/schema.js | 57 ++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 utils/test/vnfcatalogue/VNF_Catalogue/migration/schema.js (limited to 'utils/test/vnfcatalogue/VNF_Catalogue/migration/schema.js') diff --git a/utils/test/vnfcatalogue/VNF_Catalogue/migration/schema.js b/utils/test/vnfcatalogue/VNF_Catalogue/migration/schema.js new file mode 100644 index 000000000..4a7559ad0 --- /dev/null +++ b/utils/test/vnfcatalogue/VNF_Catalogue/migration/schema.js @@ -0,0 +1,57 @@ +/******************************************************************************* + * Copyright (c) 2017 Kumar Rishabh(penguinRaider) and others. + * + * All rights reserved. This program and the accompanying materials + * are made available under the terms of the Apache License, Version 2.0 + * which accompanies this distribution, and is available at + * http://www.apache.org/licenses/LICENSE-2.0 + *******************************************************************************/ +var Schema = { + photo: { + photo_id: {type: 'increments', nullable: false, primary: true}, + photo_url: {type: 'string', maxlength: 254, nullable: false} + }, + user: { + user_id: {type: 'increments', nullable: false, primary: true}, + user_name: {type: 'string', maxlength: 254, nullable: false}, + password: {type: 'string', maxlength: 150, nullable: false}, + email_id: {type: 'string', maxlength: 254, nullable: false, unique: true, validations: {isEmail: true}}, + photo_id: {type: 'integer', nullable: true, unsigned: true, references: 'photo.photo_id'}, + company: {type: 'string', maxlength: 254, nullable: false}, + introduction: {type: 'string', maxlength: 510, nullable: false}, + last_login: {type: 'dateTime', nullable: true}, + created_at: {type: 'dateTime', nullable: false}, + }, + vnf: { + vnf_id: {type: 'increments', nullable: false, primary: true}, + vnf_name: {type: 'string', maxlength: 254, nullable: false}, + repo_url: {type: 'string', maxlength: 254, nullable: false}, + photo_id: {type: 'integer', nullable: true, unsigned: true, references: 'photo.photo_id'}, + submitter_id: {type: 'integer', nullable: false, unsigned: true, references: 'user.user_id'}, + lines_of_code: {type: 'integer', nullable: true, unsigned: true}, + versions: {type: 'integer', nullable: true, unsigned: true}, + no_of_developers: {type: 'integer', nullable: true, unsigned: true}, + no_of_stars: {type: 'integer', nullable: true, unsigned: true}, + license: {type: 'enum', nullable: false, values: ['MIT', 'GPL', 'GPL_V2', 'BSD', 'APACHE']}, + opnfv_indicator: {type: 'enum', nullable: false, values: ['gold', 'silver', 'platinum']}, + complexity: {type: 'enum', nullable: true, values: ['low', 'medium', 'high']}, + activity: {type: 'enum', nullable: true, values: ['low', 'medium', 'high']}, + last_updated: {type: 'dateTime', nullable: true}, + }, + tag: { + tag_id: {type: 'increments', nullable: false, primary: true}, + tag_name: {type: 'string', maxlength: 150, nullable: false} + }, + vnf_tags: { + vnf_tag_id: {type: 'increments', nullable: false, primary: true}, + tag_id: {type: 'integer', nullable: false, unsigned: true, references: 'tag.tag_id'}, + vnf_id: {type: 'integer', nullable: false, unsigned: true, references: 'vnf.vnf_id'}, + }, + vnf_contributors: { + vnf_contributors_id: {type: 'increments', nullable: false, primary: true}, + user_id: {type: 'integer', nullable: false, unsigned: true, references: 'user.user_id'}, + vnf_id: {type: 'integer', nullable: false, unsigned: true, references: 'vnf.vnf_id'}, + created_at: {type: 'dateTime', nullable: false}, + } +}; +module.exports = Schema; -- cgit 1.2.3-korg