Codedeploy를 사용해서 배포를 좀 해보고 있습니다.
귀찮은게 푸시하면 웹훅을 자동으로 날려주는게 아니고 deployment를 직접 만들어야 합니다.
- name: Trigger the CodeDeploy in EC2 instance
run: |
aws \
deploy \
--region ap-northeast-2 \
create-deployment \
--application-name APPLICATION_NAME \
--deployment-config-name CodeDeployDefault.OneAtATime \
--deployment-group-name DEPLOYMENT_GROUP_NAME \
--github-location repository=USER/REPOSITORY,commitId=${GITHUB_SHA
귀찮습니다.. 아무튼 github actions 워크플로에 위 스크립트를 추가했는데
An error occurred (AccessDeniedException) when calling the CreateDeployment operation:
User: arn:aws:iam::***:user/*** is not authorized to perform: codedeploy:CreateDeployment on resource ...
이 유저에 codedeploy:CreateDeployment 하는 권한이 없다고 하네요
IAM에서 해당 유저로 가서 "AWSCodeDeployFullAccess"를 추가해줍시다
Full access 주는게 찜찜하다면 이렇게 policy 하나만 딱 추가해도 됩니다 (CodeDeploy - Write - CreateDeployment)
근데 전 귀찮으니까 그냥 AWSCodeDeployFullAccess 퍼미션 추가했습니다. 문제 없겠죠 뭐
자 그러면 이렇게 Deployment가 생성된 걸 확인하실 수 있습니다.
Status가 Failed로 되어 있는건 무시해주세요. 스크립트 오류라서.. 배포랑은 관계 없습니다
후..... 자동화 정말 쉽지 않네요
반응형
'Cloud platform > AWS' 카테고리의 다른 글
[CodeDeploy] ApplicationStart "In Progress"에서 멈췄을 때 해결방법 (0) | 2021.09.02 |
---|---|
[ECR] Lifecycle Policy로 untagged image 자동으로 정리하기 (1) | 2021.09.02 |
[EC2] ECR pull 실패하는 경우 해결방법 (0) | 2021.09.02 |
AWS EC2 Elastic IP(탄력적 IP) 할당, 연결 방법 (0) | 2020.07.23 |
AWS 프리티어 EC2 Ubuntu 18.04 설치 및 접속 방법 (0) | 2020.07.23 |