Slack 명령에 대한 또 다른 구현
일반적인 생각
우리는 모든 슬래시 명령 요구 사항을 처리하는 데만 사용할 단일 람다 함수를 만들기로 결정했습니다. 명령은 일반 셸 명령과 유사한 구조를 따릅니다. 몇 가지 예는 다음과 같습니다.
명령
설명
돕다
사용법과 함께 모든 슬래시 명령을 나열하십시오.
배치를 돕다
필요한 모든 옵션 및 플래그를 포함하여 배포 명령에 대한 도움말 텍스트를 나열합니다.
전개하다
특정 클라이언트에 배포
slack 슬래시 명령의 몇 가지 예는 다음과 같습니다(슬래시 명령이/example이라고 가정).
/example help
/example help deploy
/example help deploy --client test-client --branch master
매우 간단한 구성을 사용하여 명령을 실행할 수 있는 사용자와 명령을 실행할 수 있는 채널을 제한할 수 있습니다.
{
"command": "deploy"
"users": [
"example.user"
],
"channels": [
"channel_id"
]
}
구현
우리는 오픈 소스 커뮤니티의 몇 가지 유용한 패키지의 도움을 받아 Python에서 이 솔루션을 구현했습니다. 이러한 패키지 중 일부는
Fast Api : API 구현용
Mangum : Aws Lambda 및 Api 게이트웨이와 FastApi의 통합용
Python Jenkins : 배포를 처리하는 Jenkins 서버와 상호 작용하는 경우
Argparse : 인수 구문 분석 처리용
구현 방식은 다음과 같습니다.
Lambda 함수 확인
그리고 적절하게 반응한다
이 솔루션의 일반적인 아키텍처는 다음과 같습니다.
이를 통해 새로운 슬랙 명령을 정말 빠르게 구현할 수 있습니다. 모든 오류 처리는 서로 다른 명령에서 유사하므로 모든 새 명령에 대해 개별적으로 오류를 처리할 필요가 없습니다.
Reference
이 문제에 관하여(Slack 명령에 대한 또 다른 구현), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/wajahataliabid/yet-another-implementation-for-slack-commands-4bmd텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)