Files
cookbook-openstack-block-st…/spec/volume-opensuse_spec.rb
Chen Zhiwei 9cf9a0adfa Upgrade to Havana release
Also upgrade gems:
- berkshelf, ~> 2.0.10
- chefspec, ~> 3.0.2
- foodcritic, ~> 3.0.3
And update the DEPRECATION keywords

Change-Id: I8f8bf961ec065944696d4c85120aefe6c2bf76bb
2013-12-12 21:06:04 -05:00

64 lines
2.0 KiB
Ruby

require_relative "spec_helper"
describe "openstack-block-storage::volume" do
before { block_storage_stubs }
describe "opensuse" do
before do
@chef_run = ::ChefSpec::Runner.new ::OPENSUSE_OPTS
@chef_run.converge "openstack-block-storage::volume"
end
it "installs cinder volume packages" do
expect(@chef_run).to upgrade_package "openstack-cinder-volume"
end
it "installs mysql python packages by default" do
expect(@chef_run).to upgrade_package "python-mysql"
end
it "installs postgresql python packages if explicitly told" do
chef_run = ::ChefSpec::Runner.new ::OPENSUSE_OPTS
node = chef_run.node
node.set["openstack"]["db"]["volume"]["db_type"] = "postgresql"
chef_run.converge "openstack-block-storage::volume"
expect(chef_run).to upgrade_package "python-psycopg2"
expect(chef_run).not_to upgrade_package "python-mysql"
end
it "installs cinder iscsi packages" do
expect(@chef_run).to upgrade_package "tgt"
end
it "starts cinder volume" do
expect(@chef_run).to start_service "openstack-cinder-volume"
end
it "starts cinder volume on boot" do
expected = "openstack-cinder-volume"
expect(@chef_run).to enable_service expected
end
it "starts iscsi target on boot" do
expect(@chef_run).to enable_service "tgtd"
end
it "installs nfs packages" do
chef_run = ::ChefSpec::Runner.new ::OPENSUSE_OPTS do |n|
n.set["openstack"]["block-storage"]["volume"]["driver"] = "cinder.volume.drivers.netapp.nfs.NetAppDirect7modeNfsDriver"
end
chef_run.converge "openstack-block-storage::volume"
expect(chef_run).to upgrade_package "nfs-utils"
expect(chef_run).not_to upgrade_package "nfs-utils-lib"
end
it "has opensuse include" do
file = "/etc/tgt/targets.conf"
expect(@chef_run).to render_file(file).with_content("include /var/lib/cinder/volumes/*")
expect(@chef_run).not_to render_file(file).with_content("include /etc/tgt/conf.d/*.conf")
end
end
end