githubに置いたソースをec2onrailsを使ってdeployする。

〜再掲〜

macbook:~/apps/bookshelf code$ cap deploy:cold
* executing `deploy:cold'
* executing `deploy:update'
** transaction: start
* executing `deploy:update_code'
Enter passphrase for key '/Users/code/.ssh/id_rsa':
* executing "git clone -q git@github.com:susatadahiro/bookshelf.git /mnt/app/releases/20081111111111 && cd /mnt/app/releases/200811111111111 && git checkout -q -b deploy poisdfklasjdfalksjdfaoisdjfasdf && (echo asdfasdfasdfasdfasdf > /mnt/app/releases/20081111111111/REVISION)"
servers: ["ec2-11-111-11-111.compute-1.amazonaws.com"]
[ec2-11-111-11-111.compute-1.amazonaws.com] executing command
** [ec2-11-111-11-111.compute-1.amazonaws.com :: err] Host key verification failed.
** [ec2-11-111-11-111.compute-1.amazonaws.com :: err] fatal: The remote end hung up unexpectedly
** [ec2-11-111-11-111.compute-1.amazonaws.com :: err] fetch-pack from 'git@github.com:susatadahiro/bookshelf.git' failed.
command finished

[deploy:update_code] rolling back

** [ec2-11-111-11-111.compute-1.amazonaws.com :: err] Host key verification failed.
Host Key....


現在までに出来てること
macbook --> github
macbook --> ec2
ここのソース送り込みは出来てる。今やろうとしているのは、github --> ec2のソース取得なのです。
githubはprivateリポジトリにしているのえ、で、アクセスするにはkeyとかが必要です。
現時点で既にやっているのは、

  1. macbookのpublickeyをgithubに登録。
  2. ec2のpublickeyをmacbookに登録。

あたりで、ec2 - github間は何もやってないはず。

〜ここから再開〜
あまり頭を使わないで考えると、
ec2->githubへのアクセスで認証NGになっているのだから、macbook->githubと同様に、ec2のpublickeyをgithubに登録すればいいのではないか?エラーメッセージもそれを意味してるように見える。

では、さっそくやってみよう。

だめだった。
替わりに別の方法で出来た。


http://groups.google.co.jp/group/capistrano/browse_thread/thread/9a0e2f67f705bdcc/dbc28187c3d4cb12?#dbc28187c3d4cb12


set :deploy_via, :copy

github->ec2
ではなく
macbook->ec2
ての経路でソースを送るやり方です。

cap deploy:coldはapachemongrelの起動も一気に行なうので、この段階で、仮railsアプリがブラウザで見ることができるようになりました。

#記念に、懸案だったトイレ掃除を半分だけやってみました。