diff --git a/manifests/storage/.mount.pp.swp b/manifests/storage/.mount.pp.swp new file mode 100644 index 00000000..89b41e76 Binary files /dev/null and b/manifests/storage/.mount.pp.swp differ diff --git a/manifests/storage/loopback.pp b/manifests/storage/loopback.pp index 7221000a..401fea1d 100644 --- a/manifests/storage/loopback.pp +++ b/manifests/storage/loopback.pp @@ -39,6 +39,7 @@ define swift::storage::loopback( mnt_base_dir => $mnt_base_dir, byte_size => $byte_size, subscribe => Exec["create_partition-${name}"], + loopback => true, } } diff --git a/manifests/storage/mount.pp b/manifests/storage/mount.pp index dd5b3d01..eb43380f 100644 --- a/manifests/storage/mount.pp +++ b/manifests/storage/mount.pp @@ -5,9 +5,14 @@ # define swift::storage::mount( $device, - $mnt_base_dir = '/srv/node' + $mnt_base_dir = '/srv/node', + $loopback = false, ) { - + if($loopback){ + $options = 'noatime,nodiratime,nobarrier,logbufs=8,loop' + } else { + $options = 'noatime,nodiratime,nobarrier,logbufs=8' + } # the directory that represents the mount point # needs to exist file { "${mnt_base_dir}/${name}": @@ -20,7 +25,7 @@ define swift::storage::mount( ensure => present, device => $device, fstype => 'xfs', - options => 'loop,noatime,nodiratime,nobarrier,logbufs=8', + options => $options, require => File["${mnt_base_dir}/${name}"] } diff --git a/manifests/storage/xfs.pp b/manifests/storage/xfs.pp index d29b44a2..67173552 100644 --- a/manifests/storage/xfs.pp +++ b/manifests/storage/xfs.pp @@ -13,7 +13,8 @@ define swift::storage::xfs( $device, $byte_size = '1024', - $mnt_base_dir = '/srv/node' + $mnt_base_dir = '/srv/node', + $loopback = false, ) { include swift::xfs @@ -29,7 +30,8 @@ define swift::storage::xfs( swift::storage::mount { $name: device => $device, mnt_base_dir => $mnt_base_dir, - subscribe => Exec["mkfs-${name}"] + subscribe => Exec["mkfs-${name}"], + loopback => $loopback, } }