Почему Bundler сообщает «Не удалось найти capistrano-2.11.1 ни в одном из источников»? - PullRequest
1 голос
/ 25 февраля 2012

Bundler версия 1.0.22

Развертывание в RedHat Linux 6

Рубин 1.9.3p0

Рельсы 3.2.1


Я прочитал документы Bundler и предпринял следующие шаги ...

  • На рабочей станции dev все установлено, поэтому все гемы установлены, приложение работает и тесты пройдены.

  • Проверено Gemfile и Gemfile.lock в управлении источником. Удостоверьтесь, что не проверяли .bundle в контроле источника.

Я побежал $ cap deploy. Теперь мой код находится на рабочем сервере.

Следуя инструкциям в документах , я вхожу, перехожу в корневой каталог моего приложения и запускаю ...

$ bundle install --development

Это результат ...

$ bundle install --deployment
Fetching source index for https://rubygems.org/
Could not find capistrano-2.11.1 in any of the sources

Кто-нибудь знает, почему возникает эта ошибка?

Есть идеи, как убедить Bundler установить нужные мне драгоценные камни?

Я пытался найти подсказку из того, что Бандлер считает средой самоцвета ...

$ bundle exec gem environment
Could not find rake-0.9.2.2 in any of the sources

Я посмотрел страницу устранения неполадок в Bundler и следовал там инструкциям, чтобы удалить кучу вещей ...

# remove user-specific gems and git repos
rm -rf ~/.bundle/ ~/.gem/

# remove system-wide git repos and git checkouts
rm -rf $GEM_HOME/bundler/ $GEM_HOME/cache/bundler/

# remove project-specific settings and git repos
rm -rf .bundle/

# remove project-specific cached .gem files
rm -rf vendor/cache/

# remove the saved resolve of the Gemfile
#
# For now, did not delete this. If I understand the Bundler docs correctly,
# this file is sort of the whole point of Bundler. If I delete it, my deployed
# dependencies won't be the same as in development.
# rm -rf Gemfile.lock

# try to install one more time
bundle install

Бандлер все еще говорит ...

$ bundle install --deployment
Fetching source index for https://rubygems.org/
Could not find capistrano-2.11.1 in any of the sources

ОК, хорошо. Я удалю Gemfile.lock ...

$ bundle install --deployment
The --deployment flag requires a Gemfile.lock. Please make sure you have checked 
    your Gemfile.lock into version control before deploying.

Буду благодарен за любую помощь в этом.

Ответы [ 2 ]

1 голос
/ 09 мая 2012

Получил здесь с похожей ошибкой rake-0.9.2.2. Выяснилось, что я пропустил соответствующие require, чтобы включить в мой файл deploy.rb задачи, относящиеся к конкретному пакету:

В вашем deploy.rb:

require 'bundler/capistrano'
require 'delayed/recipes'

В итоге запускается bundle install для вас (с некоторыми хорошими аргументами командной строки).

Кроме того, вам не нужно capistrano на вашем сервере приложений. Вы можете сообщить, что упаковщик в Gemfile примерно так:

group :development do
  gem 'capistrano'
end

Теперь при использовании cap deploy cap приказывает компоновщику игнорировать группы development и test, что приводит к тому, что capistrano (и другие инструменты разработки или тестирования) не устанавливаются на рабочий сервер.

0 голосов
/ 25 февраля 2012

Эта версия Capistrano была выдернута и больше не доступна на rubygems.org. Вы можете видеть это на странице версий https://rubygems.org/gems/capistrano/versions

...