saltypie-salt api包装器和返回解析器

saltypie的Python项目详细描述


Saltypie-salt api客户端和状态返回解析器

安装

   pip install saltypie

本地客户端示例

代码:

fromsaltypieimportSaltfromsaltypie.outputimportStateOutputsalt=Salt(url='https://192.168.70.11:8000',username='saltapiuser',passwd='abc123',trust_host=True)ret=salt.execute(client=Salt.CLIENT_LOCAL,target='*',fun='state.apply',pillar={'sleep':1})sout=StateOutput(ret)print(sout)

输出:

+ minion01 ---------------------------------------------------------+
| State                         Plot          %       ms     Result |
+-------------------------------------------------------------------+
| test succeed with changes     ||||||||||||  42.13%  0.404  True   |
| test succeed without changes  ||||||||      29.61%  0.284  True   |
| test no operation             ||||||||      28.26%  0.271  True   |
+-------------------------------------------------------------------+
| Total elapsed time: 0.96ms                                        |
+-------------------------------------------------------------------+

Runner客户端示例

代码:

fromsaltypieimportSaltfromsaltypie.outputimportOrchestrationOutputsalt=Salt(url='https://192.168.70.10:8000',username='saltapiuser',passwd='abc123',trust_host=True)salt.eauth='pam'ret=salt.execute(client=Salt.CLIENT_RUNNER,fun='state.orch',args=['orch_fail'],pillar={'sleep':1})orchout=OrchestrationOutput(ret,salt)print(orchout.summary_table(max_bar_size=100,time_unit='s'))

输出:

   + Orchestration -----------------------------------------------------------------+
   | Step                        Plot                       %       Time(s)  Result |
   +--------------------------------------------------------------------------------+
   | Step01                      |||||||||||||||||||||||||  25.20%   5.13    True   |
   | Step02                      ||||||||||||||||||||||||   24.69%   5.03    True   |
   | Step03                      ||||||||||||||||||||||||   24.79%   5.05    True   |
   | Step04                      |||||||||||||||||||||||||  25.32%   5.16    False  |
   +--------------------------------------------------------------------------------+
   | Total elapsed time: 20.37s                                                     |
   +--------------------------------------------------------------------------------+

终端安全模式

如果终端编码被检测为utf-8,则所有输出类都具有safe属性,该属性设置为False。要始终使用安全模式,请将其设置为True

示例:

fromsaltypieimportSaltfromsaltypie.outputimportStateOutput,OrchestrationOutputsout=StateOutput(ret)sout.safe=True# play with the tables here ...orchout=OrchestrationOutput(ret,salt)orchout.safe=True# play with the tables here ...

禁用表格着色

将输出对象colored属性设置为False

示例:

fromsaltypieimportSaltfromsaltypie.outputimportOrchestrationOutputorchout=OrchestrationOutput(ret,salt)orchout.colored=False# play with the tables here ...

更多示例

https://gitlab.com/cathaldallan/saltypie/tree/master/examples

文档

https://cathaldallan.gitlab.io/saltypie/

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

推荐PyPI第三方库


热门话题
java如何处理ExpandableListView?   tomcat错误“身份验证错误。请重新登录以进行身份验证”使用Java Buildpack将工件上载到bluemix   java测试S3列出具有特定帐户id的bucket   java如何为从wsdl链接调用服务的Soap消息设置用户和密码?   Java和Hibernate中的ArrayIndexOutOfBoundsException   java SMB JCIFS文件写入问题   java GC如何在范围中间工作   java如何从Joomla调用外部Web服务   Exoplayer 2.10.3在java中的实现   java如何实现返回对象“枚举”的函数?   java如何将非静态嵌套成员解析为Json?   代码生成生成java类并在运行时加载它   quartz调度器线程池上的java示例   java如何在JRuby中指定本机库路径?   java通过HDMI或USB连接在安卓上接收音频和视频   在PDFRender打开后,java无法删除pdf   Java 8接口与抽象类