2017-03-10 15:58:58 +00:00
|
|
|
{ stdenv, fetchFromGitHub, pythonPackages
|
2018-07-21 01:44:44 +01:00
|
|
|
, unzip, makeWrapper }:
|
2017-03-10 15:57:51 +00:00
|
|
|
let
|
2017-03-10 15:58:58 +00:00
|
|
|
inherit (pythonPackages) python;
|
|
|
|
docker_1_10 = pythonPackages.buildPythonPackage rec {
|
2017-03-10 15:57:51 +00:00
|
|
|
name = "docker-${version}";
|
|
|
|
version = "1.10.6";
|
2013-01-08 17:32:47 +00:00
|
|
|
|
2017-03-10 15:57:51 +00:00
|
|
|
src = fetchFromGitHub {
|
|
|
|
owner = "docker";
|
|
|
|
repo = "docker-py";
|
|
|
|
rev = version;
|
|
|
|
sha256 = "1awzpbrkh4fympqzddz5i3ml81b7f0i0nwkvbpmyxjjfqx6l0m4m";
|
|
|
|
};
|
|
|
|
|
|
|
|
propagatedBuildInputs = with pythonPackages; [
|
|
|
|
six
|
2017-05-07 11:55:45 +01:00
|
|
|
requests
|
2017-03-10 15:57:51 +00:00
|
|
|
websocket_client
|
|
|
|
ipaddress
|
|
|
|
backports_ssl_match_hostname
|
|
|
|
docker_pycreds
|
2017-03-29 15:55:26 +01:00
|
|
|
uptime
|
2017-03-10 15:57:51 +00:00
|
|
|
];
|
|
|
|
|
|
|
|
# due to flake8
|
|
|
|
doCheck = false;
|
|
|
|
};
|
|
|
|
|
|
|
|
in stdenv.mkDerivation rec {
|
2017-06-03 12:27:56 +01:00
|
|
|
version = "5.11.2";
|
2014-05-08 12:49:17 +01:00
|
|
|
name = "dd-agent-${version}";
|
|
|
|
|
2014-05-08 14:49:39 +01:00
|
|
|
src = fetchFromGitHub {
|
2015-07-20 19:26:53 +01:00
|
|
|
owner = "datadog";
|
|
|
|
repo = "dd-agent";
|
|
|
|
rev = version;
|
2017-06-03 12:27:56 +01:00
|
|
|
sha256 = "1iqxvgpsqibqw3vk79158l2pnb6y4pjhjp2d6724lm5rpz4825lx";
|
2014-05-08 12:49:17 +01:00
|
|
|
};
|
|
|
|
|
2018-05-31 21:58:04 +01:00
|
|
|
patches = [ ./40103-iostat-fix.patch ];
|
|
|
|
|
2015-06-01 19:53:12 +01:00
|
|
|
buildInputs = [
|
|
|
|
python
|
|
|
|
unzip
|
|
|
|
makeWrapper
|
2017-05-31 07:10:01 +01:00
|
|
|
pythonPackages.requests
|
2017-06-03 12:27:56 +01:00
|
|
|
pythonPackages.psycopg2
|
|
|
|
pythonPackages.psutil
|
|
|
|
pythonPackages.ntplib
|
2017-05-31 07:10:01 +01:00
|
|
|
pythonPackages.simplejson
|
2017-06-03 12:27:56 +01:00
|
|
|
pythonPackages.pyyaml
|
|
|
|
pythonPackages.pymongo_2_9_1
|
|
|
|
pythonPackages.python-etcd
|
|
|
|
pythonPackages.consul
|
|
|
|
docker_1_10
|
|
|
|
];
|
2017-03-10 15:58:58 +00:00
|
|
|
propagatedBuildInputs = with pythonPackages; [ python tornado ];
|
2014-05-08 12:49:17 +01:00
|
|
|
|
2015-01-05 11:58:04 +00:00
|
|
|
buildCommand = ''
|
|
|
|
mkdir -p $out/bin
|
|
|
|
cp -R $src $out/agent
|
|
|
|
chmod u+w -R $out
|
2018-05-31 21:58:04 +01:00
|
|
|
(cd $out/agent; patchPhase)
|
2015-01-05 11:58:04 +00:00
|
|
|
PYTHONPATH=$out/agent:$PYTHONPATH
|
|
|
|
ln -s $out/agent/agent.py $out/bin/dd-agent
|
|
|
|
ln -s $out/agent/dogstatsd.py $out/bin/dogstatsd
|
|
|
|
ln -s $out/agent/ddagent.py $out/bin/dd-forwarder
|
2014-05-08 12:49:17 +01:00
|
|
|
|
2017-05-04 10:40:51 +01:00
|
|
|
# Move out default conf.d so that /etc/dd-agent/conf.d is used
|
|
|
|
mv $out/agent/conf.d $out/agent/conf.d-system
|
|
|
|
|
2016-07-29 13:41:35 +01:00
|
|
|
cat > $out/bin/dd-jmxfetch <<EOF
|
|
|
|
#!/usr/bin/env bash
|
|
|
|
exec ${python}/bin/python $out/agent/jmxfetch.py $@
|
|
|
|
EOF
|
|
|
|
chmod a+x $out/bin/dd-jmxfetch
|
|
|
|
|
2014-05-08 12:49:17 +01:00
|
|
|
wrapProgram $out/bin/dd-forwarder \
|
|
|
|
--prefix PYTHONPATH : $PYTHONPATH
|
|
|
|
wrapProgram $out/bin/dd-agent \
|
|
|
|
--prefix PYTHONPATH : $PYTHONPATH
|
|
|
|
wrapProgram $out/bin/dogstatsd \
|
|
|
|
--prefix PYTHONPATH : $PYTHONPATH
|
2016-07-29 13:41:35 +01:00
|
|
|
wrapProgram $out/bin/dd-jmxfetch \
|
|
|
|
--prefix PYTHONPATH : $PYTHONPATH
|
2015-01-05 11:58:04 +00:00
|
|
|
|
|
|
|
patchShebangs $out
|
2014-05-08 12:49:17 +01:00
|
|
|
'';
|
|
|
|
|
|
|
|
meta = {
|
|
|
|
description = "Event collector for the DataDog analysis service";
|
2017-08-17 22:56:10 +01:00
|
|
|
homepage = https://www.datadoghq.com;
|
2014-05-08 12:49:17 +01:00
|
|
|
license = stdenv.lib.licenses.bsd3;
|
|
|
|
platforms = stdenv.lib.platforms.all;
|
2016-05-17 12:57:28 +01:00
|
|
|
maintainers = with stdenv.lib.maintainers; [ thoughtpolice domenkozar ];
|
2014-05-08 12:49:17 +01:00
|
|
|
};
|
2013-01-08 17:32:47 +00:00
|
|
|
}
|