Mina: Mina-Konsole 'bash: Bundle: Befehl nicht gefunden'

Erstellt am 24. Jan. 2017  ·  8Kommentare  ·  Quelle: mina-deploy/mina

mina console löst Fehler bash: bundle: command not found

Während ich den Quellcode überprüfe, macht die Mina-Konsole Folgendes

  1. cd nach aktueller_Pfad
  2. rails c ausführen

Wenn wir jedoch rvm oder rben verwenden, müssen wir zuerst die Ruby-Version mit Gemset laden.

Hilfreichster Kommentar

Das funktioniert bei mir mit rbenv:

```
Aufgabe: Umgebung tun
# Wenn Sie rbenv verwenden, verwenden Sie dies, um die rbenv-Umgebung zu laden.
# Stellen Sie sicher, dass Sie Ihre .ruby-Version oder .rbenv-Version in Ihr Repository übertragen.
Aufruf :' rbenv:load '

# Für diejenigen, die RVM verwenden, verwenden Sie dies, um eine RVM- Version@gemset zu laden.
# Aufruf :' rvm:use [ruby-1.9. 3-p125@default ]'
Ende


desc "Startet eine interaktive Rails-Konsole."
Aufgabe :c => :Umgebung tun
Aufruf :'console'
Ende
```

Alle 8 Kommentare

Ich habe das gleiche Problem geschrieben https://github.com/mina-deploy/mina/issues/476

Ich habe das gleiche Problem.

Das funktioniert bei mir mit rbenv:

```
Aufgabe: Umgebung tun
# Wenn Sie rbenv verwenden, verwenden Sie dies, um die rbenv-Umgebung zu laden.
# Stellen Sie sicher, dass Sie Ihre .ruby-Version oder .rbenv-Version in Ihr Repository übertragen.
Aufruf :' rbenv:load '

# Für diejenigen, die RVM verwenden, verwenden Sie dies, um eine RVM- Version@gemset zu laden.
# Aufruf :' rvm:use [ruby-1.9. 3-p125@default ]'
Ende


desc "Startet eine interaktive Rails-Konsole."
Aufgabe :c => :Umgebung tun
Aufruf :'console'
Ende
```

@hovancik Danke, es hat für mich funktioniert.

Aber wie kann es behoben werden? Um direkt nach dem Auspacken zu arbeiten, ohne irgendwelche Hacks

Bitte werfen Sie einen Blick auf https://github.com/mina-deploy/mina/blob/master/docs/faq.md# --command-not-found-bundle

Darüber habe ich immer noch dieses Problem

In meinem Fall liegt das daran, dass ich zuerst rbenv laden muss, um dann bundle auszuführen

$ 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

Wie Sie in der obigen Ausgabe sehen können, wird die Aufgabe environment nach der console aufgerufen. Auch die Task rbenv:load wird zweimal aufgerufen.

Aktuell mache ich es so:

# 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

Gibt es eine praktischere Möglichkeit, dies zu beheben?

Mina 1.1.0 führte local_environment und remote_environment ein https://github.com/mina-deploy/mina/commit/972a26ce354e8031a0656c16783c02390c821e33

Das kannst du verwenden

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen