Lorsque j'appelle le mysqldump
à partir d'un contrôleur ou d'un modèle, j'ai besoin de parcourir complètement le binaire, quand je l'appelle de Rake, je n'ai pas besoin de le faire.Pourquoi mysqldump doit-il être complètement pathqué lorsqu'il est appelé depuis un contrôleur ou un modèle?
Si je ne suis pas complètement chemin que je reçois un fichier zéro octet ...
Je peux confirmer les deux processus sont exécutés en utilisant le même utilisateur. Si j'appelle la tâche Rake de l'action, elle échoue également (fichier de zéro octet).
OS: Mac Ruby 1.8.6
EDIT: J'utilise Etc.getpwuid(Process.uid).name
pour obtenir l'utilisateur du processus en cours
Comment lancez-vous votre application Rails? Je pense que vous devriez vérifier que le processus qui l'exécute a le même environnement (avec la variable PATH) que lorsque vous exécutez Rake. –
Le processus est exécuté sous le même utilisateur, je ne suis pas si sûr de ce que le chemin est défini dans les deux cas. – Kris
Dans Rails ENV ['PATH'] est/usr/bin:/bin:/usr/sbin:/sbin Dans Rake ENV ['PATH'], il est exactement le même que mon système $ PATH. Est-ce normal? – Kris