Chef infra 如何让Chef在使用action:install执行包命令期间输出日志?
我在用厨师来部署。 我有一个简单的食谱如下:Chef infra 如何让Chef在使用action:install执行包命令期间输出日志?,chef-infra,Chef Infra,我在用厨师来部署。 我有一个简单的食谱如下: package 'my-package' do action :install end 当chef client在Debian上运行这个菜谱时,它不会告诉我们apt-get-in-stdout的任何进展。 如果apt get安装包失败,我无法从chef client的日志中获得任何有关失败的信息。 我还检查了/var/log/apt/term.log,但没有安装日志 以下是chef客户端的日志输出: [Sat, 09 Mar 2013 22
package 'my-package' do
action :install
end
当chef client在Debian上运行这个菜谱时,它不会告诉我们apt-get-in-stdout的任何进展。
如果apt get安装包失败,我无法从chef client的日志中获得任何有关失败的信息。
我还检查了/var/log/apt/term.log,但没有安装日志
以下是chef客户端的日志输出:
[Sat, 09 Mar 2013 22:24:57 +0900] INFO: Processing package[my-package] action install (my-package::default line 19)
================================================================================
Error executing action `install` on resource 'package[my-package]'
================================================================================
Chef::Exceptions::Exec
----------------------
apt-get -y install my-package=3.0.0 returned 100, expected 0
如何让厨师输出apt的安装进度?
我应该使用execute命令而不是package命令吗?
如有任何建议,将不胜感激。
谢谢。这是一个非常特定于Debian/Ubuntu的问题。您的
apt缓存
已过期。你要么要跑
apt-get update -y
在目标机器上,或者在
运行列表中包含早期的
您可以向首席客户机提供-l debug
选项。这不是您问题的答案,但要查看发生的确切错误,您可以通过ssh连接到该机器,并尝试手动启动apt get-y install my package=3.0.0
。当然,不要使用execute
资源来安装软件包。谢谢你,Draco。我目前正在检查问题,再次手动运行apt get作为您的注释。这有点毫无意义,因为Jenkins调用了chef客户端,我希望尽可能多地存储构建日志的所有信息。