AWS Lambda를 이용해 Slack으로 Codedeploy 배포 현황 알림받기

Song·2021년 8월 5일
0

AWS

목록 보기
1/3

Codedeploy란, 자동으로 EC2 서버에 배포해주는 툴
AWS Lambda란, 별도의 웹서버없이 트리거와 비슷하게 특정 이벤트가 발생할 때에만 AWS에서 실행되는 함수

Step 1. SNS Topic 생성

SNS Topic 설정을 통해 메세지(또는 알람)를 주고 받을 endpoints를 지정할 수 있다. 해당 포스트같은 경우는 endpoint로 AWS Lambda를 설정한다.

1. Amazon SNS -> Topics -> Create topic 클릭

2. Standard 체크 후 Name 입력 (이 외에 설정은 선택사항임)

3. Create topic 클릭



Step 2. Lambda 함수 생성

1. AWS Lambda -> Functions -> Create function 클릭

2. Function name 입력 후 Create function 클릭

※ SNS에 접근 권한이 있는 신규 Role이 생성됨으로 함수가 만들어지기까지 시간이 조금 걸림


Step 3. Lambda 함수 환경 변수 추가

1. Configuration -> Enviornment variables -> Edit 클릭

2. SERVICES와 CHANNEL (R은 오타) 추가

SERVICES: Slack에서 받은 웹후크 URL (전체 URL이 아닌 'https://hooks.slack.com' 값 제외 '/services' 부터 시작하는 url만 넣는다.
CHANNEL: Slack 채널명



Step 4. 코드 추가

https://jojoldu.tistory.com/298 참고 후 'Deploy' 클릭



Step 5. Lambda 함수와 SNS Topic 연결

1. Add trigger 클릭

2. 'SNS' 지정 후 이전에 생성한 SNS topic 선택



Step 6. Codedeploy 트리거 설정

  1. 이전에 생성한 codedeploy group 선택 후 edit 클릭
  2. Advanced - optional 클릭
  3. create Trigger를 이용해 알람을 받고자하는 events와 SNS topic 선택!
profile
Learn From Yesterday, Live Today, Hope for Tomorrow

0개의 댓글