Set swift_partition to /var/lib/glance/node by default

We should use /var/lib/glance/node as swift partition
by default as it was before and provide access
to this folder for swift user.
Also noop tests were added to cover this parameter.

Closes-bug: #1508482
Change-Id: I928a87c0ad623f4d5a5dbcaaf8a71e3290d68d01
(cherry picked from commit 77316ef284)
This commit is contained in:
Michael Polenchuk 2015-12-07 15:45:39 +03:00
parent 40921ee789
commit 6afb21a863
12 changed files with 63 additions and 9 deletions

View File

@ -40,8 +40,26 @@ if !($storage_hash['images_ceph'] and $storage_hash['objects_ceph']) and !$stora
$master_swift_proxy_nodes_list = values($master_swift_proxy_nodes)
$master_swift_proxy_ip = regsubst($master_swift_proxy_nodes_list[0]['network_roles']['swift/api'], '\/\d+$', '')
$master_swift_replication_ip = regsubst($master_swift_proxy_nodes_list[0]['network_roles']['swift/replication'], '\/\d+$', '')
$swift_partition = hiera('swift_partition', '/var/lib/glance/node')
if ($deploy_swift_storage){
if $swift_partition =~ /^\/var\/lib\/glance/ {
if !defined(File['/var/lib/glance']) {
file {'/var/lib/glance':
ensure => 'directory',
group => 'swift',
require => Package['swift'],
}
} else { # overwrite
File['/var/lib/glance'] {
ensure => 'directory',
group => 'swift',
require +> Package['swift'],
}
}
File['/var/lib/glance'] -> Service <| tag == 'swift-service' |>
}
class { 'openstack::swift::storage_node':
storage_type => false,
loopback_size => '5243780',

View File

@ -215,5 +215,6 @@ class swift::proxy(
provider => $::swift::params::service_provider,
hasstatus => true,
subscribe => Concat['/etc/swift/proxy-server.conf'],
tag => 'swift-service',
}
}

View File

@ -44,6 +44,7 @@ class swift::storage::account(
enable => $enabled,
provider => $::swift::params::service_provider,
require => Package['swift-account'],
tag => 'swift-service',
}
service { 'swift-account-auditor':
@ -52,5 +53,6 @@ class swift::storage::account(
enable => $enabled,
provider => $::swift::params::service_provider,
require => Package['swift-account'],
tag => 'swift-service',
}
}

View File

@ -49,6 +49,7 @@ class swift::storage::container(
enable => $enabled,
provider => $::swift::params::service_provider,
require => Package['swift-container'],
tag => 'swift-service',
}
service { 'swift-container-auditor':
@ -57,6 +58,7 @@ class swift::storage::container(
enable => $enabled,
provider => $::swift::params::service_provider,
require => Package['swift-container'],
tag => 'swift-service',
}
if $::operatingsystem == 'Ubuntu' {

View File

@ -72,6 +72,7 @@ define swift::storage::generic(
hasstatus => true,
provider => $service_provider,
subscribe => Package["swift-${name}"],
tag => 'swift-service',
}
service { "swift-${name}-replicator":
@ -81,6 +82,7 @@ define swift::storage::generic(
hasstatus => true,
provider => $service_provider,
subscribe => Package["swift-${name}"],
tag => 'swift-service',
}
}

View File

@ -44,6 +44,7 @@ class swift::storage::object(
enable => $enabled,
provider => $::swift::params::service_provider,
require => Package['swift-object'],
tag => 'swift-service',
}
service { 'swift-object-auditor':
@ -52,5 +53,6 @@ class swift::storage::object(
enable => $enabled,
provider => $::swift::params::service_provider,
require => Package['swift-object'],
tag => 'swift-service',
}
}

View File

@ -42,7 +42,8 @@ describe 'swift::proxy' do
:provider => 'upstart',
:enable => true,
:hasstatus => true,
:subscribe => 'Concat[/etc/swift/proxy-server.conf]'
:subscribe => 'Concat[/etc/swift/proxy-server.conf]',
:tag => 'swift-service',
}
)}
it { is_expected.to contain_file('/etc/swift/proxy-server.conf').with(

View File

@ -38,7 +38,8 @@ describe 'swift::storage::account' do
is_expected.to contain_service(service_alias).with(
:name => service_name,
:ensure => (param_hash[:manage_service] && param_hash[:enabled]) ? 'running' : 'stopped',
:enable => param_hash[:enabled]
:enable => param_hash[:enabled],
:tag => 'swift-service',
)
end
end
@ -57,7 +58,8 @@ describe 'swift::storage::account' do
is_expected.to contain_service(service_alias).with(
:ensure => nil,
:name => service_name,
:enable => false
:enable => false,
:tag => 'swift-service',
)
end
end

View File

@ -38,7 +38,8 @@ describe 'swift::storage::container' do
is_expected.to contain_service(service_alias).with(
:name => service_name,
:ensure => (param_hash[:manage_service] && param_hash[:enabled]) ? 'running' : 'stopped',
:enable => param_hash[:enabled]
:enable => param_hash[:enabled],
:tag => 'swift-service',
)
end
end
@ -57,7 +58,8 @@ describe 'swift::storage::container' do
is_expected.to contain_service(service_alias).with(
:ensure => nil,
:name => service_name,
:enable => false
:enable => false,
:tag => 'swift-service',
)
end
end

View File

@ -39,7 +39,8 @@ describe 'swift::storage::object' do
is_expected.to contain_service(service_alias).with(
:name => service_name,
:ensure => (param_hash[:manage_service] && param_hash[:enabled]) ? 'running' : 'stopped',
:enable => param_hash[:enabled]
:enable => param_hash[:enabled],
:tag => 'swift-service',
)
end
end
@ -58,7 +59,8 @@ describe 'swift::storage::object' do
is_expected.to contain_service(service_alias).with(
:ensure => nil,
:name => service_name,
:enable => false
:enable => false,
:tag => 'swift-service',
)
end
end

View File

@ -59,12 +59,14 @@ describe 'swift::storage::generic' do
:ensure => 'running',
:enable => true,
:hasstatus => true,
:provider => param_hash[:service_provider]
:provider => param_hash[:service_provider],
:tag => 'swift-service',
)}
it { is_expected.to contain_file("/etc/swift/#{t}-server/").with(
:ensure => 'directory',
:owner => 'swift',
:group => 'swift'
:group => 'swift',
:tag => 'swift-service',
)}
end
# TODO - I do not want to add tests for the upstart stuff

View File

@ -15,6 +15,16 @@ describe manifest do
# Swift
if !(storage_hash['images_ceph'] and storage_hash['objects_ceph']) and !storage_hash['images_vcenter']
swift_partition = Noop.hiera 'swift_partition'
unless swift_partition
swift_partition = '/var/lib/glance/node'
it 'should allow swift user to write into /var/lib/glance directory' do
should contain_file('/var/lib/glance').with(
'ensure' => 'directory',
'group' => 'swift',
).that_requires('Package[swift]')
end
end
if role == 'primary-controller'
['account', 'object', 'container'].each do | ring |
it "should run pretend_min_part_hours_passed before rabalancing swift #{ring} ring" do
@ -58,6 +68,14 @@ describe manifest do
'memcache_servers' => memcached_servers,
)
end
it 'should configure swift on separate partition' do
should contain_file(swift_partition).with(
'ensure' => 'directory',
'owner' => 'swift',
'group' => 'swift',
)
end
end
end
test_ubuntu_and_centos manifest