diff --git a/pkgs/tools/networking/dd-agent/datadog-agent.nix b/pkgs/tools/networking/dd-agent/datadog-agent.nix index 0ea3407a4ada..522d7a79a5b3 100644 --- a/pkgs/tools/networking/dd-agent/datadog-agent.nix +++ b/pkgs/tools/networking/dd-agent/datadog-agent.nix @@ -1,5 +1,6 @@ { lib , stdenv +, cmake , buildGoModule , makeWrapper , fetchFromGitHub @@ -18,9 +19,6 @@ let owner = "DataDog"; repo = "datadog-agent"; goPackagePath = "github.com/${owner}/${repo}"; - -in buildGoModule rec { - pname = "datadog-agent"; version = "7.36.0"; src = fetchFromGitHub { @@ -28,6 +26,20 @@ in buildGoModule rec { rev = version; sha256 = "sha256-pkbgYE58T9QzV7nCzvfBoTt6Ue8cCMUBSuCBeDtdkzo="; }; + rtloader = stdenv.mkDerivation { + pname = "datadog-agent-rtloader"; + src = "${src}/rtloader"; + inherit version; + nativeBuildInputs = [ cmake ]; + buildInputs = [ python ]; + cmakeFlags = ["-DBUILD_DEMO=OFF" "-DDISABLE_PYTHON2=ON"]; + }; + +in buildGoModule rec { + pname = "datadog-agent"; + inherit src version; + + doCheck = false; vendorSha256 = "sha256-SxdSoZtRAdl3evCpb+3BHWf/uPYJJKgw0CL9scwNfGA="; @@ -41,12 +53,12 @@ in buildGoModule rec { nativeBuildInputs = [ pkg-config makeWrapper ]; - buildInputs = lib.optionals withSystemd [ systemd ]; + buildInputs = [rtloader] ++ lib.optionals withSystemd [ systemd ]; PKG_CONFIG_PATH = "${python}/lib/pkgconfig"; tags = [ "ec2" - "cpython" + "python" "process" "log" "secrets" @@ -58,7 +70,8 @@ in buildGoModule rec { "-X ${goPackagePath}/pkg/version.Commit=${src.rev}" "-X ${goPackagePath}/pkg/version.AgentVersion=${version}" "-X ${goPackagePath}/pkg/serializer.AgentPayloadVersion=${payloadVersion}" - "-X ${goPackagePath}/pkg/collector/py.pythonHome=${python}" + "-X ${goPackagePath}/pkg/collector/python.pythonHome3=${python}" + "-X ${goPackagePath}/pkg/config.DefaultPython=3" "-r ${python}/lib" ]; diff --git a/pkgs/tools/networking/dd-agent/integrations-core.nix b/pkgs/tools/networking/dd-agent/integrations-core.nix index d7dbb65b4f58..fe1138dfb83b 100644 --- a/pkgs/tools/networking/dd-agent/integrations-core.nix +++ b/pkgs/tools/networking/dd-agent/integrations-core.nix @@ -65,7 +65,21 @@ let pname = "checks-base"; sourceRoot = "datadog_checks_base"; propagatedBuildInputs = with python.pkgs; [ - requests protobuf prometheus-client simplejson uptime + cachetools + cryptography + immutables + jellyfish + prometheus-client + protobuf + pydantic + python-dateutil + pyyaml + requests + requests-toolbelt + requests-unixsocket + simplejson + uptime + wrapt ]; }; @@ -75,8 +89,8 @@ let mongo = (ps: [ ps.pymongo ]); network = (ps: [ ps.psutil ]); nginx = (ps: []); - postgres = (ps: with ps; [ pg8000 psycopg2 ]); - process = (ps: []); + postgres = (ps: with ps; [ pg8000 psycopg2 semver ]); + process = (ps: [ ps.psutil]); }; # All integrations (default + extra):