Skip to main content

nornir 的多线程运行器插件,打印一个可爱的进度条。

项目描述

nornir_progressbar

发表

nornir_progressbar 是一个运行器插件,用于将您的任务执行变成漂亮的 tqdm 进度条。它可以与 Nornir 的两个标准 Runners 一起使用:

  • SerialRunner
  • ThreadedRunner

安装

使用 pip 从 PyPi安装包。

pip install nornir-progressbar

用法

在使用之前,请务必在您的 Nornir 脚本中注册 RunnerPlugin。

要使用多线程执行,请注册类 ThreadedProgressBarRunner:

from nornir_progressbar.plugins.runners import ThreadedProgressBarRunner
from nornir.core.plugins.runners import RunnersPluginRegister
from nornir import InitNornir

RunnersPluginRegister.register("ProgressBar", ThreadedProgressBarRunner)

nr = InitNornir(config_file='sample_config.yaml')

对于串行执行,请改用 SerialProgressBarRunner:

from nornir_progressbar.plugins.runners import SerialProgressBarRunner
from nornir.core.plugins.runners import RunnersPluginRegister
from nornir import InitNornir

RunnersPluginRegister.register("ProgressBar", SerialProgressBarRunner)

nr = InitNornir(config_file='sample_config.yaml')

你的 nornir 配置文件应该指向新的 runner 插件:

---
inventory:
    plugin: SimpleInventory
    options:
        host_file: "inventory/hosts.yaml"
        group_file: "inventory/groups.yaml"
        defaults_file: "inventory/defaults.yaml"
runner:
    plugin: ProgressBar
    options:
        num_workers: 10

就是这样!每当您执行 nornir 任务时,清单中的每个主机都会出现一个进度条,并随着每个完成执行的主机递增。正在运行的任务的名称用作进度条的描述。

进度条示例

配置

该插件使用 tqdm 来渲染进度条。通过在插件选项下设置关键字参数,可以直接将它们传递给 tqdm() 调用。添加“desc”参数将为进度条提供自定义描述。有关 支持的所有关键字参数,请参阅 tqdm 的文档

---
inventory:
    plugin: SimpleInventory
    options:
        host_file: "inventory/hosts.yaml"
        group_file: "inventory/groups.yaml"
        defaults_file: "inventory/defaults.yaml"
runner:
    plugin: ProgressBar
    options:
        num_workers: 10
        描述:托托塔塔 
        离开 

上面的配置产生一个带有描述“Toto tata”的进度条,每次任务完成执行时都会被替换。 带描述的进度条

使用该ascii选项获取 ASCII 进度条。

---
inventory:
    plugin: SimpleInventory
    options:
        host_file: "inventory/hosts.yaml"
        group_file: "inventory/groups.yaml"
        defaults_file: "inventory/defaults.yaml"
runner:
    plugin: ProgressBar
    options:
        num_workers: 10
        ASCII  

ASCII 进度条

项目详情


下载文件

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

源分布

nornir_progressbar-0.1.1.tar.gz (7.3 kB 查看哈希

已上传 source