blob: b77b115737287cf2f88632e6209d5a97a53c34a8 [file] [log] [blame]
..
This work is licensed under a Creative Commons Attribution 4.0
International License.
==========================
ONAP MultiCloud Test Guide
==========================
Test Examples
~~~~~~~~~~~~~
The env HOST_IP is msb-iag service cluster-ip value is "10.43.188.78"(see it
above).
The vimid is "vmware_vio" the registered name in aai.
Get V2 auth token
-----------------
# VIO openstack support keystone V2 version, vio proxy-plugin will check the
request body format, if request body format
# is keystone V2 format will access keystone V2 service, if not it will access
keystone V3 service.
# this example show how to access keystone V2 service.
.. code-block:: console
$ curl -X POST -d @testV2.json -H 'Content-Type:application/json' http://$msb_address/api/multicloud/v0/<vimid>/identity/v2.0/tokens
testV2.json content:
::
{
"auth": {
"tenantName": "admin",
"passwordCredentials": {
"username": "admin",
"password": "vmware"
}
}
}
Response:
There are a large amounts of data including service endpoint, user information,
etc.
For our testing We take nova and identity service endpoint address and auth
token which is in response header named X-Subject-Token”.
# you can find the endpoint url namespace is "api/multicloiud-vio/v0", it
represent the multicloud-vio service, So
requests sending to mulitcloud-vio will be forwarded to backend VIO openstack.
Identity endpoint::
http://$msb_address/api/multicloud-vio/v0/<vimid>/identity
Nova endpoint::
http://$msb_address/api/multicloud-vio/v0/<vimid>/nova/<user-tenantid>
Get V3 auth token
-----------------
# send request to multicloud-framework(broker) service to get token
.. code-block:: console
$ curl -X POST -d @test.json -H 'Content-Type:application/json' http://$msb_address/api/multicloud/v0/<vimid>/identity/v3/auth/tokens
test.json content example:
::
{
"auth": sudo pip install virtualenv{
"scope": {"project": {"id": “<project-id>”}},
"identity":
{
"password": {"user": {"domain": {"name": “<doman-name>”}, "password": “<user-password>”, "name": “<user-name>”}}, "methods": ["password"]
}
}
}
Response:
There are a large amounts of data including service endpoint, user information,
etc.
For our testing We take nova and identity service endpoint address and auth
token which is in response header named X-Subject-Token”.
# you can find the endpoint url namespace is "api/multicloiud-vio/v0", it
represent the multicloud-vio service, So
requests sending to mulitcloud-vio will be forwarded to backend VIO openstack.
Identity endpoint::
http://$msb_address/api/multicloud-vio/v0/<vimid>/identity
Nova endpoint::
http://$msb_address/api/multicloud-vio/v0/<vimid>/nova/<user-tenantid>
List projects
-------------
Use identitys endpoint: http://$msb_address/api/multicloud-vio/v0/<vimid>/identity/
.. code-block:: console
$ curl -X GET -H 'X-Auth-Token:<token>' http://$msb_address/api/multicloud-vio/v0/<vimid>/identity/projects
Get os Hypervisor
-----------------
Use novas endpoint: http://$msb_address/api/multicloud-vio/v0/<vimid>/nova/<user-tenantid>
.. code-block:: console
$ curl -X GET -H 'X-Auth-Token:<token>' http://$msb_address/api/multicloud-vio/v0/<vimid>/nova/<tenantid>/os-hypervisors/detail
List instance of users project
--------------------------------
.. code-block:: console
$ curl -X GET -H 'X-Auth-Token:<token>' http://$msb_address/api/multicloud-vio/v0/<vimid>/nova/<tenantid>/servers
Show instance detail
--------------------
you need to input <server-id> in url path.
.. code-block:: console
$ curl -X GET -H 'X-Auth-Token:<token>' http://$msb_address/api/multicloud-vio/v0/vimid/nova/tenantid/servers/<server-id>
Shutdown instance
-----------------
you need to input <server-id> in url path
.. code-block:: console
$ curl -X POST -d '{"os-stop":null}' -H 'X-Auth-Token:<token>' -H 'Content-Type:application/json' http://$msb_address/api/multicloud-vio/v0/<vimid>/nova/<tenantid>/servers/<server-id>/action
Start instance
--------------
you need to input <server-id> in url path
.. code-block:: console
$ curl -X POST -d '{"os-start":null}' -H 'X-Auth-Token:<token>' -H 'Content-Type:application/json' http://$msb_address/api/multicloud-vio/v0/<vimid>/nova/<tenantid>/servers/<server-id>/action
Suspend instance
----------------
you need to input <server-id> in url path
.. code-block:: console
$ curl -X POST -d '{"suspend":null}' -H 'X-Auth-Token:<token>' -H 'Content-Type:application/json' http://$msb_address/api/multicloud-vio/v0/<vimid>/nova/<tenantid>/servers/<server-id>/action
Resume instance
----------------
you need to input <server-id> in url path
.. code-block:: console
$ curl -X POST -d '{"resume":null}' -H 'X-Auth-Token:<token>' -H 'Content-Type:application/json' http://$msb_address/api/multicloud-vio/v0/<vimid>/nova/<tenantid>/servers/<server-id>/action
Pause instance
--------------
you need to input <server-id> in url path
.. code-block:: console
$ curl -X POST -d '{"pause":null}' -H 'X-Auth-Token:<token>' -H 'Content-Type:application/json' http://$msb_address/api/multicloud-vio/v0/<vimid>/nova/<tenantid>/servers/<server-id>/action
Unpasue instance
----------------
you need to input <server-id> in url path
.. code-block:: console
$ curl -X POST -d '{"unpause":null}' -H 'X-Auth-Token:<token> -H 'Content-Type:application/json' http://$msb_address/api/multicloud-vio/v0/<vimid>/nova/<tenantid>/servers/<server-id>/action
Reboot instance
---------------
you need to input <server-id> in url path
.. code-block:: console
$ curl -X POST -d '{"reboot":{"type":"HARD"}}' -H 'X-Auth-Token:<token> -H 'Content-Type:application/json' http://$msb_address/api/multicloud-vio/v0/<vimid>/nova/<tenantid>/servers/<server-id>/action
Upload Image Task
-----------------
create uploading image task by image url:
.. code-block:: console
$ curl -X POST -d '{"input": {"image_properties":
{"container_format": "bare", "name": "<image_name>"},
"import_from_format": "<disk_format>",
"import_from": "<image_url>"},
"type": "import"}'
-H 'X-Auth-Token:<token>' -H 'Content-Type:application/json' http://$msb_address/api/multicloud-vio/v0/<vimid>/glance/v2/tasks
get the taskid from response body,then query the task status by taskid.
.. code-block:: console
$ curl -X GET -H 'X-Auth-Token:<token>' http://$msb_address/api/multicloud-vio/v0/<vimid>/glance/v2/tasks/<taskid>
You can see the description and properties of task in response body,if 'status'
is success, it will show image_id in result block.
query the image status by image_id
.. code-block:: console
$ curl -X GET -H 'X-Auth-Token:<token>' http://$msb_address/api/multicloud-vio/v0/<vimid>/glance/v2/images/<image_id>