datadog: fix python integration

sohalt 6f065481 5524cbd1

+36 -9
+19 -6
pkgs/tools/networking/dd-agent/datadog-agent.nix
··· 1 1 { lib 2 2 , stdenv 3 + , cmake 3 4 , buildGoModule 4 5 , makeWrapper 5 6 , fetchFromGitHub ··· 18 19 owner = "DataDog"; 19 20 repo = "datadog-agent"; 20 21 goPackagePath = "github.com/${owner}/${repo}"; 21 - 22 - in buildGoModule rec { 23 - pname = "datadog-agent"; 24 22 version = "7.36.0"; 25 23 26 24 src = fetchFromGitHub { ··· 28 26 rev = version; 29 27 sha256 = "sha256-pkbgYE58T9QzV7nCzvfBoTt6Ue8cCMUBSuCBeDtdkzo="; 30 28 }; 29 + rtloader = stdenv.mkDerivation { 30 + pname = "datadog-agent-rtloader"; 31 + src = "${src}/rtloader"; 32 + inherit version; 33 + nativeBuildInputs = [ cmake ]; 34 + buildInputs = [ python ]; 35 + cmakeFlags = ["-DBUILD_DEMO=OFF" "-DDISABLE_PYTHON2=ON"]; 36 + }; 37 + 38 + in buildGoModule rec { 39 + pname = "datadog-agent"; 40 + inherit src version; 41 + 42 + doCheck = false; 31 43 32 44 vendorSha256 = "sha256-SxdSoZtRAdl3evCpb+3BHWf/uPYJJKgw0CL9scwNfGA="; 33 45 ··· 41 53 42 54 43 55 nativeBuildInputs = [ pkg-config makeWrapper ]; 44 - buildInputs = lib.optionals withSystemd [ systemd ]; 56 + buildInputs = [rtloader] ++ lib.optionals withSystemd [ systemd ]; 45 57 PKG_CONFIG_PATH = "${python}/lib/pkgconfig"; 46 58 47 59 tags = [ 48 60 "ec2" 49 - "cpython" 61 + "python" 50 62 "process" 51 63 "log" 52 64 "secrets" ··· 58 70 "-X ${goPackagePath}/pkg/version.Commit=${src.rev}" 59 71 "-X ${goPackagePath}/pkg/version.AgentVersion=${version}" 60 72 "-X ${goPackagePath}/pkg/serializer.AgentPayloadVersion=${payloadVersion}" 61 - "-X ${goPackagePath}/pkg/collector/py.pythonHome=${python}" 73 + "-X ${goPackagePath}/pkg/collector/python.pythonHome3=${python}" 74 + "-X ${goPackagePath}/pkg/config.DefaultPython=3" 62 75 "-r ${python}/lib" 63 76 ]; 64 77
+17 -3
pkgs/tools/networking/dd-agent/integrations-core.nix
··· 65 65 pname = "checks-base"; 66 66 sourceRoot = "datadog_checks_base"; 67 67 propagatedBuildInputs = with python.pkgs; [ 68 - requests protobuf prometheus-client simplejson uptime 68 + cachetools 69 + cryptography 70 + immutables 71 + jellyfish 72 + prometheus-client 73 + protobuf 74 + pydantic 75 + python-dateutil 76 + pyyaml 77 + requests 78 + requests-toolbelt 79 + requests-unixsocket 80 + simplejson 81 + uptime 82 + wrapt 69 83 ]; 70 84 }; 71 85 ··· 75 89 mongo = (ps: [ ps.pymongo ]); 76 90 network = (ps: [ ps.psutil ]); 77 91 nginx = (ps: []); 78 - postgres = (ps: with ps; [ pg8000 psycopg2 ]); 79 - process = (ps: []); 92 + postgres = (ps: with ps; [ pg8000 psycopg2 semver ]); 93 + process = (ps: [ ps.psutil]); 80 94 }; 81 95 82 96 # All integrations (default + extra):