Hey guys, So here's the deal... I'm trying to deploy an app on EC2 using the EC2onRails gem.... I'm using git as my SCM and capistrano to deploy obviously...
Everytime I try to deploy with this command: cap deploy:cold, I get the following error output on my terminal window: bas1-stlambert20-1178037070:snaproof exponenth$ cap deploy:cold * executing `deploy:cold' * executing `deploy:update' ** transaction: start * executing `deploy:update_code' updating the cached checkout on all servers executing locally: "git ls-remote g...@github.com:lpdahito/ snaproof.git master" * executing "if [ -d /mnt/app/shared/cached-copy ]; then cd /mnt/app/ shared/cached-copy && git fetch -q origin && git reset -q --hard d5b088e509dcc4b476836b5bab0203ce5d4618f9; else git clone -q g...@github.com:lpdahito/snaproof.git /mnt/app/shared/cached-copy && cd /mnt/app/shared/cached-copy && git checkout -q -b deploy d5b088e509dcc4b476836b5bab0203ce5d4618f9; fi" servers: ["ec2-75-101-235-89.compute-1.amazonaws.com"] [ec2-75-101-235-89.compute-1.amazonaws.com] executing command ** [ec2-75-101-235-89.compute-1.amazonaws.com :: out] Permission denied (publickey). ** [ec2-75-101-235-89.compute-1.amazonaws.com :: out] fatal: The remote end hung up unexpectedly ** [ec2-75-101-235-89.compute-1.amazonaws.com :: out] fetch-pack from 'g...@github.com:lpdahito/snaproof.git' failed. command finished *** [deploy:update_code] rolling back * executing "rm -rf /mnt/app/releases/20090531003111; true" servers: ["ec2-75-101-235-89.compute-1.amazonaws.com"] [ec2-75-101-235-89.compute-1.amazonaws.com] executing command command finished failed: "sh -c \"if [ -d /mnt/app/shared/cached-copy ]; then cd /mnt/ app/shared/cached-copy && git fetch -q origin && git reset -q --hard d5b088e509dcc4b476836b5bab0203ce5d4618f9; else git clone -q g...@github.com:lpdahito/snaproof.git /mnt/app/shared/cached-copy && cd /mnt/app/shared/cached-copy && git checkout -q -b deploy d5b088e509dcc4b476836b5bab0203ce5d4618f9; fi\"" on ec2-75-101-235-89.compute-1.amazonaws.com If you're looking for my capistrano recipe, here it is: # This is a sample Capistrano config file for EC2 on Rails. # It should be edited and customized. set :application, "snaproof" set :scm, "git" set :repository, "g...@github.com:lpdahito/snaproof.git" set :scm_passphrase, "" set :user, "Louis-Pierre Dahito" ssh_options[:forward_agent] = true set :branch, "master" set :deploy_via, :remote_cache default_run_options[:pty] = true # NOTE: for some reason Capistrano requires you to have both the public and # the private key in the same folder, the public key should have the # extension ".pub". ssh_options[:keys] = ["#{ENV['HOME']}/.ec2/lpdahito.pem"] # Your EC2 instances. Use the ec2-xxx....amazonaws.com hostname, not # any other name (in case you have your own DNS alias) or it won't # be able to resolve to the internal IP address. role :web, "ec2-75-101-235-89.compute-1.amazonaws.com" role :app, "ec2-75-101-235-89.compute-1.amazonaws.com" role :memcache, "ec2-75-101-235-89.compute-1.amazonaws.com" role :db, "ec2-75-101-235-89.compute-1.amazonaws.com", :primary => true # role :db, "ec2-56-xx-xx- xx.z-1.compute-1.amazonaws.com", :primary => true, :ebs_vol_id => 'vol-12345abc' # optinally, you can specify Amazon's EBS volume ID if the database is persisted # via Amazon's EBS. See the main README for more information. # Whatever you set here will be taken set as the default RAILS_ENV value # on the server. Your app and your hourly/daily/weekly/monthly scripts # will run with RAILS_ENV set to this value. set :rails_env, "production" # EC2 on Rails config. # NOTE: Some of these should be omitted if not needed. set :ec2onrails_config, { # S3 bucket and "subdir" used by the ec2onrails:db:restore task # NOTE: this only applies if you are not using EBS :restore_from_bucket => "your-bucket", :restore_from_bucket_subdir => "database", # S3 bucket and "subdir" used by the ec2onrails:db:archive task # This does not affect the automatic backup of your MySQL db to S3, it's # just for manually archiving a db snapshot to a different bucket if # desired. # NOTE: this only applies if you are not using EBS :archive_to_bucket => "your-other-bucket", :archive_to_bucket_subdir => "db-archive/#{Time.new.strftime('%Y-%m- %d--%H-%M-%S')}", # Set a root password for MySQL. Run "cap ec2onrails:db:set_root_password" # to enable this. This is optional, and after doing this the # ec2onrails:db:drop task won't work, but be aware that MySQL accepts # connections on the public network interface (you should block the MySQL # port with the firewall anyway). # If you don't care about setting the mysql root password then remove this. # Any extra Ubuntu packages to install if desired # If you don't want to install extra packages then remove this. :packages => ["logwatch", "imagemagick"], # Any extra RubyGems to install if desired: can be "gemname" or if a # particular version is desired "gemname -v 1.0.1" # If you don't want to install extra rubygems then remove this # NOTE: if you are using rails 2.1, ec2onrails calls 'sudo rake gem:install', # which will install gems defined in your rails configuration :rubygems => ["rmagick", "rfacebook -v 0.9.7"], # extra security measures are taken if this is true, BUT it makes initial # experimentation and setup a bit tricky. For example, if you do not # have your ssh keys setup correctly, you will be locked out of your # server after 3 attempts for upto 3 months. :harden_server => false, #if you want to harden the server, or setup email signing, you will need to set the domain #if you use Capistrano's multistage extension (recommended!), you can add a line like this to your #environment specific file: # ec2onrails_config[:service_domain] = 'staging.mydomain.com' :service_domain => nil, # Set the server timezone. run "cap -e ec2onrails:server:set_timezone" for # details :timezone => "UTC", # Files to deploy to the server (they'll be owned by root). It's intended # mainly for customized config files for new packages installed via the # ec2onrails:server:install_packages task. Subdirectories and files inside # here will be placed in the same structure relative to the root of the # server's filesystem. # If you don't need to deploy customized config files to the server then # remove this. :server_config_files_root => "../server_configs", # If config files are deployed, some services might need to be restarted. # If you don't need to deploy customized config files to the server then # remove this. :services_to_restart => %w(postfix sysklogd), # Set an email address to forward admin mail messages to. If you don't # want to receive mail from the server (e.g. monit alert messages) then # remove this. :mail_forward_address => "lp.dah...@gmail.com", # Set this if you want SSL to be enabled on the web server. The SSL cert # and key files need to exist on the server, The cert file should be in # /etc/ssl/certs/default.pem and the key file should be in # /etc/ssl/private/default.key (see :server_config_files_root). :enable_ssl => true } I just don't know what I'm doing wrong !!!! Wasn't I be supposed to deploy my app in 5 minutes lol... Please someone I need help ! Thx Louis-Pierre --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group. To post to this group, send email to rubyonrails-talk@googlegroups.com To unsubscribe from this group, send email to rubyonrails-talk+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/rubyonrails-talk?hl=en -~----------~----~----~----~------~----~------~--~---