Unverified Commit d719f513 authored by Sandro Jäckel's avatar Sandro Jäckel Committed by GitHub
Browse files

pythonPackages: Add OpenStack Octavia client and Neutron bindings (#322593)

parents 1f138b8c 21d76a4f
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -753,6 +753,7 @@ with lib.maintainers;
    members = [
      SuperSandro2000
      anthonyroussel
      vinetos
    ];
    scope = "Maintain the ecosystem around OpenStack";
    shortName = "OpenStack";
+2 −0
Original line number Diff line number Diff line
@@ -53,6 +53,8 @@ buildPythonPackage rec {

  nativeCheckInputs = [ pytestCheckHook ];

  pythonRelaxDeps = [ "docutils" ];

  pythonImportsCheck = [ "doc8" ];

  meta = with lib; {
+62 −0
Original line number Diff line number Diff line
{
  lib,
  buildPythonPackage,
  fetchPypi,
  fixtures,
  hacking,
  jsonschema,
  openstacksdk,
  oslotest,
  python-glanceclient,
  setuptools,
  stestr,
  subunit,
  testscenarios,
  testtools,
}:

buildPythonPackage rec {
  pname = "os-client-config";
  version = "2.1.0";
  pyproject = true;

  src = fetchPypi {
    inherit pname version;
    hash = "sha256-q8OKNR+MAG009+5fP2SN5ePs9kVcxdds/YidKRzfP04=";
  };

  build-system = [ setuptools ];

  dependencies = [
    openstacksdk
    python-glanceclient
  ];

  nativeCheckInputs = [
    hacking
    fixtures
    jsonschema
    subunit
    oslotest
    stestr
    testscenarios
    testtools
  ];

  checkPhase = ''
    runHook preCheck

    stestr run

    runHook postCheck
  '';

  pythonImportsCheck = [ "os_client_config" ];

  meta = with lib; {
    homepage = "https://opendev.org/openstack/os-client-config";
    description = "Collect client configuration for using OpenStack in consistent and comprehensive manner";
    license = licenses.asl20;
    maintainers = teams.openstack.members;
  };
}
+51 −0
Original line number Diff line number Diff line
{
  lib,
  buildPythonPackage,
  fetchPypi,
  netaddr,
  oslo-concurrency,
  oslo-serialization,
  oslo-utils,
  prettytable,
  requests,
  setuptools,
  webob,
}:

buildPythonPackage rec {
  pname = "osprofiler";
  version = "4.1.0";
  pyproject = true;

  src = fetchPypi {
    inherit pname version;
    hash = "sha256-V4N7YgWBsTREouIFZHddT8c+/2fHiIr5mUftWC/lFLA=";
  };

  build-system = [ setuptools ];

  dependencies = [
    netaddr
    oslo-concurrency
    oslo-serialization
    oslo-utils
    prettytable
    requests
    webob
  ];

  # NOTE(vinetos): OSProfiler depends on jeager-client which use opentracing
  # Opentracing and jeager-client are archived since 2022.
  # As this package is made only to support old OpenStack clients and bindings,
  # We do not really care
  doCheck = false;

  pythonImportsCheck = [ "osprofiler" ];

  meta = with lib; {
    description = "OpenStack Library to profile request between all involved services";
    homepage = "https://opendev.org/openstack/osprofiler/";
    license = licenses.asl20;
    maintainers = teams.openstack.members;
  };
}
+98 −0
Original line number Diff line number Diff line
{
  lib,
  buildPythonPackage,
  fetchPypi,
  setuptools,
  # Build and Runtime
  pbr,
  cliff,
  debtcollector,
  iso8601,
  netaddr,
  openstacksdk,
  osc-lib,
  oslo-i18n,
  oslo-log,
  oslo-serialization,
  oslo-utils,
  os-client-config,
  keystoneauth1,
  python-keystoneclient,
  requests,
  hacking,
  # Tests
  fixtures,
  oslotest,
  osprofiler,
  python-openstackclient,
  subunit,
  requests-mock,
  stestr,
  testtools,
  testscenarios,
  tempest,
}:

buildPythonPackage rec {
  pname = "python-neutronclient";
  version = "11.3.1";
  pyproject = true;

  src = fetchPypi {
    inherit pname version;
    hash = "sha256-U82ZI/Q6OwdypA41YfdGVa3IA4+QJhqz3gW2IR0S7cs=";
  };

  build-system = [
    setuptools
    pbr
  ];

  dependencies = [
    cliff
    debtcollector
    iso8601
    netaddr
    openstacksdk
    osc-lib
    oslo-i18n
    oslo-log
    oslo-serialization
    oslo-utils
    os-client-config
    keystoneauth1
    python-keystoneclient
    requests
  ];

  nativeCheckInputs = [
    hacking
    fixtures
    oslotest
    osprofiler
    python-openstackclient
    subunit
    requests-mock
    stestr
    testtools
    testscenarios
    tempest
  ];

  checkPhase = ''
    runHook preCheck

    stestr run

    runHook postCheck
  '';

  pythonImportsCheck = [ "neutronclient" ];

  meta = with lib; {
    description = "Python bindings for the OpenStack Networking API";
    homepage = "https://opendev.org/openstack/python-neutronclient/";
    license = licenses.asl20;
    maintainers = teams.openstack.members;
  };
}
Loading