diff --git a/fixtures/scenario001.pp b/fixtures/scenario001.pp index 12fa1f573..94aaa8386 100644 --- a/fixtures/scenario001.pp +++ b/fixtures/scenario001.pp @@ -402,6 +402,70 @@ class { '::heat::api_cfn': workers => '2', } +# Deploy Swift +include ::memcached +class { '::swift': + swift_hash_suffix => 'secrete', +} +class { '::swift::proxy': + proxy_local_net_ip => '127.0.0.1', + workers => '4', + pipeline => [ +'catch_errors', 'healthcheck', 'cache', 'tempurl', 'ratelimit', +'authtoken', 'keystone', 'formpost', 'staticweb', 'container_quotas', +'account_quotas', 'proxy-logging', 'proxy-server' + ], +} +include ::swift::proxy::catch_errors +include ::swift::proxy::healthcheck +include ::swift::proxy::proxy_logging +include ::swift::proxy::cache +include ::swift::proxy::tempurl +include ::swift::proxy::ratelimit +class { '::swift::proxy::authtoken': + auth_uri => 'http://127.0.0.1:5000/v2.0', + identity_uri => 'http://127.0.0.1:35357/', + admin_password => 'a_big_secret', +} +class { '::swift::proxy::keystone': + operator_roles => ['Member', 'admin', 'SwiftOperator'] +} +include ::swift::proxy::formpost +include ::swift::proxy::staticweb +include ::swift::proxy::container_quotas +include ::swift::proxy::account_quotas +include ::swift::proxy::tempauth +class { '::swift::keystone::auth': + password => 'a_big_secret', +} +file { '/srv/node': + ensure => directory, + owner => 'swift', + group => 'swift', + require => Package['swift'], +} +include ::swift::ringbuilder +class { '::swift::storage::all': + storage_local_net_ip => '127.0.0.1', + incoming_chmod => 'Du=rwx,g=rx,o=rx,Fu=rw,g=r,o=r', + outgoing_chmod => 'Du=rwx,g=rx,o=rx,Fu=rw,g=r,o=r', +} +$swift_components = ['account', 'container', 'object'] +swift::storage::filter::recon { $swift_components : } +swift::storage::filter::healthcheck { $swift_components : } +ring_object_device { '127.0.0.1:6000/1': + zone => 1, + weight => 1, +} +ring_container_device { '127.0.0.1:6001/1': + zone => 1, + weight => 1, +} +ring_account_device { '127.0.0.1:6002/1': + zone => 1, + weight => 1, +} + # 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' @@ -500,6 +564,7 @@ class { '::tempest': ceilometer_available => true, sahara_available => true, heat_available => true, + swift_available => true, public_network_name => 'public', flavor_ref => '42', flavor_ref_alt => '84', diff --git a/run_tests.sh b/run_tests.sh index 359df6b04..8520c1199 100755 --- a/run_tests.sh +++ b/run_tests.sh @@ -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, Neutron, Ceilometer, Cinder, Sahara and Heat +# run a scenario that validates Keystone, Nova, Glance, Neutron, Ceilometer, Cinder, Sahara, Swift and Heat cd /tmp/openstack/tempest; tox -eall -- --concurrency=2 smoke