티스토리 뷰
[에러 로그 확인하는 법]
$ cd /var/log/aws/codedeploy-agent #에러 로그가 있는 디렉토리로 이동
$ nano codedeploy-agent.log # 파일 열어서 확인
ctrl+w 이 ctrl+f랑 같음 -> 시간으로 검색하면 찾기 쉽다
https://docs.aws.amazon.com/ko_kr/codedeploy/latest/userguide/deployments-view-details.html
-> 여기서 시키는대로 해도됨
1. appspec.yml이 없다는 에러
Version 2 of the Ruby SDK will enter maintenance mode as of November 20, 2020.
To continue receiving service updates and new features, please upgrade to Version 3.
More information can be found
-> 이런 에러가 있는 게 아니고, 다른 에러가 분명히 있는 것이다. 찾아보니 오타라는 경우가 많았다
위의 [에러 로그확인하는 법] 을 참고하면,
1) appspec.yml이 없음
2) appspec.yml 안에서 오타나 필요한 설정이 빠짐 과 같은 에러를 볼 수 있을 것이다.
# [UUID] -> 긴 랜덤한 숫자들
#appspec.yml이 없다는 에러
put_host_command_complete(command_status:"Failed",diagnostics:{format:"JSON",payload:"{\"error_code\":5,\"script_name\":\"\",\"message\":\"The CodeDeploy agent did not find an AppSpec file within the unpacked revision directory at revision-relative path
AppSpec file was expected but not found at path \\\"/opt/codedeploy-agent/deployment-root/[UUID]/[UUID]/deployment-archive/appspec.yml\
# 해결방법
-> /opt/codedeploy-agent/deployment-root/[UUID]/[UUID]/deployment-archive 여기로 이동하면 빌드관련 파일 존재
-> appspec.yml 수정
$ cd /opt/codedeploy-agent/deployment-root/[UUID]/[UUID]/deployment-archive
$ sudo vim appspec.yml
2. InstanceAgent::Plugins::CodeDeployPlugin::CommandPoller: Missing credentials
- ec2와 codeDeploy를 연결하는 iam role을 삭제 -> 생성 -> 다시 연결 하는 게 속편하다
- 인스턴스 재부팅은 필수!
- putty에서 codedeploy도 재시작~
$ sudo service codedeploy-agent status #pid 번호가 나오면 잘 실행되는 중~
$ sudo service codedeploy-agent restart #재시작
[참고] aws의 config와 credential 파일 보는법
https://docs.aws.amazon.com/ko_kr/cli/latest/userguide/cli-configure-files.html
댓글