summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--docker/bottleneck-compose/docker-compose.yml1
-rw-r--r--testsuites/posca/testcase_cfg/posca_stress_ping.yaml2
-rw-r--r--testsuites/posca/testcase_script/posca_stress_ping.py10
-rw-r--r--utils/env_prepare/quota_prepare.py76
-rw-r--r--utils/env_prepare/stack_prepare.py4
5 files changed, 88 insertions, 5 deletions
diff --git a/docker/bottleneck-compose/docker-compose.yml b/docker/bottleneck-compose/docker-compose.yml
index 6dbf8999..7745f41f 100644
--- a/docker/bottleneck-compose/docker-compose.yml
+++ b/docker/bottleneck-compose/docker-compose.yml
@@ -36,3 +36,4 @@ bottlenecks:
environment:
- INSTALLER_IP=192.168.200.2
- INSTALLER_TYPE=compass
+ - DEBUG=true
diff --git a/testsuites/posca/testcase_cfg/posca_stress_ping.yaml b/testsuites/posca/testcase_cfg/posca_stress_ping.yaml
index a60a8832..75eba97d 100644
--- a/testsuites/posca/testcase_cfg/posca_stress_ping.yaml
+++ b/testsuites/posca/testcase_cfg/posca_stress_ping.yaml
@@ -7,7 +7,7 @@ load_manager:
tool: ping
test_times: 100
package_size:
- num_stack: 2, 5, 10
+ num_stack: 5, 10, 20
package_loss: 10%
contexts:
diff --git a/testsuites/posca/testcase_script/posca_stress_ping.py b/testsuites/posca/testcase_script/posca_stress_ping.py
index 02244a37..732422ea 100644
--- a/testsuites/posca/testcase_script/posca_stress_ping.py
+++ b/testsuites/posca/testcase_script/posca_stress_ping.py
@@ -18,8 +18,9 @@ import os
import multiprocessing
import docker
import datetime
-import utils.infra_setup.runner.yardstick as Runner
from utils.parser import Parser as conf_parser
+import utils.env_prepare.quota_prepare as quota_prepare
+import utils.env_prepare.stack_prepare as stack_prepare
import testsuites.posca.testcase_dashboard.posca_stress_ping as DashBoard
# --------------------------------------------------
# logging configuration
@@ -40,9 +41,12 @@ testcase, file_format = os.path.splitext(testfile)
def env_pre(con_dic):
+ stack_prepare._prepare_env_daemon()
+ quota_prepare.quota_env_prepare()
client = docker.from_env()
con = client.containers.get('bottleneckcompose_yardstick_1')
cmd = ('yardstick env prepare')
+ LOG.info("yardstick envrionment prepare!")
stdout = con.exec_run(cmd)
LOG.debug(stdout)
@@ -99,14 +103,16 @@ def run(test_config):
LOG.info("Create Dashboard data")
DashBoard.posca_stress_ping(test_config["dashboard"])
- LOG.info("yardstick envrionment prepare!")
+ LOG.info("bottlenecks envrionment prepare!")
env_pre(con_dic)
+ LOG.info("yardstick envrionment prepare done!")
for value in test_num:
result = []
out_num = 0
num = int(value)
pool = multiprocessing.Pool(processes=num)
+ LOG.info("begin to run %s thread" % num)
starttime = datetime.datetime.now()
for i in range(0, int(num)):
diff --git a/utils/env_prepare/quota_prepare.py b/utils/env_prepare/quota_prepare.py
new file mode 100644
index 00000000..e52a3e32
--- /dev/null
+++ b/utils/env_prepare/quota_prepare.py
@@ -0,0 +1,76 @@
+#!/usr/bin/env python
+##############################################################################
+# Copyright (c) 2016 Huawei Technologies Co.,Ltd and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+##############################################################################
+
+
+import os
+import commands
+import utils.logger as log
+import utils.infra_setup.heat.manager as client_manager
+
+LOG = log.Logger(__name__).getLogger()
+
+neutron_quota = {"subnet": -1,
+ "network": -1,
+ "floatingip": -1,
+ "subnetpool": -1,
+ "router": -1,
+ "port": -1}
+
+nova_quota = {"ram": -1,
+ "cores": -1,
+ "instances": -1,
+ "key_pairs": -1,
+ "fixed_ips": -1,
+ "floating_ips": -1,
+ "server_groups": -1,
+ "injected_files": -1,
+ "metadata_items": -1,
+ "security_groups": -1,
+ "security_group_rules": -1,
+ "server_group_members": -1,
+ "injected_file_content_bytes": -1,
+ "injected_file_path_bytes": -1}
+
+
+def quota_env_prepare():
+ tenant_name = os.getenv("OS_TENANT_NAME")
+ cmd = ("openstack project list | grep " +
+ tenant_name +
+ " | awk '{print $2}'")
+
+ result = commands.getstatusoutput(cmd)
+ if result[0] == 0:
+ LOG.info(result[1])
+ else:
+ LOG.error("can't get openstack project id")
+ return 1
+
+ openstack_id = result[1]
+
+ nova_client = client_manager._get_nova_client()
+ neutron_client = client_manager._get_neutron_client()
+
+ nova_q = nova_client.quotas.get(openstack_id).to_dict()
+ neutron_q = neutron_client.show_quota(openstack_id)
+ LOG.info(tenant_name + "tenant nova and neutron quota(previous) :")
+ LOG.info(nova_q)
+ LOG.info(neutron_q)
+
+ nova_client.quotas.update(openstack_id, **nova_quota)
+ neutron_client.update_quota(openstack_id,
+ {'quota': neutron_quota})
+ LOG.info("Quota has been changed!")
+
+ nova_q = nova_client.quotas.get(openstack_id).to_dict()
+ neutron_q = neutron_client.show_quota(openstack_id)
+ LOG.info(tenant_name + "tenant nova and neutron quota(now) :")
+ LOG.info(nova_q)
+ LOG.info(neutron_q)
+ return 0
diff --git a/utils/env_prepare/stack_prepare.py b/utils/env_prepare/stack_prepare.py
index 37b523d1..3c706fad 100644
--- a/utils/env_prepare/stack_prepare.py
+++ b/utils/env_prepare/stack_prepare.py
@@ -28,10 +28,10 @@ def _prepare_env_daemon():
_source_file(rc_file)
- _append_external_network(rc_file)
+ # _append_external_network(rc_file)
# update the external_network
- _source_file(rc_file)
+ # _source_file(rc_file)
def _get_remote_rc_file(rc_file, installer_ip, installer_type):