본문 바로가기
반응형

DevOps92

Jira Release 발생시 Slack에 Release Notes 발행하기 회사 업무를 진행하다보면 매번 자주 하는 작업 중 하나가, 배포공유이다. 배포가 완료되고, Jira의 티켓들을 Release 하고나면, 어떤 티켓들이 이번에 운영에 배포되었는지를 Slack에 공유하는 것이다. 매번 하는 것이 귀찮으니, 자동화를 진행할 필요가 있다. 1. Jira Rule 생성 Jira에는 자동화를 지원하는 기능이 있다. Automation 이라는 기능인데, Jira의 굉장히 많은 기능들을 별도의 앱 없이 자동화를 사용할 수 있도록 한다. 이를 이용하면 Slack / Github / Jenkins 등의 연동을 아주 쉽게 할 수 있다. 이번 글에서도 마찬가지로 Jira Automation을 이용해서 진행한다. Jira 보드의 좌측에 있는 Project settings를 선택한다. 이동된 좌.. 2022. 5. 2.
release 브랜치 merge시 Tag 생성, 브랜치 삭제하기 (feat. Gihtub Action) 최근에 상권님의 포스팅을 보고나서 기존 프로젝트의 배포에 대한 추가 자동화를 진행했다. 앱 배포후 Jira에서 버전 Release처리 자동으로 하는 방법(feat. GitHub Action) 상권님의 포스팅에서는 다음과 같이 Github Action 의 자동화를 구성하셨다. Master 브랜치에서 Push가 발생하면 PR Merge 가 되어도 Master 에서는 Push가 발동된다 Merge Commit으로 발생한 커밋 메세지에서 버저닝 번호만 추출해서 Tag로 생성 반면에 우리 프로젝트는 release 브랜치의 반영이 다음과 같이 진행된다. 그래서 그대로 적용할수는 없었고, 우리팀 스타일에 맞게 개조가 필요했다. maaster Push가 아니라 PR이 merge가 되었을때만 Github Action이 .. 2022. 4. 23.
CloudFront 모니터링 하기 최근에 AWS의 서울/도쿄 리전에서 CloudFront 장애가 발생했다. (착한 트위터의 세계에서는 실시간으로 공유가 된다) EC2, RDS, ElasticCache에 비해 CloudFront는 모니터링을 잘 안하게 되는데, 장애가 발생하면 서비스 전체에 직격타가 된다. 대부분의 정적 파일 (이미지 등)이 CloudFront를 통한 CDN으로 전달이 되기 때문이다. 그래서 CloudFront가 평소보다 응답이 늦거나 에러 발생율이 높을때를 알 수 있게 모니터링할 필요가 있다. 여기서는 바로 적용할 수 있는 CloudWatch로 모니터링 하는 방법을 소개하지만, 만약 Datadog 같이 전문적인 APM 도구를 사용하고 있다면 APM을 통해 CloudFront를 모니터링하고 알람을 거는 것이 장기적인 관점에.. 2022. 4. 17.
Github Action 빌드 결과 Telegram Bot으로 보내기 팀 단위의 프로젝트에서는 Github Action 빌드의 결과를 Slack으로 보내겠지만, 개인적인 프로젝트에서는 Telegram을 사용할 때가 많다. 메세지 제한이 없고 슬랙은 무료 Plan에서는 채널당 메세지가 10,000개 제한이 있다. 네이티브 앱이라 슬랙에 비해 속도 체감이 심하다 특정 프로젝트의 build 결과를 텔레그램 메신저로 받을 수 있도록 진행한다. 1. bot 생성 먼저 텔레그램 봇을 생성한다. 텔레그램 메신저로 이동하여 BotFather 를 찾는다. 아래와 같이 BotFather 채팅방에서 /newbot을 입력한다 그리고 나선 봇 이름을 등록한다. 봇 이름은 다음과 같은 규칙이 필요하다 XXXBot 혹은 XXX_bot 과 같이 마지막 뒤에 Bot 혹은 _bot 이 들어가야만한다 생성.. 2022. 3. 26.
CloudFlare Pages로 Next.js 서비스 배포하기 CloudFlare의 정적사이트 플랫폼인 CloudFlare Pages가 출시되었다. https://pages.cloudflare.com/ 이미 Netlify 와 같이 정적 사이트 플랫폼이 많은데 굳이 CloudFlare를 써야하나? 싶었다. (저도 그동안은 Netlify을 썼기 때문에) 그럼에도 써봐야하는 이유는 Free Plan의 구성이 말도 안되게 좋기 때문이다. 무제한 사이트 발행 무제한 요청 무제한 대역폭 Free Plan 라고는 믿을수 없을만큼의 좋은 혜택을 제공한다. 대부분의 정적 사이트가 저정도 혜택은 유료 Plan인걸 고려하면 선택하지 않을 이유가 전혀 없다고 생각했다. 1. Next.js App 생성 먼저 간단한 Next.js App을 생성한다. 여기서 사용된 코드는 모두 Github .. 2022. 3. 25.
Mac 업데이트 이후 Docker 실행 안될 경우 어느날 Mac 업데이트 이후부터, docker-compose 실행이 안되기 시작했습니다. 아래와 같은 에러가 발생했는데요. 전체 에러로그는 다음과 같습니다. Traceback (most recent call last): File "docker/api/client.py", line 268, in _raise_for_status File "requests/models.py", line 941, in raise_for_status requests.exceptions.HTTPError: 500 Server Error: Internal Server Error for url: http+docker://localhost/version During handling of the above exception, anothe.. 2022. 1. 9.

728x90
반응형