我想下载几个库(guzzle,pimple)并在之后立即解压缩。 对于guzzle它没有任何问题,但它拒绝解压缩疙瘩并返回以下错误:
exec [unflate-pimple] /返回:从notrun更改为0失败:tar -zvxf pimple-v1.1.1-0.tar.gz返回2而不是[0]中的一个
我的执行官:
exec {
"unflate-$lib_name":
cwd => "/var/www/lib/$lib_name",
command => "tar -zvxf $lib_name-$lib_version_prefix$lib_version.tar.gz",
path => "/usr/bin:/usr/sbin:/bin",
require => Exec["download-$lib_name"]
}
其中
$lib_name = "pimple"
$lib_version_prefix = "v"
$lib_version = "1.1.1-0"
通过SSH连接时,在终端中手动解压缩工作正常。
我已经尝试过解压缩并再次压缩它。
我觉得完全迷失了,问题出在哪里?
答案 0 :(得分:1)
要调试此类错误行为,请将logoutput => true
参数添加到exec资源。
exec {
"unflate-$lib_name":
cwd => "/var/www/lib/$lib_name",
command => "tar -zvxf $lib_name-$lib_version_prefix$lib_version.tar.gz",
path => "/usr/bin:/usr/sbin:/bin",
require => Exec["download-$lib_name"],
logoutput => true,
}
较新版本的Puppet默认为on_error
,这也适用于您的情况。
然后,代理会将tar
的输出添加到日志中。如果没有看到输出,我无法为你进一步调试,但我怀疑你一旦看到它就可以自己解决这个问题。