Skip to content

Commit 14cbdd7

Browse files
downsj3albertvaka
authored andcommitted
Add manage_ruby, making the management of ruby in reports optional
1 parent ab8fa3f commit 14cbdd7

2 files changed

Lines changed: 24 additions & 17 deletions

File tree

manifests/init.pp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,8 @@
3232
# the scheme: "fact_name:fact_value".
3333
# $puppet_run_reports
3434
# Will send results from your puppet agent runs back to the datadog service.
35+
# $manage_ruby
36+
# Invoke the ruby class to manage ruby install
3537
# $puppetmaster_user
3638
# Will chown the api key used by the report processor to this user.
3739
# Defaults to the user the puppetmaster is configured to run as.
@@ -243,6 +245,7 @@
243245
$service_ensure = 'running',
244246
$service_enable = true,
245247
Boolean $manage_repo = true,
248+
Boolean $manage_ruby = true,
246249
$hostname_extraction_regex = undef,
247250
Boolean $hostname_fqdn = false,
248251
$dogstatsd_port = 8125,
@@ -706,6 +709,7 @@
706709
class { 'datadog_agent::reports':
707710
api_key => $api_key,
708711
datadog_site => $datadog_site,
712+
manage_ruby => $manage_ruby,
709713
puppet_gem_provider => $puppet_gem_provider,
710714
dogapi_version => $datadog_agent::params::dogapi_version,
711715
puppetmaster_user => $puppetmaster_user,

manifests/reports.pp

Lines changed: 20 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
#
1616
class datadog_agent::reports(
1717
$api_key,
18+
$manage_ruby = true,
1819
$puppetmaster_user,
1920
$dogapi_version,
2021
$hostname_extraction_regex = undef,
@@ -28,21 +29,28 @@
2829

2930
} else {
3031

31-
include datadog_agent
32-
$rubydev_package = $datadog_agent::params::rubydev_package
32+
if $manage_ruby {
33+
include datadog_agent
34+
$rubydev_package = $datadog_agent::params::rubydev_package
3335

34-
# check to make sure that you're not installing rubydev somewhere else
35-
if ! defined(Package[$rubydev_package]) {
36-
package {$rubydev_package:
37-
ensure => installed,
38-
before => Package['dogapi']
36+
# check to make sure that you're not installing rubydev somewhere else
37+
if ! defined(Package[$rubydev_package]) {
38+
package {$rubydev_package:
39+
ensure => installed,
40+
before => Package['dogapi']
41+
}
42+
}
43+
44+
if (! defined(Package['rubygems'])) {
45+
# Ensure rubygems is installed
46+
class { 'ruby':
47+
rubygems_update => false
48+
}
3949
}
40-
}
4150

42-
if (! defined(Package['rubygems'])) {
43-
# Ensure rubygems is installed
44-
class { 'ruby':
45-
rubygems_update => false
51+
package{ 'dogapi':
52+
ensure => $dogapi_version,
53+
provider => $puppet_gem_provider,
4654
}
4755
}
4856

@@ -55,10 +63,5 @@
5563
require => File['/etc/datadog-agent'],
5664
}
5765

58-
package{ 'dogapi':
59-
ensure => $dogapi_version,
60-
provider => $puppet_gem_provider,
61-
}
62-
6366
}
6467
}

0 commit comments

Comments
 (0)