Puppet拒绝解压缩档案

时间:2014-09-05 15:45:24

标签: puppet

我想下载几个库(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连接时,在终端中手动解压缩工作正常。

我已经尝试过解压缩并再次压缩它。

我觉得完全迷失了,问题出在哪里?

1 个答案:

答案 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的输出添加到日志中。如果没有看到输出,我无法为你进一步调试,但我怀疑你一旦看到它就可以自己解决这个问题。