compass-core/plugins/chef_installer/tests/config_data.py

480 lines
14 KiB
Python

# Copyright 2014 Huawei Technologies Co. Ltd
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
__author__ = "Grace Yu (grace.yu@huawei.com)"
import os
os.environ['COMPASS_IGNORE_SETTING'] = 'true'
from compass.utils import setting_wrapper as compass_setting
reload(compass_setting)
curr_dir = os.path.dirname(os.path.realpath(__file__))
test_tmpl_dir = os.path.join(curr_dir, 'templates')
test_plugins_dir = curr_dir
adapter_test_config = {
"name": "openstack_icehouse",
"flavors": [
{
"falvor_name": "test_flavor",
"roles": ["os-controller", "os-compute-worker", "os-network"],
"template": "multinodes.tmpl"
}
],
"os_installer": {
"name": "cobbler",
"settings": {
"cobbler_url": "http://127.0.0.1/cobbler_api",
"credentials": {
"username": "cobbler",
"password": "cobbler"
}
}
},
"package_installer": {
"name": "chef_installer",
"settings": {
"chef_url": "https://127.0.0.1",
"chef_server_ip": "127.0.0.1",
"chef_server_dns": "test_chef",
"key_dir": "xxx",
"client_name": "xxx",
"databags": ["user_passwords", "db_passwords"]
}
},
"metadata": {
"os_config": {
"_self": {},
"general": {
"_self": {"mapping_to": ""},
"language": {
"_self": {
"mapping_to": "language",
},
},
"timezone": {
"_self": {
"mapping_to": "timezone"
}
},
"default_gateway": {
"_self": {
"mapping_to": "gateway"
}
},
"domain": {
"_self": {"mapping_to": ""}
},
"http_proxy": {
"_self": {
"mapping_to": "http_proxy"
}
},
"ntp_server": {
"_self": {"mapping_to": "ntp_server"}
},
"dns_servers": {
"_self": {"mapping_to": "nameservers"}
},
"search_path": {
"_self": {"mapping_to": "search_path"}
},
"https_proxy": {
"_self": {"mapping_to": "https_proxy"}
}
},
"partition": {
"_self": {
"mapping_to": "partition"
},
"$path": {
"_self": {"mapping_to": ""},
"max_size": {
"_self": {"mapping_to": "vol_size"}
},
"size_percentage": {
"_self": {"mapping_to": "vol_percentage"}
}
}
},
"server_credentials": {
"_self": {
"mapping_to": "server_credentials"
},
"username": {
"_self": {"mapping_to": "username"}
},
"password": {
"_self": {"mapping_to": "password"}
}
}
},
"package_config": {
"_self": {},
"security": {
"_self": {},
"service_credentials": {
"_self": {
"mapping_to": "service_credentials"
},
"rabbit_mq": {
"_self": {
"mapping_to": "mq"
},
"username": {
"_self": {
"mapping_to": "username"
}
},
"password": {
"_self": {
"mapping_to": "password"
}
}
}
}
},
"network_mapping": {
"_self": {},
"management": {
"_self": {},
"interface": {
"_self": {}
}
},
"public": {
"_self": {},
"interface": {
"_self": {}
}
},
"tenant": {
"_self": {},
"interface": {
"_self": {}
}
}
},
"roles": {
"_self": {}
}
}
}
}
cluster_test_config = {
"id": 1,
"os_name": "Ubuntu-12.04-x86_64",
"name": "test",
"flavor": {
"falvor_name": "test_flavor",
"roles": ["os-controller", "os-compute-worker", "os-network"],
"template": "multinodes.tmpl"
},
"os_config": {
"general": {
"language": "EN",
"timezone": "UTC",
"default_gateway": "12.234.32.1",
"domain": "ods.com",
"http_proxy": "http://127.0.0.1:3128",
"https_proxy": "",
"ntp_server": "127.0.0.1",
"dns_servers": ["127.0.0.1"],
"search_path": ["ods.com"]
},
"partition": {
"/var": {
"max_size": 20,
"size_percentage": 20
},
"/home": {
"max_size": 50,
"size_percentage": 40
}
},
"server_credentials": {
"username": "root",
"password": "huawei"
}
},
"package_config": {
"security": {
"service_credentials": {
"rabbit_mq": {
"username": "guest",
"password": "test"
}
}
},
"network_mapping": {
"management": {
"interface": "eth0"
},
"public": {
"interface": "eth2"
},
"tenant": {
"interface": "eth1"
}
}
}
}
hosts_test_config = {
1: {
"host_id": 1,
"reinstall_os": True,
"mac": "00:0c:29:3e:60:e9",
"name": "server01.test",
"hostname": "server01",
"roles": ["os-controller"],
"networks": {
"vnet0": {
"ip": "12.234.32.100",
"netmask": "255.255.255.0",
"is_mgmt": True,
"is_promiscuous": False,
"subnet": "12.234.32.0/24"
},
"vnet1": {
"ip": "172.16.1.1",
"netmask": "255.255.255.0",
"is_mgmt": False,
"is_promiscuous": False,
"subnet": "172.16.1.0/24"
}
},
"os_config": {
"general": {
"default_gateway": "10.145.88.1",
},
"partition": {
"/var": {
"max_size": 30,
"size_percentage": 30
},
"/test": {
"max_size": 10,
"size_percentage": 10
}
}
},
"package_config": {
"network_mapping": {
"management": {
"interface": "vnet0"
},
"tenant": {
"interface": "vnet1"
}
}
}
},
2: {
"host_id": 2,
"reinstall_os": True,
"mac": "00:0c:29:3e:60:a1",
"name": "server02.test",
"hostname": "server02",
"roles": ["os-compute-worker"],
"networks": {
"eth0": {
"ip": "12.234.32.101",
"netmask": "255.255.255.0",
"is_mgmt": True,
"is_promiscuous": False,
"subnet": "12.234.32.0/24"
},
"eth1": {
"ip": "172.16.1.2",
"netmask": "255.255.255.0",
"is_mgmt": False,
"is_promiscuous": False,
"subnet": "172.16.1.0/24"
}
},
"os_config": {
"general": {
"language": "EN",
"timezone": "UTC",
"domain": "ods.com"
},
"partition": {
"/test": {
"max_size": 10,
"size_percentage": 20
}
}
},
"package_config": {
}
},
3: {
"host_id": 10,
"reinstall_os": False,
"mac": "00:0c:29:3e:60:a2",
"name": "server03.test",
"hostname": "server03",
"roles": ["os-network", "os-compute-worker"],
"networks": {
"eth0": {
"ip": "12.234.32.103",
"netmask": "255.255.255.0",
"is_mgmt": True,
"is_promiscuous": False,
"subnet": "12.234.32.0/24"
},
"eth1": {
"ip": "172.16.1.3",
"netmask": "255.255.255.0",
"is_mgmt": False,
"is_promiscuous": False,
"subnet": "172.16.1.0/24"
},
"eth2": {
"ip": "10.0.0.1",
"netmask": "255.255.255.0",
"is_mgmt": False,
"is_promiscuous": True,
"subnet": "10.0.0.0/24"
}
},
"ipmi_credentials": {
"ip": "172.16.100.104",
"username": "admin",
"password": "admin"
},
"os_config": {
"general": {
"language": "EN",
"timezone": "UTC",
"default_gateway": "12.234.32.1",
"domain": "ods.com",
"http_proxy": "http://10.145.88.211:3128",
"https_proxy": "",
"ntp_server": "10.145.88.211",
"dns_servers": "10.145.88.211",
"search_path": "ods.com"
},
"partition": {
"/var": {
"max_size": 20,
"size_percentage": 20
},
"/home": {
"max_size": 50,
"size_percentage": 40
}
}
},
"package_config": {
}
}
}
metadata_test_cases = [
{
"metadata": {
"general": {
"_self": {},
"language": {
"_self": {"mapping_to": "lan"}
},
"timezone": {
"_self": {"mapping_to": "timezone"}
}
}
},
"config": {
"general": {
"language": "EN",
"timezone": "UTC"
}
},
"expected_output": {
"lan": "EN",
"timezone": "UTC"
}
},
{
"metadata": {
"security": {
"_self": {"mapping_to": "security"},
"$credentials": {
"_self": {},
"$service": {
"username": {
"_self": {"mapping_to": "user"}
},
"password": {
"_self": {"mapping_to": "pass"}
}
}
}
},
"test": {
"_self": {"mapping_to": "test_section"},
"item1": {
"_self": {"mapping_to": "itema"}
},
"item2": {
"_self": {"mapping_to": "itemb"}
}
}
},
"config": {
"security": {
"service_credentials": {
"glance": {"username": "glance", "password": "glance"},
"identity": {"username": "keystone",
"password": "keystone"},
"dash": {"username": "dash", "password": "dash"}
},
"db_credentials": {
"mysql": {"username": "root", "password": "root"},
"rabbit_mq": {"username": "guest", "password": "guest"}
}
},
"test": {
"item1": "a",
"item2": "b"
}
},
"expected_output": {
"security": {
"service_credentials": {
"glance": {"user": "glance", "pass": "glance"},
"identity": {"user": "keystone", "pass": "keystone"},
"dash": {"user": "dash", "pass": "dash"}
},
"db_credentials": {
"mysql": {"user": "root", "pass": "root"},
"rabbit_mq": {"user": "guest", "pass": "guest"}
}
},
"test_section": {
"itema": "a",
"itemb": "b"
}
}
}
]