python310Packages.opentelemetry-instrumentation: refactor

To avoid breaking any package under the opentelemetry-python-contrib repository, we must synchronize their versions.
Since opentelemetry-instrumentation is the central component of opentelemetry-python-contrib, I used it as the source for version, src, and meta.
This commit is contained in:
natsukium 2023-07-30 09:07:55 +09:00 committed by Yt
parent 35a8ff1d1d
commit 86200041e2
7 changed files with 31 additions and 84 deletions

View file

@ -1,7 +1,6 @@
{ lib { lib
, buildPythonPackage , buildPythonPackage
, pythonOlder , pythonOlder
, fetchFromGitHub
, hatchling , hatchling
, opentelemetry-api , opentelemetry-api
, opentelemetry-instrumentation , opentelemetry-instrumentation
@ -12,21 +11,13 @@
, pytestCheckHook , pytestCheckHook
, aiohttp , aiohttp
}: }:
let
pname = "opentelemetry-instrumentation-aiohttp-client";
version = "0.39b0";
in
buildPythonPackage { buildPythonPackage {
inherit pname version; inherit (opentelemetry-instrumentation) version src;
pname = "opentelemetry-instrumentation-aiohttp-client";
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.7";
src = fetchFromGitHub { sourceRoot = "source/instrumentation/opentelemetry-instrumentation-aiohttp-client";
owner = "open-telemetry";
repo = "opentelemetry-python-contrib";
rev = "refs/tags/v${version}";
hash = "sha256-HFDebR3d1osFAIlNuIbs5s+uPeTTJ1xkz+BpE5BpciU=";
sparseCheckout = [ "/instrumentation/${pname}" ];
} + "/instrumentation/${pname}";
format = "pyproject"; format = "pyproject";
@ -54,10 +45,8 @@ buildPythonPackage {
pythonImportsCheck = [ "opentelemetry.instrumentation.aiohttp_client" ]; pythonImportsCheck = [ "opentelemetry.instrumentation.aiohttp_client" ];
meta = with lib; { meta = opentelemetry-instrumentation.meta // {
homepage = "https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/instrumentation/opentelemetry-instrumentation-aiohttp-client"; homepage = "https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/instrumentation/opentelemetry-instrumentation-aiohttp-client";
description = "OpenTelemetry Instrumentation for aiohttp-client"; description = "OpenTelemetry Instrumentation for aiohttp-client";
license = licenses.asl20;
maintainers = with maintainers; [ happysalada ];
}; };
} }

View file

@ -1,7 +1,6 @@
{ lib { lib
, buildPythonPackage , buildPythonPackage
, pythonOlder , pythonOlder
, fetchFromGitHub
, asgiref , asgiref
, hatchling , hatchling
, opentelemetry-api , opentelemetry-api
@ -12,18 +11,12 @@
, pytestCheckHook , pytestCheckHook
}: }:
buildPythonPackage rec { buildPythonPackage {
inherit (opentelemetry-instrumentation) version src;
pname = "opentelemetry-instrumentation-asgi"; pname = "opentelemetry-instrumentation-asgi";
version = "0.39b0";
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.7";
src = fetchFromGitHub { sourceRoot = "source/instrumentation/opentelemetry-instrumentation-asgi";
owner = "open-telemetry";
repo = "opentelemetry-python-contrib";
rev = "refs/tags/v${version}";
hash = "sha256-BfNrbOQwyApdcKOVGF0LqzWOxzLkHZYiYdYVVPkGmdQ=";
sparseCheckout = [ "/instrumentation/${pname}" ];
} + "/instrumentation/${pname}";
format = "pyproject"; format = "pyproject";
@ -46,10 +39,8 @@ buildPythonPackage rec {
pythonImportsCheck = [ "opentelemetry.instrumentation.asgi" ]; pythonImportsCheck = [ "opentelemetry.instrumentation.asgi" ];
meta = with lib; { meta = opentelemetry-instrumentation.meta // {
homepage = "https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/instrumentation/opentelemetry-instrumentation-asgi"; homepage = "https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/instrumentation/opentelemetry-instrumentation-asgi";
description = "ASGI instrumentation for OpenTelemetry"; description = "ASGI instrumentation for OpenTelemetry";
license = licenses.asl20;
maintainers = teams.deshaw.members;
}; };
} }

View file

@ -1,7 +1,6 @@
{ lib { lib
, buildPythonPackage , buildPythonPackage
, pythonOlder , pythonOlder
, fetchFromGitHub
, django , django
, hatchling , hatchling
, opentelemetry-api , opentelemetry-api
@ -14,18 +13,12 @@
, pytestCheckHook , pytestCheckHook
}: }:
buildPythonPackage rec { buildPythonPackage {
inherit (opentelemetry-instrumentation) version src;
pname = "opentelemetry-instrumentation-django"; pname = "opentelemetry-instrumentation-django";
version = "0.39b0";
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.7";
src = fetchFromGitHub { sourceRoot = "source/instrumentation/opentelemetry-instrumentation-django";
owner = "open-telemetry";
repo = "opentelemetry-python-contrib";
rev = "refs/tags/v${version}";
hash = "sha256-5tyLFQTYuJBFAFZirqsaHXCw72Q3TigDctZZFi/2zdI=";
sparseCheckout = [ "/instrumentation/${pname}" ];
} + "/instrumentation/${pname}";
format = "pyproject"; format = "pyproject";
@ -50,10 +43,8 @@ buildPythonPackage rec {
pythonImportsCheck = [ "opentelemetry.instrumentation.django" ]; pythonImportsCheck = [ "opentelemetry.instrumentation.django" ];
meta = with lib; { meta = opentelemetry-instrumentation.meta // {
homepage = "https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/instrumentation/opentelemetry-instrumentation-django"; homepage = "https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/instrumentation/opentelemetry-instrumentation-django";
description = "OpenTelemetry Instrumentation for Django"; description = "OpenTelemetry Instrumentation for Django";
license = licenses.asl20;
maintainers = teams.deshaw.members;
}; };
} }

View file

@ -1,7 +1,6 @@
{ lib { lib
, buildPythonPackage , buildPythonPackage
, pythonOlder , pythonOlder
, fetchFromGitHub
, hatchling , hatchling
, opentelemetry-api , opentelemetry-api
, opentelemetry-instrumentation , opentelemetry-instrumentation
@ -13,18 +12,12 @@
, grpcio , grpcio
}: }:
buildPythonPackage rec { buildPythonPackage {
inherit (opentelemetry-instrumentation) version src;
pname = "opentelemetry-instrumentation-grpc"; pname = "opentelemetry-instrumentation-grpc";
version = "0.39b0";
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.7";
src = fetchFromGitHub { sourceRoot = "source/instrumentation/opentelemetry-instrumentation-grpc";
owner = "open-telemetry";
repo = "opentelemetry-python-contrib";
rev = "refs/tags/v${version}";
hash = "sha256-DkDAE0MsF9HdywxlFzqJaqNor4O/jpnSqINsKTuiVqU=";
sparseCheckout = [ "/instrumentation/${pname}" ];
} + "/instrumentation/${pname}";
format = "pyproject"; format = "pyproject";
@ -52,10 +45,8 @@ buildPythonPackage rec {
pythonImportsCheck = [ "opentelemetry.instrumentation.grpc" ]; pythonImportsCheck = [ "opentelemetry.instrumentation.grpc" ];
meta = with lib; { meta = opentelemetry-instrumentation.meta // {
homepage = "https://github.com/open-telemetry/opentelemetry-python-contrib/tree/main/instrumentation/opentelemetry-instrumentation-grpc"; homepage = "https://github.com/open-telemetry/opentelemetry-python-contrib/tree/main/instrumentation/opentelemetry-instrumentation-grpc";
description = "OpenTelemetry Instrumentation for grpc"; description = "OpenTelemetry Instrumentation for grpc";
license = licenses.asl20;
maintainers = with maintainers; [ happysalada ];
}; };
} }

View file

@ -1,7 +1,6 @@
{ lib { lib
, buildPythonPackage , buildPythonPackage
, pythonOlder , pythonOlder
, fetchFromGitHub
, hatchling , hatchling
, opentelemetry-api , opentelemetry-api
, opentelemetry-instrumentation , opentelemetry-instrumentation
@ -11,18 +10,12 @@
, pytestCheckHook , pytestCheckHook
}: }:
buildPythonPackage rec { buildPythonPackage {
inherit (opentelemetry-instrumentation) version src;
pname = "opentelemetry-instrumentation-wsgi"; pname = "opentelemetry-instrumentation-wsgi";
version = "0.39b0";
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.7";
src = fetchFromGitHub { sourceRoot = "source/instrumentation/opentelemetry-instrumentation-wsgi";
owner = "open-telemetry";
repo = "opentelemetry-python-contrib";
rev = "refs/tags/v${version}";
hash = "sha256-DBZGXY8Y208YC/guk0qUB04UA/JFAtiv3kjsikskTRs=";
sparseCheckout = [ "/instrumentation/${pname}" ];
} + "/instrumentation/${pname}";
format = "pyproject"; format = "pyproject";
@ -44,10 +37,8 @@ buildPythonPackage rec {
pythonImportsCheck = [ "opentelemetry.instrumentation.wsgi" ]; pythonImportsCheck = [ "opentelemetry.instrumentation.wsgi" ];
meta = with lib; { meta = opentelemetry-instrumentation.meta // {
homepage = "https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/instrumentation/opentelemetry-instrumentation-wsgi"; homepage = "https://github.com/open-telemetry/opentelemetry-python-contrib/blob/main/instrumentation/opentelemetry-instrumentation-wsgi";
description = "WSGI Middleware for OpenTelemetry"; description = "WSGI Middleware for OpenTelemetry";
license = licenses.asl20;
maintainers = teams.deshaw.members;
}; };
} }

View file

@ -16,13 +16,15 @@ buildPythonPackage rec {
version = "0.39b0"; version = "0.39b0";
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.7";
# to avoid breakage, every package in opentelemetry-python-contrib must inherit this version, src, and meta
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "open-telemetry"; owner = "open-telemetry";
repo = "opentelemetry-python-contrib"; repo = "opentelemetry-python-contrib";
rev = "refs/tags/v${version}"; rev = "refs/tags/v${version}";
hash = "sha256-+zk76A640nyd1L0I55JrMMs7EnQ+SPQdYGAFIyQFc6E="; hash = "sha256-MPBOdurEQhA9BPRgVftejjtkvN/zRQEJDjQcS2QW3xc=";
sparseCheckout = [ "/${pname}" ]; };
} + "/${pname}";
sourceRoot = "source/opentelemetry-instrumentation";
format = "pyproject"; format = "pyproject";
@ -47,6 +49,7 @@ buildPythonPackage rec {
meta = with lib; { meta = with lib; {
homepage = "https://github.com/open-telemetry/opentelemetry-python-contrib/tree/main/opentelemetry-instrumentation"; homepage = "https://github.com/open-telemetry/opentelemetry-python-contrib/tree/main/opentelemetry-instrumentation";
description = "Instrumentation Tools & Auto Instrumentation for OpenTelemetry Python"; description = "Instrumentation Tools & Auto Instrumentation for OpenTelemetry Python";
changelog = "https://github.com/open-telemetry/opentelemetry-python-contrib/releases/tag/${src.rev}";
license = licenses.asl20; license = licenses.asl20;
maintainers = teams.deshaw.members; maintainers = teams.deshaw.members;
}; };

View file

@ -1,7 +1,6 @@
{ lib { lib
, buildPythonPackage , buildPythonPackage
, pythonOlder , pythonOlder
, fetchFromGitHub
, hatchling , hatchling
, opentelemetry-instrumentation , opentelemetry-instrumentation
, opentelemetry-sdk , opentelemetry-sdk
@ -10,18 +9,12 @@
, pytestCheckHook , pytestCheckHook
}: }:
buildPythonPackage rec { buildPythonPackage {
inherit (opentelemetry-instrumentation) version src;
pname = "opentelemetry-util-http"; pname = "opentelemetry-util-http";
version = "0.39b0";
disabled = pythonOlder "3.7"; disabled = pythonOlder "3.7";
src = fetchFromGitHub { sourceRoot = "source/util/opentelemetry-util-http";
owner = "open-telemetry";
repo = "opentelemetry-python-contrib";
rev = "refs/tags/v${version}";
hash = "sha256-C20/M5wimQec/8tTKx7+jkIYgfgNPtU9lkPKliIM3Uk=";
sparseCheckout = [ "/util/${pname}" ];
} + "/util/${pname}";
format = "pyproject"; format = "pyproject";
@ -42,10 +35,8 @@ buildPythonPackage rec {
pythonImportsCheck = [ "opentelemetry.util.http" ]; pythonImportsCheck = [ "opentelemetry.util.http" ];
meta = with lib; { meta = opentelemetry-instrumentation.meta // {
homepage = "https://github.com/open-telemetry/opentelemetry-python-contrib/tree/main/util/opentelemetry-util-http"; homepage = "https://github.com/open-telemetry/opentelemetry-python-contrib/tree/main/util/opentelemetry-util-http";
description = "Web util for OpenTelemetry"; description = "Web util for OpenTelemetry";
license = licenses.asl20;
maintainers = teams.deshaw.members;
}; };
} }