来自 aptitude 命令 运行 的非零 return 代码通过 Ansible
non-zero return code from aptitude command run via Ansible
我在 运行 以下 Ansible 任务时遇到错误:
- name: List packages to upgrade (1/2)
shell: aptitude -q -F%p --disable-columns search "~U"
register: updates
changed_when: False
when: ansible_os_family == 'Debian'
错误:
TASK [List packages to upgrade (1/2)] ********************************************************************************************************************************
fatal: [php7e]: FAILED! => {"changed": false, "cmd": "aptitude -q -F%p --disable-columns search \"~U\"", "delta": "0:00:00.828791", "end": "2021-06-23 10:31:26.849961", "msg": "non-zero return code", "rc": 1, "start": "2021-06-23 10:31:26.021170", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []}
在另一台服务器上发现,我没有收到此错误。没有问题的服务器具有 aptitude 0.7.4,而有错误的服务器具有 aptitude 0.8.10。
显然 aptitude search
returns 如果没有软件包与搜索词匹配(在您的情况下:如果没有可升级的软件包),退出代码为 1
根据更新日志:
aptitude (0.7.6-1) unstable; urgency=low
[...]
* [cmdline] "search" now exits with non-zero on errors or empty results
(Closes: #497299)
所以:观察到的行为是正确的并且是预期的。
您必须相应地更新您的 ansible 任务。
我在 运行 以下 Ansible 任务时遇到错误:
- name: List packages to upgrade (1/2)
shell: aptitude -q -F%p --disable-columns search "~U"
register: updates
changed_when: False
when: ansible_os_family == 'Debian'
错误:
TASK [List packages to upgrade (1/2)] ********************************************************************************************************************************
fatal: [php7e]: FAILED! => {"changed": false, "cmd": "aptitude -q -F%p --disable-columns search \"~U\"", "delta": "0:00:00.828791", "end": "2021-06-23 10:31:26.849961", "msg": "non-zero return code", "rc": 1, "start": "2021-06-23 10:31:26.021170", "stderr": "", "stderr_lines": [], "stdout": "", "stdout_lines": []}
在另一台服务器上发现,我没有收到此错误。没有问题的服务器具有 aptitude 0.7.4,而有错误的服务器具有 aptitude 0.8.10。
显然 aptitude search
returns 如果没有软件包与搜索词匹配(在您的情况下:如果没有可升级的软件包),退出代码为 1
根据更新日志:
aptitude (0.7.6-1) unstable; urgency=low [...] * [cmdline] "search" now exits with non-zero on errors or empty results (Closes: #497299)
所以:观察到的行为是正确的并且是预期的。 您必须相应地更新您的 ansible 任务。