at 23.05-pre 1.3 kB view raw
1{ lib 2, buildPythonPackage 3, click 4, colorama 5, configparser 6, distro 7, fetchFromGitHub 8, gevent 9, jinja2 10, paramiko 11, pytestCheckHook 12, python-dateutil 13, pythonOlder 14, pywinrm 15, pyyaml 16, setuptools 17}: 18 19buildPythonPackage rec { 20 pname = "pyinfra"; 21 version = "2.5.3"; 22 format = "setuptools"; 23 24 disabled = pythonOlder "3.7"; 25 26 src = fetchFromGitHub { 27 owner = "Fizzadar"; 28 repo = pname; 29 rev = "refs/tags/v${version}"; 30 hash = "sha256-1buLaBhhmc4FnROr5M+bqSlsbkfjl58a1/4qWBXE97Y="; 31 }; 32 33 propagatedBuildInputs = [ 34 click 35 colorama 36 configparser 37 distro 38 gevent 39 jinja2 40 paramiko 41 python-dateutil 42 pywinrm 43 pyyaml 44 setuptools 45 ]; 46 47 checkInputs = [ 48 pytestCheckHook 49 ]; 50 51 pythonImportsCheck = [ 52 "pyinfra" 53 ]; 54 55 disabledTests = [ 56 # Test requires SSH binary 57 "test_load_ssh_config" 58 ]; 59 60 meta = with lib; { 61 description = "Python-based infrastructure automation"; 62 longDescription = '' 63 pyinfra automates/provisions/manages/deploys infrastructure. It can be used for 64 ad-hoc command execution, service deployment, configuration management and more. 65 ''; 66 homepage = "https://github.com/Fizzadar/pyinfra"; 67 maintainers = with maintainers; [ totoroot ]; 68 license = licenses.mit; 69 }; 70}