Something went wrong. Try again.
Nix Packages collection & NixOS github.com/NixOS/nixpkgs
Something went wrong. Try again.
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697{ stdenv, lib, buildPythonPackage, fetchPypi, setuptools, distutils, pyyaml, openssh, unittestCheckHook, installShellFiles, bc, hostname, bash,}:
buildPythonPackage rec { pname = "clustershell"; version = "1.10.1"; pyproject = true;
src = fetchPypi { inherit pname version; hash = "sha256-snrwuqnRsQrGonKXALA+WieWyDjLtqrxkCaYImq56oo="; };
build-system = [ setuptools distutils ];
postPatch = '' substituteInPlace lib/ClusterShell/Worker/Ssh.py \ --replace-fail '"ssh"' '"${openssh}/bin/ssh"' \ --replace-fail '"scp"' '"${openssh}/bin/scp"'
substituteInPlace lib/ClusterShell/Worker/fastsubprocess.py \ --replace-fail '"/bin/sh"' '"${bash}/bin/sh"'
for f in tests/*; do substituteInPlace $f \ --replace-quiet '/bin/hostname' '${hostname}/bin/hostname' \ --replace-quiet '/bin/sleep' 'sleep' \ --replace-quiet '/bin/echo' 'echo' \ --replace-quiet '/bin/uname' 'uname' \ --replace-quiet '/bin/false' 'false' \ --replace-quiet '/bin/true' 'true' \ --replace-quiet '/usr/bin/printf' 'printf' done '';
propagatedBuildInputs = [ pyyaml ];
nativeBuildInputs = [ installShellFiles ];
nativeCheckInputs = [ bc hostname unittestCheckHook ];
pythonImportsCheck = [ "ClusterShell" ];
unittestFlagsArray = [ "tests" "-p" "'*Test.py'" ];
# Many tests want to open network connections # https://github.com/cea-hpc/clustershell#test-suite # # Several tests fail on Darwin preCheck = '' rm tests/CLIClushTest.py rm tests/TreeWorkerTest.py rm tests/TaskDistantMixin.py rm tests/TaskDistantTest.py rm tests/TaskDistantPdshMixin.py rm tests/TaskDistantPdshTest.py rm tests/TaskRLimitsTest.py rm tests/TreeGatewayTest.py '';
postInstall = '' installShellCompletion --bash bash_completion.d/* '';
meta = { broken = stdenv.hostPlatform.isDarwin; description = "Scalable Python framework for cluster administration"; homepage = "https://cea-hpc.github.io/clustershell"; license = lib.licenses.lgpl21; maintainers = [ lib.maintainers.alexvorobiev ]; };}