From ac57f9ba4a99c3805d7c040ac3dbd403de9164fa Mon Sep 17 00:00:00 2001 From: Matt Melling Date: Sun, 29 Jan 2023 21:29:28 +0000 Subject: [PATCH 1/7] python3Packages.sshfs: init at 2023.1.0 --- .../python-modules/sshfs/default.nix | 30 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 ++ 2 files changed, 32 insertions(+) create mode 100644 pkgs/development/python-modules/sshfs/default.nix diff --git a/pkgs/development/python-modules/sshfs/default.nix b/pkgs/development/python-modules/sshfs/default.nix new file mode 100644 index 000000000000..ab9076a18fe8 --- /dev/null +++ b/pkgs/development/python-modules/sshfs/default.nix @@ -0,0 +1,30 @@ +{ lib +, asyncssh +, bcrypt +, buildPythonPackage +, fetchPypi +, fsspec +, setuptools-scm +}: + +buildPythonPackage rec { + pname = "sshfs"; + version = "2023.1.0"; + + src = fetchPypi { + inherit pname version; + hash = "sha256-syIVtAi7aPeVPJSKHdDJIArsYj0mtIAP104vR3Vb1UQ="; + }; + + nativeBuildInputs = [ setuptools-scm ]; + + propagatedBuildInputs = [ fsspec asyncssh bcrypt ]; + + meta = with lib; { + description = "SSH/SFTP implementation for fsspec "; + homepage = "https://pypi.org/project/sshfs/${version}"; + changelog = "https://github.com/fsspec/sshfs/releases/tag/${version}"; + license = licenses.asl20; + maintainers = with maintainers; [ melling ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index c63ac709b295..cd5e8a293f59 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -11180,6 +11180,8 @@ self: super: with self; { ssh-mitm = callPackage ../development/python-modules/ssh-mitm { }; + sshfs = callPackage ../development/python-modules/sshfs { }; + sshpubkeys = callPackage ../development/python-modules/sshpubkeys { }; sshtunnel = callPackage ../development/python-modules/sshtunnel { }; From 2c06e8ee807024ecc11b7347f22c0e71ee26e08b Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Tue, 14 Mar 2023 09:56:39 +0100 Subject: [PATCH 2/7] python310Packages.sshfs: minor formatting changes --- pkgs/development/python-modules/sshfs/default.nix | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/pkgs/development/python-modules/sshfs/default.nix b/pkgs/development/python-modules/sshfs/default.nix index ab9076a18fe8..09f56297835e 100644 --- a/pkgs/development/python-modules/sshfs/default.nix +++ b/pkgs/development/python-modules/sshfs/default.nix @@ -16,12 +16,18 @@ buildPythonPackage rec { hash = "sha256-syIVtAi7aPeVPJSKHdDJIArsYj0mtIAP104vR3Vb1UQ="; }; - nativeBuildInputs = [ setuptools-scm ]; + nativeBuildInputs = [ + setuptools-scm + ]; - propagatedBuildInputs = [ fsspec asyncssh bcrypt ]; + propagatedBuildInputs = [ + asyncssh + bcrypt + fsspec + ]; meta = with lib; { - description = "SSH/SFTP implementation for fsspec "; + description = "SSH/SFTP implementation for fsspec"; homepage = "https://pypi.org/project/sshfs/${version}"; changelog = "https://github.com/fsspec/sshfs/releases/tag/${version}"; license = licenses.asl20; From ee1ebad37e097322ecebeb876e615e0e58470a31 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Tue, 14 Mar 2023 09:59:10 +0100 Subject: [PATCH 3/7] python310Packages.sshfs: add pythonImportsCheck --- pkgs/development/python-modules/sshfs/default.nix | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/pkgs/development/python-modules/sshfs/default.nix b/pkgs/development/python-modules/sshfs/default.nix index 09f56297835e..b34033d0c1ea 100644 --- a/pkgs/development/python-modules/sshfs/default.nix +++ b/pkgs/development/python-modules/sshfs/default.nix @@ -26,6 +26,10 @@ buildPythonPackage rec { fsspec ]; + pythonImportsCheck = [ + "sshfs" + ]; + meta = with lib; { description = "SSH/SFTP implementation for fsspec"; homepage = "https://pypi.org/project/sshfs/${version}"; From aec078fb432db9a37c9a6603516e605cc0b6ce66 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Tue, 14 Mar 2023 10:13:46 +0100 Subject: [PATCH 4/7] python310Packages.mock-ssh-server: init at 0.9.1 --- .../mock-ssh-server/default.nix | 49 +++++++++++++++++++ pkgs/top-level/python-packages.nix | 2 + 2 files changed, 51 insertions(+) create mode 100644 pkgs/development/python-modules/mock-ssh-server/default.nix diff --git a/pkgs/development/python-modules/mock-ssh-server/default.nix b/pkgs/development/python-modules/mock-ssh-server/default.nix new file mode 100644 index 000000000000..870a54b2485e --- /dev/null +++ b/pkgs/development/python-modules/mock-ssh-server/default.nix @@ -0,0 +1,49 @@ +{ lib +, buildPythonPackage +, fetchFromGitHub +, paramiko +, pkgs +, pytestCheckHook +, pythonOlder +}: + +buildPythonPackage rec { + pname = "mock-ssh-server"; + version = "0.9.1"; + format = "setuptools"; + + disabled = pythonOlder "3.7"; + + src = fetchFromGitHub { + owner = "carletes"; + repo = pname; + rev = "refs/tags/${version}"; + hash = "sha256-yJd+WDidW5ouofytAKTlSiZhIQg2cLs8BvEp15qwtjo="; + }; + + propagatedBuildInputs = [ + paramiko + ]; + + nativeCheckInputs = [ + pytestCheckHook + pkgs.openssh + ]; + + pythonImportsCheck = [ + "mockssh" + ]; + + disabledTests = [ + # ValueError: Invalid file descriptor: -1 + "test_ssh_session" + ]; + + meta = with lib; { + description = "Python mock SSH server for testing purposes"; + homepage = "https://github.com/carletes/mock-ssh-server"; + changelog = "https://github.com/carletes/mock-ssh-server/releases/tag/${version}"; + license = licenses.mit; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index cd5e8a293f59..520b4110ac58 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -6081,6 +6081,8 @@ self: super: with self; { mock-services = callPackage ../development/python-modules/mock-services { }; + mock-ssh-server = callPackage ../development/python-modules/mock-ssh-server { }; + mockupdb = callPackage ../development/python-modules/mockupdb { }; modeled = callPackage ../development/python-modules/modeled { }; From a33b89aacb8d596feac73ecf33a5ae78c295e93c Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Tue, 14 Mar 2023 10:15:17 +0100 Subject: [PATCH 5/7] python310Packages.sshfs: enable tests --- .../python-modules/sshfs/default.nix | 21 +++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/pkgs/development/python-modules/sshfs/default.nix b/pkgs/development/python-modules/sshfs/default.nix index b34033d0c1ea..1931c3e76109 100644 --- a/pkgs/development/python-modules/sshfs/default.nix +++ b/pkgs/development/python-modules/sshfs/default.nix @@ -2,8 +2,11 @@ , asyncssh , bcrypt , buildPythonPackage -, fetchPypi +, fetchFromGitHub , fsspec +, mock-ssh-server +, pytest-asyncio +, pytestCheckHook , setuptools-scm }: @@ -11,11 +14,15 @@ buildPythonPackage rec { pname = "sshfs"; version = "2023.1.0"; - src = fetchPypi { - inherit pname version; - hash = "sha256-syIVtAi7aPeVPJSKHdDJIArsYj0mtIAP104vR3Vb1UQ="; + src = fetchFromGitHub { + owner = "fsspec"; + repo = pname; + rev = "refs/tags/${version}"; + hash = "sha256-TETxjBI4T8dgmtCtx/lq2LIIwyFsAMWY6xdm7+Qsjb0="; }; + SETUPTOOLS_SCM_PRETEND_VERSION = version; + nativeBuildInputs = [ setuptools-scm ]; @@ -26,6 +33,12 @@ buildPythonPackage rec { fsspec ]; + nativeCheckInputs = [ + mock-ssh-server + pytest-asyncio + pytestCheckHook + ]; + pythonImportsCheck = [ "sshfs" ]; From a309e2c845a6460c426c7216e2cb1fe1e5ca8373 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Tue, 14 Mar 2023 10:20:58 +0100 Subject: [PATCH 6/7] python310Packages.sshfs: update homepage --- pkgs/development/python-modules/sshfs/default.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkgs/development/python-modules/sshfs/default.nix b/pkgs/development/python-modules/sshfs/default.nix index 1931c3e76109..763541221d0a 100644 --- a/pkgs/development/python-modules/sshfs/default.nix +++ b/pkgs/development/python-modules/sshfs/default.nix @@ -45,7 +45,7 @@ buildPythonPackage rec { meta = with lib; { description = "SSH/SFTP implementation for fsspec"; - homepage = "https://pypi.org/project/sshfs/${version}"; + homepage = "https://github.com/fsspec/sshfs/"; changelog = "https://github.com/fsspec/sshfs/releases/tag/${version}"; license = licenses.asl20; maintainers = with maintainers; [ melling ]; From d84e010821c601ba1f1c333522d3b8631cb1ccb3 Mon Sep 17 00:00:00 2001 From: Fabian Affolter Date: Tue, 14 Mar 2023 19:15:17 +0100 Subject: [PATCH 7/7] python310Packages.mock-ssh-server: disable tests Tests are terminated as they reach the max. timeout. They work locally but not on Hydra. --- .../python-modules/mock-ssh-server/default.nix | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/pkgs/development/python-modules/mock-ssh-server/default.nix b/pkgs/development/python-modules/mock-ssh-server/default.nix index 870a54b2485e..46608965c1c1 100644 --- a/pkgs/development/python-modules/mock-ssh-server/default.nix +++ b/pkgs/development/python-modules/mock-ssh-server/default.nix @@ -2,8 +2,6 @@ , buildPythonPackage , fetchFromGitHub , paramiko -, pkgs -, pytestCheckHook , pythonOlder }: @@ -25,20 +23,13 @@ buildPythonPackage rec { paramiko ]; - nativeCheckInputs = [ - pytestCheckHook - pkgs.openssh - ]; + # Tests are running into a timeout on Hydra, they work locally + doCheck = false; pythonImportsCheck = [ "mockssh" ]; - disabledTests = [ - # ValueError: Invalid file descriptor: -1 - "test_ssh_session" - ]; - meta = with lib; { description = "Python mock SSH server for testing purposes"; homepage = "https://github.com/carletes/mock-ssh-server";