https://github.com/lifeplan/jira-discord-bot

<aside> 💡

Discord Bot 생성

링크 - https://discord.com/developers/applications

  1. New Application → 이름: "Jira Sync Bot"
  2. 좌측 Bot → Add Bot

image.png

image.png

image.png

  1. Reset Token → 토큰 복사 (한 번만 보임!)
  2. MESSAGE CONTENT INTENT 활성화
  3. OAuth2 → URL Generator

image.png

마지막으로 생성된 URL로 서버에 봇 초대

<aside> 💡

Jira Setting

  1. https://id.atlassian.com/manage-profile/security/api-tokens 에서 토큰 발급
    1. 구글에 아틀라시안쳐서 우상단에 내 아이콘 클릭하면 프로필보이는데 그거 클릭
    2. 보안 → 하단 스크롤 “API 토큰 만들기 및 관리” 클릭
    3. 이렇게 해야 인증번호 옴,, 안와서 10분 버림
  2. 로컬 테스트 시 Ngrok 사용하고, 거기서 시키는대로 하면 url 생성해줌, 그걸로 지라 웹훅 만들때 URL 부분 설정해주면 됨(src/routes/webhooks.ts 일부 코드 첨부)
export async function webhookRoutes(fastify: FastifyInstance): Promise<void> {
  // Jira Webhook 수신
  fastify.post(
    '/webhook/jira',
    async (request: FastifyRequest, reply: FastifyReply) => {
      const payload = request.body as JiraWebhookPayload;
...

# {Server URL}/webhook/jira 로 구성하면 됩니다.

image.png

<aside> 💡

로컬에서 테스트 할거면 Ngrok 사용

  1. https://dashboard.ngrok.com/signup 회원가입 안되어있음 해야함

    1. 로컬에서 테스트 하기위해서

    image.png

  2. https://lifeplan-app.atlassian.net/plugins/servlet/webhooks 웹훅 추가쓰

</aside>