Как использовать пакет с локальными драгоценными камнями во время развертывания Mina приложения Rails?

Я развертываю приложение Rails с Mina mina:deploy, которое клонирует из репозитория git, а Bundler устанавливает драгоценные камни.

# /config/deploy.rb
# ...
task :deploy => :environment do
  deploy do
    invoke :'git:clone'
    invoke :'bundle:install'
    # ...
  end
end

Однако, в отличие от того, когда я bundle install вручную, мина устанавливает каждый гем заново. При большом количестве драгоценных камней это занимает примерно 10 минут. Как я могу развернуть, указав упаковщику использовать любые локально доступные (уже установленные) драгоценные камни, где это возможно?

Я также пытался заменить invoke :'bundle:install' на queue! "bundle install --local" без каких-либо изменений в поведении.


person Sam    schedule 14.08.2015    source источник


Ответы (1)


Для этого вам нужно использовать локальную копию драгоценных камней, которые у вас есть, без проверки rubygems, поэтому после установки драгоценных камней вы запускаете bundle package, чтобы создать кеш используемых драгоценных камней, и вместо запуска bundle install вы должны запустить bundle install --local, чтобы использовать только кешированную копию драгоценных камней. без проверки rubygems.com .

person Kiloreux    schedule 14.08.2015
comment
Спасибо за это. Были ли у вас успехи именно с Миной? Если да, можете ли вы опубликовать, как вы включили это в свое развертывание? - person Sam; 24.08.2015