diff options
author | Kumar Rishabh <shailrishabh@gmail.com> | 2017-03-28 01:14:31 +0530 |
---|---|---|
committer | Kumar Rishabh <shailrishabh@gmail.com> | 2017-03-28 01:26:20 +0530 |
commit | 2aed8a338ba8484fa96d783e04e0874512c12e85 (patch) | |
tree | 9e8f3ac87b179bf94c34f81ee6507f251d71e3c1 /vnfcatalogue/VNF_Catalogue/migration/schema.js | |
parent | 3bda241da0264a6a46cbda51f61931dd4299db20 (diff) |
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 <shailrishabh@gmail.com>
Diffstat (limited to 'vnfcatalogue/VNF_Catalogue/migration/schema.js')
-rw-r--r-- | vnfcatalogue/VNF_Catalogue/migration/schema.js | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/vnfcatalogue/VNF_Catalogue/migration/schema.js b/vnfcatalogue/VNF_Catalogue/migration/schema.js new file mode 100644 index 0000000..4a7559a --- /dev/null +++ b/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; |