summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorwangyaoguang <sunshine.wang@huawei.com>2016-05-20 15:13:44 +0800
committerwangyaoguang <sunshine.wang@huawei.com>2016-05-20 15:18:31 +0800
commit8a612addc382204fa8a4331366152e32a5969500 (patch)
tree1b4ad98cca02d2577c354bb3ce1d182157a29fca
parent48d28135b5af171c878ba46d09bca917cbf985b2 (diff)
Add a fundamental rubbos test case with minimum resources
This is a fundamental test case with minimum resource for rubbos test. The benefits are two-fold. One is as daily test case since its bring-up time is fastest. Another is as a baseline. JIRA: BOTTLENECK-79 Change-Id: Ia4ffa5f2631da69ca5c6fc52558d3cf063d1b893 Signed-off-by: wangyaoguang <sunshine.wang@huawei.com>
-rwxr-xr-xtestsuites/rubbos/run_rubbos.py2
-rw-r--r--testsuites/rubbos/testcase_cfg/rubbos_basic.yaml227
2 files changed, 228 insertions, 1 deletions
diff --git a/testsuites/rubbos/run_rubbos.py b/testsuites/rubbos/run_rubbos.py
index 4005f4eb..97b5357c 100755
--- a/testsuites/rubbos/run_rubbos.py
+++ b/testsuites/rubbos/run_rubbos.py
@@ -26,7 +26,7 @@ from novaclient.client import Client as NovaClient
parser = argparse.ArgumentParser()
parser.add_argument("-c", "--conf",
help="configuration files for the testcase, in yaml format",
- default="/home/opnfv/bottlenecks/testsuites/rubbos/testcase_cfg/rubbos_1-1-0-1.yaml")
+ default="/home/opnfv/bottlenecks/testsuites/rubbos/testcase_cfg/rubbos_basic.yaml")
args = parser.parse_args()
#--------------------------------------------------
diff --git a/testsuites/rubbos/testcase_cfg/rubbos_basic.yaml b/testsuites/rubbos/testcase_cfg/rubbos_basic.yaml
new file mode 100644
index 00000000..791c95fc
--- /dev/null
+++ b/testsuites/rubbos/testcase_cfg/rubbos_basic.yaml
@@ -0,0 +1,227 @@
+heat_template_version: 2013-05-23
+
+description: >
+ HOT template to create a stack with minimum number of resources for rubbos.
+parameters:
+ key_name:
+ type: string
+ description: Name of keypair to assign to servers
+ default: bottlenecks_rubbos_keypair
+ image:
+ type: string
+ description: Name of image to use for servers
+ default: bottlenecks-trusty-server
+ flavor:
+ type: string
+ description: Flavor to use for servers
+ default: bottlenecks_rubbos_flavor
+ public_net:
+ type: string
+ description: >
+ ID or name of public network for which floating IP addresses will be allocated
+ default: net04_ext
+ private_net_name:
+ type: string
+ description: Name of private network to be created
+ default: bottlenecks-private
+ private_net_cidr:
+ type: string
+ description: Private network address (CIDR notation)
+ default: "10.0.10.0/24"
+ private_net_gateway:
+ type: string
+ description: Private network gateway address
+ default: "10.0.10.1"
+ private_net_pool_start:
+ type: string
+ description: Start of private network IP address allocation pool
+ default: "10.0.10.2"
+ private_net_pool_end:
+ type: string
+ description: End of private network IP address allocation pool
+ default: "10.0.10.199"
+ master_user_data:
+ type: string
+ description: User data for the server with master role
+ default: ""
+ agent_user_data:
+ type: string
+ description: User data for the server with agent role
+ default: ""
+
+resources:
+ private_net:
+ type: OS::Neutron::Net
+ properties:
+ name: { get_param: private_net_name }
+
+ private_subnet:
+ type: OS::Neutron::Subnet
+ properties:
+ network_id: { get_resource: private_net }
+ cidr: { get_param: private_net_cidr }
+ gateway_ip: { get_param: private_net_gateway }
+ allocation_pools:
+ - start: { get_param: private_net_pool_start }
+ end: { get_param: private_net_pool_end }
+ dns_nameservers: [ "8.8.8.8" ]
+
+ router:
+ type: OS::Neutron::Router
+ properties:
+ external_gateway_info:
+ network: { get_param: public_net }
+
+ router_interface:
+ type: OS::Neutron::RouterInterface
+ properties:
+ router_id: { get_resource: router }
+ subnet_id: { get_resource: private_subnet }
+
+ rubbos_control:
+ type: OS::Nova::Server
+ properties:
+ name: rubbos-control
+ image: { get_param: image }
+ flavor: { get_param: flavor }
+ key_name: { get_param: key_name }
+ networks:
+ - port: { get_resource: rubbos_control_port }
+ admin_user: ubuntu
+ user_data: { get_param: master_user_data }
+ user_data_format: RAW
+
+ rubbos_control_port:
+ type: OS::Neutron::Port
+ properties:
+ network_id: { get_resource: private_net }
+ fixed_ips:
+ - subnet_id: { get_resource: private_subnet }
+ security_groups: [{ get_resource: server_security_group }]
+
+ rubbos_control_floating_ip:
+ type: OS::Neutron::FloatingIP
+ properties:
+ floating_network: { get_param: public_net }
+ port_id: { get_resource: rubbos_control_port }
+
+ rubbos_httpd:
+ type: OS::Nova::Server
+ properties:
+ name: rubbos-httpd
+ image: { get_param: image }
+ flavor: { get_param: flavor }
+ key_name: { get_param: key_name }
+ networks:
+ - port: { get_resource: rubbos_httpd_port }
+ admin_user: ubuntu
+ user_data: { get_param: agent_user_data }
+ user_data_format: RAW
+
+ rubbos_httpd_port:
+ type: OS::Neutron::Port
+ properties:
+ network_id: { get_resource: private_net }
+ fixed_ips:
+ - subnet_id: { get_resource: private_subnet }
+ security_groups: [{ get_resource: server_security_group }]
+
+ rubbos_mysql1:
+ type: OS::Nova::Server
+ properties:
+ name: rubbos-mysql1
+ image: { get_param: image }
+ flavor: { get_param: flavor }
+ key_name: { get_param: key_name }
+ networks:
+ - port: { get_resource: rubbos_mysql1_port }
+ admin_user: ubuntu
+ user_data: { get_param: agent_user_data }
+ user_data_format: RAW
+
+ rubbos_mysql1_port:
+ type: OS::Neutron::Port
+ properties:
+ network_id: { get_resource: private_net }
+ fixed_ips:
+ - subnet_id: { get_resource: private_subnet }
+ security_groups: [{ get_resource: server_security_group }]
+
+ rubbos_tomcat1:
+ type: OS::Nova::Server
+ properties:
+ name: rubbos-tomcat1
+ image: { get_param: image }
+ flavor: { get_param: flavor }
+ key_name: { get_param: key_name }
+ networks:
+ - port: { get_resource: rubbos_tomcat1_port }
+ admin_user: ubuntu
+ user_data: { get_param: agent_user_data }
+ user_data_format: RAW
+
+ rubbos_tomcat1_port:
+ type: OS::Neutron::Port
+ properties:
+ network_id: { get_resource: private_net }
+ fixed_ips:
+ - subnet_id: { get_resource: private_subnet }
+ security_groups: [{ get_resource: server_security_group }]
+
+ rubbos_client1:
+ type: OS::Nova::Server
+ properties:
+ name: rubbos-client1
+ image: { get_param: image }
+ flavor: { get_param: flavor }
+ key_name: { get_param: key_name }
+ networks:
+ - port: { get_resource: rubbos_client1_port }
+ admin_user: ubuntu
+ user_data: { get_param: agent_user_data }
+ user_data_format: RAW
+
+ rubbos_client1_port:
+ type: OS::Neutron::Port
+ properties:
+ network_id: { get_resource: private_net }
+ fixed_ips:
+ - subnet_id: { get_resource: private_subnet }
+ security_groups: [{ get_resource: server_security_group }]
+
+ server_security_group:
+ type: OS::Neutron::SecurityGroup
+ properties:
+ description: Rubbos group for servers access.
+ name: rubbos-security-group
+ rules: [
+ {remote_ip_prefix: 0.0.0.0/0,
+ protocol: tcp,
+ port_range_min: 1,
+ port_range_max: 65535},
+ {remote_ip_prefix: 0.0.0.0/0,
+ protocol: udp,
+ port_range_min: 1,
+ port_range_max: 65535},
+ {remote_ip_prefix: 0.0.0.0/0,
+ protocol: icmp}]
+
+outputs:
+ rubbos_control_private_ip:
+ description: IP address of rubbos_control in private network
+ value: { get_attr: [ rubbos_control, first_address ] }
+ rubbos_control_public_ip:
+ description: Floating IP address of rubbos_control in public network
+ value: { get_attr: [ rubbos_control_floating_ip, floating_ip_address ] }
+ rubbos_httpd_private_ip:
+ description: IP address of rubbos_httpd in private network
+ value: { get_attr: [ rubbos_httpd, first_address ] }
+ rubbos_mysql1_private_ip:
+ description: IP address of rubbos_mysql1 in private network
+ value: { get_attr: [ rubbos_mysql1, first_address ] }
+ rubbos_tomcat1_private_ip:
+ description: IP address of rubbos_tomcat1 in private network
+ value: { get_attr: [ rubbos_tomcat1, first_address ] }
+ rubbos_client1_private_ip:
+ description: IP address of rubbos_client1 in private network
+ value: { get_attr: [ rubbos_client1, first_address ] }