From 5e3a6c1091ff9b8acdc72d917ebaef99ae699596 Mon Sep 17 00:00:00 2001 From: lizi Date: Fri, 13 Oct 2017 15:49:02 +0800 Subject: Add doc files for esr-gui. Change-Id: If61b34161025e64a098bf48e71b6b153b6439b57 Issue-ID: AAI-427 Signed-off-by: lizi --- docs/index.rst | 8 +- docs/installation.rst | 6 - docs/platform/architecture.rst | 30 +++++ docs/platform/consumedapis.rst | 63 ++++++++++ docs/platform/images/esr-architecture.PNG | Bin 0 -> 130313 bytes .../images/external-system-register-progress.PNG | Bin 0 -> 28468 bytes .../external-system-register-sequence-diagram.PNG | Bin 0 -> 57223 bytes docs/platform/images/vim-register-progress.PNG | Bin 0 -> 27554 bytes docs/platform/index.rst | 13 ++ docs/platform/installation.rst | 91 ++++++++++++++ docs/release-notes/bug-fixes.rst | 28 +++++ docs/release-notes/index.rst | 15 +++ docs/release-notes/known-issues.rst | 4 + docs/release-notes/new-features.rst | 135 +++++++++++++++++++++ docs/release-notes/security-issues.rst | 4 + docs/release-notes/upgrade-notes.rst | 4 + 16 files changed, 391 insertions(+), 10 deletions(-) delete mode 100644 docs/installation.rst create mode 100644 docs/platform/architecture.rst create mode 100644 docs/platform/consumedapis.rst create mode 100644 docs/platform/images/esr-architecture.PNG create mode 100644 docs/platform/images/external-system-register-progress.PNG create mode 100644 docs/platform/images/external-system-register-sequence-diagram.PNG create mode 100644 docs/platform/images/vim-register-progress.PNG create mode 100644 docs/platform/index.rst create mode 100644 docs/platform/installation.rst create mode 100644 docs/release-notes/bug-fixes.rst create mode 100644 docs/release-notes/index.rst create mode 100644 docs/release-notes/known-issues.rst create mode 100644 docs/release-notes/new-features.rst create mode 100644 docs/release-notes/security-issues.rst create mode 100644 docs/release-notes/upgrade-notes.rst diff --git a/docs/index.rst b/docs/index.rst index 8a7acc1..51dfe21 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -7,13 +7,13 @@ ESR provide a way to register external system which not included in ONAP system, ESR comprises two modules: the esr server module and the esr gui module. And both esr service and esr gui belongs A&AI. -- AAI +- AAI ESR - ESR server Module - ESR gui Module .. toctree:: - :maxdepth: 1 - - installation.rst + :maxdepth: 2 + platform/index.rst + release-notes/index.rst diff --git a/docs/installation.rst b/docs/installation.rst deleted file mode 100644 index 25da181..0000000 --- a/docs/installation.rst +++ /dev/null @@ -1,6 +0,0 @@ -.. This work is licensed under a Creative Commons Attribution 4.0 International License. - - -Installation ------------- -- `ESR setup `_. \ No newline at end of file diff --git a/docs/platform/architecture.rst b/docs/platform/architecture.rst new file mode 100644 index 0000000..cb658ef --- /dev/null +++ b/docs/platform/architecture.rst @@ -0,0 +1,30 @@ +.. This work is licensed under a Creative Commons Attribution 4.0 International License. + + +Architecture +------------ + +ESR contains two components: esr server module and esr gui module + +- ESR + - ESR server + - ESR gui + +ONAP-level Architecture +^^^^^^^^^^^^^^^^^^^^^^^ + +In ONAP architecture, ESR is a sub-project of A&AI. It provide a single point for users to manage the external system information. It provides a way to register/unregister external system dynamically. + +.. image:: images/esr-architecture.PNG + +How ESR works +^^^^^^^^^^^^^^^^^^^^^^^ + +The user register external system through esr-gui, esr-server will store the external system information to A&AI. And the other components such as VF-C/SDNC/Multi-Cloud then can query the external system information form A&AI. The process of VIM register may be a bit different from the VNFM/EMS/thirdparty SDNC. That because the registered VIM information is some basic information such as region/version/auth-url that things, Multi-Cloud will update the cloud information with more details, such as the volume and tenant details. The VNFM/EMS/thirdparty SDNC will not be updated by VF-C and SDNC. + +.. image:: images/vim-register-progress.PNG +.. image:: images/external-system-register-progress.PNG + +The complete workflow is shown below in the form of a sequence diagram. + +.. image:: images/external-system-register-sequence-diagram.PNG \ No newline at end of file diff --git a/docs/platform/consumedapis.rst b/docs/platform/consumedapis.rst new file mode 100644 index 0000000..5576e8e --- /dev/null +++ b/docs/platform/consumedapis.rst @@ -0,0 +1,63 @@ +.. This work is licensed under a Creative Commons Attribution 4.0 International License. +.. http://creativecommons.org/licenses/by/4.0 + +Consumed APIs +------------- + +In the Amsterdam release, Holmes does not consume any APIs provided by other ONAP components. + +ESR-SERVER +^^^^^^^^^^ + +ESR-gui manage the external system (VIM/VNFM/EMS/thirdparty SDNC) with ers-server API. + +#. VIM management API: + + ``POST /api/aai-esr-server/v1/vims`` + + ``PUT /api/aai-esr-server/v1/vims/{cloudOwner}/{cloudRegionId}`` + + ``GET /api/aai-esr-server/v1/vims/{cloudOwner}/{cloudRegionId}`` + + ``GET /api/aai-esr-server/v1/vims`` + + ``DELETE /api/aai-esr-server/v1/vims/{cloudOwner}/{cloudRegionId}`` + +#. VNFM management API: + + ``POST /api/aai-esr-server/v1/vnfms`` + + ``PUT /api/aai-esr-server/v1/vnfms/{vnfmId}`` + + ``GET /api/aai-esr-server/v1/vnfms/{vnfmId}`` + + ``GET /api/aai-esr-server/v1/vnfms`` + + ``DELETE /api/aai-esr-server/v1/vnfms/{vnfmId}`` + +#. EMS management API: + + ``POST /api/aai-esr-server/v1/emses`` + + ``PUT /api/aai-esr-server/v1/emses/{emsId}`` + + ``GET /api/aai-esr-server/v1/emses/{emsId}`` + + ``GET /api/aai-esr-server/v1/emses`` + + ``DELETE /api/aai-esr-server/v1/emses/{emsId}`` + +#. Thirdparty SDNC management API: + + ``POST /api/aai-esr-server/v1/sdncontrollers`` + + ``PUT /api/aai-esr-server/v1/sdncontrollers/{sdnControllerId}`` + + ``GET /api/aai-esr-server/v1/sdncontrollers/{sdnControllerId}`` + + ``GET /api/aai-esr-server/v1/sdncontrollers`` + + ``DELETE /api/aai-esr-server/v1/sdncontrollers/{sdnControllerId}`` + +More details could be found at `A&AI APIs `_. + \ No newline at end of file diff --git a/docs/platform/images/esr-architecture.PNG b/docs/platform/images/esr-architecture.PNG new file mode 100644 index 0000000..982a519 Binary files /dev/null and b/docs/platform/images/esr-architecture.PNG differ diff --git a/docs/platform/images/external-system-register-progress.PNG b/docs/platform/images/external-system-register-progress.PNG new file mode 100644 index 0000000..bcfce84 Binary files /dev/null and b/docs/platform/images/external-system-register-progress.PNG differ diff --git a/docs/platform/images/external-system-register-sequence-diagram.PNG b/docs/platform/images/external-system-register-sequence-diagram.PNG new file mode 100644 index 0000000..08731aa Binary files /dev/null and b/docs/platform/images/external-system-register-sequence-diagram.PNG differ diff --git a/docs/platform/images/vim-register-progress.PNG b/docs/platform/images/vim-register-progress.PNG new file mode 100644 index 0000000..182e75d Binary files /dev/null and b/docs/platform/images/vim-register-progress.PNG differ diff --git a/docs/platform/index.rst b/docs/platform/index.rst new file mode 100644 index 0000000..3351195 --- /dev/null +++ b/docs/platform/index.rst @@ -0,0 +1,13 @@ +.. This work is licensed under a Creative Commons Attribution 4.0 International License. + +Platform +-------- + +ESR provide a way to register external system which not included in ONAP system, mainly inclouded VIM/VNFM/EMS/thirdparty SDNC. + +.. toctree:: + :maxdepth: 1 + + architecture.rst + consumedapis.rst + installation.rst diff --git a/docs/platform/installation.rst b/docs/platform/installation.rst new file mode 100644 index 0000000..687f19c --- /dev/null +++ b/docs/platform/installation.rst @@ -0,0 +1,91 @@ +.. This work is licensed under a Creative Commons Attribution 4.0 International License. + + +Installation +------------ + +Install docker +^^^^^^^^^^^^^^^^^^^^^^^ + +sudo apt-add-repository 'deb https://apt.dockerproject.org/repo ubuntu-xenial main' + +sudo apt-key adv --keyserver hkp://p80.pool.sks-keyservers.net:80 --recv-keys 58118E89F3A912897C070ADBF76221572C52609D + +sudo apt-get update + +apt-cache policy docker-engine + +sudo apt-get install -y docker-engine + +docker ps + +Run esr-server docker +^^^^^^^^^^^^^^^^^^^^^^^ + +Login the ONAP docker registry first: sudo docker login -u docker -p docker nexus3.onap.org:10001 + +sudo docker run -p 9518:9518 -d --net=host --name esr-server -e MSB_ADDR=${MSB_SERVER_IP}:80 nexus3.onap.org:10001/onap/aai/esr-server + +Run esr-gui docker +^^^^^^^^^^^^^^^^^^^^^^^ + +sudo docker run -p 9519:8080 -d --net=host --name esr-gui nexus3.onap.org:10001/onap/aai/esr-gui + +Check status of ESR +^^^^^^^^^^^^^^^^^^^^^^^ + +Test whether esr-server is runing: + +GET http://ESR_SERVICE_IP:9518/api/aai-esr-server/v1/test + +The returned status should be 200. + +Visit ESR portal: + +http://ESR_SERVER_IP:9519/esr-gui/extsys/vnfm/vnfmView.html + +http://ESR_SERVER_IP:9519/esr-gui/extsys/sdncontroller/sdncView.html + +http://ESR_SERVER_IP:9519/esr-gui/extsys/vim/vimView.html + +http://ESR_SERVER_IP:9519/esr-gui/extsys/ems/emsView.html + +A&AI register to MSB +^^^^^^^^^^^^^^^^^^^^^^^ + +NOTE: The way bellow is register to MSB by hand, it is a temporary method. Later it will be registered automatic by MSB. + +curl -X POST -H "Content-Type: application/json" -d '{"serviceName": "aai-cloudInfrastructure", "version": "v11", "url": "/aai/v11/cloud-infrastructure","protocol": "REST", "enable_ssl":"true", "visualRange":"1", "nodes": [ {"ip": "A&AI_SERVER_IP","port": "8443"}]}' "http://MSB_SERVER_IP:10081/api/microservices/v1/services" + +curl -X POST -H "Content-Type: application/json" -d '{"serviceName": "aai-externalSystem", "version": "v11", "url": "/aai/v11/external-system","protocol": "REST", "enable_ssl":"true", "visualRange":"1", "nodes": [ {"ip": "A&AI_SERVER_IP","port": "8443"}]}' "http://MSB_SERVER_IP:10081/api/microservices/v1/services" + +MultiCloud register to MSB +^^^^^^^^^^^^^^^^^^^^^^^ + +curl -X POST -H "Content-Type: application/json" -d '{"serviceName": "multicloud", "version": "v0", "url": "/api/multicloud/v0","protocol": "REST", "nodes": [ {"ip": "'$MultiCloud_IP'","port": "9001"}]}' "http://$MSB_SERVER_IP:10081/api/microservices/v1/services" + +curl -X POST -H "Content-Type: application/json" -d '{"serviceName": "multicloud-vio", "version": "v0", "url": "/api/multicloud-vio/v0","protocol": "REST", "nodes": [ {"ip": "'$MultiCloud_IP'","port": "9004"}]}' "http://$MSB_SERVER_IP:10081/api/microservices/v1/services" + +curl -X POST -H "Content-Type: application/json" -d '{"serviceName": "multicloud-ocata", "version": "v0", "url": "/api/multicloud-ocata/v0","protocol": "REST", "nodes": [ {"ip": "'$MultiCloud_IP'","port": "9006"}]}' "http://$MSB_SERVER_IP:10081/api/microservices/v1/services" + +curl -X POST -H "Content-Type: application/json" -d '{"serviceName": "multicloud-titanium_cloud", "version": "v0", "url": "/api/multicloud-titanium_cloud/v0","protocol": "REST", "nodes": [ {"ip": "'$MultiCloud_IP'","port": "9005"}]}' "http://$MSB_SERVER_IP:10081/api/microservices/v1/services" + +ESR register to MSB +^^^^^^^^^^^^^^^^^^^^^^^ + +curl -X POST -H "Content-Type: application/json" -d '{"serviceName": "aai-esr-server", "version": "v1", "url": "/api/aai-esr-server/v1","protocol": "REST", "visualRange":"1", "nodes": [ {"ip": "ESR_SERVER_IP","port": "9518"}]}' "http://MSB_SERVER_IP:10081/api/microservices/v1/services" + +curl -X POST -H "Content-Type: application/json" -d '{"serviceName": "aai-esr-gui", "url": "/esr-gui","protocol": "UI", "visualRange":"1", "path":"/iui/aai-esr-gui", "nodes": [ {"ip": "ESR_SERVER_IP","port": "9519"}]}' "http://MSB_SERVER_IP:10081/api/microservices/v1/services" + +ESR usage +^^^^^^^^^^^^^^^^^^^^^^^ + +Visit ESR portal to manage the external systems. + +http://MSB_SERVER_IP:80/iui/aai-esr-gui/extsys/vnfm/vnfmView.html + +http://MSB_SERVER_IP:80/iui/aai-esr-gui/extsys/sdncontroller/sdncView.html + +http://MSB_SERVER_IP:80/iui/aai-esr-gui/extsys/vim/vimView.html + +http://MSB_SERVER_IP:80/iui/aai-esr-gui/extsys/ems/emsView.html \ No newline at end of file diff --git a/docs/release-notes/bug-fixes.rst b/docs/release-notes/bug-fixes.rst new file mode 100644 index 0000000..45a8ace --- /dev/null +++ b/docs/release-notes/bug-fixes.rst @@ -0,0 +1,28 @@ +.. This work is licensed under a Creative Commons Attribution 4.0 International License. + +Bug Fixes +--------- +ONAP POLICY Framework items for: (Last Updated: 12/10/2017) + +* **Version**: Amsterdam Release +* **Release Date**: 02 November, 2017 +* **Description**: R1 + +Bug +^^^ + +* [AAI-146] - Both esr-server and esr-gui Jenkins failed +* [AAI-222] - the version property of esr-server is incorrect +* [AAI-224] - aai/esr-gui daily build failed +* [AAI-225] - aai/esr-server daily build failed +* [AAI-278] - AAI throws exception about mismatch keys adding esr-system-info to cloud-region +* [AAI-377] - esr-gui docker build failed +* [AAI-393] - The jjb defiend in a error way that cause CSIT build failed. +* [AAI-398] - If a cloud-region didn't contain a external system info, there will be an null pointer error +* [AAI-400] - Register ServiceTest to microservice +* [AAI-407] - There is an error to startup esr-gui docker +* [AAI-420] - Can not get the MSB address in esr-server +* [AAI-422] - The esr-server csit failed +* [AAI-424] - The integration catalog is not in use, should be removed +* [AAI-425] - Fix the artifact of esr-gui +* [AAI-426] - Fix the artifact of esr-server \ No newline at end of file diff --git a/docs/release-notes/index.rst b/docs/release-notes/index.rst new file mode 100644 index 0000000..0ca2ea8 --- /dev/null +++ b/docs/release-notes/index.rst @@ -0,0 +1,15 @@ +.. This work is licensed under a Creative Commons Attribution 4.0 International License. + +Release-notes +------------- + +ESR provide a way to register external system which not included in ONAP system, mainly inclouded VIM/VNFM/EMS/thirdparty SDNC. + +.. toctree:: + :maxdepth: 1 + + new-features.rst + bug-fixes.rst + upgrade-notes.rst + security-issues.rst + known-issues.rst diff --git a/docs/release-notes/known-issues.rst b/docs/release-notes/known-issues.rst new file mode 100644 index 0000000..f4341d7 --- /dev/null +++ b/docs/release-notes/known-issues.rst @@ -0,0 +1,4 @@ +.. This work is licensed under a Creative Commons Attribution 4.0 International License. + +Known Issues +------------ diff --git a/docs/release-notes/new-features.rst b/docs/release-notes/new-features.rst new file mode 100644 index 0000000..6109ccc --- /dev/null +++ b/docs/release-notes/new-features.rst @@ -0,0 +1,135 @@ +.. This work is licensed under a Creative Commons Attribution 4.0 International License. + +New Features +------------ + +ONAP AAI-ESR items for: (Last Updated: 10/12/2017) + +* **Version**: Amsterdam Release +* **Release Date**: 02 November, 2017 +* **Description**: R1 + +Story +^^^^^ + +* [AAI-64] - Move the seed code from Open-O to ONAP +* [AAI-65] - Realize the EMS register portal +* [AAI-66] - Change mysql data store backend to AAI +* [AAI-77] - Update POM to inherit from oparent +* [AAI-187] - Add docker build function for esr-server +* [AAI-188] - Add docker build function for esr-gui +* [AAI-204] - Add EMS/VNFM/SDNC register schema to A&AI +* [AAI-282] - Fix the critical sonar issue about esr-server +* [AAI-284] - Realize the data transaction between ESR rest and A&AI API +* [AAI-303] - Realize the VNFM management API +* [AAI-304] - Realize the EMS management API +* [AAI-305] - Realize the Thirdparty SDNC management API +* [AAI-330] - Add CSIT usecase for esr-server +* [AAI-331] - Add UNIT test for esr-server +* [AAI-345] - Integrate esr-server with esr-gui +* [AAI-378] - Add the document files for ESR +* [AAI-427] - Add document details for ESR + +Task +^^^^ + +* [AAI-67] - Upload the server-end seed code to ONAP repostory +* [AAI-68] - Upload the ESR gui seed code to ONAP repository +* [AAI-69] - Remove the original SDNC related function from Amsterdan release. +* [AAI-70] - Collect the schema of ESR for ONAP in Amsterdam release +* [AAI-137] - Setup A&AI Developer Environment +* [AAI-138] - Add CI task for ESR +* [AAI-143] - Remove the openo tag from esr-gui +* [AAI-144] - remove the openo tag from esr-server repository +* [AAI-145] - Fix the license of esr-server according to the ONAP license rule +* [AAI-166] - Add auth-info node for cloud-region to support VoLTE +* [AAI-181] - Add verification for the input data of SDNC portal +* [AAI-184] - Modify the VIM register card and property name +* [AAI-185] - Change the way of input cloud-region and version +* [AAI-186] - Add check function for cloud-owner and cloud-region-id +* [AAI-234] - Remove the lombok dependency +* [AAI-235] - remove the mysql-connector-java dependency +* [AAI-240] - Modify the properties of ESR rest API +* [AAI-243] - Define the REST API of EMS according to the new data model +* [AAI-250] - Define the Rest API of thirdparty sdnc according to the new data model +* [AAI-251] - Define the Rest API of VIM register according to the new data model +* [AAI-256] - Remove the database related code +* [AAI-261] - Add the API definition of A&AI to esr +* [AAI-262] - clean the esr-server parent pom +* [AAI-263] - Define the A&AI VIM register API in esr-server +* [AAI-269] - Simplify esr-server project level +* [AAI-275] - Add a switch for register to MSB by java-sdk +* [AAI-283] - Define the entities of external system. +* [AAI-285] - Realize the data transaction between ESR rest and A&AI API of VIM +* [AAI-286] - Realize the data transaction between ESR rest and A&AI API of VNFM +* [AAI-287] - Realize the data transaction between ESR rest and A&AI API of EMS +* [AAI-288] - Adjust the entity used in esr-server API +* [AAI-289] - There is some issue about external system schema +* [AAI-291] - Add tomcat as dependency of esr-gui +* [AAI-294] - Realize the data transaction between ESR rest and A&AI API of VNFM +* [AAI-299] - Fix the esr-server register to MSB issue +* [AAI-300] - Realize the function of register VIM and query VIM detail +* [AAI-301] - Realize the function of query VIM information list +* [AAI-302] - Realize update registered VIM +* [AAI-310] - Realize VNFM register API +* [AAI-311] - Realize the VNFM detail query API +* [AAI-312] - Realize the VNFM list query API +* [AAI-313] - Realize the VNFM delete API +* [AAI-314] - Realize the update VNFM API +* [AAI-315] - Realize register thirdparty sdnc API +* [AAI-316] - Realize query thirdparty SDNC detail API +* [AAI-317] - Realize query thirdparty SDNC list API +* [AAI-318] - Realize update thirdparty SDNC API +* [AAI-319] - Realize delete thirdparty SDNC API +* [AAI-320] - Realize EMS register API +* [AAI-321] - Realize query EMS details API +* [AAI-322] - Realize query all EMS details API +* [AAI-323] - Realize update EMS API +* [AAI-324] - Realize delete EMS API +* [AAI-332] - Fix the data structure of vim register data in esr-server +* [AAI-333] - Fix the issue "Can not add esr portal file to tomcat" +* [AAI-334] - Add VIM status to VIM management +* [AAI-335] - Add a testcase to test whether the service is reachable. +* [AAI-336] - Add the setup service CSIT test case +* [AAI-337] - Add jjb to add the esr-server CSIT task +* [AAI-340] - Add unit test function for ExtsysApp class +* [AAI-341] - Add unit test for cloudRegion bean class +* [AAI-343] - Add unit test for ems bean class +* [AAI-344] - Add unit test for esr system info bean +* [AAI-346] - Call the VIM API from esr-server +* [AAI-347] - Integrate esr-gui with server end for EMS +* [AAI-348] - Integrate esr-gui with server end for VNFM +* [AAI-349] - Integrate esr-gui with server end for thirdparty SDNC +* [AAI-350] - Add unit test for thirdparty sdnc bean +* [AAI-351] - Add unit test for vnfm bean class +* [AAI-352] - Add unit test for vnfm register info +* [AAI-353] - Add unit test for ems register info +* [AAI-354] - Add unit test for vim register info +* [AAI-355] - Add unit test for thirdparty sdnc register info +* [AAI-358] - Change util method from static to unstatic +* [AAI-359] - Fix the return data of del and query list API +* [AAI-360] - Realize delete vim API +* [AAI-361] - Update VIM after register finishied. +* [AAI-362] - Clean the Config files +* [AAI-363] - Add unit test for app configuration +* [AAI-365] - change the objectToString method to un-static +* [AAI-366] - Add unit test for ExtsysUtil +* [AAI-367] - Add unit test case for EmsManagerUtil +* [AAI-368] - Add unit test case for SDNC register util +* [AAI-369] - Fix the VNFM register issue +* [AAI-370] - Change the static method in VIM to un-static +* [AAI-371] - Change the exception deal way for VIM register +* [AAI-375] - Add unit test case for VIM register utils +* [AAI-376] - Add unit test for vnfm register utils +* [AAI-379] - Add the document files for esr-server +* [AAI-385] - Add document files for esr-gui +* [AAI-391] - The esr related file should be packed in one category. +* [AAI-392] - Fix the parameter name of external system register in portal +* [AAI-399] - Add csit usecase for external system vnfm +* [AAI-402] - Remove the unused thirdparty code +* [AAI-404] - add csit uscase for thirdparty sdnc operation +* [AAI-405] - Add csit usecase for external system ems +* [AAI-406] - add csit usecase for external system (VIM) +* [AAI-421] - Add esr vm init script in demo project +* [AAI-429] - Increase Junit coverage +* [AAI-430] - Add swagger.json to main/resources \ No newline at end of file diff --git a/docs/release-notes/security-issues.rst b/docs/release-notes/security-issues.rst new file mode 100644 index 0000000..3a6cd9e --- /dev/null +++ b/docs/release-notes/security-issues.rst @@ -0,0 +1,4 @@ +.. This work is licensed under a Creative Commons Attribution 4.0 International License. + +Security Issues +--------------- diff --git a/docs/release-notes/upgrade-notes.rst b/docs/release-notes/upgrade-notes.rst new file mode 100644 index 0000000..29e67e5 --- /dev/null +++ b/docs/release-notes/upgrade-notes.rst @@ -0,0 +1,4 @@ +.. This work is licensed under a Creative Commons Attribution 4.0 International License. + +Upgrade Notes +------------- -- cgit 1.2.3-korg