Files
napalm-bsd/pyproject.toml
T
Christian Manivong ee0200462b
CI / test (3.10) (push) Successful in 28s
CI / test (3.11) (push) Successful in 23s
CI / test (3.12) (push) Successful in 29s
CI / test (3.10) (pull_request) Successful in 26s
CI / test (3.11) (pull_request) Successful in 30s
CI / test (3.12) (pull_request) Successful in 32s
feat!: configure_snmp_agent with the caller's values replaces fix_snmp (0.3.0)
fix_snmp wrote an application's snmpd.conf (community public, Managed
by netOrk, netork@localhost) and judged itself by a local snmpget.

The drivers implement napalm-device-types 4.13's SnmpAgentMixin steps
instead: net-snmp installed, snmpd.conf with one rocommunity line per
allowed source (staged without privilege, installed by root), snmpd
enabled and restarted. pf and ipfw rules stay the operator's. A
community or text that would break the file is refused. The caller
verifies with its own SNMP client.

Also get_management_peer() from SSH_CONNECTION, ensure_package from
the base package, and get_snmp_config no longer assumes "public".

BREAKING CHANGE: run_device_action is removed. Requires
napalm-device-types 4.13.

Part of #12 (the OpenBSD new_version text is still open).
2026-10-17 00:53:09 +02:00

50 lines
1.4 KiB
TOML

[build-system]
requires = ["setuptools>=68", "wheel"]
build-backend = "setuptools.build_meta"
[project]
name = "napalm-bsd"
version = "0.3.0"
description = "NAPALM drivers for FreeBSD and OpenBSD hosts via SSH"
readme = "README.md"
requires-python = ">=3.10"
license = { text = "Apache-2.0" }
authors = [
{ name = "Christian Manivong", email = "christian@manivong.de" },
]
keywords = ["napalm", "network", "automation", "freebsd", "openbsd", "bsd", "ssh", "driver"]
classifiers = [
"Development Status :: 3 - Alpha",
"Intended Audience :: System Administrators",
"License :: OSI Approved :: Apache Software License",
"Operating System :: OS Independent",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",
"Topic :: System :: Systems Administration",
]
dependencies = [
"napalm>=4.0",
"napalm-device-types>=4.13.0", # fixes: SnmpAgentMixin, EnsurePackageMixin
"paramiko>=5.0.0", # CVE-2026-44405
]
[project.optional-dependencies]
dev = ["pytest", "pytest-cov", "ruff", "mypy"]
[project.entry-points."napalm.drivers"]
freebsd = "napalm_bsd:FreeBSDDriver"
openbsd = "napalm_bsd:OpenBSDDriver"
[project.urls]
Repository = "https://git.netork.io/NAPALM/napalm-bsd"
[tool.setuptools.packages.find]
where = ["."]
include = ["napalm_bsd*"]
[tool.ruff]
line-length = 100
target-version = "py310"