summaryrefslogtreecommitdiffstats
path: root/docs/userguide/apexlake_framework/apexlake_api.rst
diff options
context:
space:
mode:
Diffstat (limited to 'docs/userguide/apexlake_framework/apexlake_api.rst')
-rw-r--r--docs/userguide/apexlake_framework/apexlake_api.rst110
1 files changed, 110 insertions, 0 deletions
diff --git a/docs/userguide/apexlake_framework/apexlake_api.rst b/docs/userguide/apexlake_framework/apexlake_api.rst
new file mode 100644
index 000000000..94f07dc06
--- /dev/null
+++ b/docs/userguide/apexlake_framework/apexlake_api.rst
@@ -0,0 +1,110 @@
+=================================
+Apexlake API interface definition
+=================================
+
+The API interface provided by the framework in order to execute the test cases is defined in the following.
+
+
+init
+----
+
+**static init()**
+
+ Initializes the Framework
+
+ **Returns** None
+
+
+get_available_test_cases
+------------------------
+
+**static get_available_test_cases()**
+
+ Returns a list of available test cases. This list include eventual modules developed by the user, if any.
+ Each test case is returned as a string that represents the full name of the test case and that
+ can be used to get more information calling get_test_case_features(test_case_name)
+
+ **Returns** list of strings
+
+
+get_test_case_features
+----------------------
+
+**static get_test_case_features(test_case)**
+
+ Returns a list of features (description, requested parameters, allowed values, etc.)
+ for a specified test case.
+
+ **Parameters**
+
+ - **test_case**
+
+ Name of the test case (string). The string represents the test
+ case and can be obtained calling “get_available_test_cases()” method.
+
+ **Returns**
+ dict() containing the features of the test case
+
+
+execute_framework
+-----------------
+
+**static execute_framework** (test_cases,
+
+ iterations,
+
+ heat_template,
+
+ heat_template_parameters,
+
+ deployment_configuration,
+
+ openstack_credentials)
+
+ Executes the framework according the inputs
+
+ **Parameters**
+
+ - **test_cases**
+
+ Test cases to be ran on the workload (dict() of dict())
+
+ Example:
+ test_case = dict()
+
+ test_case[’name’] = ‘module.Class’
+
+ test_case[’params’] = dict()
+
+ test_case[’params’][’throughput’] = ‘1’
+
+ test_case[’params’][’vlan_sender’] = ‘1000’
+
+ test_case[’params’][’vlan_receiver’] = ‘1001’
+
+ test_cases = [test_case]
+
+ - **iterations**
+ Number of cycles to be executed (int)
+
+ - **heat_template**
+ (string) File name of the heat template of the workload to be deployed.
+ It contains the parameters to be evaluated in the form of #parameter_name.
+ (See heat_templates/vTC.yaml as example).
+
+ - **heat_template_parameters**
+ (dict) Parameters to be provided as input to the
+ heat template. See http://docs.openstack.org/developer/heat/ template_guide/hot_guide.html
+ section “Template input parameters” for further info.
+
+ - **deployment_configuration**
+ ( dict[string] = list(strings) ) ) Dictionary of parameters
+ representing the deployment configuration of the workload
+
+ The key is a string corresponding to the name of the parameter,
+ the value is a list of strings representing the value to be
+ assumed by a specific param. The parameters are user defined:
+ they have to correspond to the place holders (#parameter_name)
+ specified in the heat template.
+
+ **Returns** dict() containing results