6617991ebac2ab1edceff11a24341e83015ce301
[mirror/dsa-puppet.git] / 3rdparty / modules / cinder / manifests / volume.pp
1 # $volume_name_template = volume-%s
2 class cinder::volume (
3   $package_ensure = 'present',
4   $enabled        = true,
5   $manage_service = true
6 ) {
7
8   include cinder::params
9
10   Cinder_config<||> ~> Service['cinder-volume']
11   Cinder_api_paste_ini<||> ~> Service['cinder-volume']
12   Exec<| title == 'cinder-manage db_sync' |> ~> Service['cinder-volume']
13
14   if $::cinder::params::volume_package {
15     Package['cinder-volume'] -> Cinder_config<||>
16     Package['cinder-volume'] -> Cinder_api_paste_ini<||>
17     Package['cinder']        -> Package['cinder-volume']
18     Package['cinder-volume'] -> Service['cinder-volume']
19     package { 'cinder-volume':
20       ensure => $package_ensure,
21       name   => $::cinder::params::volume_package,
22     }
23   }
24
25   if $manage_service {
26     if $enabled {
27       $ensure = 'running'
28     } else {
29       $ensure = 'stopped'
30     }
31   }
32
33   service { 'cinder-volume':
34     ensure    => $ensure,
35     name      => $::cinder::params::volume_service,
36     enable    => $enabled,
37     hasstatus => true,
38     require   => Package['cinder'],
39   }
40 }