Something went wrong. Try again.
What happens if I push all of nixpkgs
Something went wrong. Try again.
3.7 kB · 142 lines
Nix
at litex
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143{ lib, arangodb, buildPythonPackage, fetchFromGitHub, pythonOlder, pytestCheckHook, pyjwt, pytest, mock, requests, requests-toolbelt}:
let testDBOpts = { host = "127.0.0.1"; port = "8529"; password = "test"; secret = "secret"; };in
buildPythonPackage rec { pname = "python-arango"; version = "7.5.7"; format = "setuptools";
disabled = pythonOlder "3.7";
src = fetchFromGitHub { owner = "ArangoDB-Community"; repo = "python-arango"; rev = "refs/tags/${version}"; hash = "sha256-cd2xE5rYLl3NOv/DZjmHRPCe224k4XyPjo9aXV1ZhvU="; };
propagatedBuildInputs = [ requests requests-toolbelt pyjwt ];
nativeCheckInputs = [ arangodb mock pytestCheckHook ];
# arangodb is compiled only for particular target architectures # (i.e. "haswell"). Thus, these tests may not pass reproducibly, # failing with: `166: Illegal instruction` if not run on arangodb's # specified architecture. # # nonetheless, the client library should remain in nixpkgs - since # the client library will talk to arangodb across the network and # architecture issues will be irrelevant. doCheck = false;
preCheck = lib.optionalString doCheck '' # Start test DB mkdir -p .nix-test/{data,work}
ICU_DATA=${arangodb}/share/arangodb3 \ GLIBCXX_FORCE_NEW=1 \ TZ=UTC \ TZ_DATA=${arangodb}/share/arangodb3/tzdata \ ARANGO_ROOT_PASSWORD=${testDBOpts.password} \ ${arangodb}/bin/arangod \ --server.uid=$(id -u) \ --server.gid=$(id -g) \ --server.authentication=true \ --server.endpoint=http+tcp://${testDBOpts.host}:${testDBOpts.port} \ --server.descriptors-minimum=4096 \ --server.jwt-secret=${testDBOpts.secret} \ --javascript.app-path=.nix-test/app \ --log.file=.nix-test/log \ --database.directory=.nix-test/data \ --foxx.api=false & '';
pytestFlagsArray = [ "--host" testDBOpts.host "--port" testDBOpts.port "--passwd" testDBOpts.password "--secret" testDBOpts.secret ];
disabledTests = [ # AssertionError geo-related - try enabling later "test_document_find_in_box"
# maybe arangod misconfig - try enabling later # arango.exceptions.JWTAuthError: [HTTP 401][ERR 401] Wrong credentials "test_auth_jwt"
# ValueError - try enabling later # maybe missed 3.9.3->3.10.0 changes # most caused by key change: isNewlyCreated->new "test_add_hash_index" "test_add_skiplist_index" "test_add_persistent_index" "test_add_ttl_index" "test_delete_index" "test_pregel_management"
# formatting error - try enabling later # maybe missed 3.9.3->3.10.0 changes # caused by: body["computedValues"] = None "test_permission_management" "test_collection_misc_methods" "test_collection_management" "test_replication_inventory"
# want outgoing network to update foxx apis # so foxx.api disabled in arangod startup "test_foxx_service_management_file" "test_foxx_service_management_json" "test_foxx_config_management" "test_foxx_dependency_management" "test_foxx_development_toggle" "test_foxx_misc_functions"
# no replication configured via arangod invocation "test_replication_applier" ];
pythonImportsCheck = [ "arango" ];
meta = with lib; { description = "Python Driver for ArangoDB"; homepage = "https://github.com/ArangoDB-Community/python-arango"; changelog = "https://github.com/ArangoDB-Community/python-arango/releases/tag/${version}"; license = licenses.mit; maintainers = with maintainers; [ jsoo1 ]; };}