+++ /dev/null
-.. This work is licensed under a Creative Commons Attribution 4.0
-.. International License. http://creativecommons.org/licenses/by/4.0
-.. Copyright 2017 AT&T Intellectual Property. All rights reserved.
-.. _docs_postman:
-.. _postman-guides:
-
-Test ONAP API with Postman
-==========================
-
-Postman
--------
-
-Postman is a tool that allows a user to run REST API.
-
-The user defines the API requests and has the possibility to group them
-in files called a "Collections".
-
-The user can then run each individual API request or run a complete collection.
-
-Postman includes the possibility to define "environment" variables.
-
-An API request can then get or set a value from/to that "environment" variable.
-
-Get and install Postman tool on your own machine (Linux/windows).
-
-Postman is available here: https://www.getpostman.com/
-
-
-ONAP Postman collections
-------------------------
-
-ONAP Integration project provides several Postman collections with two
-environment files.
-
-Those Postman Collections will allow a Developer to experiment various ONAP API
-on various ONAP components (SDC, NBI, SO, AAI, SDNC)
-
-- declare a vendor
-- declare a VSP
-- upload a package
-- declare a VF based on the VSP
-- declare a Service composed of the VF and a Virtual Link
-- distribute all those informations
-- declare a customer, a service subscription
-- declare OwningEntity, Platform...
-- declare a Complex, Cloud Region, Tenant
-- associate customer/service/tenant
-- declare a service instance via a serviceOrder
-- declare a vnf
-- declare a vf-module
-- declare a network
-
-A collection is also provided to delete objects
-(reminder: it is not possible to delete object in SDC)
-
-They have been tested with Onap ElAlto (they are not all compatible with
-Dublin, and there is not guaranty about ONAP "master" as API definition
-can change)
-
-
-Download ONAP Postman collections
----------------------------------
-
-From your machine, git clone the ONAP Integration project.
-
-::
-
- git clone "https://gerrit.onap.org/r/integration"
-
-
-Import ONAP Postman collections
--------------------------------
-
-ONAP Postman collection are in the repository integration/test/postman
-
-Launch Postman tool
-
-import all ONAP Collections into Postman
-
-.. figure:: files/postman/import.png
- :align: center
-
-And you should see all the collections into Postman
-
-.. figure:: files/postman/collections.png
- :align: center
-
-Each collection is made of several API operations
-
-.. figure:: files/postman/collection-detail.png
- :align: center
-
-
-Running ONAP Postman collections
---------------------------------
-
-Running all those collections, in the order, from 1 to 10 will create a lot of
-objects in ONAP components :
-
-- SDC : vendor, VSP, zip file upload, VF from VSP, Service, add VF to Service
-- VID : OwningEntity, LineOfBusiness, Project, Platform
-- AAI : customer, subscription, cloud region, tenant
-- NBI : serviceOrder to add a service instance, serviceOrder to delete
- a service instance
-
-The order is very important because a lot of API requests will need the API
-response from the previous operation to get and set some variable values.
-
-.. figure:: files/postman/collection-detail-test.png
- :align: center
-
-It is possible to run the complete collection using Postman
-
-.. figure:: files/postman/run.png
- :align: center
-
-You need, a zip file that contains Heat files for a VNF.
-
-Collection 3 is about uploading that file into ONAP SDC.
-
-.. figure:: files/postman/zipfile.png
- :align: center
-
-Before running those collections, once in Postman, you need to have a look
-at "globals" environment parameters.
-
-.. figure:: files/postman/globals.png
- :align: center
-
-All variables that begin by "auto" must NOT be changed (they will be modified
-using API response).
-
-All other variables must be adapted to your needs.
-
-In particular, you need to put your own values for cloud_region_id, tenant_name
-and tenant_id to fit with the place where you will instantiate the VNF.
-
-
-::
-
- service:freeradius
- vf_name:integration_test_VF_freeradius
- vsp_name:integration_test_VSP
- vendor_name:onap_integration_vendor
- owning_entity:integration_test_OE
- platform:integration_test_platform
- project:integration_test_project
- lineofbusiness:integration_test_LOB
- customer_name:generic
- cloud_owner_name:OPNFV
- cloud_region_id:RegionOne
- tenant_name:openlab-vnfs
- tenant_id:234a9a2dc4b643be9812915b214cdbbb
- externalId:integration_test_BSS-order-001
- service_instance_name:integration_test_freeradius_instance_001
-
-
-Using Newman
-------------
-
-Newman is a tool that allow to run postman collections via command-line
-
-On a linux server, with Docker installed on it, run those lines:
-
-::
-
- git clone https://gitlab.com/Orange-OpenSource/lfn/onap/onap-tests.git
- cd onap-tests/postman
- sudo apt-get -y install zip
- USECASE=$'ubuntu16'
- zip -j $USECASE.zip ../onap_tests/templates/heat_files/$USECASE/*
- TAB=$'\t\t\t\t\t\t\t'
- sed -i -e "s/.*src.*/$TAB\"src\": \"$USECASE.zip\"/" 03_Onboard_VSP_part2.postman_collection.json
- docker pull postman/newman:alpine
- docker run --network="host" --volume="/home/debian/rene/onap-tests/postman:/etc/newman" postman/newman:alpine run 01_Onboard_Vendor.postman_collection.json --environment integration_test_urls.postman_environment.json --globals globals.postman_globals.json --export-environment integration_test_urls.postman_environment.json --reporters cli,json --reporter-cli-no-assertions --reporter-cli-no-console
- docker run --network="host" --volume="/home/debian/rene/onap-tests/postman:/etc/newman" postman/newman:alpine run 02_Onboard_VSP_part1.postman_collection.json --environment integration_test_urls.postman_environment.json --globals globals.postman_globals.json --export-environment integration_test_urls.postman_environment.json
- docker run --network="host" --volume="/home/debian/rene/onap-tests/postman:/etc/newman" postman/newman:alpine run 03_Onboard_VSP_part2.postman_collection.json --environment integration_test_urls.postman_environment.json --globals globals.postman_globals.json --export-environment integration_test_urls.postman_environment.json
- docker run --network="host" --volume="/home/debian/rene/onap-tests/postman:/etc/newman" postman/newman:alpine run 04_Onboard_VSP_part3.postman_collection.json --environment integration_test_urls.postman_environment.json --globals globals.postman_globals.json --export-environment integration_test_urls.postman_environment.json
- docker run --network="host" --volume="/home/debian/rene/onap-tests/postman:/etc/newman" postman/newman:alpine run 05_Onboard_VF.postman_collection.json --environment integration_test_urls.postman_environment.json --globals globals.postman_globals.json --export-environment integration_test_urls.postman_environment.json
- docker run --network="host" --volume="/home/debian/rene/onap-tests/postman:/etc/newman" postman/newman:alpine run 06_Onboard_Service.postman_collection.json --environment integration_test_urls.postman_environment.json --globals globals.postman_globals.json --export-environment integration_test_urls.postman_environment.json
- docker run --network="host" --volume="/home/debian/rene/onap-tests/postman:/etc/newman" postman/newman:alpine run 07_Declare_owningEntity_LineOfBusiness_project_platform.postman_collection.json --environment integration_test_urls.postman_environment.json --globals globals.postman_globals.json --export-environment integration_test_urls.postman_environment.json
- docker run --network="host" --volume="/home/debian/rene/onap-tests/postman:/etc/newman" postman/newman:alpine run 08_Declare_Customer_Service_Subscription_Cloud.postman_collection.json --insecure --environment integration_test_urls.postman_environment.json --globals globals.postman_globals.json --export-environment integration_test_urls.postman_environment.json
- docker run --network="host" --volume="/home/debian/rene/onap-tests/postman:/etc/newman" postman/newman:alpine run 10_instantiate_service_vnf_vfmodule.postman_collection.json --environment integration_test_urls.postman_environment.json --globals globals.postman_globals.json --export-environment integration_test_urls.postman_environment.json --reporters cli,json --reporter-cli-no-assertions --reporter-cli-no-console
-
-All collections are processed, then you can see results and you will
-also obtain result json files in the onap-tests/postman/newman directory
-
-Of course you can adapt globals variables in globals.postman_globals.json
-or change the USECASE=$'ubuntu16' value to onboard any heat template located
-in onap_tests/templates/heat_files directory
This is done by repeated running tests against an ONAP instance for a period of
72 hours.
-The 72 hour stability run result was **PASS**.
+::
+
+ **The 72 hour stability run result was PASS**
-The onboard and instantiate tests ran for over 115 hours before environment
+The onboard and instantiate tests ran for over **115 hours** before environment
issues stopped the test. There were errors due to both tooling and environment
errors.
-The overall memory utilization only grew about 2% on the work nodes despite
+The overall memory utilization only grew about **2%** on the work nodes despite
the environment issues. Interestingly the kubernetes ochestration node memory
grew more which could mean we are over driving the API's in some fashion.
The path for robot logs on dockerdata-nfs changed in Frankfurt so the
/dev-robot/ becomes /dev/robot
-The stability tests used robot container image **1.6.1-STAGING-20200519T201214Z**.
-
-robot container updates: API_TYPE was set to GRA_API since we have deprecated
-VNF_API.
+.. note::
+ For Frankfurt release, the stability test has been executed on an
+ kubernetes infrastructure based on El Alto recommendations. The kubernetes
+ version was 1.15.3 (frankfurt 1.15.11) and the helm version was 2.14.2
+ (frankfurt 2.16.6). However the ONAP dockers were updated to Frankfurt RC2
+ candidate versions. The results are informative and can be compared with
+ previous campaigns. The stability tests used robot container image
+ **1.6.1-STAGING-20200519T201214Z**. Robot container was patched to use GRA_API
+ since VNF_API has been deprecated.
Shakedown consists of creating some temporary tags for stability72hrvLB,
stability72hrvVG,stability72hrVFWCL to make sure each sub test ran successfully