установка пакета не может быть выполнена и вызывает ошибку на производственном сервере рельсов - PullRequest
0 голосов
/ 02 марта 2012

Мы используем Capistrano для развертывания рельсов.Вот странная ошибка при запуске bundle install на рабочем сервере.

You are trying to install in deployment mode after changing
your Gemfile. Run `bundle install` elsewhere and add the
updated Gemfile.lock to version control.

If this is a development machine, remove the Gemfile freeze
by running `bundle install --no-deployment`.

You have added to the Gemfile:
* rails (= 3.1.3)
* mysql2 (>= 0.2.6)

You have deleted from the Gemfile:
* rails (~> 3.1.3)

Gemfile на рабочем сервере был изменен вручную, а затем эта ошибка появляется.Это новый производственный сервер, и мы планируем запустить рельсы 3.1.3.Мы перезагрузили сервер Linux, и это не помогло.Есть ли способ решить проблему?Большое спасибо.

1 Ответ

1 голос
/ 02 марта 2012

Полагаю, вы используете какое-то решение для развертывания, например Capistrano. В этом случае измените Gemfile на компьютере разработчика, запустите bundle install, зафиксируйте все в хранилище и снова разверните.

Никогда не меняйте код вручную на сервере, это будет вредно для вашей кармы.

Edit:

Если вы хотите использовать некоторые конкретные драгоценные камни только в производстве, добавьте их в производственную группу.

# Gemfile
group :production do
  gem 'mysql2'
end
...