$ ssh-keygen -m pem
$ cd .ssh
$ ls
authorized_keys config id_rsa id_rsa.pub
id_rsa(秘密鍵)を Circle CI -> PROJECT SETTINGS -> Add SSH Keyに登録
その際、Host NameはインスタンスのIPアドレスを登録する
id_rsa.pub(公開鍵)をEC2 .ssh/authorized_keysに追加
$ git push -u origin master
The authenticity of host ‘************* (*************)’ can’t be established.
config.yml
- run: ssh -o 'StrictHostKeyChecking no' ${USER_NAME}@${PUBLIC_IP} 'cd /var/www && git pull'
#!/bin/bash -eo pipefail ssh -o 'StrictHostKeyChecking no' ${USER_NAME}@${PUBLIC_IP} 'cd /var/www && git pull' Warning: Permanently added '*************' (ECDSA) to the list of known hosts. fatal: not a git repository (or any of the parent directories): .git Exited with code exit status 128
あ、エラー内容が変わりました。
$ cd /var/www
$ sudo git clone https://github.com/hoge/circleci.git
config.yml
- run: ssh -o 'StrictHostKeyChecking no' ${USER_NAME}@${PUBLIC_IP} 'cd /var/www/circleci && git pull'
error: cannot open .git/FETCH_HEAD: Permission denied
$ sudo chmod 777 .git/
$ git remote add origin https://{username}:{password}@github.com/{username}/project.git
error: insufficient permission for adding an object to repository database .git/objects
fatal: failed to write object
fatal: unpack-objects failed
$ sudo chmod 777 objects/
error: cannot lock ref ‘refs/remotes/origin/master’: Unable to create ‘/var/www/circleci/.git/refs/remotes/origin/master.lock’: Permission denied
$ git remote prune origin
There is no tracking information for the current branch.
Please specify which branch you want to merge with.
error: unable to unlink old ‘.circleci/config.yml’: Permission denied
error: unable to unlink old ‘resources/views/home.blade.php’: Permission denied
$ sudo chown -R ec2-user ./
やっといけました。1日かかりました。
他の方は ssh -o ‘StrictHostKeyChecking no’やgitのpermission変更などせずに行けているようなのであまり参考にならないかもしれませんが。