aboutsummaryrefslogtreecommitdiffstats
path: root/docs/testing/user/userguide/08-api.rst
diff options
context:
space:
mode:
authorEmma Foley <emma.l.foley@intel.com>2018-03-07 18:40:28 +0000
committerEmma Foley <emma.l.foley@intel.com>2018-04-03 08:15:50 +0000
commit3248682fcc789f95ff8246a8d1f208a6a3abd46d (patch)
tree09431d10ed8e3bd65be6b2e41e74ff8eb8dfd177 /docs/testing/user/userguide/08-api.rst
parentcff53001219021a0dd79f278ca3fdda0f26cf9f4 (diff)
[docs] Move user guide chapters to make room for new chapter.
* Increment the numbering on chapters * Fix some of the changes flagged by doc8 Change-Id: Ie03d165297671dfd50b9de339612cdc8bf00b988 Signed-off-by: Emma Foley <emma.l.foley@intel.com>
Diffstat (limited to 'docs/testing/user/userguide/08-api.rst')
-rw-r--r--docs/testing/user/userguide/08-api.rst746
1 files changed, 0 insertions, 746 deletions
diff --git a/docs/testing/user/userguide/08-api.rst b/docs/testing/user/userguide/08-api.rst
deleted file mode 100644
index 2206c2ac8..000000000
--- a/docs/testing/user/userguide/08-api.rst
+++ /dev/null
@@ -1,746 +0,0 @@
-.. This work is licensed under a Creative Commons Attribution 4.0 International
-.. License.
-.. http://creativecommons.org/licenses/by/4.0
-.. (c) OPNFV, Huawei Technologies Co.,Ltd and others.
-
-Yardstick Restful API
-======================
-
-
-Abstract
---------
-
-Yardstick support restful API since Danube.
-
-
-Available API
--------------
-
-/yardstick/env/action
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
-Description: This API is used to prepare Yardstick test environment. For Euphrates, it supports:
-
-1. Prepare yardstick test environment, including set external network environment variable, load Yardstick VM images and create flavors;
-2. Start an InfluxDB Docker container and config Yardstick output to InfluxDB;
-3. Start a Grafana Docker container and config it with the InfluxDB.
-
-Which API to call will depend on the parameters.
-
-
-Method: POST
-
-
-Prepare Yardstick test environment
-Example::
-
- {
- 'action': 'prepare_env'
- }
-
-This is an asynchronous API. You need to call /yardstick/asynctask API to get the task result.
-
-
-Start and config an InfluxDB docker container
-Example::
-
- {
- 'action': 'create_influxdb'
- }
-
-This is an asynchronous API. You need to call /yardstick/asynctask API to get the task result.
-
-
-Start and config a Grafana docker container
-Example::
-
- {
- 'action': 'create_grafana'
- }
-
-This is an asynchronous API. You need to call /yardstick/asynctask API to get the task result.
-
-
-/yardstick/asynctask
-^^^^^^^^^^^^^^^^^^^^
-
-Description: This API is used to get the status of asynchronous tasks
-
-
-Method: GET
-
-
-Get the status of asynchronous tasks
-Example::
-
- http://<SERVER IP>:<PORT>/yardstick/asynctask?task_id=3f3f5e03-972a-4847-a5f8-154f1b31db8c
-
-The returned status will be 0(running), 1(finished) and 2(failed).
-
-NOTE::
-
- <SERVER IP>: The ip of the host where you start your yardstick container
- <PORT>: The outside port of port mapping which set when you start start yardstick container
-
-
-/yardstick/testcases
-^^^^^^^^^^^^^^^^^^^^
-
-Description: This API is used to list all released Yardstick test cases.
-
-
-Method: GET
-
-
-Get a list of released test cases
-Example::
-
- http://<SERVER IP>:<PORT>/yardstick/testcases
-
-
-/yardstick/testcases/release/action
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
-Description: This API is used to run a Yardstick released test case.
-
-
-Method: POST
-
-
-Run a released test case
-Example::
-
- {
- 'action': 'run_test_case',
- 'args': {
- 'opts': {},
- 'testcase': 'opnfv_yardstick_tc002'
- }
- }
-
-This is an asynchronous API. You need to call /yardstick/results to get the result.
-
-
-/yardstick/testcases/samples/action
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
-Description: This API is used to run a Yardstick sample test case.
-
-
-Method: POST
-
-
-Run a sample test case
-Example::
-
- {
- 'action': 'run_test_case',
- 'args': {
- 'opts': {},
- 'testcase': 'ping'
- }
- }
-
-This is an asynchronous API. You need to call /yardstick/results to get the result.
-
-
-/yardstick/testcases/<testcase_name>/docs
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
-Description: This API is used to the documentation of a certain released test case.
-
-
-Method: GET
-
-
-Get the documentation of a certain test case
-Example::
-
- http://<SERVER IP>:<PORT>/yardstick/taskcases/opnfv_yardstick_tc002/docs
-
-
-/yardstick/testsuites/action
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
-Description: This API is used to run a Yardstick test suite.
-
-
-Method: POST
-
-
-Run a test suite
-Example::
-
- {
- 'action': 'run_test_suite',
- 'args': {
- 'opts': {},
- 'testsuite': 'opnfv_smoke'
- }
- }
-
-This is an asynchronous API. You need to call /yardstick/results to get the result.
-
-
-/yardstick/tasks/<task_id>/log
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
-Description: This API is used to get the real time log of test case execution.
-
-
-Method: GET
-
-
-Get real time of test case execution
-Example::
-
- http://<SERVER IP>:<PORT>/yardstick/tasks/14795be8-f144-4f54-81ce-43f4e3eab33f/log?index=0
-
-
-/yardstick/results
-^^^^^^^^^^^^^^^^^^
-
-Description: This API is used to get the test results of tasks. If you call /yardstick/testcases/samples/action API, it will return a task id. You can use the returned task id to get the results by using this API.
-
-
-Method: GET
-
-
-Get test results of one task
-Example::
-
- http://<SERVER IP>:<PORT>/yardstick/results?task_id=3f3f5e03-972a-4847-a5f8-154f1b31db8c
-
-This API will return a list of test case result
-
-
-/api/v2/yardstick/openrcs
-^^^^^^^^^^^^^^^^^^^^^^^^^
-
-Description: This API provides functionality of handling OpenStack credential file (openrc). For Euphrates, it supports:
-
-1. Upload an openrc file for an OpenStack environment;
-2. Update an openrc;
-3. Get openrc file information;
-4. Delete an openrc file.
-
-Which API to call will depend on the parameters.
-
-
-METHOD: POST
-
-
-Upload an openrc file for an OpenStack environment
-Example::
-
- {
- 'action': 'upload_openrc',
- 'args': {
- 'file': file,
- 'environment_id': environment_id
- }
- }
-
-
-METHOD: POST
-
-
-Update an openrc file
-Example::
-
- {
- 'action': 'update_openrc',
- 'args': {
- 'openrc': {
- "EXTERNAL_NETWORK": "ext-net",
- "OS_AUTH_URL": "http://192.168.23.51:5000/v3",
- "OS_IDENTITY_API_VERSION": "3",
- "OS_IMAGE_API_VERSION": "2",
- "OS_PASSWORD": "console",
- "OS_PROJECT_DOMAIN_NAME": "default",
- "OS_PROJECT_NAME": "admin",
- "OS_USERNAME": "admin",
- "OS_USER_DOMAIN_NAME": "default"
- },
- 'environment_id': environment_id
- }
- }
-
-
-/api/v2/yardstick/openrcs/<openrc_id>
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
-Description: This API provides functionality of handling OpenStack credential file (openrc). For Euphrates, it supports:
-
-1. Get openrc file information;
-2. Delete an openrc file.
-
-
-METHOD: GET
-
-Get openrc file information
-Example::
-
- http://<SERVER IP>:<PORT>/api/v2/yardstick/openrcs/5g6g3e02-155a-4847-a5f8-154f1b31db8c
-
-
-METHOD: DELETE
-
-
-Delete openrc file
-Example::
-
- http://<SERVER IP>:<PORT>/api/v2/yardstick/openrcs/5g6g3e02-155a-4847-a5f8-154f1b31db8c
-
-
-/api/v2/yardstick/pods
-^^^^^^^^^^^^^^^^^^^^^^
-
-Description: This API provides functionality of handling Yardstick pod file (pod.yaml). For Euphrates, it supports:
-
-1. Upload a pod file;
-
-Which API to call will depend on the parameters.
-
-
-METHOD: POST
-
-
-Upload a pod.yaml file
-Example::
-
- {
- 'action': 'upload_pod_file',
- 'args': {
- 'file': file,
- 'environment_id': environment_id
- }
- }
-
-
-/api/v2/yardstick/pods/<pod_id>
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
-Description: This API provides functionality of handling Yardstick pod file (pod.yaml). For Euphrates, it supports:
-
-1. Get pod file information;
-2. Delete an openrc file.
-
-METHOD: GET
-
-Get pod file information
-Example::
-
- http://<SERVER IP>:<PORT>/api/v2/yardstick/pods/5g6g3e02-155a-4847-a5f8-154f1b31db8c
-
-
-METHOD: DELETE
-
-Delete openrc file
-Example::
-
- http://<SERVER IP>:<PORT>/api/v2/yardstick/pods/5g6g3e02-155a-4847-a5f8-154f1b31db8c
-
-
-/api/v2/yardstick/images
-^^^^^^^^^^^^^^^^^^^^^^^^
-
-Description: This API is used to do some work related to Yardstick VM images. For Euphrates, it supports:
-
-1. Load Yardstick VM images;
-
-Which API to call will depend on the parameters.
-
-
-METHOD: POST
-
-
-Load VM images
-Example::
-
- {
- 'action': 'load_image',
- 'args': {
- 'name': 'yardstick-image'
- }
- }
-
-
-/api/v2/yardstick/images/<image_id>
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
-Description: This API is used to do some work related to Yardstick VM images. For Euphrates, it supports:
-
-1. Get image's information;
-2. Delete images
-
-METHOD: GET
-
-Get image information
-Example::
-
- http://<SERVER IP>:<PORT>/api/v2/yardstick/images/5g6g3e02-155a-4847-a5f8-154f1b31db8c
-
-
-METHOD: DELETE
-
-Delete images
-Example::
-
- http://<SERVER IP>:<PORT>/api/v2/yardstick/images/5g6g3e02-155a-4847-a5f8-154f1b31db8c
-
-
-/api/v2/yardstick/tasks
-^^^^^^^^^^^^^^^^^^^^^^^
-
-Description: This API is used to do some work related to yardstick tasks. For Euphrates, it supports:
-
-1. Create a Yardstick task;
-
-Which API to call will depend on the parameters.
-
-
-METHOD: POST
-
-
-Create a Yardstick task
-Example::
-
- {
- 'action': 'create_task',
- 'args': {
- 'name': 'task1',
- 'project_id': project_id
- }
- }
-
-
-/api/v2/yardstick/tasks/<task_id>
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
-Description: This API is used to do some work related to yardstick tasks. For Euphrates, it supports:
-
-1. Add a environment to a task
-2. Add a test case to a task;
-3. Add a test suite to a task;
-4. run a Yardstick task;
-5. Get a tasks' information;
-6. Delete a task.
-
-
-METHOD: PUT
-
-Add a environment to a task
-
-Example::
-
- {
- 'action': 'add_environment',
- 'args': {
- 'environment_id': 'e3cadbbb-0419-4fed-96f1-a232daa0422a'
- }
- }
-
-
-METHOD: PUT
-
-Add a test case to a task
-Example::
-
- {
- 'action': 'add_case',
- 'args': {
- 'case_name': 'opnfv_yardstick_tc002',
- 'case_content': case_content
- }
- }
-
-
-
-METHOD: PUT
-
-Add a test suite to a task
-Example::
-
- {
- 'action': 'add_suite',
- 'args': {
- 'suite_name': 'opnfv_smoke',
- 'suite_content': suite_content
- }
- }
-
-
-METHOD: PUT
-
-Run a task
-
-Example::
-
- {
- 'action': 'run'
- }
-
-
-
-METHOD: GET
-
-Get a task's information
-Example::
-
- http://<SERVER IP>:<PORT>/api/v2/yardstick/tasks/5g6g3e02-155a-4847-a5f8-154f1b31db8c
-
-
-METHOD: DELETE
-
-Delete a task
-
-Example::
- http://<SERVER IP>:<PORT>/api/v2/yardstick/tasks/5g6g3e02-155a-4847-a5f8-154f1b31db8c
-
-
-/api/v2/yardstick/testcases
-^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
-Description: This API is used to do some work related to yardstick testcases. For Euphrates, it supports:
-
-1. Upload a test case;
-2. Get all released test cases' information;
-
-Which API to call will depend on the parameters.
-
-
-METHOD: POST
-
-
-Upload a test case
-Example::
-
- {
- 'action': 'upload_case',
- 'args': {
- 'file': file
- }
- }
-
-
-METHOD: GET
-
-
-Get all released test cases' information
-Example::
-
- http://<SERVER IP>:<PORT>/api/v2/yardstick/testcases
-
-
-/api/v2/yardstick/testcases/<case_name>
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
-Description: This API is used to do some work related to yardstick testcases. For Euphrates, it supports:
-
-1. Get certain released test case's information;
-2. Delete a test case.
-
-METHOD: GET
-
-
-Get certain released test case's information
-Example::
-
- http://<SERVER IP>:<PORT>/api/v2/yardstick/testcases/opnfv_yardstick_tc002
-
-
-METHOD: DELETE
-
-
-Delete a certain test case
-Example::
- http://<SERVER IP>:<PORT>/api/v2/yardstick/testcases/opnfv_yardstick_tc002
-
-
-/api/v2/yardstick/testsuites
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
-Description: This API is used to do some work related to yardstick test suites. For Euphrates, it supports:
-
-1. Create a test suite;
-2. Get all test suites;
-
-Which API to call will depend on the parameters.
-
-
-METHOD: POST
-
-
-Create a test suite
-Example::
-
- {
- 'action': 'create_suite',
- 'args': {
- 'name': <suite_name>,
- 'testcases': [
- 'opnfv_yardstick_tc002'
- ]
- }
- }
-
-
-METHOD: GET
-
-
-Get all test suite
-Example::
-
- http://<SERVER IP>:<PORT>/api/v2/yardstick/testsuites
-
-
-/api/v2/yardstick/testsuites
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
-Description: This API is used to do some work related to yardstick test suites. For Euphrates, it supports:
-
-1. Get certain test suite's information;
-2. Delete a test case.
-
-METHOD: GET
-
-
-Get certain test suite's information
-Example::
-
- http://<SERVER IP>:<PORT>/api/v2/yardstick/testsuites/<suite_name>
-
-
-METHOD: DELETE
-
-
-Delete a certain test suite
-Example::
-
- http://<SERVER IP>:<PORT>/api/v2/yardstick/testsuites/<suite_name>
-
-
-/api/v2/yardstick/projects
-^^^^^^^^^^^^^^^^^^^^^^^^^^
-
-Description: This API is used to do some work related to yardstick test projects. For Euphrates, it supports:
-
-1. Create a Yardstick project;
-2. Get all projects;
-
-Which API to call will depend on the parameters.
-
-
-METHOD: POST
-
-
-Create a Yardstick project
-Example::
-
- {
- 'action': 'create_project',
- 'args': {
- 'name': 'project1'
- }
- }
-
-
-METHOD: GET
-
-
-Get all projects' information
-Example::
-
- http://<SERVER IP>:<PORT>/api/v2/yardstick/projects
-
-
-/api/v2/yardstick/projects
-^^^^^^^^^^^^^^^^^^^^^^^^^^
-
-Description: This API is used to do some work related to yardstick test projects. For Euphrates, it supports:
-
-1. Get certain project's information;
-2. Delete a project.
-
-METHOD: GET
-
-
-Get certain project's information
-Example::
-
- http://<SERVER IP>:<PORT>/api/v2/yardstick/projects/<project_id>
-
-
-METHOD: DELETE
-
-
-Delete a certain project
-Example::
-
- http://<SERVER IP>:<PORT>/api/v2/yardstick/projects/<project_id>
-
-
-/api/v2/yardstick/containers
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
-Description: This API is used to do some work related to Docker containers. For Euphrates, it supports:
-
-1. Create a Grafana Docker container;
-2. Create an InfluxDB Docker container;
-
-Which API to call will depend on the parameters.
-
-
-METHOD: POST
-
-
-Create a Grafana Docker container
-Example::
-
- {
- 'action': 'create_grafana',
- 'args': {
- 'environment_id': <environment_id>
- }
- }
-
-
-METHOD: POST
-
-
-Create an InfluxDB Docker container
-Example::
-
- {
- 'action': 'create_influxdb',
- 'args': {
- 'environment_id': <environment_id>
- }
- }
-
-
-/api/v2/yardstick/containers/<container_id>
-^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
-Description: This API is used to do some work related to Docker containers. For Euphrates, it supports:
-
-1. Get certain container's information;
-2. Delete a container.
-
-METHOD: GET
-
-
-Get certain container's information
-Example::
-
- http://<SERVER IP>:<PORT>/api/v2/yardstick/containers/<container_id>
-
-
-METHOD: DELETE
-
-
-Delete a certain container
-Example::
-
- http://<SERVER IP>:<PORT>/api/v2/yardstick/containers/<container_id>