scenario001: add volume service
* Install & Configure Cinder with iSCSI backend * Enable volume tests in Tempest * Add default_floating_pool parameter to Nova API configuration to tempest volume scenario can work, since it uses Nova API to associate the floating IP. Change-Id: I8bc007f3182741b2710dc0615261d9bd403f781f
This commit is contained in:
parent
ae784b33e6
commit
dbb4feae20
@ -68,13 +68,13 @@ rabbitmq_vhost { '/':
|
||||
provider => 'rabbitmqctl',
|
||||
require => Class['rabbitmq'],
|
||||
}
|
||||
rabbitmq_user { ['neutron', 'nova']:
|
||||
rabbitmq_user { ['neutron', 'nova', 'cinder']:
|
||||
admin => true,
|
||||
password => 'an_even_bigger_secret',
|
||||
provider => 'rabbitmqctl',
|
||||
require => Class['rabbitmq'],
|
||||
}
|
||||
rabbitmq_user_permissions { ['neutron@/', 'nova@/']:
|
||||
rabbitmq_user_permissions { ['neutron@/', 'nova@/', 'cinder@/']:
|
||||
configure_permission => '.*',
|
||||
write_permission => '.*',
|
||||
read_permission => '.*',
|
||||
@ -215,6 +215,7 @@ class { '::nova::api':
|
||||
osapi_compute_workers => 4,
|
||||
ec2_workers => 4,
|
||||
metadata_workers => 4,
|
||||
default_floating_pool => 'public',
|
||||
}
|
||||
class { '::nova::cert': }
|
||||
class { '::nova::client': }
|
||||
@ -234,6 +235,57 @@ class { '::nova::network::neutron':
|
||||
neutron_admin_auth_url => 'http://127.0.0.1:35357/v2.0',
|
||||
}
|
||||
|
||||
# Deploy Cinder
|
||||
class { '::cinder::db::mysql':
|
||||
password => 'cinder',
|
||||
}
|
||||
class { '::cinder::keystone::auth':
|
||||
password => 'a_big_secret',
|
||||
}
|
||||
class { '::cinder':
|
||||
database_connection => 'mysql://cinder:cinder@127.0.0.1/cinder?charset=utf8',
|
||||
rabbit_host => '127.0.0.1',
|
||||
rabbit_userid => 'cinder',
|
||||
rabbit_password => 'an_even_bigger_secret',
|
||||
verbose => true,
|
||||
debug => true,
|
||||
}
|
||||
class { '::cinder::api':
|
||||
keystone_password => 'a_big_secret',
|
||||
identity_uri => 'http://127.0.0.1:35357/',
|
||||
default_volume_type => 'BACKEND_1',
|
||||
service_workers => 4,
|
||||
}
|
||||
class { '::cinder::quota': }
|
||||
class { '::cinder::scheduler': }
|
||||
class { '::cinder::scheduler::filter': }
|
||||
class { '::cinder::volume': }
|
||||
class { '::cinder::cron::db_purge': }
|
||||
class { '::cinder::glance':
|
||||
glance_api_servers => 'localhost:9292',
|
||||
}
|
||||
class { '::cinder::setup_test_volume':
|
||||
size => '15G',
|
||||
}
|
||||
cinder::backend::iscsi { 'BACKEND_1':
|
||||
iscsi_ip_address => '127.0.0.1',
|
||||
}
|
||||
class { '::cinder::backends':
|
||||
enabled_backends => ['BACKEND_1'],
|
||||
}
|
||||
Cinder::Type {
|
||||
os_password => 'a_big_secret',
|
||||
os_tenant_name => 'services',
|
||||
os_username => 'cinder',
|
||||
os_auth_url => 'http://127.0.0.1:5000/v2.0',
|
||||
}
|
||||
cinder::type { 'BACKEND_1':
|
||||
set_key => 'volume_backend_name',
|
||||
set_value => 'BACKEND_1',
|
||||
notify => Service['cinder-volume'],
|
||||
require => Service['cinder-api'],
|
||||
}
|
||||
|
||||
# Configure Tempest and the resources
|
||||
$os_auth_options = '--os-username admin --os-password a_big_secret --os-tenant-name openstack --os-auth-url http://127.0.0.1:5000/v2.0'
|
||||
|
||||
@ -324,7 +376,7 @@ class { '::tempest':
|
||||
auth_version => 'v3',
|
||||
image_name => 'cirros',
|
||||
image_name_alt => 'cirros_alt',
|
||||
cinder_available => false,
|
||||
cinder_available => true,
|
||||
glance_available => true,
|
||||
horizon_available => false,
|
||||
nova_available => true,
|
||||
|
@ -84,5 +84,5 @@ fi
|
||||
# TODO(emilien) later, we should use local image if present. That would be a next iteration.
|
||||
wget http://download.cirros-cloud.net/0.3.4/cirros-0.3.4-x86_64-disk.img -P /tmp/openstack/tempest
|
||||
|
||||
# run a scenario that validates Keystone, Nova, Glance and Neutron
|
||||
# run a scenario that validates Keystone, Nova, Glance, Neutron and Cinder
|
||||
cd /tmp/openstack/tempest; tox -eall -- --concurrency=4 smoke
|
||||
|
Loading…
Reference in New Issue
Block a user