Ansible在playbook执行输出中删除/更改带有星号的行
我想控制每个任务执行的星(*)ansible playbook输出显示的数量 例如:Ansible在playbook执行输出中删除/更改带有星号的行,ansible,Ansible,我想控制每个任务执行的星(*)ansible playbook输出显示的数量 例如: PLAY [localhost] ********************************************************************************* TASK [Gathering Facts] *************************************************************************** ok
PLAY [localhost] *********************************************************************************
TASK [Gathering Facts] ***************************************************************************
ok: [localhost]
TASK [include_vars] ******************************************************************************
ok: [localhost]
我想控制这里打印的星星数。有没有一个简单的解决方案,比如在不更改ansible代码的情况下向配置文件添加一个条目或其他内容
我想印一些像这样的东西
PLAY [localhost] *************************************
TASK [Gathering Facts] *********************************************************
ok: [localhost]
TASK [include_vars] *********************************************************
ok: [localhost]
我试图控制输出,使其适合一个小的终端屏幕这就是引擎盖下的情况:
self.columns = max(79, tty_size - 1)
因此,如果tty_足够宽,则得到tty_大小;如果tty_大小小于此值,则得到默认值79
要克服这个问题,您可以将此代码作为回调插件/crop\u columns.py
:
from ansible.plugins.callback import CallbackBase
try:
from __main__ import display
except ImportError:
display = None
class CallbackModule(CallbackBase):
def __init__(self, *args, **kwargs):
if display is not None:
display.columns = 50
谢谢@Konstantin Suvorov。我们需要为这个更改ansible代码,对吗?您认为我们可以将此应用于已安装的ansible软件吗?无需更改代码。您可以在项目的结构中分发插件。所以把这段代码放到
/path/to/playbook/callback\u plugins/crop\u columns.py
。我想完全删除星号。将display.columns
设置为0
只会减少到三个星号,因为banner
方法将star\u len
设置为最小值3
。您知道是否可以使用回调来避免输出任何星号吗?