python310Packages.opentelemetry-api: refactor

To avoid breaking any package under the opentelemetry-python repository, we must synchronize their versions.
Since opentelemetry-api is the central component of opentelemetry-python, I used it as the source for version, src, and meta.
This commit is contained in:
natsukium 2023-07-25 01:23:38 +09:00 committed by Yt
parent 523636ff82
commit db1ccedc12
10 changed files with 50 additions and 122 deletions

View file

@ -17,13 +17,15 @@ let
version = "1.18.0";
disabled = pythonOlder "3.7";
# to avoid breakage, every package in opentelemetry-python must inherit this version, src, and meta
src = fetchFromGitHub {
owner = "open-telemetry";
repo = "opentelemetry-python";
rev = "refs/tags/v${self.version}";
hash = "sha256-h6XDzM29wYiC51S7OpBXvWFCfZ7DmIyGMG2pFjJV7pI=";
sparseCheckout = [ "/${self.pname}" ];
} + "/${self.pname}";
hash = "sha256-8xf4TqEkBeueejQBckFGwBNN4Gyo+/7/my6Z1Mnei5Q=";
};
sourceRoot = "source/opentelemetry-api";
format = "pyproject";
@ -55,8 +57,9 @@ let
passthru.tests.${self.pname} = self.overridePythonAttrs { doCheck = true; };
meta = with lib; {
homepage = "https://opentelemetry.io";
homepage = "https://github.com/open-telemetry/opentelemetry-python/tree/main/opentelemetry-api";
description = "OpenTelemetry Python API";
changelog = "https://github.com/open-telemetry/opentelemetry-python/releases/tag/${self.src.rev}";
license = licenses.asl20;
maintainers = teams.deshaw.members;
};

View file

@ -1,26 +1,20 @@
{ lib
, buildPythonPackage
, pythonOlder
, fetchFromGitHub
, hatchling
, opentelemetry-api
, opentelemetry-proto
, opentelemetry-sdk
, opentelemetry-test-utils
, pytestCheckHook
}:
buildPythonPackage rec {
buildPythonPackage {
inherit (opentelemetry-api) version src;
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}";
sourceRoot = "source/exporter/opentelemetry-exporter-otlp-proto-common";
format = "pyproject";
@ -40,10 +34,8 @@ buildPythonPackage rec {
pythonImportsCheck = [ "opentelemetry.exporter.otlp.proto.common" ];
meta = with lib; {
meta = opentelemetry-api.meta // {
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;
};
}

View file

@ -1,29 +1,23 @@
{ lib
, buildPythonPackage
, pythonOlder
, fetchFromGitHub
, backoff
, googleapis-common-protos
, grpcio
, hatchling
, opentelemetry-api
, opentelemetry-test-utils
, opentelemetry-exporter-otlp-proto-common
, pytest-grpc
, pytestCheckHook
}:
buildPythonPackage rec {
buildPythonPackage {
inherit (opentelemetry-api) version src;
pname = "opentelemetry-exporter-otlp-proto-grpc";
version = "1.18.0";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "open-telemetry";
repo = "opentelemetry-python";
rev = "refs/tags/v${version}";
hash = "sha256-feAmPL/G3ABIY5tBODlMJIBzxqg6Bl7imJB2EYtEp2o=";
sparseCheckout = [ "/exporter/${pname}" ];
} + "/exporter/${pname}";
sourceRoot = "source/exporter/opentelemetry-exporter-otlp-proto-grpc";
format = "pyproject";
@ -49,10 +43,8 @@ buildPythonPackage rec {
pythonImportsCheck = [ "opentelemetry.exporter.otlp.proto.grpc" ];
meta = with lib; {
meta = opentelemetry-api.meta // {
homepage = "https://github.com/open-telemetry/opentelemetry-python/tree/main/exporter/opentelemetry-exporter-otlp-proto-grpc";
description = "OpenTelemetry Collector Protobuf over gRPC Exporter";
license = licenses.asl20;
maintainers = teams.deshaw.members;
};
}

View file

@ -1,10 +1,10 @@
{ lib
, buildPythonPackage
, pythonOlder
, fetchFromGitHub
, backoff
, googleapis-common-protos
, hatchling
, opentelemetry-api
, opentelemetry-exporter-otlp-proto-common
, opentelemetry-test-utils
, requests
@ -12,18 +12,12 @@
, pytestCheckHook
}:
buildPythonPackage rec {
buildPythonPackage {
inherit (opentelemetry-api) version src;
pname = "opentelemetry-exporter-otlp-proto-http";
version = "1.18.0";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "open-telemetry";
repo = "opentelemetry-python";
rev = "refs/tags/v${version}";
hash = "sha256-r4jvIhRM9E4CuZyS/XvvYO+F9cPxip8ab57CUfip47Q=";
sparseCheckout = [ "/exporter/${pname}" ];
} + "/exporter/${pname}";
sourceRoot = "source/exporter/opentelemetry-exporter-otlp-proto-http";
format = "pyproject";
@ -46,10 +40,8 @@ buildPythonPackage rec {
pythonImportsCheck = [ "opentelemetry.exporter.otlp.proto.http" ];
meta = with lib; {
meta = opentelemetry-api.meta // {
homepage = "https://github.com/open-telemetry/opentelemetry-python/tree/main/exporter/opentelemetry-exporter-otlp-proto-http";
description = "OpenTelemetry Collector Protobuf over HTTP Exporter";
license = licenses.asl20;
maintainers = teams.deshaw.members;
};
}

View file

@ -1,26 +1,20 @@
{ lib
, buildPythonPackage
, pythonOlder
, fetchFromGitHub
, backoff
, hatchling
, opentelemetry-api
, opentelemetry-exporter-otlp-proto-grpc
, opentelemetry-exporter-otlp-proto-http
, pytestCheckHook
}:
buildPythonPackage rec {
buildPythonPackage {
inherit (opentelemetry-api) version src;
pname = "opentelemetry-exporter-otlp";
version = "1.18.0";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "open-telemetry";
repo = "opentelemetry-python";
rev = "refs/tags/v${version}";
hash = "sha256-ph9ahT6M8UBvuUJjk6nug68Ou/D7XuuXkfnKHEdD8x8=";
sparseCheckout = [ "/exporter/${pname}" ];
} + "/exporter/${pname}";
sourceRoot = "source/exporter/opentelemetry-exporter-otlp";
format = "pyproject";
@ -39,10 +33,8 @@ buildPythonPackage rec {
pythonImportsCheck = [ "opentelemetry.exporter.otlp" ];
meta = with lib; {
meta = opentelemetry-api.meta // {
homepage = "https://github.com/open-telemetry/opentelemetry-python/tree/main/exporter/opentelemetry-exporter-otlp";
description = "OpenTelemetry Collector Exporters";
license = licenses.asl20;
maintainers = teams.deshaw.members;
};
}

View file

@ -1,7 +1,6 @@
{ lib
, buildPythonPackage
, pythonOlder
, fetchFromGitHub
, hatchling
, opentelemetry-api
, opentelemetry-sdk
@ -10,18 +9,12 @@
, pytestCheckHook
}:
buildPythonPackage rec {
buildPythonPackage {
inherit (opentelemetry-api) version src;
pname = "opentelemetry-exporter-prometheus";
version = "1.18.0";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "open-telemetry";
repo = "opentelemetry-python";
rev = "refs/tags/v${version}";
hash = "sha256-vWVLUt3Ett04kqUyoTOBNvRj51/M35X83saBBxeOTZI=";
sparseCheckout = [ "/exporter/${pname}" ];
} + "/exporter/${pname}";
sourceRoot = "source/exporter/opentelemetry-exporter-prometheus";
format = "pyproject";
@ -42,10 +35,8 @@ buildPythonPackage rec {
pythonImportsCheck = [ "opentelemetry.exporter.prometheus" ];
meta = with lib; {
meta = opentelemetry-api.meta // {
homepage = "https://github.com/open-telemetry/opentelemetry-python/tree/main/exporter/opentelemetry-exporter-prometheus";
description = "Prometheus Metric Exporter for OpenTelemetry";
license = licenses.asl20;
maintainers = teams.deshaw.members;
};
}

View file

@ -1,24 +1,18 @@
{ lib
, buildPythonPackage
, pythonOlder
, fetchFromGitHub
, hatchling
, opentelemetry-api
, protobuf
, pytestCheckHook
}:
buildPythonPackage rec {
buildPythonPackage {
inherit (opentelemetry-api) version src;
pname = "opentelemetry-proto";
version = "1.18.0";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "open-telemetry";
repo = "opentelemetry-python";
rev = "refs/tags/v${version}";
hash = "sha256-6iB+QlBUqRvIJ9p38NYgP4icW2rYs1P3bNCxI95cOvs=";
sparseCheckout = [ "/${pname}" ];
} + "/${pname}";
sourceRoot = "source/opentelemetry-proto";
format = "pyproject";
@ -36,10 +30,8 @@ buildPythonPackage rec {
pythonImportsCheck = [ "opentelemetry.proto" ];
meta = with lib; {
meta = opentelemetry-api.meta // {
homepage = "https://github.com/open-telemetry/opentelemetry-python/tree/main/opentelemetry-proto";
description = "OpenTelemetry Python Proto";
license = licenses.asl20;
maintainers = teams.deshaw.members;
};
}

View file

@ -1,7 +1,6 @@
{ lib
, buildPythonPackage
, pythonOlder
, fetchFromGitHub
, flaky
, hatchling
, opentelemetry-api
@ -14,17 +13,11 @@
let
self = buildPythonPackage {
inherit (opentelemetry-api) version src;
pname = "opentelemetry-sdk";
version = "1.18.0";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "open-telemetry";
repo = "opentelemetry-python";
rev = "refs/tags/v${self.version}";
hash = "sha256-YMFSmzuvm/VA9Fpe7pbF9mnGQHOQpobWMb1iGRt+d3w=";
sparseCheckout = [ "/${self.pname}" ];
} + "/${self.pname}";
sourceRoot = "source/opentelemetry-sdk";
format = "pyproject";
@ -56,11 +49,9 @@ let
# Enable tests via passthru to avoid cyclic dependency with opentelemetry-test-utils.
passthru.tests.${self.pname} = self.overridePythonAttrs { doCheck = true; };
meta = with lib; {
homepage = "https://opentelemetry.io";
description = "OpenTelemetry Python API and SDK";
license = licenses.asl20;
maintainers = teams.deshaw.members;
meta = opentelemetry-api.meta // {
homepage = "https://github.com/open-telemetry/opentelemetry-python/tree/main/opentelemetry-sdk";
description = "OpenTelemetry Python SDK";
};
};
in self

View file

@ -1,23 +1,17 @@
{ lib
, buildPythonPackage
, pythonOlder
, fetchFromGitHub
, hatchling
, opentelemetry-api
, pytestCheckHook
}:
buildPythonPackage rec {
buildPythonPackage {
inherit (opentelemetry-api) version src;
pname = "opentelemetry-semantic-conventions";
version = "1.18.0";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "open-telemetry";
repo = "opentelemetry-python";
rev = "refs/tags/v${version}";
hash = "sha256-82L/tDoWgu0r+Li3CS3hjVR99DQQmA5yt3y85+37imI=";
sparseCheckout = [ "/${pname}" ];
} + "/${pname}";
sourceRoot = "source/opentelemetry-semantic-conventions";
format = "pyproject";
@ -31,10 +25,8 @@ buildPythonPackage rec {
pythonImportsCheck = [ "opentelemetry.semconv" ];
meta = with lib; {
meta = opentelemetry-api.meta // {
homepage = "https://github.com/open-telemetry/opentelemetry-python/tree/main/opentelemetry-semantic-conventions";
description = "OpenTelemetry Semantic Conventions";
license = licenses.asl20;
maintainers = teams.deshaw.members;
};
}

View file

@ -2,25 +2,18 @@
, callPackage
, buildPythonPackage
, pythonOlder
, fetchFromGitHub
, asgiref
, hatchling
, opentelemetry-api
, opentelemetry-sdk
}:
buildPythonPackage rec {
buildPythonPackage {
inherit (opentelemetry-api) version src;
pname = "opentelemetry-test-utils";
version = "1.18.0";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "open-telemetry";
repo = "opentelemetry-python";
rev = "refs/tags/v${version}";
hash = "sha256-WRcKTE3eVqOSQUi5gZ3du+RGw8CrMazXHrctdrjgzHo=";
sparseCheckout = [ "/tests/${pname}" ];
} + "/tests/${pname}";
sourceRoot = "source/tests/opentelemetry-test-utils";
format = "pyproject";
@ -36,10 +29,8 @@ buildPythonPackage rec {
pythonImportsCheck = [ "opentelemetry.test" ];
meta = with lib; {
meta = opentelemetry-api.meta // {
homepage = "https://github.com/open-telemetry/opentelemetry-python/tree/main/tests/opentelemetry-test-utils";
description = "Test utilities for OpenTelemetry unit tests";
license = licenses.asl20;
maintainers = teams.deshaw.members;
};
}