blob: bbdc24aa62bad8526bbff4adaadda653d857199a [file] [log] [blame]
# Class: datadog_agent::integrations::docker_daemon
#
# This class will install the necessary configuration for the docker integration
#
# Parameters:
# $url:
# The URL for docker API
#
# $tags:
# optional array of tags
#
# $group:
# optional name of docker group to add dd-agent user too
#
#
# Sample Usage:
#
# class { 'datadog_agent::integrations::docker_daemon' :
# url => 'unix://var/run/docker.sock',
# }
#
class datadog_agent::integrations::docker_daemon(
$url = 'unix://var/run/docker.sock',
$tags = [],
$group = 'docker',
) inherits datadog_agent::params {
include datadog_agent
exec { 'dd-agent-should-be-in-docker-group':
command => "/usr/sbin/usermod -aG ${group} ${datadog_agent::params::dd_user}",
unless => "/bin/cat /etc/group | grep '^${group}:' | grep -qw ${datadog_agent::params::dd_user}",
require => Package[$datadog_agent::params::package_name],
notify => Service[$datadog_agent::params::service_name]
}
file { "${datadog_agent::params::conf_dir}/docker.yaml":
ensure => 'absent'
}
file { "${datadog_agent::params::conf_dir}/docker_daemon.yaml":
ensure => file,
owner => $datadog_agent::params::dd_user,
group => $datadog_agent::params::dd_group,
mode => '0644',
content => template('datadog_agent/agent-conf.d/docker_daemon.yaml.erb'),
require => Package[$datadog_agent::params::package_name],
notify => Service[$datadog_agent::params::service_name]
}
}