1

我正在尝试使用 Chef(-Solo)(通过 Vagrant)安装 SOLR PECL 扩展。当我试图将它安装在 Zend Server CE 盒子上时,我无法使用或访问普通的 php 食谱(AFAIK),所以我不能使用:

php_pear 'solr' do
  action :install
end

在我的 server.rb 文件中,我有一个类似的块:

execute "install solr module" do
 command "printf \"\n\n\n\" | pecl install -n solr"
 command "echo 'extension=solr.so' > /usr/local/zend/etc/conf.d/solr.ini"
 not_if "test -f /usr/local/zend/lib/php_extensions/solr.so"
end

我已经满足了所有依赖项,如果我通过 VM 中的命令行运行它,它可以工作 - 但它似乎永远不会通过 Vagrant/Chef 配置运行(或者确实不会抛出错误,但扩展似乎永远不会是创建)。

我在这里想念什么?

  • 有没有一种方法可以在php_pear不使用整个配方的情况下使用 LWRP?(我尝试将其添加到metadata.rb文件中,但似乎没有帮助
  • 失败了,我该如何调试这个命令失败的原因?(我已经尝试增加调试输出,但它没有显示此命令的任何更详细信息,例如。VAGRANT_LOG=info vagrant provision

如果需要,可以在这里查看整个项目:https ://github.com/alackmann/vagrant-zend-server/tree/master/vagrant

我还发现这是一个类似的问题,但无法弄清楚如何将其应用于我的情况:https ://serverfault.com/questions/363072/how-to-use-only-chefs-php- pear-provider-from-php-cookbook

4

0 回答 0