Mina: وحدة تحكم Mina 'bash: bundle: command not found'

تم إنشاؤها على ٢٤ يناير ٢٠١٧  ·  8تعليقات  ·  مصدر: mina-deploy/mina

mina console زيادة الخطأ bash: bundle: command not found

أثناء مراجعة كود المصدر ، ما تفعله وحدة التحكم mina

  1. القرص المضغوط إلى المسار الحالي
  2. نفذ rails c

ومع ذلك ، عندما نستخدم rvm أو rben ، نحتاج إلى تحميل نسخة الياقوت مع gemset أولاً.

التعليق الأكثر فائدة

هذا يعمل بالنسبة لي مع rbenv:

""
المهمة: البيئة تفعل
# إذا كنت تستخدم rbenv ، فاستخدم هذا لتحميل بيئة rbenv.
# تأكد من الالتزام بإصدار .ruby أو .rbenv-version إلى المستودع الخاص بك.
استدعاء: " rbenv: تحميل "

# بالنسبة لأولئك الذين يستخدمون RVM ، استخدم هذا لتحميل إصدار RVM @ gemset.
# استدعاء: ' rvm: استخدم [ruby-1.9. 3-p125 @ افتراضي ] '
نهاية


desc "بدء تشغيل وحدة تحكم قضبان تفاعلية."
المهمة: c =>: البيئة تفعل
استدعاء: "وحدة التحكم"
نهاية
""

ال 8 كومينتر

لقد كتبت نفس العدد https://github.com/mina-deploy/mina/issues/476

لدي نفس المشكلة.

هذا يعمل بالنسبة لي مع rbenv:

""
المهمة: البيئة تفعل
# إذا كنت تستخدم rbenv ، فاستخدم هذا لتحميل بيئة rbenv.
# تأكد من الالتزام بإصدار .ruby أو .rbenv-version إلى المستودع الخاص بك.
استدعاء: " rbenv: تحميل "

# بالنسبة لأولئك الذين يستخدمون RVM ، استخدم هذا لتحميل إصدار RVM @ gemset.
# استدعاء: ' rvm: استخدم [ruby-1.9. 3-p125 @ افتراضي ] '
نهاية


desc "بدء تشغيل وحدة تحكم قضبان تفاعلية."
المهمة: c =>: البيئة تفعل
استدعاء: "وحدة التحكم"
نهاية
""

hovancik شكرًا لك ، لقد نجح الأمر بالنسبة لي.

لكن كيف يمكن إصلاحه؟ للعمل خارج الصندوق تمامًا ، دون أي اختراقات

يرجى إلقاء نظرة على https://github.com/mina-deploy/mina/blob/master/docs/faq.md# --command-not-found-bundle

حول هذا ، لا يزال لدي هذه المشكلة

في حالتي ، لأنني بحاجة إلى تحميل rbenv أولاً لتشغيل bundle

$ mina console -s --trace
** Invoke console (first_time)
** Execute console
** Invoke debug_configuration_variables (first_time)
** Execute debug_configuration_variables
** Invoke run_commands (first_time)
** Execute run_commands
** Invoke environment (first_time)
** Execute environment
** Invoke rbenv:load (first_time)
** Execute rbenv:load
** Invoke nvm:load (first_time)
** Execute nvm:load
#!/usr/bin/env bash
# Executing the following via 'ssh [email protected] -i config/deployment_key -p 22 -tt':
#
echo "-----> Loading rbenv"
export RBENV_ROOT="$HOME/.rbenv"
export PATH="$HOME/.rbenv/bin:$PATH"
if ! which rbenv >/dev/null; then
  echo "! rbenv not found"
  echo "! If rbenv is installed, check your :rbenv_path setting."
  exit 1
fi
eval "$(rbenv init -)"
echo "-----> Loading nvm"
[ -s "/home/deployer/.nvm/nvm.sh" ] && . "/home/deployer/.nvm/nvm.sh"
(cd /home/deployer/app/current && RAILS_ENV="production" bundle exec rails console && cd -)
echo "-----> Loading rbenv"
export RBENV_ROOT="$HOME/.rbenv"
export PATH="$HOME/.rbenv/bin:$PATH"
if ! which rbenv >/dev/null; then
  echo "! rbenv not found"
  echo "! If rbenv is installed, check your :rbenv_path setting."
  exit 1
fi
eval "$(rbenv init -)"
echo "-----> Loading nvm"
[ -s "/home/deployer/.nvm/nvm.sh" ] && . "/home/deployer/.nvm/nvm.sh"

       Elapsed time: 0.00 seconds

كما ترى في الإخراج فوق environment تسمى المهمة بعد console . يتم أيضًا استدعاء المهمة rbenv:load مرتين.

أفعل حاليًا مثل هذا:

# This task is the environment that is loaded for all remote run commands, such as
# `mina deploy` or `mina rake`.
task :load_env do
  # If you're using rbenv, use this to load the rbenv environment.
  # Be sure to commit your .ruby-version or .rbenv-version to your repository.
  invoke :'rbenv:load'
  invoke :'nvm:load'
end
task environment: :load_env
task console: :load_env

هل هناك طريقة أكثر عملية لإصلاح هذا؟

قدمت مينا 1.1.0 local_environment و remote_environment https://github.com/mina-deploy/mina/commit/972a26ce354e8031a0656c16783c02390c821e33

يمكنك استخدام ذلك

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات