适合是Ansible API的一个薄包装。
项目描述
An Ansible API for humans.
文档
快速入门
适合提供了一个简单的包装,覆盖Ansible的内部API,允许您以编程方式使用Ansible。
>>> from suitable import Api
>>> api = Api('localhost')
>>> api.command('whoami').stdout()
'myuser'
警告
适合没有得到Ansible的认可,并且与它没有关联。自行承担风险使用。
使用Python从Python使用Ansible的官方方式在此处有文档说明:https://docs.ansible.org.cn/ansible/developing_api.html
兼容性
Python 3.8+
Ansible 6+
Mitogen 0.3.7+
仅在可能的情况下保留对旧版发布的支持。新Ansible发布比旧版发布更受青睐。
运行测试
pip install tox
tox
构建状态
测试覆盖率
最新发布
变更日志
0.20.3 (2024-09-04)
避免Ansible在创建多个Api实例时向我们发送警告。[Daverball]
0.20.2 (2024-09-03)
改进了各种情况下RunnerResults的错误信息。[Daverball]
仅在ansible_port为22时将ansible_connection设置为local,因为其他任何内容都可能是一个SSH隧道。[Daverball]
0.20.1 (2024-09-03)
为非标量参数生成类型提示。[Daverball]
0.20.0 (2024-08-28)
将Ansible最低版本提升到6 [Daverball]
增加对Python 3.12的支持 [Daverball]
增加对Ansible 8+的适当支持 [Daverball]
为通过钩子Ansible模块创建的< cite >Api cite>方法添加基本的自动生成存根和文档,目前这仅包括ansible命名空间中的集合 [Daverball]
0.19.2 (2024-08-22)
为< cite >Api cite>上的泛型模块函数添加缺失的类型提示 [Daverball]
0.19.1 (2024-08-21)
增加基本类型提示 [Daverball]
0.19.0 (2024-08-21)
增加对Python 3.11的支持 [Daverball]
0.18.0 (2023-09-04)
使项目结构现代化 [strfx]
放弃对Python < 3.8的支持
切换到< cite >pyproject.toml cite>
将代码移动到源目录< cite >src/ cite>
设置Github Actions
使用bugbear和bandit检查代码(包括pre-commit钩子)
0.17.3 (2023-07-13)
保持< cite >ansible-core cite>依赖项为2.13.x。mitogen目前不支持该版本以上的任何版本(另请参阅)[strfx]
0.17.2 (2020-01-14)
接受Inventory类中的各种可迭代对象,而不仅仅是有限的集合。[href]
0.17.1 (2019-10-24)
向结果添加成功标志。[jokurz]
0.17.0 (2019-10-14)
添加通过堡垒机连接到多个主机的功能。[jokurz]
添加定义特定主机变量的功能。[jokurz]
0.16.2 (2019-10-01)
支持非Python Ansible模块。[jokurz]
0.16.1 (2019-08-19)
添加对Ansible 2.8和Mitogen 0.2.8的支持。
Mitogen现在支持Ansible 2.8。此适合版本需要最新的Ansible 2.8和Mitogen 0.2.8版本。[href]
[href]
0.16.0 (2019-05-17)
添加与Ansible 2.8的兼容性。[href]
有关更多信息,请参阅https://github.com/seantis/suitable/issues/27。[href]
请注意,Mitogen 0.2.6与Ansible 2.8不兼容。使用它将引发错误。要继续使用Mitogen,请等待新版本或改用Ansible 2.7。[href]
[href]
0.15.0 (2019-02-01)
添加“host_key_checking”标志,以便轻松在vanilla Api和Mitogen风味中禁用主机密钥检查。[href]
0.14.0 (2018-08-17)
在参数中添加对字典和列表的支持。[href]
0.13.0 (2018-07-30)
添加mitogen支持。[href]
0.12.0 (2018-06-14)
添加定义自定义策略和策略插件的能力。[href]
当设置“debug”详细程度时,激活Ansible的完整详细输出。[href]
将“took … to complete”日志从info降低到debug。[href]
0.11.2 (2018-05-01)
修复无法到达时自定义端口的服务器引发ValueError的问题。[href]
0.11.1 (2018-04-27)
修复了无原因出现Ansible警告的问题。[href]
0.11.0 (2018-04-27)
添加为每个服务器指定端口的选项。[href]
0.10.1 (2018-02-19)
添加对Ansible 2.5的支持。[href]
0.10.0 (2017-11-14)
添加指定环境变量的选项。[href]
0.9.0 (2017-09-19)
添加对Ansible 2.4的支持。由于此版本在内部引入了许多更改,因此已放弃对Ansible 2.3的支持![href]
您可能希望它将保持这种状态。如果可能,支持较旧的Ansible版本,但这不是此项目目标。[href]
明确放弃对Python 3.0 - 3.4的支持。Suitable支持Ansible支持的相同Python版本,因此不包括这些3.x版本。[href]
因此,支持的是Python 2.7、3.5和3.6+。[href]
0.8.1 (2017-08-10)
添加对Ansible的extra_vars的支持。[Liuyanglong]
0.8.0 (2017-06-02)
添加对Python 3.3+的支持。由于Ansible中的Python 3支持是实验性的,因此从此以后仅支持最新的Ansible(2.3+)。[href]
0.7.4 (2017-01-27)
修复了Ansible 2.1.4.0中与主机列表的问题。现在将主机列表以Ansible期望的格式传递给Ansible。[href]
0.7.3 (2016-03-08)
使基于密码的SSH身份验证再次正常工作。[href]
0.7.2 (2016-01-15)
停止命令和shell模块在某些命令上阻塞。针对https://github.com/ansible/ansible/issues/13862的工作区。[href]
0.7.1 (2016-01-15)
移除了Ansible 2.0.0.2中遗留的全球状态,该版本引入了主机缓存,导致Suitable的api实例不再独立。[href]
0.7.0 (2016-01-13)
添加对Ansible 2.0的支持。不再支持1.x![href]
0.6 (2015-06-22)
添加了对 Ansible 1.9 的向后兼容支持。在适合 Ansible 1.8 的环境中运行的相同代码现在也应适用于 Ansible 1.9。[链接]
0.5 (2014-11-28)
添加了对 Ansible 1.8 的支持。[链接]
包括对 Ansible 版本 1.5 到 1.8 的自动化测试。[链接]
正确转义键值对中的空格。修复 #3。[链接]
0.4 (2014-09-05)
将所有模块运行的结果包装起来,以便轻松访问每个服务器的结果。[链接]
如果 API 对象上仅使用“localhost”或“127.0.0.1”,则默认为传输“localhost”。[链接]
0.3 (2014-05-28)
添加了严厉警告,以免用户将其与官方 Ansible API 混淆。[链接]
0.2 (2014-05-21)
根据 Ansible 的要求,将许可证更改为 GPL v3。[链接]
0.1 (2014-05-21)
初始发布。[链接]
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解有关安装软件包的更多信息。