2012-08-24 2 views
1

프로덕션 서버에 레일즈 응용 프로그램을 배포하기 위해 Capistrano를 설치했습니다. 정상적으로 작동합니다.Capistrano를 사용하여 프로덕션 및 개발 환경 배포

이제 개발 서버에 동일한 응용 프로그램을 배포 할 수 있어야합니다. 나는 config.deploy.rb에서이 작업을 만든이 수행하려면 :

desc "Run on development server" 
task :dev do 
    server "development_server", :web, :app, :db, :primary => true 
end 

desc "Run on production server" 
task :production do 
    server "production_server", :web, :app, :db, :primary => true 
end 

이 디바이스에 배포를 perfom하기 위해, 이렇게을, 내가 isuse해야합니다

캡 dev에 배포

그러나 나는 올바른 ENV에 번들을 실행 Capitrano에게 관리하지 않는, 내가 어떤 생각 "--without 시험 생산"

failed: "rvm_path=$HOME/.rvm/ $HOME/.rvm/bin/rvm-shell '1.9.3' -c 'cd /var/be/releases/20120824155742 && bundle install --gemfile /var/be/releases/20120824155742/Gemfile --path /var/be/shared/bundle --deployment --quiet --without development test'" on 192.168.1.10 

이 필요 할 것 "--without 개발 테스트"옵션을 사용하여 호 이것을 수행하려면?

또한 어떻게 개발 또는 프로덕션 환경에서 선택적으로 시작할 수 있습니까? 각각 하나씩 작업을 만들어야합니까, 아니면 특별한 방법이 있습니까?

답변

4

이렇게하는 가장 좋은 방법은 Capistrano Multistage 확장을 사용하는 것입니다. This Wiki을 사용하면 훨씬 더 잘 설명 할 수 있습니다. 내가 가진 유일한 문제는 작았 다. 그 이유는 require 'capistrano/ext/multistage'require 'capistrano'이 필요하지 않았기 때문이다.

관련 문제