人偶编译构建命令失败
puppet compilation build command failing
下面的解决方案解决了一个问题,但又出现了另一个问题:
代码如下:
exec { "Download Phalcon":
path => ["/usr/bin/", "/home/cphalcon/build"],
command => "git clone git://github.com/phalcon/cphalcon.git /home/cphalcon",
require => [Package["git"], Package["php5-fpm"]]
}
exec { "Build Phalcon":
require => Exec["Download Phalcon"],
command => "./install",
# creates => "/home/cphalcon/build",
cwd => "/home/cphalcon/build",
path => ["/usr/bin", "/home/cphalcon/build"]
}
错误如下:
==> default: Error: ./install: line 38: rm: command not found
==> default: ./install: line 64: phpize: command not found
==> default: Error: /Stage[main]/Main/Exec[Build Phalcon]/returns: change from notrun to 0 failed: ./install: line 38: rm: command not found
==> default: ./install: line 64: phpize: command not found
有什么想法吗?当我从 CLI 手动调用 ./install 时,phpize 并没有丢失——为什么现在它会丢失?
exec
命令对 cwd
参数不起作用。它设置当前目录,但不允许命令 运行 相对于该目录。
您还需要设置 path
参数(在您的情况下为 path => ['/home/cphalcon/build']
)。看看this documentation
下面的解决方案解决了一个问题,但又出现了另一个问题:
代码如下:
exec { "Download Phalcon":
path => ["/usr/bin/", "/home/cphalcon/build"],
command => "git clone git://github.com/phalcon/cphalcon.git /home/cphalcon",
require => [Package["git"], Package["php5-fpm"]]
}
exec { "Build Phalcon":
require => Exec["Download Phalcon"],
command => "./install",
# creates => "/home/cphalcon/build",
cwd => "/home/cphalcon/build",
path => ["/usr/bin", "/home/cphalcon/build"]
}
错误如下:
==> default: Error: ./install: line 38: rm: command not found
==> default: ./install: line 64: phpize: command not found
==> default: Error: /Stage[main]/Main/Exec[Build Phalcon]/returns: change from notrun to 0 failed: ./install: line 38: rm: command not found
==> default: ./install: line 64: phpize: command not found
有什么想法吗?当我从 CLI 手动调用 ./install 时,phpize 并没有丢失——为什么现在它会丢失?
exec
命令对 cwd
参数不起作用。它设置当前目录,但不允许命令 运行 相对于该目录。
您还需要设置 path
参数(在您的情况下为 path => ['/home/cphalcon/build']
)。看看this documentation