코드스테이츠 프로젝트를 진행하면서 우리 팀의 배포 flow는 github action-s3-codedeploy 로 무중단 배포를 진행하기로 했다.
우리는 배포파일을 zip으로 압축하여 s3로 보내고 그다음 압축을 해제하여 codedeploy에서 실행하기로했다.
진행하면서 보니 zip file이 s3로는 정상적으로 전송이 되는데, codedeploy에서 계속 fail이 관찰되었다
다음과 같은 에러메세지를 볼 수 있었다.
CodeDeploy agent was not able to receive the lifecycle event. Check the CodeDeploy agent logs on your host and make sure the agent is running and can connect to the CodeDeploy server.
위의 에러가 발생한 경우 2가지를 체크하면 된다.
첫번째 codedeploy의 역할부여 확인은 다음 페이지를 참고하여 확인하였다
https://lemontia.tistory.com/945
역할 부여후에는 반드시 codedeploy를 재실행 해줘야 그 역할이 반영 되므로 ec2 에서 다음의 명령어를 통해 재실행 해주자
sudo service codedeploy-agent restart
두번째 Agent 확인의 경우
sudo service codedeploy-agent status
위의 명령어를 쳤을 때 다음과 같이 나와야 한다.
The AWS CodeDeploy agent is running as PID 1160
나오지 않는다면 ec2에 codedeploy 재설치를 진행한다.