GitLab๊ณผ Jira ํ†ตํ•ฉ

๊ณจ

git์— ์ปค๋ฐ‹ํ•  ๋•Œ ์ฃผ์„์—์„œ Jira์˜ ์ผ๋ถ€ ์ž‘์—…์„ ์ด๋ฆ„์œผ๋กœ ์–ธ๊ธ‰ํ•œ ํ›„ ๋‘ ๊ฐ€์ง€ ์ผ์ด ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

  • GitLab์—์„œ ๋ฌธ์ œ์˜ ์ด๋ฆ„์€ Jira์—์„œ ํ•ด๋‹น ๋ฌธ์ œ์— ๋Œ€ํ•œ ํ™œ์„ฑ ๋งํฌ๋กœ ๋ฐ”๋€๋‹ˆ๋‹ค.

  • Jira์—์„œ๋Š” ์ปค๋ฐ‹ ๋ฐ ์ปค๋ฐ‹์„ ๋งŒ๋“  ์‚ฌ์šฉ์ž์— ๋Œ€ํ•œ ๋งํฌ์™€ ํ•จ๊ป˜ ์ž‘์—…์— ๋Œ“๊ธ€์ด ์ถ”๊ฐ€๋˜๊ณ  ๋ฉ˜์…˜ ํ…์ŠคํŠธ ์ž์ฒด๋„ ์ถ”๊ฐ€๋ฉ๋‹ˆ๋‹ค.

์กฐ์ •

  1. ์“ฐ๊ธฐ ๊ถŒํ•œ์ด ์žˆ๋Š” Jira ์‚ฌ์šฉ์ž๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด ๋Œ“๊ธ€์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. git์—์„œ ์ž‘์—…์„ ์–ธ๊ธ‰ํ•  ๋•Œ Jira์˜ ๋ชจ๋“  ๋Œ“๊ธ€์ด ์ด ์‚ฌ์šฉ์ž๋ฅผ ๋Œ€์‹ ํ•œ๋‹ค๋Š” ์ ์„ ๊ธฐ์–ตํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”ํ•ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์ƒˆ ๋Œ“๊ธ€์„ ๋งŒ๋“ค๊ณ  ์˜ˆ๋ฅผ ๋“ค์–ด GitLab์ด๋ผ๋Š” ์ด๋ฆ„์„ ์ง€์ •ํ•˜๊ณ  ์ถ”๊ฐ€ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ๋ชจ๋“  ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•œ ์“ฐ๊ธฐ ๊ถŒํ•œ์ด ์žˆ๋Š” Jira์—.
  2. ์—ฐ๊ฒฐํ•  ๊ฐ ํ”„๋กœ์ ํŠธ์—์„œ ๊ด€๋ฆฌ์ž ๊ถŒํ•œ์ด ์žˆ๋Š” GitLab ์‚ฌ์šฉ์ž๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ ํ”„๋กœ์ ํŠธ์— ๋Œ€ํ•ด ํ†ตํ•ฉ์ด ๋ณ„๋„๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค.
  3. GitLab์—์„œ ํ”„๋กœ์ ํŠธ๋ฅผ ์—ด๊ณ  ๋‹ค์Œ์œผ๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค. ์„ค์ • -> ํ†ตํ•ฉ. ์•„๋ž˜๋กœ ์Šคํฌ๋กคํ•˜์—ฌ ํ™•์ธ ํ”„๋กœ์ ํŠธ ์„œ๋น„์Šค ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š” ์„œ๋น„์Šค์˜ ๊ธด ๋ชฉ๋ก์ด ์žˆ์Šต๋‹ˆ๋‹ค.
    GitLab๊ณผ Jira ํ†ตํ•ฉ
  4. ์ด ๋ชฉ๋ก์—์„œ Jira๋ฅผ ์ฐพ์œผ๋ฉด ์–‘์‹์ด ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค.
    GitLab๊ณผ Jira ํ†ตํ•ฉ

    • ์ฒดํฌ ํ‘œ์‹œ ์ตœ๊ทผํ™œ๋™๋งํฌ๋ฅผ ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค.
    • ์–‘์‹์—์„œ ๋ณผ ์ˆ˜ ์žˆ๋“ฏ์ด ์ปค๋ฐ‹ ๋ฐ ๋ณ‘ํ•ฉ ์š”์ฒญ์— ๋Œ€ํ•ด ์›ํ•˜๋Š” ๋™์ž‘์„ ๋ณ„๋„๋กœ ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • ์ž…๋ ฅํ•˜๋‹ค ์›น URL Jira์˜ ํšŒ์‚ฌ(์˜ˆ: 'https://companyname.atlassian.net')
    • Jira API URL - ๋‹ค๋ฅธ Jira ์ธ์Šคํ„ด์Šค๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ๊ฐ’์€ ์›น URL.
    • ๋ถ„์•ผ ์‚ฌ์šฉ์ž ์ด๋ฆ„ / ์ด๋ฉ”์ผ ะธ ๋น„๋ฐ€๋ฒˆํ˜ธ/ํ† ํฐ Jira Server ๋˜๋Š” Jira Cloud๋ฅผ ์‚ฌ์šฉํ•˜๋Š”์ง€ ์—ฌ๋ถ€์— ๋”ฐ๋ผ ์ฑ„์›Œ์ง‘๋‹ˆ๋‹ค. Jira Server์˜ ๊ฒฝ์šฐ ๋Œ“๊ธ€์„ ์ถ”๊ฐ€ํ•  ์‚ฌ์šฉ์ž์˜ ์ด๋ฆ„๊ณผ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค. Jira Cloud์˜ ๊ฒฝ์šฐ ๋ฐ›์„ ์ˆ˜ ์žˆ๋Š” ์ด๋ฉ”์ผ๊ณผ ํ† ํฐ์„ ๋„ฃ์–ด๋‘๋ฉด ์—ฌ๊ธฐ์—.
    • ๋ถ„์•ผ ์ „ํ™˜ ID. ์˜ˆ๋ฅผ ๋“ค์–ด ์ž‘์—…์ด ์–ธ๊ธ‰๋  ๋•Œ ์ž๋™์œผ๋กœ ๋‹ซํžˆ๋„๋ก ํ•˜๋ ค๋ฉด ์ด ํ•„๋“œ์— ๋‹ซํž˜ ์ƒํƒœ๋กœ์˜ ์ „ํ™˜ ID๋ฅผ ์ž…๋ ฅํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด ID๋Š” API๋ฅผ ํ†ตํ•ด ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
      https://companyname.atlassian.net/rest/api/2/issue/ISSUENAME-123/transitions 

      ์—ฌ๊ธฐ์„œ ISSUENAME-123์€ ์›ํ•˜๋Š” ์ƒํƒœ์— ์žˆ๋Š” ์ž‘์—…์˜ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค. ์›ํ•˜๋Š” ID๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ๋Š” ์ „ํ™˜ ๋ฐฐ์—ด๊ณผ ํ•จ๊ป˜ JSON์„ ๋ฐ›๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

    ๊ทธ ๊ฒฐ๊ณผ GitLab์˜ ์„ค์ • -> ํ†ตํ•ฉ ์ด์ œ Jira์— ๋…น์ƒ‰ ํ‘œ์‹œ๊ธฐ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

    GitLab๊ณผ Jira ํ†ตํ•ฉ

    ํ•ญ๋ชฉ์ด ํ”„๋กœ์ ํŠธ ๋ฉ”๋‰ด์— ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค. ๋ฝ์Šค, Jira์—์„œ ํ•ด๋‹น ํ”„๋กœ์ ํŠธ๋กœ ์—ฐ๊ฒฐ๋ฉ๋‹ˆ๋‹ค.

    GitLab๊ณผ Jira ํ†ตํ•ฉ

ะ˜ัะฟะพะปัŒะทะพะฒะฐะฝะธะต :

์ปค๋ฐ‹์— ์ฃผ์„์„ ์ž‘์„ฑํ•  ๋•Œ(git๋กœ ์ž‘์—…ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•˜๋Š” ๋„๊ตฌ์— ๊ด€๊ณ„์—†์ด) ์ž‘์—… ์ด๋ฆ„์„ ํ…์ŠคํŠธ ํ˜•์‹์œผ๋กœ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค(๋”ฐ์˜ดํ‘œ๋‚˜ @์™€ ๊ฐ™์€ ํŠน์ˆ˜ ๋ฌธ์ž ์—†์ด).

bugfix XPROJECT-123, XPROJECT-124

๊ฒฐ๊ณผ์ ์œผ๋กœ ์ฃผ์„์€ ํ•ด๋‹น ์ž‘์—…์— ํ•ด๋‹นํ•ฉ๋‹ˆ๋‹ค.

GitLab๊ณผ Jira ํ†ตํ•ฉ

ํ™œ์„ฑ ๋งํฌ๊ฐ€ gitlab์— ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค.

GitLab๊ณผ Jira ํ†ตํ•ฉ

์ถœ์ฒ˜ : habr.com

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€