Pergunta

Na sequência minha pergunta sobre o uso congelado Capistrano um par de dias atrás Eu ainda estou tendo problemas executando Capistrano congelado na minha pasta de fornecedor.

Quando tento executar o meu versão congelada da tampa

ruby -r rubygems ./vendor/gems/capistrano-2.5.2/bin/cap deploy-with-migrations

Eu recebo um erro

... RubyGem version error: net-ssh(1.0.8 not >= 2.0.0) (Gem::LoadError) ...

Eu tenho net-ssh-2.0.4 congelado na minha pasta de fornecedor como eu sabia que era uma dependência assim como faço para fazer uso dele?

Eu esperava adicionando minha pasta fornecedor para o meu arquivo .gemrc sob a gempath: teria feito o truque, mas ele não tem. 'Ambiente gem' mostra o caminho fornecedor, mas 'lista gem' não mostra as gemas na pasta fornecedor.

Todas as idéias?

Foi útil?

Solução

No final, eu decidi não congelar Capistrano e dependências para o meu diretório gemas de fornecedores como eles não eram pedras preciosas usados ??pelo meu aplicativo - eles foram usados ??para implantar o meu aplicativo.

Em vez disso, localmente instalado-los na minha conta de hospedagem e tudo funcionou bem.

Outras dicas

Se você quiser evitar completamente as gemas instaladas no sistema (que não é uma má idéia se você não tem controle sobre eles), eu instalar uma cópia do rubygems para o diretório fornecedor.

Set GEM_PATH e GEM_HOME variáveis ??de ambiente para / path / to / seu diretório / vendor / gems, e depois instalar rubygems e de lá ir.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top