2012-02-07 2 views
0

Я пытаюсь развернуть на сервер 1 раз (закрытие крышки: холодно), и он продолжает просить меня установить драгоценные камни. Только один пример:1st deploy - необходимо установить все драгоценные камни на сервер

*** [err :: ip-address] Could not find net-ssh-2.3.0 in any of the sources 

Есть ли что-то, что я мог, чтобы установить все драгоценные камни в один снимок?

Вот мой deploy.rb файл, и Gemfile:

deploy.rb

set :application, "myapp" 
set :repository, "repo goes here" 
set :scm, :git 
# Or: `accurev`, `bzr`, `cvs`, `darcs`, `git`, `mercurial`, `perforce`, `subversion` or `none` 

role :web, "ipaddress"       # Your HTTP server, Apache/etc 
role :app, "ipaddress"       # This may be the same as your `Web` server 
role :db, "ipaddress", :primary => true # This is where Rails migrations will run 
# role :db, "your slave db-server here" 

# if you're still using the script/reaper helper you will need 
# these http://github.com/rails/irs_process_scripts 

set :deploy_to, "/home/deploy/#{application}" 
set :rails_env, 'production' 
set :branch, "master" 

set :scm, :git 
set :user, "user" 
set :runner, "user" 
# ssh_options[:port] = 2232 
set :use_sudo, false 
set :normalize_asset_timestamps, false 


# If you are using Passenger mod_rails uncomment this: 
namespace :deploy do 
    task :start do ; end 
    task :stop do ; end 
    task :restart, :roles => :app, :except => { :no_release => true } do 
    run "#{try_sudo} touch #{File.join(current_path,'tmp','restart.txt')}" 
    end 
end 

namespace :bundler do 
    task :create_symlink, :roles => :app do 
    shared_dir = File.join(shared_path, 'bundle') 
    release_dir = File.join(current_release, '.bundle') 
    run("mkdir -p #{shared_dir} && ln -s #{shared_dir} #{release_dir}") 
    end 

    task :bundle_new_release, :roles => :app do 
    bundler.create_symlink 
    run "cd #{release_path} && bundle install --without test" 
    end 

    task :lock, :roles => :app do 
    run "cd #{current_release} && bundle lock;" 
    end 

    task :unlock, :roles => :app do 
    run "cd #{current_release} && bundle unlock;" 
    end 
end 

after "deploy", "deploy:cleanup" 

namespace :deploy do 

    desc "Restarting mod_rails with restart.txt" 
    task :restart, :roles => :app, :except => { :no_release => true } do 
     run "touch #{current_path}/tmp/restart.txt" 
    end 

    [:start, :stop].each do |t| 
     desc "#{t} task is a no-op with mod_rails" 
     task t, :roles => :domain do ; end 
    end 
end 

task :after_update_code do 
run "ln -nfs #{deploy_to}/shared/config/database.yml #{release_path}/config/database.yml" 
end 

Gemfile:

source 'http://rubygems.org' 

gem 'rails', '3.1.3' 

# Bundle edge Rails instead: 
# gem 'rails',  :git => 'git://github.com/rails/rails.git' 



gem 'json' 
gem 'rake', '0.9.2.2' 
gem 'mysql2' 
gem 'capistrano' 
gem 'therubyracer' 

# Gems used only for assets and not required 
# in production environments by default. 
group :assets do 
    gem 'sass-rails', '~> 3.1.5' 
    gem 'coffee-rails', '~> 3.1.1' 
    gem 'uglifier', '>= 1.0.3' 
end 

gem 'jquery-rails' 

# To use ActiveModel has_secure_password 
# gem 'bcrypt-ruby', '~> 3.0.0' 

# Use unicorn as the web server 
# gem 'unicorn' 

# Deploy with Capistrano 
# gem 'capistrano' 

# To use debugger 
# gem 'ruby-debug' 
+1

Th сообщение может помочь вам: http://stackoverflow.com/questions/7706485/do-i-need-to-install-bundler-manually-on-my-server-before-being-able-to-deploy-w – DemitryT

+0

Спасибо, что я увидел это - у меня есть комплектщик на машине, но мое приложение еще не развернуто, поэтому я не могу установить пакет. – fatfrog

+0

попробуйте ответить ниже, я не вижу, что «bundler/capistrano», включенный в ваш файл deploy.rb – DemitryT

ответ

0

попробуйте добавить это к вашему deploy.rb

set :bundle_without, [:development, :test] 
require 'bundler/capistrano' 
+0

Я пробовал это, но все равно получаю: ** [out :: ip-address] Не удалось найти net-ssh-2.3.0 в любом из источников – fatfrog

+0

хм, это действительно странно, я думал, что это сделает. Вы проверили эту страницу? http://gembundler.com/deploying.html – DemitryT

+0

Существует эта ошибка, которую я только что заметил внизу: failed: "env PATH =/opt/ruby ​​/ bin /: $ PATH sh -c 'cd/home/deploy/tomahawk/релизы/20120207210055 && bundle exec rake RAILS_ENV = production RAILS_GROUPS = активы активы: precompile '" – fatfrog

1

возможно, если вы измените является линия

run "cd #{release_path} && bundle install --without test" 

в

run "cd #{release_path} && bundle install --path=you_gem_path --without #{bundle_without.join(' ')}" 

вы можете найти свой путь драгоценный камень, запустив

$ echo $GEM_PATH 

вы также должны установить bundle_without вы можете установить его в начале файла

set :bundle_without,  [:development, :test] 
Смежные вопросы