diff --git a/pkgs/development/python-modules/opentelemetry-exporter-otlp-proto-common/default.nix b/pkgs/development/python-modules/opentelemetry-exporter-otlp-proto-common/default.nix new file mode 100644 index 000000000000..2cfd38f2d1b7 --- /dev/null +++ b/pkgs/development/python-modules/opentelemetry-exporter-otlp-proto-common/default.nix @@ -0,0 +1,49 @@ +{ lib +, buildPythonPackage +, pythonOlder +, fetchFromGitHub +, hatchling +, opentelemetry-proto +, opentelemetry-sdk +, opentelemetry-test-utils +, pytestCheckHook +}: + +buildPythonPackage rec { + pname = "opentelemetry-exporter-otlp-proto-common"; + version = "1.18.0"; + disabled = pythonOlder "3.7"; + + src = fetchFromGitHub { + owner = "open-telemetry"; + repo = "opentelemetry-python"; + rev = "refs/tags/v${version}"; + hash = "sha256-HNlkbDyYnr0/lDeY1xt0pRxqk+977ljgPdfJzAxL3AQ="; + sparseCheckout = [ "/exporter/${pname}" ]; + } + "/exporter/${pname}"; + + format = "pyproject"; + + nativeBuildInputs = [ + hatchling + ]; + + propagatedBuildInputs = [ + opentelemetry-sdk + opentelemetry-proto + ]; + + nativeCheckInputs = [ + opentelemetry-test-utils + pytestCheckHook + ]; + + pythonImportsCheck = [ "opentelemetry.exporter.otlp.proto.common" ]; + + meta = with lib; { + homepage = "https://github.com/open-telemetry/opentelemetry-python/tree/main/exporter/opentelemetry-exporter-otlp-proto-common"; + description = "OpenTelemetry Protobuf encoding"; + license = licenses.asl20; + maintainers = teams.deshaw.members; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 91371f887742..5cbcfa622b45 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -7096,6 +7096,8 @@ self: super: with self; { opentelemetry-api = callPackage ../development/python-modules/opentelemetry-api { }; + opentelemetry-exporter-otlp-proto-common = callPackage ../development/python-modules/opentelemetry-exporter-otlp-proto-common { }; + opentelemetry-exporter-prometheus = callPackage ../development/python-modules/opentelemetry-exporter-prometheus { }; opentelemetry-proto = callPackage ../development/python-modules/opentelemetry-proto { };