跳转到主要内容

使用Python语法的Ansible Inventory实现

项目描述

CI Status

Pyventory

使用Python语法的Ansible Inventory实现

安装

pip3 install pyventory

功能

  • 模块化库存。
  • 使用Python类进行资产继承。
  • 支持多重继承。
  • 支持混入。
  • 支持使用Python字符串格式化进行vars模板化。
  • Python 3 (>=3.6) 支持。
  • Python 2不支持。

用法

创建hosts.py并使其可执行。

hosts.py内容的简例

#!/usr/bin/env python3
from pyventory import Asset, ansible_inventory

class All(Asset):
    run_tests = False
    use_redis = False
    redis_host = 'localhost'
    minify = False
    version = 'develop'

class Staging(All):
    run_tests = True

staging = Staging()

ansible_inventory(locals())

考虑一个更复杂的例子,它将以下JSON输出传递给Ansible。

使用-i hosts.py键运行Ansible playbook

ansible-playbook -i hosts.py site.yml

注意,您需要在PYTHONPATH中拥有您的库存包。

项目详情


下载文件

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

源分发

pyventory-3.3.2.tar.gz (5.9 kB 查看哈希值)

上传时间

构建分发

pyventory-3.3.2-py3-none-any.whl (6.7 kB 查看哈希值)

上传时间 Python 3

支持