mina console
meningkatkan kesalahan bash: bundle: command not found
Saat saya meninjau kode sumber, apa yang dilakukan konsol mina adalah
rails c
Namun, ketika kita menggunakan rvm atau rben, kita perlu memuat versi Ruby dengan gemset terlebih dahulu.
Saya menulis masalah yang sama https://github.com/mina-deploy/mina/issues/476
Saya memiliki masalah yang sama.
Ini berfungsi untuk saya dengan rbenv:
```
tugas : lingkungan do
# Jika Anda menggunakan rbenv, gunakan ini untuk memuat lingkungan rbenv.
# Pastikan untuk memasukkan versi .ruby atau versi .rbenv ke repositori Anda.
panggil :' rbenv:load '
# Bagi mereka yang menggunakan RVM, gunakan ini untuk memuat versi RVM@gemset.
# panggil :' rvm:gunakan [ruby-1.9. 3-p125@default ]'
akhir
desc "Memulai konsol Rails interaktif."
tugas :c => :melakukan lingkungan
memanggil: 'konsol'
akhir
```
@hovancik Terima kasih, ini berhasil untuk saya.
Tapi bagaimana itu bisa diperbaiki? Untuk bekerja langsung, tanpa peretasan
silakan lihat di https://github.com/mina-deploy/mina/blob/master/docs/faq.md# --command-not-found-bundle
Tentang ini, saya masih memiliki masalah ini
Dalam kasus saya adalah karena saya perlu memuat rbenv terlebih dahulu untuk kemudian menjalankan 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
Seperti yang Anda lihat pada output di atas, tugas environment
dipanggil setelah console
. Juga tugas rbenv:load
dipanggil dua kali.
Saat ini saya sedang melakukan seperti ini:
# 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
Apakah ada cara yang lebih praktis untuk memperbaikinya?
mina 1.1.0 memperkenalkan local_environment
dan remote_environment
https://github.com/mina-deploy/mina/commit/972a26ce354e8031a0656c16783c02390c821e33
Anda dapat menggunakan itu
Komentar yang paling membantu
Ini berfungsi untuk saya dengan rbenv:
```
tugas : lingkungan do
# Jika Anda menggunakan rbenv, gunakan ini untuk memuat lingkungan rbenv.
# Pastikan untuk memasukkan versi .ruby atau versi .rbenv ke repositori Anda.
panggil :' rbenv:load '
# Bagi mereka yang menggunakan RVM, gunakan ini untuk memuat versi RVM@gemset.
# panggil :' rvm:gunakan [ruby-1.9. 3-p125@default ]'
akhir
desc "Memulai konsol Rails interaktif."
tugas :c => :melakukan lingkungan
memanggil: 'konsol'
akhir
```