用于在局域网上定位和分类树莓果的一种可靠的动态目录。

pinventor的Python项目详细描述


pinventory是用于定位和 对本地网络上的覆盆子PI计算机进行分类。

安装

在您正在使用的python环境中:

$ python setup.py install

将安装一个名为simplypinventory的包装脚本 它可以用来调用python包。

直接使用

为了获得一个可靠的树莓pi计算机清单 局域网:

$ pinventory --list --pretty
{
    "_meta": {
        "hostvars": {
            "10.0.0.149": {
                "hostname": "lime",
                "ip": "10.0.0.149",
                "mac": "b8:27:eb:a5:93:c5"
            },
            "10.0.0.186": {
                "hostname": "raspberrypi",
                "ip": "10.0.0.186",
                "mac": "b8:27:eb:73:9d:67"
            }
        }
    },
    "raspberries": {
        "hosts": [
            "10.0.0.149",
            "10.0.0.186"
        ]
    }
}

要获取特定主机的主机变量:

$ pinventory --host 10.0.0.149 --pretty
{
    "hostname": "lime",
    "ip": "10.0.0.149",
    "mac": "b8:27:eb:a5:93:c5"
}

从ansibe调用

使用-iinventory选项传递pinventoryexecutable,然后 ansible将以dynamic inventory的形式执行它。例如,假设 pinventory在路径上可用,可以运行一个特殊的ansible命令 在LAN上的所有Raspberry PI设备上,使用:

$ ansible raspberries -i `which pinventory` <command>

定制

默认情况下,返回的库存包括allraspberry pi 本地网络上的计算机。目录的内容 与每个主机相关的变量可以通过 在两个pkg_resourcesentry处提供可插入函数 能够转换默认库存和 分别是宿主变量。可以找到示例函数 在pinventory.transforms.hostsvarspinventory.transforms.inventory子模块。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
Java中是否有数字的默认类型   java调用一个类的方法来使用另一个类的实例   java HtmlUnit不适用于javascript处理   java需要帮助才能连接MongoDB   java如何从Maven中的src/main/resources复制文件?   java保存Int值(共享首选项)   从另一个类调用方法时,java Autowired组件出现空指针异常   java Spring JPA:PropertyAccessException 1:。。。MethodInvocationException:。'driverClassName'。。。org/postgresql/Driver:不支持的专业。次要版本52.0   java使用增强的JDO模型类在Eclipse中运行Junit测试   java如何使用eclipse IDE为junit创建可运行的jar文件   java如何在安卓中检测应用程序的启动和退出   java在其他线程可以访问静态映射时从数据库更新静态映射   java@Entitty和@EntityScan不起作用。我正在使用SpringBoot和jpa存储库,发生了很多次   java如何与google日历集成?