Merge "Add Octavia Authenticate"

This commit is contained in:
Zuul 2019-07-08 18:08:47 +00:00 committed by Gerrit Code Review
commit 108269ae16
4 changed files with 68 additions and 0 deletions

View File

@ -131,6 +131,25 @@ class ValidateNeutron(scenario.OpenStackScenario):
neutron_client.list_networks()
@validation.add("number", param_name="repetitions", minval=1)
@validation.add("required_platform", platform="openstack", users=True)
@scenario.configure(name="Authenticate.validate_octavia", platform="openstack")
class ValidateOctavia(scenario.OpenStackScenario):
def run(self, repetitions):
"""Check Octavia Client to ensure validation of token.
Creation of the client does not ensure validation of the token.
We have to do some minimal operation to make sure token gets validated.
:param repetitions: number of times to validate
"""
octavia_client = self.clients("octavia")
with atomic.ActionTimer(self, "authenticate.validate_octavia"):
for i in range(repetitions):
octavia_client.load_balancer_list()
@validation.add("number", param_name="repetitions", minval=1)
@validation.add("required_platform", platform="openstack", users=True)
@scenario.configure(name="Authenticate.validate_heat", platform="openstack")

View File

@ -0,0 +1,25 @@
{
"Authenticate.validate_octavia": [
{
"args": {
"repetitions": 2
},
"runner": {
"type": "constant",
"times": 10,
"concurrency": 5
},
"context": {
"users": {
"tenants": 3,
"users_per_tenant": 5
}
},
"sla": {
"failure_rate": {
"max": 0
}
}
}
]
}

View File

@ -0,0 +1,16 @@
---
Authenticate.validate_octavia:
-
args:
repetitions: 2
runner:
type: "constant"
times: 10
concurrency: 5
context:
users:
tenants: 3
users_per_tenant: 5
sla:
failure_rate:
max: 0

View File

@ -77,6 +77,14 @@ class AuthenticateTestCase(test.ScenarioTestCase):
self._test_atomic_action_timer(scenario_inst.atomic_actions(),
"authenticate.validate_neutron")
def test_validate_octavia(self):
scenario_inst = authenticate.ValidateOctavia()
scenario_inst.run(5)
self.clients("octavia").load_balancer_list.assert_has_calls(
[mock.call()] * 5)
self._test_atomic_action_timer(scenario_inst.atomic_actions(),
"authenticate.validate_octavia")
def test_validate_heat(self):
scenario_inst = authenticate.ValidateHeat()
scenario_inst.run(5)