Extends system tests to use devops template

Runtime changing of yaml config via environment variable use !os_env

Add validator for unique file name of yaml config file. We should have
    unique file names in system_test/tests_templates/tests_configs

Yaml configuration compiled only when test started, than increase
    creation speed of test plan and improve isolation of config files

Using name of yaml file for link config and test case instead of the
    test-group node in yaml file before

Add several types of group names:
    case_group.CONFIG
    case_gorup(CONFIG)
    case_gorup[CONFIG]
    case_gorup{CONFIG}

Add default devops template
    system_test/tests_templates/devops_configs/default.yaml

Use devops config in ceph_all_on_neutron_vlan.yaml

Implements blueprint template-based-testcases
Change-Id: Ib5ae4126041b2aad059199e93d0c78457125b1fe
This commit is contained in:
Dmitry Tyzhnenko 2015-11-24 20:21:03 +02:00 committed by Dmitry Tyzhnenko
parent f04c277064
commit 06a6405c00
40 changed files with 377 additions and 175 deletions

View File

@ -58,10 +58,12 @@ class EnvironmentModel(object):
return cls._instance
def __init__(self):
if not hasattr(self, "_virtual_environment"):
self._virtual_environment = None
if not hasattr(self, "_virt_env"):
self._virt_env = None
if not hasattr(self, "_fuel_web"):
self._fuel_web = None
if not hasattr(self, "_config"):
self._config = None
@property
def fuel_web(self):
@ -215,14 +217,23 @@ class EnvironmentModel(object):
@property
def d_env(self):
if self._virtual_environment is None:
try:
return Environment.get(name=settings.ENV_NAME)
except Exception:
self._virtual_environment = Environment.describe_environment(
boot_from=settings.ADMIN_BOOT_DEVICE)
self._virtual_environment.define()
return self._virtual_environment
if self._virt_env is None:
if not self._config:
try:
return Environment.get(name=settings.ENV_NAME)
except Exception:
self._virt_env = Environment.describe_environment(
boot_from=settings.ADMIN_BOOT_DEVICE)
self._virt_env.define()
else:
try:
return Environment.get(name=self._config[
'template']['devops_settings']['env_name'])
except Exception:
self._virt_env = Environment.create_environment(
full_config=self._config)
self._virt_env.define()
return self._virt_env
def resume_environment(self):
self.d_env.resume()

View File

@ -33,37 +33,103 @@ def copy_func(f, name=None):
return fn
def load_yaml_files(path):
def get_list_confignames(filelist):
"""Get list of config name from file list"""
return map(get_configname, filelist)
def get_configname(path):
"""Get config name from path to yaml file"""
return os.path.splitext(os.path.basename(path))[0]
def get_path_to_config():
"""Find path to directory with config files"""
import system_test
return os.path.join(os.path.dirname(system_test.__file__),
'tests_templates/tests_configs')
def get_path_to_template():
"""Find path to directory with templates files"""
import system_test
return os.path.join(os.path.dirname(system_test.__file__),
'tests_templates')
def collect_yamls(path):
"""Walk through config directory and find all yaml files"""
ret = []
for r, d, f in os.walk(path):
for one in f:
if os.path.splitext(one)[1] in ('.yaml', '.yml'):
ret.append(os.path.join(r, one))
return ret
def load_yaml(path):
"""Load yaml file from path"""
def yaml_include(loader, node):
file_name = os.path.join(os.path.dirname(loader.name), node.value)
with file(file_name) as inputfile:
return yaml.load(inputfile)
file_name = os.path.join(get_path_to_template(), node.value)
if not os.path.isfile(file_name):
raise ValueError(
"Cannot load the template {0} : include file {1} "
"doesn't exist.".format(path, file_name))
return yaml.load(open(file_name))
def collect_yamls(path):
ret = []
for n in os.listdir(path):
n = "{}/{}".format(path, n)
if os.path.isdir(n):
ret.extend(collect_yamls(n))
else:
ret.append(n)
return ret
def yaml_get_env_variable(loader, node):
if not node.value.strip():
raise ValueError("Environment variable is required after {tag} in "
"{filename}".format(tag=node.tag,
filename=loader.name))
node_value = node.value.split(',', 1)
# Get the name of environment variable
env_variable = node_value[0].strip()
# Get the default value for environment variable if it exists in config
if len(node_value) > 1:
default_val = node_value[1].strip()
else:
default_val = None
value = os.environ.get(env_variable, default_val)
if value is None:
raise ValueError("Environment variable {var} is not set from shell"
" environment! No default value provided in file "
"{filename}".format(var=env_variable,
filename=loader.name))
return yaml.load(value)
yamls = collect_yamls(path)
yaml.add_constructor("!include", yaml_include)
return [yaml.load(open(y)) for y in yamls]
yaml.add_constructor("!os_env", yaml_get_env_variable)
return yaml.load(open(path))
def find_duplicates(yamls):
dup = {}
for one in yamls:
name = os.path.basename(one)
if name in dup:
dup[name].append(one)
else:
dup[name] = [one]
return {k: v for k, v in dup.iteritems() if len(v) > 1}
def get_configs():
"""Return list of dict environment configurations"""
import system_test
path = os.path.join(os.path.dirname(system_test.__file__),
'tests_templates/tests_configs')
return load_yaml_files(path)
yamls = collect_yamls(get_path_to_config())
dup = find_duplicates(yamls)
if dup:
raise NameError(
"Found duplicate files in templates. "
"Name of template should be unique. Errors: {}".format(dup))
return {get_configname(y): y for y in yamls}
def case_factory(baseclass):
"""Return list of instance """
configs = get_configs()
return [baseclass.caseclass_factory(
c['template']['group-name'])(c) for c in configs]
return [baseclass.caseclass_factory(g)(c) for g, c in configs.iteritems()]

View File

@ -27,21 +27,36 @@ from system_test.helpers.decorators import make_snapshot_if_step_fail
from system_test.helpers.decorators import deferred_decorator
from system_test.helpers.decorators import action
from system_test.helpers.decorators import nested_action
from system_test.helpers.utils import load_yaml
class PrepareBase(base_actions_factory.BaseActionsFactory):
"""Base class with prepare actions
_action_setup_master - setup master node in environment
_action_config_release - preconfig releases if it needs
_action_make_slaves - boot slaves and snapshot environment with
bootstrapped slaves
_action_revert_slaves - revert environment with bootstrapped slaves
_start_case - runned before test case start
_finish_case - runned after test case finish
setup_master - setup master node in environment
config_release - preconfig releases if it needs
make_slaves - boot slaves and snapshot environment with bootstrapped slaves
revert_slaves - revert environment with bootstrapped slaves
"""
def _load_config(self):
config = load_yaml(self.config_file)
self.full_config = config
self.env_config = config[
'template']['cluster_template']
self.env_settings = config[
'template']['cluster_template']['settings']
self.config_name = config['template']['name']
if 'devops_settings' in config['template']:
self.env._config = config
def _start_case(self):
"""Start test case"""
self._load_config()
class_doc = getattr(self, "__doc__", self.__class__.__name__)
name = class_doc.splitlines()[0]
class_scenario = class_doc.splitlines()[1:]
@ -158,12 +173,9 @@ class ActionsBase(PrepareBase):
base_group = None
actions_order = None
def __init__(self, config=None):
def __init__(self, config_file=None):
super(ActionsBase, self).__init__()
self.full_config = config
self.env_config = config['template']['cluster-template']
self.env_settings = config['template']['cluster-template']['settings']
self.config_name = config['template']['name']
self.config_file = config_file
self.cluster_id = None
@deferred_decorator([make_snapshot_if_step_fail])

View File

@ -120,6 +120,9 @@ class BaseActionsFactory(base_test_case.TestBasic):
# Generate test case groups
groups = ['{}.{}'.format(g, case_group) for g in cls.base_group]
groups += ['{}({})'.format(g, case_group) for g in cls.base_group]
groups += ['{}[{}]'.format(g, case_group) for g in cls.base_group]
groups += ['{}{{{}}}'.format(g, case_group) for g in cls.base_group]
groups = cls.base_group + groups
# Generate test case docstring

View File

@ -39,8 +39,7 @@ class DeployCheckRadosGW(actions_base.ActionsBase):
"""
base_group = ['system_test',
'system_test.deploy_and_check_radosgw',
'system_test.bvt_2']
'system_test.deploy_and_check_radosgw']
actions_order = [
'setup_master',
'config_release',

View File

@ -1,7 +0,0 @@
---
- eth0:
- admin
- public
- managment
- storage
- private

View File

@ -1,18 +1,14 @@
---
- roles:
- controller
iface: !include ../_default_ifaces.yaml
count: 1
- roles:
- compute
iface: !include ../_default_ifaces.yaml
count: 1
- roles:
- cinder
- mongo
iface: !include ../_default_ifaces.yaml
count: 1
- roles:
- ceph-osd
iface: !include ../_default_ifaces.yaml
count: 2

View File

@ -1,11 +1,9 @@
---
- roles:
- controller
ifaces: !include ../_default_ifaces.yaml
count: 3
- roles:
- compute
- ceph-osd
ifaces: !include ../_default_ifaces.yaml
count: 3

View File

@ -2,11 +2,9 @@
- roles:
- controller
- mongo
ifaces: !include ../_default_ifaces.yaml
count: 3
- roles:
- compute
- ceph-osd
ifaces: !include ../_default_ifaces.yaml
count: 3

View File

@ -1,9 +1,7 @@
---
- roles:
- controller
iface: !include ../_default_ifaces.yaml
count: 1
- roles:
- compute
iface: !include ../_default_ifaces.yaml
count: 1

View File

@ -1,14 +1,11 @@
---
- roles:
- controller
iface: !include ../_default_ifaces.yaml
count: 1
- roles:
- compute
iface: !include ../_default_ifaces.yaml
count: 1
- roles:
- cinder
iface: !include ../_default_ifaces.yaml
count: 1

View File

@ -1,17 +1,13 @@
---
- roles:
- controller
iface: !include ../_default_ifaces.yaml
count: 1
- roles:
- compute
iface: !include ../_default_ifaces.yaml
count: 1
- roles:
- cinder
iface: !include ../_default_ifaces.yaml
count: 1
- roles:
- ceph-osd
iface: !include ../_default_ifaces.yaml
count: 3

View File

@ -1,17 +1,13 @@
---
- roles:
- controller
iface: !include ../_default_ifaces.yaml
count: 1
- roles:
- compute
iface: !include ../_default_ifaces.yaml
count: 1
- roles:
- ceph-osd
iface: !include ../_default_ifaces.yaml
count: 3
- roles:
- mongo
iface: !include ../_default_ifaces.yaml
count: 1

View File

@ -1,21 +1,16 @@
---
- roles:
- controller
iface: !include ../_default_ifaces.yaml
count: 1
- roles:
- compute
iface: !include ../_default_ifaces.yaml
count: 2
- roles:
- cinder
iface: !include ../_default_ifaces.yaml
count: 1
- roles:
- ceph-osd
iface: !include ../_default_ifaces.yaml
count: 3
- roles:
- mongo
iface: !include ../_default_ifaces.yaml
count: 1

View File

@ -1,14 +1,11 @@
---
- roles:
- controller
iface: !include ../_default_ifaces.yaml
count: 3
- roles:
- compute
iface: !include ../_default_ifaces.yaml
count: 1
- roles:
- cinder
iface: !include ../_default_ifaces.yaml
count: 1

View File

@ -1,14 +1,11 @@
---
- roles:
- controller
iface: !include ../_default_ifaces.yaml
count: 3
- roles:
- compute
iface: !include ../_default_ifaces.yaml
count: 2
- roles:
- cinder
iface: !include ../_default_ifaces.yaml
count: 1

View File

@ -1,5 +1,5 @@
---
storages:
!include storages/cephImgVolRados.yaml
!include cluster_configs/settings/storages/cephImgVolRados.yaml
components:
!include components/wo_components.yaml
!include cluster_configs/settings/components/wo_components.yaml

View File

@ -1,5 +1,5 @@
---
storages:
!include storages/cephImgVolRados.yaml
!include cluster_configs/settings/storages/cephImgVolRados.yaml
components:
!include components/ceilometer.yaml
!include cluster_configs/settings/components/ceilometer.yaml

View File

@ -1,5 +1,5 @@
---
storages:
!include storages/cephImgVol.yaml
!include cluster_configs/settings/storages/cephImgVol.yaml
components:
!include components/ceilometer.yaml
!include cluster_configs/settings/components/ceilometer.yaml

View File

@ -1,5 +1,5 @@
---
storages:
!include storages/cephImgVol.yaml
!include cluster_configs/settings/storages/cephImgVol.yaml
components:
!include components/ceilometer_sahara.yaml
!include cluster_configs/settings/components/ceilometer_sahara.yaml

View File

@ -1,5 +1,5 @@
---
storages:
!include storages/cephImgVol.yaml
!include cluster_configs/settings/storages/cephImgVol.yaml
components:
!include components/wo_components.yaml
!include cluster_configs/settings/components/wo_components.yaml

View File

@ -1,5 +1,5 @@
---
storages:
!include storages/cinder_only.yaml
!include cluster_configs/settings/storages/cinder_only.yaml
components:
!include components/ceilometer.yaml
!include cluster_configs/settings/components/ceilometer.yaml

View File

@ -1,5 +1,5 @@
---
storages:
!include storages/cinder_cephImgRados.yaml
!include cluster_configs/settings/storages/cinder_cephImgRados.yaml
components:
!include components/ceilometer.yaml
!include cluster_configs/settings/components/ceilometer.yaml

View File

@ -1,5 +1,5 @@
---
storages:
!include storages/cinder_cephImgRados.yaml
!include cluster_configs/settings/storages/cinder_cephImgRados.yaml
components:
!include components/wo_components.yaml
!include cluster_configs/settings/components/wo_components.yaml

View File

@ -1,5 +1,5 @@
---
storages:
!include storages/cinder_cephImg.yaml
!include cluster_configs/settings/storages/cinder_cephImg.yaml
components:
!include components/ceilometer.yaml
!include cluster_configs/settings/components/ceilometer.yaml

View File

@ -1,5 +1,5 @@
---
storages:
!include storages/cinder_only.yaml
!include cluster_configs/settings/storages/cinder_only.yaml
components:
!include components/sahara.yaml
!include cluster_configs/settings/components/sahara.yaml

View File

@ -1,5 +1,5 @@
---
storages:
!include storages/cinder_only.yaml
!include cluster_configs/settings/storages/cinder_only.yaml
components:
!include components/wo_components.yaml
!include cluster_configs/settings/components/wo_components.yaml

View File

@ -0,0 +1,180 @@
---
aliases:
dynamic_address_pool:
- &pool_default !os_env POOL_DEFAULT, 10.109.0.0/16:24
rack-01-slave-interfaces: &rack-01-slave-interfaces
- label: eth0
l2_network_device: admin # Libvirt bridge name. It is *NOT* Nailgun networks
- label: eth1
l2_network_device: public
- label: eth2
l2_network_device: storage
- label: eth3
l2_network_device: management
- label: eth4
l2_network_device: private
rack-01-slave-network_config: &rack-01-slave-network_config
eth0:
networks:
- fuelweb_admin
eth1:
networks:
- public
eth2:
networks:
- storage
eth3:
networks:
- management
eth4:
networks:
- private
rack-01-slave-node-params: &rack-01-slave-node-params
vcpu: !os_env SLAVE_NODE_CPU, 2
memory: !os_env SLAVE_NODE_MEMORY, 3072
boot:
- network
- hd
volumes:
- name: system
capacity: !os_env NODE_VOLUME_SIZE, 55
format: qcow2
- name: cinder
capacity: !os_env NODE_VOLUME_SIZE, 55
format: qcow2
- name: swift
capacity: !os_env NODE_VOLUME_SIZE, 55
format: qcow2
interfaces: *rack-01-slave-interfaces
network_config: *rack-01-slave-network_config
env_name: !os_env ENV_NAME
address_pools:
# Network pools used by the environment
fuelweb_admin-pool01:
net: *pool_default
params:
tag: 0
public-pool01:
net: *pool_default
params:
tag: 0
storage-pool01:
net: *pool_default
params:
tag: 101
management-pool01:
net: *pool_default
params:
tag: 102
private-pool01:
net: *pool_default
params:
tag: 103
groups:
- name: rack-01
driver:
name: devops.driver.libvirt.libvirt_driver
params:
connection_string: !os_env CONNECTION_STRING, qemu:///system
storage_pool_name: !os_env STORAGE_POOL_NAME, default
stp: True
hpet: False
use_host_cpu: !os_env DRIVER_USE_HOST_CPU, true
network_pools: # Address pools for OpenStack networks.
# Actual names should be used for keys
# (the same as in Nailgun, for example)
fuelweb_admin: fuelweb_admin-pool01
public: public-pool01
storage: storage-pool01
management: management-pool01
private: private-pool01
l2_network_devices: # Libvirt bridges. It is *NOT* Nailgun networks
admin:
address_pool: fuelweb_admin-pool01
dhcp: false
forward:
mode: nat
public:
address_pool: public-pool01
dhcp: false
forward:
mode: nat
storage:
address_pool: storage-pool01
dhcp: false
management:
address_pool: management-pool01
dhcp: false
private:
address_pool: private-pool01
dhcp: false
nodes:
- name: admin # Custom name of VM for Fuel admin node
role: fuel_master # Fixed role for Fuel master node properties
params:
vcpu: !os_env ADMIN_NODE_CPU, 2
memory: !os_env ADMIN_NODE_MEMORY, 3072
boot:
- hd
- cdrom # for boot from usb - without 'cdrom'
volumes:
- name: system
capacity: !os_env ADMIN_NODE_VOLUME_SIZE, 80
format: qcow2
- name: iso
source_image: !os_env ISO_PATH # if 'source_image' set, then volume capacity is calculated from it's size
format: raw
device: cdrom # for boot from usb - 'disk'
bus: ide # for boot from usb - 'usb'
interfaces:
- label: eth0
l2_network_device: admin # Libvirt bridge name. It is *NOT* a Nailgun network
network_config:
eth0:
networks:
- fuelweb_admin
- name: slave-01
role: fuel_slave
params: *rack-01-slave-node-params
- name: slave-02
role: fuel_slave
params: *rack-01-slave-node-params
- name: slave-03
role: fuel_slave
params: *rack-01-slave-node-params
- name: slave-04
role: fuel_slave
params: *rack-01-slave-node-params
- name: slave-05
role: fuel_slave
params: *rack-01-slave-node-params
- name: slave-06
role: fuel_slave
params: *rack-01-slave-node-params
- name: slave-07
role: fuel_slave
params: *rack-01-slave-node-params
- name: slave-08
role: fuel_slave
params: *rack-01-slave-node-params
- name: slave-09
role: fuel_slave
params: *rack-01-slave-node-params

View File

@ -1,14 +1,13 @@
---
template:
name: 3 Controller and mongo, 3 Compute & Ceph on Neutron/TUN with Ceilometer
group-name: 3ctrl_mongo_3comp_ceph_neutronTUN_ceilo
slaves: 6
cluster-template:
cluster_template:
name: CephImgVolRados
release: ubuntu
network:
!include ../cluster_configs/networks/neutron_tun.yaml
!include cluster_configs/networks/neutron_tun.yaml
settings:
!include ../cluster_configs/settings/cephVolImgRados_ceilometer.yaml
!include cluster_configs/settings/cephVolImgRados_ceilometer.yaml
nodes:
!include ../cluster_configs/nodes/mixed/3ctrl_mongo_3comp_ceph.yaml
!include cluster_configs/nodes/mixed/3ctrl_mongo_3comp_ceph.yaml

View File

@ -12,30 +12,20 @@ storages-config: &storages-config
ephemeral-ceph: false
replica-ceph: 2
nodes-ifaces: &iface-config
- eth0:
- admin
- public
- managment
- storage
- private
nodes: &nodes
- roles:
- controller
# iface: *iface-config
count: 3
- roles:
- compute
- ceph-osd
# iface: *iface-config
count: 3
template:
name: 3 Controller, 3 Compute & Ceph on Neutron/VLAN
group-name: 3ctrl_3comp_ceph_neutronVLAN
slaves: 6
cluster-template: &environment-config
devops_settings: !include devops_configs/default.yaml
cluster_template: &environment-config
name: rados
release: ubuntu
settings:

View File

@ -13,33 +13,21 @@ storages-config: &storages-config
rados-ceph: false
replica-ceph: 2
nodes-ifaces: &iface-config
- eth0:
- admin
- public
- managment
- storage
- private
nodes: &nodes
- roles:
- controller
# iface: *iface-config
count: 1
- roles:
- compute
# iface: *iface-config
count: 1
- roles:
- cinder
# iface: *iface-config
count: 1
template:
name: 1 Controller, 1 Compute, 1 Cinder on Neutron/VLAN
group-name: 1ctrl_1comp_1cinder_neutronVLAN
slaves: 3
cluster-template: &environment-config
cluster_template: &environment-config
name: env1
release: ubuntu
settings:

View File

@ -1,14 +1,13 @@
---
template:
name: 1 Controller + Ceph, 2 Controller, 1 Compute, 1 Compute + Ceph on Neutron/VLAN
group-name: 1ctrl_ceph_2ctrl_1comp_1comp_ceph_neutronVLAN
slaves: 5
cluster-template:
cluster_template:
name: HAwithCinderNeutronVLAN
release: ubuntu
network:
!include ../../../cluster_configs/networks/neutron_vlan.yaml
!include cluster_configs/networks/neutron_vlan.yaml
settings:
!include ../../../cluster_configs/settings/cephVolImg_wo_components.yaml
!include cluster_configs/settings/cephVolImg_wo_components.yaml
nodes:
!include ../../../cluster_configs/nodes/single/3ctrl_2comp_1cndr.yaml
!include cluster_configs/nodes/single/3ctrl_2comp_1cndr.yaml

View File

@ -1,14 +1,13 @@
---
template:
name: 3 Controller, 2 Compute, 1 Cinder Neutron/VLAN
group-name: 3ctrl_2comp_1cndr_neutronVLAN
slaves: 6
cluster-template:
cluster_template:
name: HAwithCinderNeutronVLAN
release: ubuntu
network:
!include ../../../cluster_configs/networks/neutron_vlan.yaml
!include cluster_configs/networks/neutron_vlan.yaml
settings:
!include ../../../cluster_configs/settings/cinder_wo_componets.yaml
!include cluster_configs/settings/cinder_wo_componets.yaml
nodes:
!include ../../../cluster_configs/nodes/single/3ctrl_2comp_1cndr.yaml
!include cluster_configs/nodes/single/3ctrl_2comp_1cndr.yaml

View File

@ -2,14 +2,13 @@
template:
name: 1 Controller, 1 Compute, 1 Cinder and Mongo, 2 Ceph on Neutron/VLAN use Ceph Image and Rados with Ceilometer
testrail: https://mirantis.testrail.com/index.php?/cases/view/375025
group-name: 1ctrl_1comp_1cndr_mongo_2ceph_neutronVLAN_CephImgRados_ceilometer
slaves: 5
cluster-template:
cluster_template:
name: SimpleCinderMongoCephImgRadosCeiloNeutronVLAN
release: ubuntu
network:
!include ../../../cluster_configs/networks/neutron_vlan.yaml
!include cluster_configs/networks/neutron_vlan.yaml
settings:
!include ../../../cluster_configs/settings/cinder_cephImgRados_ceilometer.yaml
!include cluster_configs/settings/cinder_cephImgRados_ceilometer.yaml
nodes:
!include ../../../cluster_configs/nodes/mixed/1ctrl_1comp_1cndr_mongo_2ceph.yaml
!include cluster_configs/nodes/mixed/1ctrl_1comp_1cndr_mongo_2ceph.yaml

View File

@ -1,14 +1,13 @@
---
template:
name: 1 Controller, 1 Compute, 1 Cinder, 3 Ceph on Neutron/VLAN use Ceph Image and Rados
group-name: 1ctrl_1comp_1cndr_3ceph_neutronVLAN_cephImgRados
slaves: 6
cluster-template:
cluster_template:
name: SimpleCinderCephImgRadosNeutronVLAN
release: ubuntu
network:
!include ../../../cluster_configs/networks/neutron_vlan.yaml
!include cluster_configs/networks/neutron_vlan.yaml
settings:
!include ../../../cluster_configs/settings/cinder_cephImgRados_wo_components.yaml
!include cluster_configs/settings/cinder_cephImgRados_wo_components.yaml
nodes:
!include ../../../cluster_configs/nodes/single/1ctrl_1comp_1cndr_3ceph.yaml
!include cluster_configs/nodes/single/1ctrl_1comp_1cndr_3ceph.yaml

View File

@ -1,14 +1,13 @@
---
template:
name: 1 Controller, 1 Compute, 1 Cinder on Neutron/TUN with Sahara
group-name: 1ctrl_1comp_1cndr_neutronTUN_sahara
slaves: 3
cluster-template:
cluster_template:
name: SimpleSaharaNeutronTUN
release: ubuntu
network:
!include ../../../cluster_configs/networks/neutron_tun.yaml
!include cluster_configs/networks/neutron_tun.yaml
settings:
!include ../../../cluster_configs/settings/cinder_sahara.yaml
!include cluster_configs/settings/cinder_sahara.yaml
nodes:
!include ../../../cluster_configs/nodes/single/1ctrl_1comp_1cndr.yaml
!include cluster_configs/nodes/single/1ctrl_1comp_1cndr.yaml

View File

@ -1,14 +1,13 @@
---
template:
name: 1 Controller, 1 Compute, 3 Ceph, 1 Mongo on Neutron/TUN use Ceph Volume and Image with Ceilometer and Sahara
group-name: 1ctrl_1comp_3ceph_1mongo_neutronTUN_CephImgVol_ceilometer_sahara
slaves: 6
cluster-template:
cluster_template:
name: SimpleCephImgVolMongoCeiloSaharaNeutronTUN
release: ubuntu
network:
!include ../../../cluster_configs/networks/neutron_tun.yaml
!include cluster_configs/networks/neutron_tun.yaml
settings:
!include ../../../cluster_configs/settings/cephVolImg_ceilometer_sahara.yaml
!include cluster_configs/settings/cephVolImg_ceilometer_sahara.yaml
nodes:
!include ../../../cluster_configs/nodes/single/1ctrl_1comp_3ceph_1mongo.yaml
!include cluster_configs/nodes/single/1ctrl_1comp_3ceph_1mongo.yaml

View File

@ -7,8 +7,8 @@ template:
name: SimpleNeutronTUN
release: ubuntu
network:
!include ../../../cluster_configs/networks/neutron_tun.yaml
!include cluster_configs/networks/neutron_tun.yaml
settings:
!include ../../../cluster_configs/settings/cinder_wo_componets.yaml
!include cluster_configs/settings/cinder_wo_componets.yaml
nodes:
!include ../../../cluster_configs/nodes/single/1ctrl_1comp.yaml
!include cluster_configs/nodes/single/1ctrl_1comp.yaml

View File

@ -7,8 +7,8 @@ template:
name: SimpleNeutronVLAN
release: ubuntu
network:
!include ../../../cluster_configs/networks/neutron_vlan.yaml
!include cluster_configs/networks/neutron_vlan.yaml
settings:
!include ../../../cluster_configs/settings/cinder_wo_componets.yaml
!include cluster_configs/settings/cinder_wo_componets.yaml
nodes:
!include ../../../cluster_configs/nodes/single/1ctrl_1comp.yaml
!include cluster_configs/nodes/single/1ctrl_1comp.yaml

View File

@ -1,14 +1,13 @@
---
template:
name: 1 Controller, 2 Compute, 1 Cinder, 3 Ceph, 1 Mongo on Neutron/VLAN use Ceph Image with Ceilometer
group-name: 1ctrl_2comp_1cndr_3ceph_1mongo_neutronVLAN_CephImg_ceilometer
slaves: 8
cluster-template:
cluster_template:
name: SimpleCinderCephImgMongoCeiloNeutronVLAN
release: ubuntu
network:
!include ../../../cluster_configs/networks/neutron_vlan.yaml
!include cluster_configs/networks/neutron_vlan.yaml
settings:
!include ../../../cluster_configs/settings/cinder_cephImg_ceilometer.yaml
!include cluster_configs/settings/cinder_cephImg_ceilometer.yaml
nodes:
!include ../../../cluster_configs/nodes/single/1ctrl_2comp_1cndr_3ceph_1mongo.yaml
!include cluster_configs/nodes/single/1ctrl_2comp_1cndr_3ceph_1mongo.yaml