Spirent CloudSure Automation Guide
Spirent Communications
Spirent CloudSure Automation Guide
v1.11.0
Spirent CloudSure Automation Guide
Table of Contents
Getting Started ............................................................................................................3 1. AION Authentication ...........................................................................................3 2. Find a solution......................................................................................................5 3. Create a project ....................................................................................................7 4. Add test cases to the project.................................................................................9 5. Configure test cases............................................................................................10 6. Run the project ...................................................................................................15 7. Analyze results ...................................................................................................21 8. Clean up results ..................................................................................................22 Import a test package ................................................................................................23 API reference ............................................................................................................24 Example scripts .........................................................................................................24 Spirent Support .........................................................................................................25
2
Spirent CloudSure Automation Guide
Getting Started
Spirent CloudSure is a test solution framework for benchmarking and validating NFV ecosystems, ultimately assuring your cloud investment. This manual will guide you through the steps of finding the right solution and executing tests using the CloudSure REST API.
1. AION Authentication
The AION API supports obtaining an authorization token via OAuth 2.0. The endpoint to obtain the bearer token requires a scope parameter which is the user's organization ID.
The organization ID can be obtained as follows:
Request:
curl -k -X GET \
Python example:
import requests
my_aion_cluster_url = ""
r = requests.get(f"{my_aion_cluster_url}/api/iam/organizations/default") organization_id = r.json()["id"]
Response (example):
[ { "id": "7fab9b0208aa456b92b7a88db774649d", "serial": 2, "name": "Spirent", "domains": [ "" ], "subdomain": "spirent", "locked": false, "email_enabled": true, "self_onboard": true, "default_workspace": { "id": "7fab9b0208aa456b92b7a88db774649d", "name": "Spirent", "description": "Organization's initial project" } }
]
3
Spirent CloudSure Automation Guide
The "id" property is used for the scope parameter in the following API call to obtain a bearer token.
Request:
curl -k -X POST \ -H "Accept:application/json" --data-urlencode "grant_type=password" \ --data-urlencode "username=my_email_addr" \ --data-urlencode "password=my_password" \ --data-urlencode "scope=my_org_id" \
Python example:
import requests
my_aion_cluster_url = "" username = "my_email_addr" password = "my_password" organization_id = "my_org_id"
r = requests.post( url=f"{my_aion_cluster_url}/api/iam/oauth2/token", json={ "grant_type": "password", "username": username, "password": password, "scope": organization_id, },
) access_token = r.json()["access_token"]
Response:
{ "access_token":
"eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsIng1dCI6IllUWmpPR0prWTJGak16TmpZVE01WlRoa VlXWmlOR1V5Wm1ZME1qWXpPRFpsT0RkbU1XWTVOV1ZpTjJGbFlXWTBPVGd3TlRkaE56TTFOREUwTUR Gak5nPT0ifQ.eyJjb25zIjoidXJuOmM0OTYzOGE2MjUzNzRiOTVhMjU0ZDQyZGRhMDZhZDBiOndvcm tzcGFjZTpjNDk2MzhhNjI1Mzc0Yjk1YTI1NGQ0MmRkYTA2YWQwYiIsImV4cCI6MTQ5Njk2OTQ5Mywi aXNzIjoidXJuOnJvb3Q6c2VydmljZTpvcmlvbi1pYW0iLCJuYmYiOjE0OTY4ODI3OTMsInN1YiI6In VybjpjNDk2MzhhNjI1Mzc0Yjk1YTI1NGQ0MmRkYTA2YWQwYjp1c2VyOjg5ZmI2ZDZiMDM3ZTQ2NzJh NWZjNmJiYzUxN2MwMTY1IiwidHlwIjoiYWNjZXNzIn0.qtrwaExQAauw5cWTfY40dU6o5TlhGQnY18 2v0Ji4Ll4SW6AL5WTMR93te82iEYWNuh6SR2E5ADYj7kfa4n7mhlFNuMyv1_Jf3SF5raFhGrCzcxdX 9V9E17-ZWEaNGeb1yU2r-bstqFqvdOQI4rgzohIzjVvCnvU5TT5fLxaNrNzSXN2qILmcI2hBc41NS1kDEHDGtTslIUcBmmnHh7v0 FpIz5THc8d94XH2omFs784kls2JIqOhoqe2UUi_WVVbVKZGa01W9oNpkfFZJZTqVt2MrKExMxOW1X23GhW705ZpoYbXnXbBfya4U145rjk4wjUaWMj9zhAygXbg6MEtw",
"token_type": "urn:ietf:params:oauth:token-type:access_token", "expires_in": 86400, "refresh_token": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsIng1dCI6IllUWmpPR0prWTJGak16TmpZVE01WlRoa VlXWmlOR1V5Wm1ZME1qWXpPRFpsT0RkbU1XWTVOV1ZpTjJGbFlXWTBPVGd3TlRkaE56TTFOREUwTUR Gak5nPT0ifQ.eyJjb25zIjoidXJuOmM0OTYzOGE2MjUzNzRiOTVhMjU0ZDQyZGRhMDZhZDBiOndvcm tzcGFjZTpjNDk2MzhhNjI1Mzc0Yjk1YTI1NGQ0MmRkYTA2YWQwYiIsImV4cCI6MTQ5NzQ4Nzg5Mywi aXNzIjoidXJuOnJvb3Q6c2VydmljZTpvcmlvbi1pYW0iLCJuYmYiOjE0OTY4ODI3OTMsInN1YiI6In VybjpjNDk2MzhhNjI1Mzc0Yjk1YTI1NGQ0MmRkYTA2YWQwYjp1c2VyOjg5ZmI2ZDZiMDM3ZTQ2NzJh
4
Spirent CloudSure Automation Guide
NWZjNmJiYzUxN2MwMTY1IiwidHlwIjoicmVmcmVzaCJ9.MnFQxEO3d0sP0UL5yjX-3GnNBs97mUQ5ZNE-sQ-TrmXnEQS59Ipm6nlKW709IHzy1K2d9LaWSvOixfcTbHsnCUQ2NeF0flJqnPCich5gRM4H8Gse9x4smaYRR6BIP7C21OlxjnrJEIh8ZlRXa3c7xUvAZEbh9ivzoaK8y9umupO6e9hkZzflUt_sukRQnvjRav4WSTAuws qw8LeJL7A8b0OEWOFfneg5vjhbtEzJdYHPiDoMnDG0U_l_lzLL9EUjJgdohz4rMPBQZkH163vIihET2iksSsiYbmKvYz_Nhe80qf9W1151CHB8f_TUtgfWgU7ZIuq9U9-3M2upg",
"scope": "7fab9b0208aa456b92b7a88db774649d" }
The access token will be used in an Authorization header in subsequent calls to the API.
The following is an example of the Authorization header value passed to the "-H" cURL option using the access_token value from the response above. Note the inclusion of "Bearer" before the token value in the header content.
"Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsIng1dCI6IllUWmpPR0prWTJGak16TmpZVE01WlRoaV lXWmlOR1V5Wm1ZME1qWXpPRFpsT0RkbU1XWTVOV1ZpTjJGbFlXWTBPVGd3TlRkaE56TTFOREUwTURG ak5nPT0ifQ.eyJjb25zIjoidXJuOmM0OTYzOGE2MjUzNzRiOTVhMjU0ZDQyZGRhMDZhZDBiOndvcmt zcGFjZTpjNDk2MzhhNjI1Mzc0Yjk1YTI1NGQ0MmRkYTA2YWQwYiIsImV4cCI6MTQ5Njk2OTQ5Mywia XNzIjoidXJuOnJvb3Q6c2VydmljZTpvcmlvbi1pYW0iLCJuYmYiOjE0OTY4ODI3OTMsInN1YiI6InV ybjpjNDk2MzhhNjI1Mzc0Yjk1YTI1NGQ0MmRkYTA2YWQwYjp1c2VyOjg5ZmI2ZDZiMDM3ZTQ2NzJhN WZjNmJiYzUxN2MwMTY1IiwidHlwIjoiYWNjZXNzIn0.qtrwaExQAauw5cWTfY40dU6o5TlhGQnY182 v0Ji4Ll4SW6AL5WTMR93te82iEYWNuh6SR2E5ADYj7kfa4n7mhlFNuMyv1_Jf3SF5raFhGrCzcxdX9 V9E17-ZWEaNGeb1yU2r-bstqFqvdOQI4rgzohIzjVvCnvU5TT5fLxaNrNzSXN2qILmcI2hBc41NS1kDEHDGtTslIUcBmmnHh7v0 FpIz5THc8d94XH2omFs784kls2JIqOhoqe2UUi_WVVbVKZGa01W9oNpkfFZJZTqVt2MrKExMxOW1X23GhW705ZpoYbXnXbBfya4U145rjk4wjUaWMj9zhAygXbg6MEtw"
For python examples it should be assigned to variable without any prefix:
access_token = "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCIsIng1dCI6IllUWmpPR0prWTJGak16TmpZVE01WlRoa VlXWmlOR1V5Wm1ZME1qWXpPRFpsT0RkbU1XWTVOV1ZpTjJGbFlXWTBPVGd3TlRkaE56TTFOREUwTUR Gak5nPT0ifQ.eyJjb25zIjoidXJuOmM0OTYzOGE2MjUzNzRiOTVhMjU0ZDQyZGRhMDZhZDBiOndvcm tzcGFjZTpjNDk2MzhhNjI1Mzc0Yjk1YTI1NGQ0MmRkYTA2YWQwYiIsImV4cCI6MTQ5Njk2OTQ5Mywi aXNzIjoidXJuOnJvb3Q6c2VydmljZTpvcmlvbi1pYW0iLCJuYmYiOjE0OTY4ODI3OTMsInN1YiI6In VybjpjNDk2MzhhNjI1Mzc0Yjk1YTI1NGQ0MmRkYTA2YWQwYjp1c2VyOjg5ZmI2ZDZiMDM3ZTQ2NzJh NWZjNmJiYzUxN2MwMTY1IiwidHlwIjoiYWNjZXNzIn0.qtrwaExQAauw5cWTfY40dU6o5TlhGQnY18 2v0Ji4Ll4SW6AL5WTMR93te82iEYWNuh6SR2E5ADYj7kfa4n7mhlFNuMyv1_Jf3SF5raFhGrCzcxdX 9V9E17-ZWEaNGeb1yU2r-bstqFqvdOQI4rgzohIzjVvCnvU5TT5fLxaNrNzSXN2qILmcI2hBc41NS1kDEHDGtTslIUcBmmnHh7v0 FpIz5THc8d94XH2omFs784kls2JIqOhoqe2UUi_WVVbVKZGa01W9oNpkfFZJZTqVt2MrKExMxOW1X23GhW705ZpoYbXnXbBfya4U145rjk4wjUaWMj9zhAygXbg6MEtw"
2. Find a solution
CloudSure provides a variety of solutions that are aimed at benchmarking and validating various components of the NFV ecosystem. Solutions are delivered in the form of test packages where each test package focuses on an NFV component (e.g., NFVI or MANO). Each test package consists of one or more test case templates that are meant to benchmark and validate specific aspects of that NFV component (e.g., Cross NUMA network bandwidth and latency).
5
................
................
In order to avoid copyright disputes, this page is only a partial summary.
To fulfill the demand for quickly locating and searching documents.
It is intelligent file search solution for home and business.
Related searches
- cross company automation group
- cross automation greensboro nc
- cross automation belmont nc
- cross automation nc
- cross automation charlotte
- cross automation belmont
- marketing automation platform
- marketing automation software for small business
- what is marketing automation software
- free marketing automation platform
- automation test strategy document
- cross automation gastonia