-
[aws] CodeStar를 활용한 자동화 배포 환경 만들기.Infra/AWS 2019. 7. 31. 16:49
19.07.11
참고: http://labs.brandi.co.kr/2019/04/08/yangjh.html#ju22
AWS CodeCommit. 배포 자동화 환경 만들기(브랜치별 Pipeline 구성)
편집자 주: 함께 보면 좋아요!애플리케이션 개발부터 배포까지, AWS CodeStarCodeStar + Lambda + SAM으로 테스트 환경 구축하기AWS Lambda + API Gateway로 API 만들어보자
labs.brandi.co.kr
AWS CodeStar(https://docs.aws.amazon.com/ko_kr/codestar/latest/userguide/welcome.html)
AWS CodeStar란 무엇입니까? - AWS CodeStar
AWS CodeStar란 무엇입니까? AWS CodeStar는 AWS에서 소프트웨어 개발 프로젝트를 생성, 관리, 작업하기 위한 클라우드 기반 서비스입니다. AWS CodeStar 프로젝트를 통해 AWS에서 애플리케이션을 빠르게 개발, 빌드, 배포할 수 있습니다. AWS CodeStar 프로젝트는 프로젝트 개발 도구 체인에 대한 AWS 서비스를 생성 및 통합합니다. 선택한 AWS CodeStar 프로젝트 템플릿에 따라, 도구 체인에 소스 제어, 빌드, 배
docs.aws.amazon.com
CodeStar 접속 > 새로운 프로젝트 생성
Node.js Lambda 클릭
아래와 같이 작성
체크후 생성
생성 완료
Git 인증을 위한 IAM 설정
# git clone https://git-codecommit.ap-northeast-2.amazonaws.com/v1/repos/<project>
CodeCommit > Repositories 생성 확인
‘staging' branch를 생성한다.
작업 branch를 staging으로 변경
master의 LambdaExecutionRole은 master만 접근 가능해서, staging용을 따로 만들어야한다.
template.yml 파일의 LambdaExecutionRole > Properties > RoleName을 아래와 같이 변경한다.
커밋 & 푸시를 해줃다.
staging 용 CloudFormation 스택 생성.
기존(master용) 탬플릿을 복사해온다.
CloudFormation > awscodestar-plant-online-se-lambda > Template > View in Designer
탬플릿 내용을 복사한다.
새로운 탬플릿을 생성한다.
CloudFormation > Designer
복사한내용을 붙여 넣고
소스코드 수정한 것과 똑같이 RoleName을 수정하고 저장한다.
파일로 저장
staging용 스택 생성하기
staging 브랜치용 CloudFormation 스택 생성 완료.
이 스택을 이용해 staging 용 pipline 생성 고고!
Pipeline 생성
아래 빈 영역은 master branch 용(자동생성) 에서 확인한 후 채워 넣는다.
위의 값을 아래와 같이 채워 넣으면 된다.
작업을 완료하면
Deploy > 편집에서 info를 확안하면 아래와 같다.
마지막으로 master 파이프라인과 동일하게 Deploy 스테이지의 GenerateChangeSet 아래에 있는 작업 그룹을 추가해야 한다.
방법은 앞작업과 동일하다.
staging 파이프라인 편집을 들어가 Deploy 스테이지 편집 > 액션 그룹 추가를 누른다.
아래와 같이 채워 넣는다.
완료하면 새로운 작업그룹이 생성된다.
API Gateway
이제 앤드포인트로 이동해 작업이 제대로 구성되었는지 확인해본다.
url 클릭
접속화면
staging도 똑같이 확인하면 된다.
'Infra > AWS' 카테고리의 다른 글
Announcing WebSocket APIs in Amazon API Gateway (0) 2019.08.27 [삽질] aws-sam-cli 설치하기 on MacOS (0) 2019.08.27 [S3] javascript로 AWS S3에 파일 업로드하기 (0) 2019.08.19 [aws] API Gateway Lambda 권한 부여자 사용 (0) 2019.07.31 [aws] CodeStar로 serverless(lambda) node.js express 서버 배포하기 (0) 2019.07.29