1{
2 lib,
3 buildPythonPackage,
4 fetchFromGitHub,
5 pythonAtLeast,
6 setuptools,
7 requests,
8 python-dateutil,
9 pyjwt,
10 pytestCheckHook,
11 responses,
12 nix-update-script,
13}:
14
15buildPythonPackage rec {
16 pname = "dohq-artifactory";
17 version = "1.0.1";
18
19 src = fetchFromGitHub {
20 owner = "devopshq";
21 repo = "artifactory";
22 tag = version;
23 hash = "sha256-oGv7sZWi/e9WWa5W82pJ6d8S2d2e9gaoGZ3P/97IWoI=";
24 };
25
26 # https://github.com/devopshq/artifactory/issues/470
27 disabled = pythonAtLeast "3.13";
28
29 pyproject = true;
30
31 build-system = [ setuptools ];
32
33 dependencies = [
34 requests
35 python-dateutil
36 pyjwt
37 ];
38
39 pythonImportsCheck = [ "artifactory" ];
40
41 nativeCheckInputs = [
42 pytestCheckHook
43 responses
44 ];
45
46 enabledTestPaths = [ "tests/unit" ];
47
48 passthru.updateScript = nix-update-script { };
49
50 meta = with lib; {
51 description = "Python interface library for JFrog Artifactory";
52 homepage = "https://devopshq.github.io/artifactory/";
53 changelog = "https://github.com/devopshq/artifactory/releases/tag/${src.tag}";
54 license = licenses.mit;
55 maintainers = with maintainers; [ h7x4 ];
56 };
57}