
As discussed on the neutron-performance meeting [1] floating IP operations should be covered in the neutron gate rally job. As I set out to write the missing tests I discovered that some of them were already written by rally folks. For example see [2]. Keep in mind the test code has been relocated since to the rally-openstack repository. For example see [3]. They were later added to neutron's rally job definition [4]. Here we add one more scenario to exercise the floating IP operations left uncovered by the above changes: associate and dissociate. [1] http://eavesdrop.openstack.org/meetings/neutron_performance/2018/neutron_performance.2018-10-22-16.02.log.html#l-143 [2] https://review.openstack.org/225223 [3] https://github.com/openstack/rally-openstack/blob/4e4bfc5/rally_openstack/scenarios/neutron/network.py [4] https://review.openstack.org/620952 Change-Id: I32f3bad82fa0ca822e80d51220c120568a709332 Needed-By: https://review.openstack.org/624038
Tasks Configuration Samples
To specify your tasks, use configuration files in json or yaml format.
JSON schema of input task format:
:
{
"type": "object",
"$schema": "http://json-schema.org/draft-04/schema",
"patternProperties": {
".*": {
"type": "array",
"items": {
"type": "object",
"properties": {
"args": {
"type": "object"
},
"runner": {
"type": "object",
"properties": {
"type": {"type": "string"}
},
"required": ["type"]
},
"context": {
"type": "object"
},
"sla": {
"type": "object"
},
},
"additionalProperties": False
}
}
}
}
For humans:
- ::
-
- {
-
- "ScenarioClass.scenario_method": [
-
- {
-
- "args": {
-
...
}, "runner": { ... }, "context": { ... }, "sla": { ... }
}
]
}
Scenario Plugin should be a subclass of the base Scenario class and implement run() method. Section "args" is also related to scenario. To learn more about scenarios configuration, see samples in samples/tasks/scenarios.
Section "runners" specifies the way, how task should be run. To learn more about runners configurations, see samples in samples/tasks/runners.
Section "context" defines different types of environments in which task can be launched. Look at samples/tasks/contexts for samples.
Section "sla" defines details for determining compliance with contracted values such as maximum error rate or minimum response time. Look at samples/tasks/sla for samples.
See a detailed description of scenarios, contexts & runners.