Hi,
I have below manifests
class module_name::params {
$filetype = $::operatingsystemmajrelease ? {
'5' => 'ext3',
'6' => 'ext4',
'7' => 'xfs',
default => fail("OS release ${::operatingsystemrelease} is not supported.")
}
below is the define class for the module
define module_name::iterate($fssize,$disk) {
include 'module_name::params'
$add_disk = inline_template('<%= fssize.to_i + 1 %>')
if versioncmp("${add_disk}", "${disk}") <= 0 {
if versioncmp("${add_disk}", '10') < 0 {
file { "/grid/0${add_disk}" :
ensure => directory,
owner => 'root',
group => 'root',
mode => '0755',
}
filesystem { $::module_name::params::pdisk[$add_disk] :
ensure => present,
fs_type => $::module_name::params::filetype,
options => $::module_name::params::mkfs_options,
}
mount { "hadoopfs${add_disk}" :
ensure => mounted,
name => "/grid/0${add_disk}",
device => $::module_name::params::pdisk[$add_disk],
filetype => $::module_name::params::filetype,
options => 'defaults,noatime',
atboot => true,
dump => '1',
pass => '2',
require => File["/grid/0${add_disk}"]
}
module_name::iterate { "count+${add_disk}":
fssize => $add_disk,
disk => $disk,
}
}
}
Rspec-puppet
describe 'module_name::iterate', :type => 'define' do
let(:pre_condition) { 'include module_name::params' }
let(:facts) {{ :operatingsystemrelease => '6' }}
let(:title) { 'osversion' }
let(:params) do
{
'5' => 'ext3',
'6' => 'ext4',
'7' => 'xfs',
}
end
['01',
'02',
'03',
'04',
'05',
'06',
'07',
'08',
'09',
'010',
'011',
'012',
'013',
'014',
'015',
'016',
'016',
'017',
'018',
'019',
'020',
'021',
'022',
'023',
'024'].each do|value|
it { should contain_file("/grid/#{value}").with(
'ensure' => 'directory',
'owner' => 'root',
'group' => 'root',
'mode' => '0755',
)}
end
end
when I run rspec-puppet getting below error message
hadoop::recursion should contain File[/grid/01] with ensure => "directory", owner => "root", group => "root" and mode => "0755"
Failure/Error: )}
Puppet::Error:
Function 'fail' does not return a value at /root/modules/hadoop/spec/fixtures/modules/hadoop/manifests/params.pp:15 on node puppet.example.com
# ./spec/defines/hadoop_def_spec.rb:381:in `block (4 levels) in '
2) hadoop::recursion should contain File[/grid/02] with ensure => "directory", owner => "root", group => "root" and mode => "0755"
Failure/Error: )}
Puppet::Error:
Function 'fail' does not return a value at /root/modules/hadoop/spec/fixtures/modules/hadoop/manifests/params.pp:15 on node puppet.example.com
# ./spec/defines/hadoop_def_spec.rb:381:in `block (4 levels) in '
The intent of the code is, create disk with recursion.
↧