Skip to content

Commit b4ed317

Browse files
authoredSep 24, 2017
Merge pull request #141 from TraGicCode/feature/deployment_client
Add deploymentclient types
2 parents fd6879e + fcdfa11 commit b4ed317

File tree

7 files changed

+139
-85
lines changed

7 files changed

+139
-85
lines changed
 
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
Puppet::Type.type(:splunk_deploymentclient).provide(
2+
:ini_setting,
3+
parent: Puppet::Type.type(:ini_setting).provider(:splunk)
4+
) do
5+
def self.file_name
6+
'system/local/deploymentclient.conf'
7+
end
8+
end
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
Puppet::Type.type(:splunkforwarder_deploymentclient).provide(
2+
:ini_setting,
3+
parent: Puppet::Type.type(:ini_setting).provider(:splunk)
4+
) do
5+
def self.file_name
6+
'system/local/deploymentclient.conf'
7+
end
8+
end

‎lib/puppet/type/splunk_config.rb

+24-18
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@
2727
:purge_alert_actions,
2828
:purge_authentication,
2929
:purge_authorize,
30+
:purge_deploymentclient,
3031
:purge_distsearch,
3132
:purge_indexes,
3233
:purge_limits,
@@ -35,6 +36,7 @@
3536
:purge_transforms,
3637
:purge_web,
3738
:purge_uiprefs,
39+
:purge_forwarder_deploymentclient,
3840
:purge_forwarder_inputs,
3941
:purge_forwarder_outputs,
4042
:purge_forwarder_props,
@@ -57,24 +59,26 @@ def generate
5759
resources = []
5860

5961
{
60-
Puppet::Type::Splunk_output => self[:purge_outputs],
61-
Puppet::Type::Splunk_input => self[:purge_inputs],
62-
Puppet::Type::Splunk_alert_actions => self[:purge_alert_actions],
63-
Puppet::Type::Splunk_authentication => self[:purge_authentication],
64-
Puppet::Type::Splunk_authorize => self[:purge_authorize],
65-
Puppet::Type::Splunk_distsearch => self[:purge_distsearch],
66-
Puppet::Type::Splunk_indexes => self[:purge_indexes],
67-
Puppet::Type::Splunk_props => self[:purge_props],
68-
Puppet::Type::Splunk_server => self[:purge_server],
69-
Puppet::Type::Splunk_transforms => self[:purge_transforms],
70-
Puppet::Type::Splunk_web => self[:purge_web],
71-
Puppet::Type::Splunk_uiprefs => self[:purge_uiprefs],
72-
Puppet::Type::Splunkforwarder_input => self[:purge_forwarder_inputs],
73-
Puppet::Type::Splunkforwarder_output => self[:purge_forwarder_outputs],
74-
Puppet::Type::Splunkforwarder_props => self[:purge_forwarder_props],
75-
Puppet::Type::Splunkforwarder_transforms => self[:purge_forwarder_transforms],
76-
Puppet::Type::Splunkforwarder_web => self[:purge_forwarder_web],
77-
Puppet::Type::Splunkforwarder_server => self[:purge_forwarder_server]
62+
Puppet::Type::Splunk_alert_actions => self[:purge_alert_actions],
63+
Puppet::Type::Splunk_output => self[:purge_outputs],
64+
Puppet::Type::Splunk_input => self[:purge_inputs],
65+
Puppet::Type::Splunk_authentication => self[:purge_authentication],
66+
Puppet::Type::Splunk_authorize => self[:purge_authorize],
67+
Puppet::Type::Splunk_deploymentclient => self[:purge_deploymentclient],
68+
Puppet::Type::Splunk_distsearch => self[:purge_distsearch],
69+
Puppet::Type::Splunk_indexes => self[:purge_indexes],
70+
Puppet::Type::Splunk_props => self[:purge_props],
71+
Puppet::Type::Splunk_server => self[:purge_server],
72+
Puppet::Type::Splunk_transforms => self[:purge_transforms],
73+
Puppet::Type::Splunk_web => self[:purge_web],
74+
Puppet::Type::Splunk_uiprefs => self[:purge_uiprefs],
75+
Puppet::Type::Splunkforwarder_deploymentclient => self[:purge_forwarder_deploymentclient],
76+
Puppet::Type::Splunkforwarder_input => self[:purge_forwarder_inputs],
77+
Puppet::Type::Splunkforwarder_output => self[:purge_forwarder_outputs],
78+
Puppet::Type::Splunkforwarder_props => self[:purge_forwarder_props],
79+
Puppet::Type::Splunkforwarder_transforms => self[:purge_forwarder_transforms],
80+
Puppet::Type::Splunkforwarder_web => self[:purge_forwarder_web],
81+
Puppet::Type::Splunkforwarder_server => self[:purge_forwarder_server]
7882
}.each do |k, purge|
7983
resources.concat(purge_splunk_resources(k)) if purge == :true
8084
end
@@ -87,6 +91,7 @@ def set_provider_paths
8791
:splunk_alert_actions,
8892
:splunk_authentication,
8993
:splunk_authorize,
94+
:splunk_deploymentclient,
9095
:splunk_distsearch,
9196
:splunk_indexes,
9297
:splunk_limits,
@@ -102,6 +107,7 @@ def set_provider_paths
102107
provider_class.file_path = self[:server_confdir]
103108
end
104109
[
110+
:splunkforwarder_deploymentclient,
105111
:splunkforwarder_input,
106112
:splunkforwarder_output,
107113
:splunkforwarder_props,
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
require File.join(File.dirname(__FILE__), '..', '..', 'puppet_x/puppetlabs/splunk/type')
2+
3+
Puppet::Type.newtype(:splunk_deploymentclient) do
4+
@doc = 'Manage splunk deploymentclient entries in deploymentclient.conf'
5+
PuppetX::Puppetlabs::Splunk::Type.clone_type(self)
6+
end
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
require File.join(File.dirname(__FILE__), '..', '..', 'puppet_x/puppetlabs/splunk/type')
2+
3+
Puppet::Type.newtype(:splunkforwarder_deploymentclient) do
4+
@doc = 'Manage splunkforwarder deploymentclient entries in deploymentclient.conf'
5+
PuppetX::Puppetlabs::Splunk::Type.clone_type(self)
6+
end

‎manifests/forwarder.pp

+40-32
Original file line numberDiff line numberDiff line change
@@ -45,26 +45,27 @@
4545
# Requires: nothing
4646
#
4747
class splunk::forwarder (
48-
$server = $splunk::params::server,
49-
$package_source = $splunk::params::forwarder_pkg_src,
50-
$package_name = $splunk::params::forwarder_pkg_name,
51-
$package_ensure = $splunk::params::forwarder_pkg_ensure,
52-
$logging_port = $splunk::params::logging_port,
53-
$splunkd_port = $splunk::params::splunkd_port,
54-
$install_options = $splunk::params::forwarder_install_options,
55-
$splunk_user = $splunk::params::splunk_user,
56-
$splunkd_listen = '127.0.0.1',
57-
$purge_inputs = false,
58-
$purge_outputs = false,
59-
$purge_props = false,
60-
$purge_transforms = false,
61-
$purge_web = false,
62-
$pkg_provider = $splunk::params::pkg_provider,
63-
$forwarder_confdir = $splunk::params::forwarder_confdir,
64-
$forwarder_output = $splunk::params::forwarder_output,
65-
$forwarder_input = $splunk::params::forwarder_input,
66-
$create_password = $splunk::params::create_password,
67-
$addons = {},
48+
$server = $splunk::params::server,
49+
$package_source = $splunk::params::forwarder_pkg_src,
50+
$package_name = $splunk::params::forwarder_pkg_name,
51+
$package_ensure = $splunk::params::forwarder_pkg_ensure,
52+
$logging_port = $splunk::params::logging_port,
53+
$splunkd_port = $splunk::params::splunkd_port,
54+
$install_options = $splunk::params::forwarder_install_options,
55+
$splunk_user = $splunk::params::splunk_user,
56+
$splunkd_listen = '127.0.0.1',
57+
$purge_deploymentclient = false,
58+
$purge_inputs = false,
59+
$purge_outputs = false,
60+
$purge_props = false,
61+
$purge_transforms = false,
62+
$purge_web = false,
63+
$pkg_provider = $splunk::params::pkg_provider,
64+
$forwarder_confdir = $splunk::params::forwarder_confdir,
65+
$forwarder_output = $splunk::params::forwarder_output,
66+
$forwarder_input = $splunk::params::forwarder_input,
67+
$create_password = $splunk::params::create_password,
68+
$addons = {},
6869
) inherits splunk::params {
6970

7071
$virtual_service = $splunk::params::forwarder_service
@@ -123,11 +124,12 @@
123124
# the respective config files.
124125

125126
Splunk_config['splunk'] {
126-
purge_forwarder_outputs => $purge_outputs,
127-
purge_forwarder_inputs => $purge_inputs,
128-
purge_forwarder_props => $purge_props,
129-
purge_forwarder_transforms => $purge_transforms,
130-
purge_forwarder_web => $purge_web,
127+
purge_forwarder_deploymentclient => $purge_deploymentclient,
128+
purge_forwarder_outputs => $purge_outputs,
129+
purge_forwarder_inputs => $purge_inputs,
130+
purge_forwarder_props => $purge_props,
131+
purge_forwarder_transforms => $purge_transforms,
132+
purge_forwarder_web => $purge_web,
131133
}
132134

133135
# This is a module that supports multiple platforms. For some platforms
@@ -154,13 +156,14 @@
154156
-> Exec <| tag == 'splunk_forwarder' |>
155157
-> Service[$virtual_service]
156158

157-
Package[$package_name] -> Splunkforwarder_output<||> ~> Service[$virtual_service]
158-
Package[$package_name] -> Splunkforwarder_input<||> ~> Service[$virtual_service]
159-
Package[$package_name] -> Splunkforwarder_props<||> ~> Service[$virtual_service]
160-
Package[$package_name] -> Splunkforwarder_transforms<||> ~> Service[$virtual_service]
161-
Package[$package_name] -> Splunkforwarder_web<||> ~> Service[$virtual_service]
162-
Package[$package_name] -> Splunkforwarder_limits<||> ~> Service[$virtual_service]
163-
Package[$package_name] -> Splunkforwarder_server<||> ~> Service[$virtual_service]
159+
Package[$package_name] -> Splunkforwarder_deploymentclient<||> ~> Service[$virtual_service]
160+
Package[$package_name] -> Splunkforwarder_output<||> ~> Service[$virtual_service]
161+
Package[$package_name] -> Splunkforwarder_input<||> ~> Service[$virtual_service]
162+
Package[$package_name] -> Splunkforwarder_props<||> ~> Service[$virtual_service]
163+
Package[$package_name] -> Splunkforwarder_transforms<||> ~> Service[$virtual_service]
164+
Package[$package_name] -> Splunkforwarder_web<||> ~> Service[$virtual_service]
165+
Package[$package_name] -> Splunkforwarder_limits<||> ~> Service[$virtual_service]
166+
Package[$package_name] -> Splunkforwarder_server<||> ~> Service[$virtual_service]
164167

165168
File {
166169
owner => $splunk_user,
@@ -171,6 +174,11 @@
171174
}
172175
}
173176

177+
file { "${forwarder_confdir}/system/local/deploymentclient.conf":
178+
ensure => file,
179+
tag => 'splunk_forwarder',
180+
}
181+
174182
file { "${forwarder_confdir}/system/local/inputs.conf":
175183
ensure => file,
176184
tag => 'splunk_forwarder',

‎manifests/init.pp

+47-35
Original file line numberDiff line numberDiff line change
@@ -44,29 +44,30 @@
4444
# Requires: nothing
4545
#
4646
class splunk (
47-
$package_source = $splunk::params::server_pkg_src,
48-
$package_name = $splunk::params::server_pkg_name,
49-
$package_ensure = $splunk::params::server_pkg_ensure,
50-
$server_service = $splunk::params::server_service,
51-
$logging_port = $splunk::params::logging_port,
52-
$splunkd_port = $splunk::params::splunkd_port,
53-
$splunk_user = $splunk::params::splunk_user,
54-
$pkg_provider = $splunk::params::pkg_provider,
55-
$splunkd_listen = '127.0.0.1',
56-
$web_port = '8000',
57-
$purge_alert_actions = false,
58-
$purge_authentication = false,
59-
$purge_authorize = false,
60-
$purge_distsearch = false,
61-
$purge_indexes = false,
62-
$purge_inputs = false,
63-
$purge_limits = false,
64-
$purge_outputs = false,
65-
$purge_props = false,
66-
$purge_server = false,
67-
$purge_transforms = false,
68-
$purge_uiprefs = false,
69-
$purge_web = false,
47+
$package_source = $splunk::params::server_pkg_src,
48+
$package_name = $splunk::params::server_pkg_name,
49+
$package_ensure = $splunk::params::server_pkg_ensure,
50+
$server_service = $splunk::params::server_service,
51+
$logging_port = $splunk::params::logging_port,
52+
$splunkd_port = $splunk::params::splunkd_port,
53+
$splunk_user = $splunk::params::splunk_user,
54+
$pkg_provider = $splunk::params::pkg_provider,
55+
$splunkd_listen = '127.0.0.1',
56+
$web_port = '8000',
57+
$purge_alert_actions = false,
58+
$purge_authentication = false,
59+
$purge_authorize = false,
60+
$purge_deploymentclient = false,
61+
$purge_distsearch = false,
62+
$purge_indexes = false,
63+
$purge_inputs = false,
64+
$purge_limits = false,
65+
$purge_outputs = false,
66+
$purge_props = false,
67+
$purge_server = false,
68+
$purge_transforms = false,
69+
$purge_uiprefs = false,
70+
$purge_web = false,
7071
) inherits splunk::params {
7172

7273
$virtual_service = $server_service
@@ -131,18 +132,19 @@
131132
# Purge resources if option set
132133
Splunk_config['splunk'] {
133134
purge_alert_actions => $purge_alert_actions,
134-
purge_authentication => $purge_authentication,
135-
purge_authorize => $purge_authorize,
136-
purge_distsearch => $purge_distsearch,
137-
purge_indexes => $purge_indexes,
138-
purge_inputs => $purge_inputs,
139-
purge_limits => $purge_limits,
140-
purge_outputs => $purge_outputs,
141-
purge_props => $purge_props,
142-
purge_server => $purge_server,
143-
purge_transforms => $purge_transforms,
144-
purge_uiprefs => $purge_uiprefs,
145-
purge_web => $purge_web
135+
purge_authentication => $purge_authentication,
136+
purge_authorize => $purge_authorize,
137+
purge_deploymentclient => $purge_deploymentclient,
138+
purge_distsearch => $purge_distsearch,
139+
purge_indexes => $purge_indexes,
140+
purge_inputs => $purge_inputs,
141+
purge_limits => $purge_limits,
142+
purge_outputs => $purge_outputs,
143+
purge_props => $purge_props,
144+
purge_server => $purge_server,
145+
purge_transforms => $purge_transforms,
146+
purge_uiprefs => $purge_uiprefs,
147+
purge_web => $purge_web
146148
}
147149
# This is a module that supports multiple platforms. For some platforms
148150
# there is non-generic configuration that needs to be declared in addition
@@ -187,6 +189,11 @@
187189
-> Splunk_authorize <| tag == 'splunk_server' |>
188190
~> Service[$virtual_service]
189191

192+
Package[$package_name]
193+
-> File <| tag == 'splunk_server' |>
194+
-> Splunk_deploymentclient <| tag == 'splunk_server' |>
195+
~> Service[$virtual_service]
196+
190197
Package[$package_name]
191198
-> File <| tag == 'splunk_server' |>
192199
-> Splunk_distsearch <| tag == 'splunk_server' |>
@@ -258,6 +265,11 @@
258265
tag => 'splunk_server',
259266
}
260267

268+
file { '/opt/splunk/etc/system/local/deploymentclient.conf':
269+
ensure => file,
270+
tag => 'splunk_server',
271+
}
272+
261273
file { '/opt/splunk/etc/system/local/distsearch.conf':
262274
ensure => file,
263275
tag => 'splunk_server',

0 commit comments

Comments
 (0)
Please sign in to comment.