GitHub Actionsでrsyncを使ってデプロイしようとしたのですが、Host key verification failed.エラーが発生して失敗していました。
原因は、SSH鍵が正しく作成されていなかったことでした。(エラーメッセージ通りですが)
GitHub ActionsでGitHub側から他サーバーにアクセスする場合、secretに登録されているSSH秘密鍵をコンテナ内にコピーして使用します。このときに、以下のようにコピーしていました。
1 2 |
mkdir –p .ssh && chmod 700 .ssh echo “$SSH_KEY” > .ssh/id_rsa && chmod 600 .ssh/id_rsa |
このコマンドではカレントディレクトリに.sshを作成しているので、実行時にホームディレクトリにいないと想定した結果になりません。カレントディレクトリの影響を受けないようにするには以下のように書く必要があります。
1 2 |
mkdir –p ~/.ssh && chmod 700 ~/.ssh echo “$SSH_KEY” > ~/.ssh/id_rsa && chmod 600 ~/.ssh/id_rsa |
初歩的なミスですが、インタラクティブに情報を見ることができないので解決に時間がかかりました。