From 451a3400b76511393c62a444f588a4ed15f4a549 Mon Sep 17 00:00:00 2001 From: Michael Lando Date: Sun, 19 Feb 2017 10:28:42 +0200 Subject: Initial OpenECOMP SDC commit Change-Id: I0924d5a6ae9cdc161ae17c68d3689a30d10f407b Signed-off-by: Michael Lando --- README.md | 165 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 165 insertions(+) create mode 100644 README.md (limited to 'README.md') diff --git a/README.md b/README.md new file mode 100644 index 0000000000..297457a339 --- /dev/null +++ b/README.md @@ -0,0 +1,165 @@ +# OpenECOMP SDC + +--- +--- + + +# Introduction + +OpenECOMP SDC is delivered with 5 Docker containers: +1. sdc-FE - frontend SDC application running on jetty server +2. sdc-BE - backend SDC application running on jetty server +3. sdc-kbn - hosting kibana application +4. sdc-cs - hosting cassandra +5. sdc-es - hosting elastic search + +All containers runs on the same machine and can be started by runnin the command: +/data/scripts/docker_run.sh -e -r -p +Example: /data/scripts/docker_run.sh -e OS-ETE-DFW -p 51220 + + +# Compiling SDC + +SDC is built from several projects, while "sdc-main" contains the main pom.xml for all project: +- catalog-be - backend code +- catalog-fe - frontend java code (servlet, proxy) +- catalog-dao - database layer +- catalog-model - data model of the application +- catalog-ui - front end code (javascript, html, css) +- common-app-api - common code for frontend and backend +- common-be - utilities, datatypes and enums +- security-utils - handle encryption/decryption of passwords + +SDC projects can be compiled easily using maven command: `mvn clean install`. +In order to build all projects, enter to sdc-main project and run the command: `mvn clean install`. +By default unit test will run when compiling + +** igor ** +Docker containers are build with the following profile +`-P docker -Ddocker.buildArg.chef_repo_branch_name=bugfix/external_adress -Ddocker.buildArg.chef_repo_git_username=git -Ddocker.buildArg.chef_repo_address=23.253.149.175/SDC -Ddocker.buildArg.chef_repo_git_name=chef-repo` + + +# Getting the containers + +***to be changed for rrelease*** OpenECOMP SDC containers are stored on the Rackspace Nexus Docker Registry + +The following Docker images are the actual deployment images used for running SDC + +| Name | Tag | Description | +|---------|-----------|-------------------------------------------------------------------------------------------------------------------------------| +| sdc-FE | 1610.2.16 | Contains Jetty + OpenJDK + SDC frontend code + **3rd party jars** | +| sdc-BE | 1610.2.16 | Contains Jetty + OpenJDK + SDC backend code + **3rd party jars** | +| sdc-kbn | 1610.2.16 | Contains nodeJs + Kibana application | +| sdc-cs | 1610.2.16 | OpenJDK + Contains cassandra application | +| sdc-es | 1610.2.16 | Elastic search application | + + +*********************** Israel ************************ +# Starting SDC +There are several ways to start OpenECOMP SDC: +TBD - Israel + +# Accessing SDC +SDC UI can be accessed from: + +### Ecomp portal +Login to ecomp portal URL with user that has permission for SDC application. +Define in your hosts file the following: + sdc.api.simpledemo.openecomp.org + portal.api.simpledemo.openecomp.org +Open browser and navigate to: http://portal.api.simpledemo.openecomp.org:8989/ECOMPPORTAL/login.htm + +### Webseal simulator +This options is for developers to run locally SDC +1. Build web simulator WAR file: run `mvn clean install` on project "webseal simulator". This will generate war file (WSSimulator.war) in the target folder. +2. Copy the war to: /home/vagrant/webseal-simulator/webapps +3. Add users to simulator: open configuration file - /home/vagrant/webseal-simulator/config/webseal.conf and add new user to the user list. + Note: You need to define the user in the SDC as well. +4. Restart the simulator: + Stop the simulator: stopWebsealSimulator.sh + Start the simulator: startWebsealSimulator.sh +5. Enter to UI: http://:8285/sdc1/login + +### SDC import normatives from CLI +SDC needs to work with predefined basic normatives, in order to update the database with the normatives need to: +1. From catalog-be project copy: + src\main\resources\import\tosca -> to :catalog-be/import/tosca + src\main\resources\scripts\import\tosca ->to :catalog-be/scripts/import/tosca +2. cd catalog-be/scripts/import/tosca +3. Run: python importNormativeAll.py +4. Wait until all normatives are loaded to the database + + +### SDC APIs +TBD + +##### Main API endpoints in the first open source release + +- ***to be completed*** APIHandler health checks +TBD + +# Configuration of SDC +TBD + +Here are the main parameters you could change: +TBD + +The credentials are defined in 2 places: +TBD + +# Logging +TBD + +### Jetty +TBD + +### Debuging +TBD + +# Testing SDC Functionalities +TBD + +### Frontend Local Env - onboarding + +Steps: +------ +Install nodejs & gulp +1. download nodejs from here: https://nodejs.org/en/ (take the "current" version with latest features) & install it. +2. install gulp by running the following command: npm install --global gulp-cli + +Install DOX-UI a: +----------------- +1. pull for latest changes +2. go to folder dox-sequence-diagram-ui +3. run npm install +4. wait for it... +5. go to folder dox-ui +6. run npm install +7. create a copy of devConfig.defaults.json file and name it devConfig.json (we already configured git to ignore it so it will not be pushed) +8. in that file, populate the fields of the IP addresses of your BE machine you'd like to connect (pay attention, it is a JSON file): For example http://: +9. after everything was successful, run gulp +10. after server was up, your favorite UI will wait for you at: http://localhost:9000/sdc1/proxy-designer1#/onboardVendor + +Troubleshooting: +---------------- +| Problem | Why is this happening | Solution | +-------------------------------------------------------------------------------------------------------------------------------------------------------- +| npm cannot reach destination | onboarding proxy | When within onboarding network, you should set onboarding proxy to NPM as the following: | +| | | npm config set proxy http://genproxy:8080 | +| | | npm config set https-proxy http://genproxy:8080 | +| | | | +| git protocol is blocked | onboarding network | When within onboarding network, you should set globally that when git | +| and cannot connect | rules for protocols | protocol is used, then it will be replaced with "https" | +| | | git config --global url."https://".insteadOf git:// | +-------------------------------------------------------------------------------------------------------------------------------------------------------- + +# Getting Help + +*** to be completed on rrelease *** + +SDC@lists.openecomp.org + +SDC Javadoc and Maven site + +*** to be completed on rrelease *** + -- cgit 1.2.3-korg