跳转到主要内容

用于从网络设备中提取信息的抽象层。

项目描述

Code Health Requirements Status

用于从网络设备中提取信息的抽象层。

安装

通过pip安装

pip install -e git+git://github.com/ninuxorg/netengine#egg=netengine

使用方法

SSH示例

from netengine.backends.ssh import AirOS

device = AirOS('10.40.0.1', 'root', 'password')

device.name
'RM5PomeziaSNode'
device.model
'Rocket M5'
device.os
('AirOS', 'XMar7240.v5.3.3.sdk.9634.1111221.2238')

device.to_json()

特定后端(协议)命令,SSH示例

print device.run('ls -l')
-rw-------    1 root     admin         459 Jan 26  2011 dropbear_dss_host_key
-rw-------    1 root     admin         427 Jan 26  2011 dropbear_rsa_host_key
drwxr-xr-x    3 root     admin           0 Oct 21  2011 mcuser
-rwxr-xr-x    1 root     admin         662 Nov 11 18:12 ninux
-rw-------    1 root     admin        1133 Nov 12 00:27 olsrd.conf
-rw-r--r--    1 root     admin         786 Dec 21  2011 olsrd6.conf
-rw-r--r--    1 root     admin         234 Jan  4  2012 radvd.conf

SNMP示例

from netengine.backends.snmp import AirOS

device = AirOS('10.40.0.1', community='public')

device.name
'RM5PomeziaSNode'
device.model
'Rocket M5'
device.os
('AirOS', 'XMar7240.v5.3.3.sdk.9634.1111221.2238')

特定SNMP命令示例

from netengine.backends.snmp import OpenWRT

device = OpenWRT('10.40.0.1', community='public')
# get a certain OID
device.get('1.2.840.10036.3.1.2.1.4.8')

HTTP示例

# TODO

MUNIN示例

# TODO

运行测试

安装nose

pip install nose

克隆仓库

git clone git://github.com/ninuxorg/netengine

cd netengine/

根据您的网络编辑设置json文件

cp test-settings.example.json test-settings.json
vim test-settings.json

使用以下命令运行测试

nosetests

使用以下命令查看测试覆盖率

nosetests --with-coverage --cover-package=netengine

通过指定相对路径运行特定测试

# base tests
nosetests tests.base

# snmp tests
nosetests tests.snmp
# snmp openwrt specific tests
nosetests tests.snmp.openwrt

# ssh tests
nosetests tests.ssh
# ssh airos specific tests
nosetests tests.ssh.airos

贡献

  1. 加入ninux-dev邮件列表

  2. 此仓库的Fork

  3. 遵循PEP8,Python代码风格指南

  4. 编写代码

  5. 为您的代码编写测试

  6. 确保所有测试通过

  7. 确保测试覆盖率不低于90%

  8. 记录您的更改

  9. 发送pull请求

许可证

版权所有 (c) 2013 Federico Capoano

特此授予任何获得此软件及其相关文档副本(“软件”)的人,免费、无限制地处理该软件的权利,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或出售软件副本,以及允许向软件提供的人做上述事情,前提是满足以下条件

上述版权声明和本许可声明应包含在软件的所有副本或主要部分中。

除本通知中所述外,未经事先书面授权,不得使用上述版权持有者的名称进行广告或以其他方式推广该软件的销售、使用或其他交易。

本软件按“原样”提供,不提供任何形式的质量保证,无论是明示的还是暗示的,包括但不限于适销性、特定用途适用性和非侵权性。在任何情况下,作者或版权所有者均不对任何索赔、损害或其他责任负责,无论源于合同行为、侵权行为或其他行为,是否与软件或软件的使用有关,或与之相关。

项目详情


下载文件

下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源代码分发

netengine-0.1.alpha.tar.gz (19.0 kB 查看哈希值)

上传时间 源代码

由以下机构支持