diff --git a/pkgs/development/python-modules/opentelemetry-instrumentation-urllib3/default.nix b/pkgs/development/python-modules/opentelemetry-instrumentation-urllib3/default.nix new file mode 100644 index 000000000000..ee2b18f00773 --- /dev/null +++ b/pkgs/development/python-modules/opentelemetry-instrumentation-urllib3/default.nix @@ -0,0 +1,63 @@ +{ + buildPythonPackage, + opentelemetry-instrumentation, + + # build-system + hatchling, + + # dependencies + opentelemetry-api, + opentelemetry-semantic-conventions, + opentelemetry-util-http, + wrapt, + + # optional-dependencies + urllib3, + + # tests + httpretty, + opentelemetry-test-utils, + pytestCheckHook, + respx, +}: + +buildPythonPackage { + inherit (opentelemetry-instrumentation) version src; + pname = "opentelemetry-instrumentation-urllib3"; + pyproject = true; + + sourceRoot = "${opentelemetry-instrumentation.src.name}/instrumentation/opentelemetry-instrumentation-urllib3"; + + build-system = [ hatchling ]; + + dependencies = [ + opentelemetry-api + opentelemetry-instrumentation + opentelemetry-semantic-conventions + wrapt + opentelemetry-util-http + ]; + + optional-dependencies = { + instruments = [ + urllib3 + ]; + }; + + pythonImportsCheck = [ "opentelemetry.instrumentation.urllib3" ]; + + nativeCheckInputs = [ + httpretty + opentelemetry-test-utils + pytestCheckHook + respx + urllib3 + ]; + + __darwinAllowLocalNetworking = true; + + meta = opentelemetry-instrumentation.meta // { + description = "OpenTelemetry urllib3 instrumentation"; + homepage = "https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/instrumentation/opentelemetry-instrumentation-urllib3"; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 463ebbbae93d..06ef62442bfb 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -11236,6 +11236,10 @@ self: super: with self; { callPackage ../development/python-modules/opentelemetry-instrumentation-sqlalchemy { }; + opentelemetry-instrumentation-urllib3 = + callPackage ../development/python-modules/opentelemetry-instrumentation-urllib3 + { }; + opentelemetry-instrumentation-wsgi = callPackage ../development/python-modules/opentelemetry-instrumentation-wsgi { };