compass-core/compass/tests/deployment/test_data/templates/chef_installer/openstack_icehouse/environments/base.tmpl

428 lines
12 KiB
Cheetah

#set controller = $get_role('os_compute_controller', [$get_role('os_controller', None), $get_role('allinone_compute', None)])
## Contoller node management IP/interface
#set controller_ip = $controller.management.ip
#set controller_nic = $controller.management.interface
## Compute node management IP/interface
#set compute = $get_role('os_compute_worker', $get_role('allinone_compute', None))
#set compute_nic = $compute.management.interface
## Network server/worker node IP/interface
#set network = $get_role('os_network', None)
#set network_server = $get_role('os_network_server', [$network, $controller])
#set network_worker = $get_role('os_network_worker', [$network, $compute])
#set network_server_ip = $network_server.management.ip
#set network_server_nic = $network_server.management.interface
## Network worker node management IP/interface
#set network_worker_ip = $network_worker.management.ip
#set network_worker_nic = $network_worker.management.interface
#set network_worker_tenant_nic = $network_worker.tenant.interface
#set network_worker_public_nic = $network_worker.public.interface
## Database node management IP
#set db_role = $get_role('os_ops_database', $controller)
#set db_ip = $db_role.management.ip
#set db_nic = $db_role.management.interface
## Message queue node management IP/interface
#set msg_queue = $get_role('os_ops_messaging', $controller)
#set msg_queue_ip = $msg_queue.management.ip
## Identity (keystone) node IP/interface
#set identity = $get_role('os_identity', $controller)
#set identity_ip = $identity.management.ip
#set identity_nic = $identity.management.interface
## Glance node management IP/interface
#set glance = $get_role('os_image', $controller)
#set glance_ip = $glance.management.ip
#set glance_nic = $glance.management.interface
## Cinder node management IP/interface
#set cinder = $get_role('os_block_storage_controller', $controller)
#set cinder_controller_ip = $cinder.management.ip
#set cinder_controller_nic = $cinder.management.interface
## Dashboard node management IP/interface
#set dash = $get_role('os_dashboard', $controller)
#set dash_ip = $dash.management.ip
## Set services credentials
#set db_pass = $getDictValue('service_credentials/mysql/password', 'root')
#set mq_username = $getDictValue('service_credentials/rabbitmq/username', 'guest')
#set mq_pass = $getDictValue('service_credentials/rabbitmq/password', 'guest')
## Set Openstack neutron config
#set tenant_network_type = $getDictValue('neutron_config/openvswitch/tenant_network_type', 'gre')
#set enable_tunneling = True
#set tunnel_id_ranges = ''
#set vlan_ranges = ''
#set bridge_mappings = ''
#if $tenant_network_type == 'vlan'
#set enable_tunneling = False
#set bridge_mappings = ','.join($getDictValue('neutron_config/openvswitch/bridge_mappings', ['physnet1:br-eth1']))
#set vlan_ranges = ','.join($getDictValue('neutron_config/openvswitch/vlan_ranges', ['physnet1:2700:2999']))
#else
#set tunnel_id_ranges = ','.join($getDictValue('neutron_config/openvswitch/tunnel_id_ranges', ['1:1000']))
#end if
## Utility functions definition
#def get_role($role_name, $default_roles=None)
#set target_role = $getVar($role_name, None)
#if isinstance($target_role, list)
#if $target_role
#set target_role = $target_role[0]
#else
#set target_role = None
#end if
#end if
#if $target_role is None and $default_roles is not None
#if isinstance($default_roles, list)
#for $role in $default_roles
#if $role is not None
#set target_role = $role
#break
#end if
#end for
#else
#set target_role = $default_roles
#end if
#end if
#return $target_role
#end def
#def getDictValue($path, $default_value="")
#set keys = str($path).split('/')
#set value = $getVar($keys[0], {})
#if not $value
#return $default_value
#else
#for $key in $keys[1:]
#try
#set value = $value[$key]
#except
#return $default_value
#end try
#end for
#end if
#return $value
#end def
{
"name": "base",
"description": "Environment used in testing the upstream cookbooks and reference Chef repository",
"cookbook_versions": {
},
"json_class": "Chef::Environment",
"chef_type": "environment",
"override_attributes": {
"compass": {
"cluster_id": "$id"
}
},
"default_attributes": {
"local_repo": "",
"mysql": {
"server_root_password": "$db_pass",
"server_debian_password": "$db_pass",
"server_repl_password": "$db_pass",
"allow_remote_root": true,
"root_network_acl": "%"
},
"collectd": {
"server": {
"host": "metrics",
"port": "4242",
"protocol": "tcp"
}
},
"memcached": {
"bind_interface": "$identity_nic"
},
"openstack": {
"use_databags": false,
"auth": {
"validate_certs": false
},
"block-storage": {
"syslog": {
"use": false
},
"api": {
"ratelimit": "False"
},
"debug": true
},
"dashboard": {
"use_ssl": "false"
},
"compute": {
"syslog": {
"use": false
},
"libvirt": {
"bind_interface": "$compute_nic"
},
"novnc_proxy": {
"bind_interface": "$compute_nic"
},
"xvpvnc_proxy": {
"bind_interface": "$compute_nic"
},
"ratelimit": {
"api": {
"enabled": false
},
"volume": {
"enabled": false
}
},
"network": {
"service_type": "neutron"
}
},
"network": {
"verbose": "True",
"debug": "True",
"service_plugins": [
"router"
],
"ml2": {
"type_drivers": "$tenant_network_type",
"tenant_network_types": "$tenant_network_type",
"tunnel_id_ranges": "$tunnel_id_ranges",
"network_vlan_ranges": "$vlan_ranges",
"enable_security_group": "True"
},
"openvswitch": {
"tenant_network_type": "$tenant_network_type",
"enable_tunneling": "$enable_tunneling",
"tunnel_id_ranges": "$tunnel_id_ranges",
"network_vlan_ranges": "$vlan_ranges",
"bridge_mappings": "$bridge_mappings",
"bind_interface": "$network_worker_tenant_nic"
},
"l3": {
"external_network_bridge_interface": "$network_worker_public_nic"
}
},
"db": {
"bind_interface": "$db_nic",
"compute": {
"host": "$db_ip"
},
"identity": {
"host": "$db_ip"
},
"image": {
"host": "$db_ip"
},
"network": {
"host": "$db_ip"
},
"volume": {
"host": "$db_ip"
},
"dashboard": {
"host": "$db_ip"
},
"telemetry": {
"host": "$db_ip"
},
"orchestration": {
"host": "$db_ip"
}
},
"developer_mode": true,
"endpoints": {
"db": {
"host": "$db_ip"
},
"mq": {
"host": "$msg_queue_ip"
},
"compute-api": {
"host": "$controller_ip",
"scheme": "http",
"port": "8774",
"path": "/v2/%(tenant_id)s"
},
"compute-api-bind": {
"bind_interface": "$controller_nic"
},
"compute-ec2-admin": {
"host": "$controller_ip",
"scheme": "http",
"port": "8773",
"path": "/services/Admin"
},
"compute-ec2-api": {
"host": "$controller_ip",
"scheme": "http",
"port": "8773",
"path": "/services/Cloud"
},
"compute-novnc": {
"host": "$controller_ip",
"scheme": "http",
"port": "6080",
"path": "/vnc_auto.html"
},
"compute-novnc-bind": {
"bind_interface": "$controller_nic"
},
"compute-vnc-bind": {
"bind_interface" : "$compute_nic"
},
"vnc_bind": {
"bind_interface": "$controller_nic"
},
"image-api": {
"host": "$glance_ip",
"scheme": "http",
"port": "9292",
"path": "/v2"
},
"image-api-bind": {
"bind_interface": "$glance_nic"
},
"image-registry": {
"host": "$glance_ip",
"scheme": "http",
"port": "9191",
"path": "/v2"
},
"image-registry-bind": {
"bind_interface": "$glance_nic"
},
"identity-bind": {
"bind_interface": "$identity_nic"
},
"identity-api": {
"host": "$identity_ip",
"scheme": "http",
"port": "5000",
"path": "/v2.0"
},
"identity-admin": {
"host": "$identity_ip",
"scheme": "http",
"port": "35357",
"path": "/v2.0"
},
"block-storage-api": {
"host": "$cinder_controller_ip",
"scheme": "http",
"port": "8776",
"path": "/v1/%(tenant_id)s"
},
"block-storage-api-bind": {
"bind_interface": "$cinder_controller_nic"
},
"telemetry-api": {
"host": "$controller_ip",
"scheme": "http",
"port": "8777",
"path": "/v1"
},
"network-api": {
"host": "$network_server_ip",
"scheme": "http",
"port": "9696",
"path": ""
},
"network-api-bind": {
"bind_interface": "$network_server_nic"
},
"orchestration-api": {
"host": "$controller_ip",
"scheme": "http",
"port": "8004",
"path": "/v1/%(tenant_id)s"
},
"orchestration-api-cfn": {
"host": "$controller_ip",
"scheme": "http",
"port": "8000",
"path": "/v1"
}
},
"identity": {
"admin_user": "admin",
"bind_interface": "$identity_nic",
"catalog": {
"backend": "sql"
},
"debug": true,
"roles": [
"admin",
"member"
],
"syslog": {
"use": false
},
"tenants": [
"admin",
"service",
"demo"
],
"token": {
"backend": "sql"
},
"users": {
"admin": {
"password": "admin",
"default_tenant": "admin",
"roles": {
"admin": [
"admin"
]
}
},
"demo": {
"password": "demo",
"default_tenant": "demo",
"roles": {
"member": [
"demo"
]
}
}
}
},
"image": {
"api": {
"bind_interface": "$glance_nic"
},
"debug": true,
"registry": {
"bind_interface": "$glance_nic"
},
"syslog": {
"use": false
},
"upload_image": {
"cirros": "http://download.cirros-cloud.net/0.3.2/cirros-0.3.2-x86_64-disk.img"
},
"upload_images": [
"cirros"
]
},
"mq": {
"user": "$mq_username",
"password": "$mq_pass",
"vhost": "/nova",
"network": {
"service_type": "rabbitmq"
}
}
}
}
}