好吧,标题几乎说明了一切。
运行剧本时,您始终可以:
- name: my task
register: variable_name
some_module:
some_args: true
但是,在运行ansible-console
时,如何在变量中注册模块执行的结果?
答案 0 :(得分:1)
创建一个 vars 文件并将您的变量添加到其中
---
somevar: somevalue
cd hostgroup
include_vars myvarsfile.yml
根据文档 Ansible v4 似乎在命令行上使用 --extra-vars
。
答案 1 :(得分:0)
register
仅在使用ansible-playbook
发行的剧本中可用。 ansible-console
只是基础ansible
的包装,用于启动ad_hoc命令。您必须自己解析返回的json,然后调用set_fact
并返回结果。我没有看到控制台中可用的任何命令。
同时,您可以查看this similar question,其中有一个有趣的可能的解决方法是使用可以在控制台上使用的回调插件。