push sheeet
Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s

This commit is contained in:
Dark Steveneq
2025-10-09 14:15:47 +02:00
commit 646b892680
49168 changed files with 5897842 additions and 0 deletions

View File

@@ -0,0 +1,95 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
fetchpatch,
pythonOlder,
# build-system
setuptools,
cffi,
# dependencies
jinja2,
junos-eznc,
lxml,
ncclient,
netaddr,
netmiko,
netutils,
paramiko,
pyeapi,
pyyaml,
requests,
scp,
textfsm,
ttp,
ttp-templates,
typing-extensions,
# tests
pytestCheckHook,
ddt,
mock,
}:
buildPythonPackage rec {
pname = "napalm";
version = "5.0.0";
format = "pyproject";
disabled = pythonOlder "3.7";
src = fetchFromGitHub {
owner = "napalm-automation";
repo = "napalm";
tag = version;
hash = "sha256-Abw3h69qTFwOOFeAfivqAIWLozErJ1yZZfx7CbMy1AI=";
};
patches = [
(fetchpatch {
url = "https://github.com/napalm-automation/napalm/commit/7e509869f7cb56892380629d1cb5f99e3e2c6190.patch";
hash = "sha256-vJDACa5SmSJ/rcmKEow4Prqju/jYcCrzGpTdEYsAPq0=";
includes = [
"napalm/ios/ios.py"
];
})
];
nativeBuildInputs = [ setuptools ];
propagatedBuildInputs = [
cffi
jinja2
junos-eznc
lxml
ncclient
netaddr
netmiko
# breaks infinite recursion
(netutils.override { napalm = null; })
paramiko
pyeapi
pyyaml
requests
scp
setuptools
textfsm
ttp
ttp-templates
typing-extensions
];
nativeCheckInputs = [
pytestCheckHook
mock
ddt
];
meta = with lib; {
description = "Network Automation and Programmability Abstraction Layer with Multivendor support";
homepage = "https://github.com/napalm-automation/napalm";
license = licenses.asl20;
};
}

View File

@@ -0,0 +1,72 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
napalm,
netmiko,
pip,
pytest-cov-stub,
pytestCheckHook,
pythonOlder,
setuptools,
standard-telnetlib,
}:
buildPythonPackage rec {
pname = "napalm-hp-procurve";
version = "0.7.0";
pyproject = true;
disabled = pythonOlder "3.8";
src = fetchFromGitHub {
owner = "napalm-automation-community";
repo = "napalm-hp-procurve";
tag = version;
hash = "sha256-cO4kxI90krj1knzixRKWxa77OAaxjO8dLTy02VpkV9M=";
};
patchPhase = ''
# Dependency installation in setup.py doesn't work
echo -n > requirements.txt
substituteInPlace setup.cfg \
--replace " --pylama" ""
'';
build-system = [
setuptools
pip
];
buildInputs = [ napalm ];
dependencies = [
netmiko
standard-telnetlib
];
nativeCheckInputs = [
pytest-cov-stub
pytestCheckHook
];
disabledTests = [
# AssertionError: Some methods vary.
"test_method_signatures"
# AttributeError: 'PatchedProcurveDriver' object has no attribute 'platform'
"test_get_config_filtered"
# AssertionError
"test_get_interfaces"
"test_get_facts"
];
pythonImportsCheck = [ "napalm_procurve" ];
meta = with lib; {
description = "HP ProCurve Driver for NAPALM automation frontend";
homepage = "https://github.com/napalm-automation-community/napalm-hp-procurve";
changelog = "https://github.com/napalm-automation-community/napalm-hp-procurve/releases/tag/${src.tag}";
license = licenses.asl20;
maintainers = [ ];
};
}

View File

@@ -0,0 +1,47 @@
{
lib,
buildPythonPackage,
fetchFromGitHub,
setuptools,
napalm,
librouteros,
pytestCheckHook,
pythonAtLeast,
}:
buildPythonPackage rec {
pname = "napalm-ros";
version = "1.2.6";
pyproject = true;
src = fetchFromGitHub {
owner = "napalm-automation-community";
repo = "napalm-ros";
tag = version;
hash = "sha256-Fv11Blx44vZZ8NuhQQIFpDr+dH2gDJtQP7b0kAk3U/s=";
};
build-system = [ setuptools ];
dependencies = [ librouteros ];
nativeCheckInputs = [
napalm
pytestCheckHook
];
disabledTests = [
# AssertionError: Some methods vary.
"test_method_signatures"
];
pythonImportsCheck = [ "napalm_ros" ];
meta = {
description = "MikroTik RouterOS NAPALM driver";
homepage = "https://github.com/napalm-automation-community/napalm-ros";
changelog = "https://github.com/napalm-automation-community/napalm-ros/releases/tag/${src.tag}";
license = lib.licenses.gpl2Plus;
platforms = lib.platforms.linux;
maintainers = with lib.maintainers; [ felbinger ];
};
}