Bash Script에 슬랙을 연동하기 위해서는 슬랙 설정을 필수적으로 해야 한다.
Bash Script에 연동하기 전에 슬랙에 기본 설정하기
코딩하기에 앞서 어떤 순서로 webhook integration 이 이루어지는지 알아보자
순서
- cURL 요청 확인
- Bash Script 작성
- Bash Script 실행
1. cURL 요청 확인
Slack hook을 연동을 하기 위해서는 hooks의 url과 채널에 대해 알아야 한다.
슬랙 웹 훅 연동 과정에는 아래와 같은 내용이 있다. (cURL REQUEST)
$ curl -X POST -H 'Content-type: application/json' --data
'{"text":"Hello, World!"}'
//hooks.slack.com/services/AAAAAAAAA/BBBBBBBBBBB/CCCCCCCCCCCCCCCCCCCC
해당 curl 요청을 실행해보면 slack에 알림을 보낼 수 있다. curl request 가 잘 동작한다면 다음 단계로!!
2. Bash Script 작성
스크립트를 아래 처럼 작성한다.
크게 어려운게 없으므로, 라인별 코멘트로 정리했다.
#!/bin/bash
# 알리고자 하는 채널
CHANNEL="#alert_channel"
# 채널 내에서 나오게 될 사용자 이름
USERNAME="Bash Webhook"
# 채널에 사용하고자 하는 아이콘
EMOJI=":heart:"
# Script 실행 시 첫번째 파라미터 - 내용
MSG=$1
# Setting URL
PAYLOAD="payload={\"channel\": \"$CHANNEL\", \"username\": \"$USERNAME\", \"text\": \"$MSG\", \"icon_emoji\": \"$EMOJI\"}"
HOOK=https://hooks.slack.com/services/AAAAA/BBBBB/CCCCCC
# curl request
curl -X POST --data-urlencode "$PAYLOAD" "$HOOK"
3. Bash Script 실행
$ ./filename.sh "this is message."
위와 같이 filename.sh 를 파라미터 "(내용)" 과 함께 실행시킨다.
그럼 script 실행이 완료된 후, #alert_channel 에 "this is message." 메시지가 감을 확인할 수 있다.
만약 권한 문제로 인해 스크립트를 실행할 수 없다면, 해당 파일의 권한을 바꿔준다.
(참고) 권한바꾸기
일반적으로 sh file을 바로 실행 시킬 순 없을 것이므로, 권한을 바꿔준다.
권한에 대한 자세한 설명은 여기
$ chmod 755 filename.sh
or
$ sudo chmod 755 filename.sh
'IT Study > 슬랙연동하기' 카테고리의 다른 글
Nodejs 슬랙 연동 – 웹훅 ! (0) | 2020.11.04 |
---|---|
PHP 슬랙 연동 – 웹훅 ! (0) | 2020.11.03 |
슬랙 자동 알림 기본 설정 방법 (웹훅) (0) | 2020.11.02 |