2011-05-14 3 views
1

J'utilise Vagrant pour créer un serveur de développement localement. J'écris ma propre recette de chef pour installer tout ce dont j'ai besoin mais je rencontre des problèmes.Problème d'installation de PEAR avec une recette de chef pour vagabond

Poire ne s'installera pas car je pense qu'elle essaye de tirer vers le bas une version qui n'est pas stable. L'erreur est:

No such file or directory - pear -d preferred_state=stable search PEAR 

La recette est la suivante

# 
# Chef recipe for provisioning a LAMP 
# development server. 
# 
require_recipe 'apt' 
require_recipe 'apache2' 
require_recipe 'apache2::mod_php5' 
require_recipe 'php::module_gd' 
require_recipe 'mysql::server' 

php_pear "PEAR" do 
    action :upgrade 
end 

php_pear "MDB2" do 
    action :install 
end 

php_pear "MDB2#mysql" do 
    action :install 
end 

# Grant access to this box... 
ruby_block "Create database + execute grants" do 
    block do 

    require 'rubygems' 
    Gem.clear_paths 
    require 'mysql' 

    m = Mysql.new('localhost', "root", node[:mysql][:server_root_password]) 
m.query("GRANT ALL ON *.* TO 'root'@'10.0.0.1' IDENTIFIED BY '#{node[:mysql][:server_root_password]}'") 
m.query('FLUSH PRIVILEGES') 

    end 
end 

Comment puis-je faire installer PEAR la dernière version stable?

Répondre

1

Vous utilisez poire pour installer poire elle-même? N'est-ce pas étrange?

Le message d'erreur

No such file or directory 

indique que votre recette tente d'utiliser la commande complète comme un exécutable, et non comme commande et les paramètres.

pear -d preferred_state=stable search PEAR 
1

Voici ce que je fais pour mettre à niveau PEAR dans mon Ubuntu VM:

package "php-pear" do 
    action :install 
end 

Il y a un paquet Ubuntu appelé php-pear, de sorte que cette commande va installer la dernière version

Questions connexes