在playbook中使用命令任务时,在Ansible中出现内存错误

问题描述 投票:0回答:1
- hosts: all 

  ignore_errors: yes

  tasks:
  - name: Install BKUP

    command: yes | var/tocopy/Client/install

错误信息:

回溯(最近调用最后一次):文件“/tmp/ansible_HXcBpN/ansible_modlib.zip/ansible/module_utils/basic.py”,第2817行,在run_command stdout + = self._read_from_pipes(rpipes,rfds,cmd.stdout)MemoryError

致命:[]:失败! => {“已更改”:false,“cmd”:“是'|' var / tocopy / Client / install“,”invocation“:{”module_args“:{”_ raw_params“:”yes | var / tocopy / Client / install“,”_uses_shell“:false,”chdir“:null,”created“ :null,“executable”:null,“removed”:null,“stdin”:null,“warn”:true}},“msg”:“”,“rc”:257} ...忽略META:运行处理程序META:经营处理程序

ansible
1个回答
0
投票

表演

command: yes | var/tocopy/Client/install

永远不会终止,当你的脚本var/tocopy/Client/install没有终止,因为yes作为手册页说明

是 - 反复输出一个字符串直到被杀死

永远不会被杀死内存错误是一个后续错误,因为输出会缓冲到某个位置并占用所有内存。

所以使用另一个终结的command

command: echo y | var/tocopy/Client/install

如果您需要将字符串y输入到您的脚本中,请更好地使用expect module

© www.soinside.com 2019 - 2024. All rights reserved.