Повторное развертывание приложения Rails приводит к новой ошибке связывания с Passenger - PullRequest
0 голосов
/ 14 сентября 2011

Несколько дней назад я развернул свое первое приложение rails на рабочем сервере.С тех пор я работал над некоторыми исправлениями на моей машине для разработки и перенес их на рабочий сервер с помощью git.Я коснулся файла restart.txt, а затем перезапустил Apache, и теперь я получаю ошибку Пассажира, которая, как мне кажется, связана с гемами и комплектами.

Когда я только начал разработку, я столкнулся с проблемой ( здесь ) и я удалил каталог .bundle.Затем я снова запустил bundle install на своей машине для разработки, и все выглядело хорошо, пока я исправил некоторые ошибки.

Теперь я готов повторно развернуть следующую версию приложения, и после этих ошибок я проверял изаметил, что у меня даже нет каталога .bundle.bundle install не создает новый.Я полагаю, что без этого ничего не получится?Должен ли я просто создать необходимые файлы вручную или есть команда для их восстановления?

ПРАВКА, чтобы добавить ошибку: syntax error on line 3, col 2: adapter:sqlite3'

database.yml:

# SQLite version 3.x
gem install sqlite3
development:
  adapter: sqlite3
  database: db/development.sqlite3
  pool: 5
  timeout: 5000

# Warning: The database defined as "test" will be erased and
# re-generated from your development database when you run "rake".
# Do not set this db to the same as development or production.
test:
  adapter: sqlite3
  database: db/test.sqlite3
  pool: 5
  timeout: 5000

production:
  adapter: sqlite3
  database: db/production.sqlite3
  pool: 5
  timeout: 5000

Ответы [ 2 ]

3 голосов
/ 15 сентября 2011

gem install sqlite3 в вашем списке database.yml действительно присутствует в этом файле?Если это так, то причиной ошибки является недопустимый YAML.Кроме того, здесь утверждение не имеет смысла, поскольку файл не интерпретируется ни компоновщиком, ни рубином.

В лучшем случае просто удалите (или прокомментируйте) это утверждение и попробуйте получить.

Редактировать: Вообще, пробел (особенно ведущий пробел) довольно важен в YAML.Не смешивайте пробелы и табуляции здесь.Это бы запутало парсер.Кроме того, между ключом и значением в хэше должен быть пробел, например

key: value
#   ^ this space is important!

Более подробную информацию о синтаксисе YAML см. В статье Википедии YAML .

1 голос
/ 15 сентября 2011

@ Пол, вы можете попробовать обновить свой gemfile следующим образом

group :production do
  # gem 'mysql2' # disabled to debug Paul's issue.
  gem 'sqlite3-ruby', :require => 'sqlite3'
end

group :development do
  gem 'sqlite3-ruby', :require => 'sqlite3'
end

Дайте мне знать, как это получается.

...