puppetdb的每日运行摘要报告,使用nedap的pypuppetdb模块用python编写。

pypuppetdb_daily_report的Python项目详细描述


pypuppetdb_每日报告

https://pypip.in/v/pypuppetdb_daily_report/badge.pnghttps://pypip.in/d/pypuppetdb_daily_report/badge.pngtravis-ci for master branchcoverage report for master branch

puppetdb的每日运行摘要报告,使用nedap’s pypuppetdb模块用python编写。

有关当前版本输出的示例,请参见https://rawgithub.com/jantman/pypuppetdb-daily-report/master/example_output.html

报告显示当前时间点的以下内容:

  • “puppetversion”、“facterversion”和“lsbdistdescription”事实的当前值

对于运行间隔中的每一天,执行以下操作:

  • 运行脚本时截取的仪表板指标(可能的话为平均值)
  • 总运行次数,出现故障的运行次数
  • 节点数:
    • 没有成功的运行,50%以上的运行失败,任何失败的运行
    • 24小时内成功运行少于40次
    • 资源已更改的运行计数
    • 资源已更改的节点数
  • 前10个失败的资源,以及它们失败的节点数
  • 前10个资源已更改,在中更改了多少节点和运行次数
  • 在节点上至少45%的运行中更改了任何(最多10个)资源(摆动)

开发

指南

  • 符合PEP8,但有一些例外(请参阅pytest.ini)
  • 使用pytest的100%测试覆盖率(使用有效测试)(注意,直到 https://github.com/lemurheavy/coveralls-public/issues/31已修复,您 需要检查分支覆盖率的cov输出,工作服不能 值得信赖)。

测试

测试通过pytest完成,由tox驱动。

  • 测试非常简单:
    • pip install tox
    • tox
  • 如果您想查看代码覆盖率:tox -e cov
    • 这将生成两个覆盖率报告-STDOUT上的摘要和htmlcov/目录中的完整报告
  • 如果要将其他参数传递给pytest,请将它们添加到tox命令行的“–”后面。即,对于py27测试上的详细pytext输出:tox -e py27 ---v

发布清单

  1. 为释放打开一个问题;为那个问题切断一个分支。
  2. 确认所有主要更改都有changes.rst条目。
  3. 确保Travis测试在所有环境中都通过。
  4. 确保测试覆盖率不低于上一个版本(理想情况下为100%)。
  5. 在@init.py中增加版本号,将version和release date添加到changes.rst,然后推送到github。
  6. 确认readme.rst在github上正确呈现。
  7. 将包上载到testpypi,确认readme.rst呈现正确。
  8. 创建一个请求以将发布合并到主版本中成功构建travis后,合并它。
  9. 在git中标记发布,将tag推送到github:
    • 标记释放。现在,消息很简单:git tag -a vX.Y.Z -m 'X.Y.Z released YYYY-MM-DD'
    • 将标记推送到GitHub:git push origin vX.Y.Z
  1. 将包上载到实时pypi:
    • python setup.py sdist upload
  1. 确保版本中修复的所有GH问题都已关闭。

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

推荐PyPI第三方库


热门话题
java应该考虑使用DTO来代替Spring控制器层吗?   java为什么要将Maven与Git结合起来?   java试图将CSV转换为XLSX,但使用了错误的逗号拆分列   mysql Spring 3+Hibernate:java。sql。BatchUpdateException:无法添加或更新子行(ManyToMany)   java基本字符串反转器   java无法使用RestControllerAdvice为身份验证失败生成自定义错误消息   java当只允许SQLException时,如何抛出EOFEException?   java如何创建播放模块?   Android中匿名类的java实例化异常问题   java两个停靠组件,其中第二个组件填充剩余空间   java如何在按钮延迟时启用它   Java中正在运行的应用程序中的后台进程   java我正试图从一个字符串打印出这个字符输出   如何使用java socket通过两个不同的wifi连接两台电脑?   javaapachecamel:如何将分层数据从数据库转换为pojo   java Webrtc:OniconConnectionChange和onConnectionChange之间有什么区别   java如何重写已经创建的JTable方法   爪哇扫雷机堆垛机   雅加达ee Java ee EJB 3.0 Glassfish