Skip to content

Commit f207761

Browse files
committed
Merge pull request huit#61 from excessivedemon/master
Added support for setting replace property when creating ${splunkhome}/etc/passwd file
2 parents 0005d47 + 0dceb73 commit f207761

File tree

4 files changed

+46
-27
lines changed

4 files changed

+46
-27
lines changed

manifests/init.pp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,7 @@
119119
$package_source = undef,
120120
$package_provider = undef,
121121
$version = $::splunk::params::version,
122+
$replace_passwd = $::splunk::params::replace_passwd,
122123
) inherits splunk::params {
123124

124125
# Added the preseed hack after getting the idea from very cool

manifests/install.pp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
$version = $::splunk::version,
99
$package_source = $::splunk::package_source,
1010
$package_provider = $::splunk::package_provider,
11+
$replace_passwd = $::splunk::replace_passwd
1112
) {
1213

1314
package { $pkgname:
@@ -51,6 +52,7 @@
5152

5253
file { "${splunkhome}/etc/passwd":
5354
ensure => present,
55+
replace => $replace_passwd,
5456
mode => '0600',
5557
owner => 'root',
5658
group => 'root',

manifests/params.pp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
$proxyserver = undef
1414
$purge = undef
1515
$version = 'installed'
16+
$replace_passwd = 'no'
1617

1718
if $::mode == maintenance {
1819
$service_ensure = 'stopped'

spec/classes/splunk_spec.rb

Lines changed: 42 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -3,52 +3,67 @@
33
describe 'splunk', :type => :class do
44
describe "on RedHat platform" do
55
let(:facts) { { :osfamily => 'RedHat' } }
6-
7-
describe "Splunk class with no parameters, basic test" do
8-
let(:params) { { } }
6+
shared_examples "splunk_general" do
7+
it {
8+
should compile
9+
should create_class('splunk')
10+
should contain_class('splunk::outputs')
11+
should contain_class('splunk::config::mgmt_port')
12+
should contain_service('splunk').with(
13+
'ensure' => 'running',
14+
'enable' => 'true'
15+
)
16+
}
17+
end
18+
shared_examples "forwarder_general" do
19+
include_examples "splunk_general" do
920
it {
10-
should compile
11-
should create_class('splunk')
12-
should contain_class('splunk::outputs')
13-
should contain_class('splunk::config::mgmt_port')
1421
should contain_package('splunkforwarder')
15-
should contain_service('splunk').with(
16-
'ensure' => 'running',
17-
'enable' => 'true'
22+
should contain_file('/opt/splunkforwarder/etc/passwd').with(
23+
'replace' => 'no'
1824
)
25+
}
26+
end
27+
end
28+
describe "Splunk class with no parameters, basic test" do
29+
include_examples "forwarder_general" do
30+
let(:params) { { } }
31+
it {
1932
should contain_file('/opt/splunkforwarder/etc/system/local/outputs.conf')
2033
}
34+
end
2135
end
2236
describe "With type param set to 'lwf'" do
23-
let(:params) { { :type => 'lwf' } }
37+
include_examples "splunk_general" do
38+
let(:params) { { :type => 'lwf' } }
2439
it {
25-
should compile
26-
should create_class('splunk')
27-
should contain_class('splunk::outputs')
28-
should contain_class('splunk::config::mgmt_port')
2940
should contain_class('splunk::config::lwf')
3041
should contain_class('splunk::config::remove_uf')
3142
should contain_package('splunk')
32-
should contain_service('splunk').with(
33-
'ensure' => 'running',
34-
'enable' => 'true'
43+
should contain_file('/opt/splunk/etc/passwd').with(
44+
'replace' => 'no'
3545
)
3646
}
47+
end
3748
end
3849
describe "With configure_outputs set to false" do
39-
let(:params) { { :configure_outputs => false } }
50+
include_examples "forwarder_general" do
51+
let(:params) { { :configure_outputs => false } }
4052
it {
41-
should compile
42-
should create_class('splunk')
43-
should contain_class('splunk::outputs')
44-
should contain_class('splunk::config::mgmt_port')
45-
should contain_package('splunkforwarder')
4653
should_not contain_file('/opt/splunkforwarder/etc/system/local/outputs.conf')
47-
should contain_service('splunk').with(
48-
'ensure' => 'running',
49-
'enable' => 'true'
54+
}
55+
end
56+
end
57+
describe "With replace_passwd set to yes" do
58+
include_examples "splunk_general" do
59+
let(:params) { { :replace_passwd => 'yes' } }
60+
it {
61+
should contain_package('splunkforwarder')
62+
should contain_file('/opt/splunkforwarder/etc/passwd').with(
63+
'replace' => 'yes'
5064
)
5165
}
66+
end
5267
end
5368
end
5469
end

0 commit comments

Comments
 (0)