问题标签 [ansible-api]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python-2.7 - ****ansible.errors.AnsibleError:无法找到库存文件,请使用 -i 指定一个?****
****ansible.errors.AnsibleError:无法找到库存文件,请使用 -i 指定一个?****
我的脚本:
样品1.yml:
/etc/ansible/主机:
python - 你如何提取从 ansible playbook 返回的注册变量?
我有一个这样的剧本任务:
我正在使用 python API 运行这个剧本,我想对foo_result
变量进行一些后期处理。如何foo_result
使用 API 访问?
api - Ansible API:自定义模块
我想使用一个需要“主机名”的自定义模块,以便我可以从自定义模块启动 SSH 连接并运行命令。所以我将 transport = "local" 传递给 Runner 对象。但是,我找不到在自定义模块中获取“主机名”信息的方法。
我正在使用使用 Python API 的 Ansible 1.9.2。
python - ansible runner 跑到很长
当我使用 ansible 的 python API 在远程机器(数千)上运行脚本时,代码是:
然后,我用
这需要太长时间。我想将数据结构标准输出插入 MySQL。我想要的是,如果一旦机器返回数据,只需将数据插入 MySQL,然后下一个,直到所有机器都返回。
这是一个好主意,还是有更好的方法?
python - 编程ansible:将结果保存到python变量中
我正在使用此代码以编程方式运行 ansible:https ://github.com/jtyr/ansible-run_playbook带有一个简单的剧本,它只是从 Ubuntu 服务器收集事实并将它们打印到屏幕上:
但我真正需要的是简单地将输出保存到 python 变量中,而不是通过模板运行它或输出到屏幕(我实际上将在 Django 应用程序中使用它)。有没有办法做到这一点?
感谢您的阅读。
python - 从动作插件调用过滤器插件
我正在开发一个自定义 Ansible 动作插件。从那里我想从 CIDR 计算网关和子网掩码。使用ipaddr 过滤器已经可以做到这一点。有没有办法从动作插件内部调用 ipaddr 过滤器,而不是复制代码?
我知道您可以像这样从动作插件调用模块:
像这样的东西可用于过滤器吗?
我查看了 Ansible 的源代码并找到了filter_loader
该类,但还没有弄清楚如何使用它。
这会导致一个错误,我想如果不对 ipaddr 过滤器本身进行修改,我就无法避免,这当然是没有选择的。
python - 如何在 Ansible v2 中运行 playbook api
我想通过 Ansible V2 python api 运行 ansible playbook。这是我的方式:
但它无法正常运行并给我如下错误信息:
在这个TASK
我有template
一个带有变量的 Jinja2 文件groups['xxxx']
。我认为这是 Ansible 的内置组变量。谁能告诉它为什么会发生以及如何解决它。提前致谢。
python - 如何使用 Ansible 1.x API 列出主机
Ansible-playbook 有一个--list-hosts
cli 开关,它只输出受 playbook 中每个 play 影响的主机。我正在寻找一种通过 python API 访问相同信息的方法。
我现在用来测试的(非常)基本脚本是
我只是不知道要添加什么以ansible.runner.Runner()
使其输出受影响的主机并退出。
ansible - 如何使用 Vault 在 Ansible v2 中运行 playbook api
这是我所拥有的,我知道这无需加密即可运行,我可以运行
ansible-vault 编辑 common.yml
和
ANSIBLE_VAULT_PASSWORD_FILE=~/.vault_pass.txt
在环境中设置。
无法解密 common.yml
python - 在 Ansible 2.0 Python API 中将角色附加到剧本
基于这个问题How to use Ansible 2.0 Python API to run a Playbook?
如何创建 PlaybookExecutor 类的实例并附加将在调用 pbex.run() 时执行的 Ansible 角色?
这是一个示例 Playbook ls.yml - 注意角色是一个空列表。
这是使用 API 运行 playbook 的代码:
在 Ansible 2.0 之前 - 特别是在 1.7 中,我能够简单地附加角色的名称,如下所示(跳过导入)并调用 run 方法:
我想在 Ansible 2.0 中复制它。
谢谢