nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 aenum,
4 aiohttp,
5 blinker,
6 buildPythonPackage,
7 fetchPypi,
8 flatdict,
9 jwcrypto,
10 pycryptodomex,
11 pydantic,
12 pydash,
13 pyfakefs,
14 pyjwt,
15 pytest-asyncio,
16 pytest-mock,
17 pytest-recording,
18 pytestCheckHook,
19 python-dateutil,
20 pyyaml,
21 requests,
22 setuptools,
23 xmltodict,
24 yarl,
25}:
26
27buildPythonPackage rec {
28 pname = "okta";
29 version = "3.1.0";
30 pyproject = true;
31
32 src = fetchPypi {
33 inherit pname version;
34 hash = "sha256-7ZYDrup+HJxlrOmSBGsWD4Ku8HRlQR4E68olWQtcazg=";
35 };
36
37 build-system = [ setuptools ];
38
39 dependencies = [
40 aenum
41 aiohttp
42 blinker
43 flatdict
44 jwcrypto
45 pycryptodomex
46 pydantic
47 pydash
48 pyjwt
49 python-dateutil
50 pyyaml
51 requests
52 xmltodict
53 yarl
54 ];
55
56 checkInputs = [
57 pyfakefs
58 pytest-asyncio
59 pytest-mock
60 pytest-recording
61 pytestCheckHook
62 ];
63
64 enabledTestPaths = [ "tests/" ];
65
66 disabledTests = [
67 "test_client_raise_exception"
68 # vcr.errors.CannotOverwriteExistingCassetteException: Can't overwrite existing cassette
69 "test_get_org_contact_user"
70 "test_update_org_contact_user"
71 "test_get_role_subscription"
72 "test_subscribe_unsubscribe"
73 "test_client_invalid_url"
74 ];
75
76 pythonImportsCheck = [
77 "okta"
78 "okta.cache"
79 "okta.client"
80 "okta.exceptions"
81 "okta.http_client"
82 "okta.models"
83 "okta.request_executor"
84 ];
85
86 meta = {
87 description = "Python SDK for the Okta Management API";
88 homepage = "https://github.com/okta/okta-sdk-python";
89 changelog = "https://github.com/okta/okta-sdk-python/blob/v${version}/CHANGELOG.md";
90 license = lib.licenses.asl20;
91 maintainers = with lib.maintainers; [ jbgosselin ];
92 };
93}