728x90

사실 이건 deployer repository에 recipe가 있다.


https://deployer.org/recipes/slack


Composer로 이 레시피를 설치해서 사용하면 된다.


Slack > Administration > Manage Apps > Custom integrations > Incoming Webhooks 로 들어가 Webhook을 새로 만들고,


해당 webhook url을 slack recipe에 셋팅해주면 된다.


set('slack_webhook', 'https://hooks.slack.com/services/{YOUR_WEBHOOK}');

이렇게.


이후 메뉴얼에 나온대로 slack_text, slack_success_text, slack_failure_text 를 설정하면 배포 시 메시지가 채널에 전달된다.


여기서 나는 추가로 릴리즈 노트를 함께 표시하고 싶었다.


릴리즈 노트.. 왠지 명칭부터 폼나자너~


가급적 자동화를 하기위해 git의 commit message를 활용하기로 했다.


다만 여러 commit을 한번에 push한 경우, 마지막 message만 표시됨을 참고할것.



다음과 같이 마지막 commit  message를 가져온다.


$commit = shell_exec("git log -1 --pretty=%B");


이후 원하는 형식으로 slack_text에 추가해주면 된다.


shell 실행 결과 하단에 빈 줄이 몇개정도 삽입되므로, trim($commit) 해주면 좋다.


끗.

  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기