์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ๋ฅผ ํ™œ์„ฑํ™” ํ•ด์ฃผ์„ธ์š”

p084 RedMine, Powershell Automation

 ·  โ˜• 2 min read

redmine

์š”์ฆ˜์€ redmine์€ ๋งŽ์ด ์ข‹์•„์กŒ์Šต๋‹ˆ๋‹ค. github์ด๋‚˜ gitlab์ฒ˜๋Ÿผ ํด๋ฆฝ๋ณด๋“œ์— ์žˆ๋Š” ์ด๋ฏธ์ง€๋„ ์ž๋™์œผ๋กœ ์—…๋กœ๋“œ๋˜๊ฒŒ ๋˜์–ด์žˆ๊ณ , ์—ฌ๋Ÿฌ๊ฐ€์ง€ ์ปค์Šคํ„ฐ๋งˆ์ด์ง•๋„ ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ์ „์— ๋น„ํ•˜๋ฉด ๋งŽ์ด ์ข‹์•„์กŒ์Šต๋‹ˆ๋‹ค. ์šฐ์„  ํ‚ค๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ ๋ถ€ํ„ฐ ํ•ด๋ณด์ฃ  ๊ฐœ์ธ ํ”„๋กœํ•„ ์„ค์ •ํ•˜๋Š” ํ™”๋ฉด์—์„œ api key๋ฅผ ๋ฐœ๊ธ‰๋ฐ›์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

p084_redmine_api_key.png

๊ทธ ๋‹ค์Œ์€, ํ‹ฐ์ผ“์„ ๊ฐ€์ ธ์˜ค๋Š” ๊ฒƒ ๋ถ€ํ„ฐ ํ•ด๋ณด์ฃ 

getting issues

1
2
3
4
$redmine_url = "http://redmine.tkim.info/"
$redmine_apikey = "ddH01a4dE8144L6edLa8dO7ae1W5f1O457RL862D"
$redmine_issues  = ((Invoke-WebRequest ($redmine_url + "issues.json?key=" + $redmine_apikey) -Method GET).content | ConvertFrom-Json).issues
$redmine_issues

ํ‹ฐ์ผ“์— ๋ณด๋ฉด, ํ”„๋กœ์ ํŠธ์˜ ๋ฒˆํ˜ธ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜๋Š” ํ‹ฐ์ผ“url์— .xml์„ ๋ถ™์ด๋ฉด ํ•ด๋‹น ํ‹ฐ์ผ“์˜ property๋“ค์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•„์š”ํ•œ ์ •๋ณด๋Š” ์—ฌ๊ธฐ์—์„œ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‹ค์Œ์€ ์ƒˆ๋กœ์šด ํ‹ฐ์ผ“์„ ๋“ฑ๋กํ•˜๋Š” ์ž‘์—…์ž…๋‹ˆ๋‹ค.

posting a issue

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
$redmine_url = "http://redmine.tkim.info/"
$redmine_apikey = "ddH01a4dE8144L6edLa8dO7ae1W5f1O457RL862D"

$projectDC = 29
$titleString = "test title"
$bodyString = "test body"
$body = @"
{ "issue": {
    "project_id": $projectDC, 
    "subject": "$titleString",
    "description": "$($bodyString -replace "`n","\n")",
    "priority_id": 4, 
    "custom_fields":[{"id":93,"value":"ใใฎไป–"}]
    }
}
"@
# issue_custom_field_values_93 : BS่จˆไธŠ
# priority 1 : new, 4 : emergency
$bytes = [Text.Encoding]::UTF8.GetBytes($body);
$res = Invoke-RestMethod ($redmine_url + "issues.json?key=" + $redmine_apikey) -Method POST -Body $bytes -ContentType application/json

p084_redmine_automation.png

์–ด๋–ค ์ž๋™ํ™”๋ฅผ ํ•  ์ˆ˜ ์žˆ์„๊นŒ์š”?

  • ์‹œ์Šคํ…œ ๋ฌธ์ œ๋ฅผ ๊ฒ€์ง€ํ•˜๋ฉด ๋ฐœ์ƒํ•˜๋ฉด ์ž๋™์œผ๋กœ ํ‹ฐ์ผ“์„ ๋“ฑ๋กํ•˜๋Š” ๊ฒƒ
  • ๋‚˜์—๊ฒŒ ์ด์Šˆ๊ฐ€ Assign๋˜๋ฉด ๋‚˜์—๊ฒŒ ๋ฉ”์‹œ์ง€๋ฅผ ๋ณด๋‚ด๋Š” ๊ฒƒ
  • ๋“ฑ๋ก๊ณผ ํ•ด๊ฒฐ์— ๋Œ€ํ•œ ํ†ต๊ณ„๋ฅผ ์ž๋™ํ™” ํ•˜๋Š” ๊ฒƒ.

jira๋‚˜ confluence๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋‹ค๋ฉด, AtlassianPS๋‚˜ JiraPS๋“ฑ๋„ ์ด์šฉํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

Ref

๊ณต์œ ํ•˜๊ธฐ

tkim
๊ธ€์“ด์ด
tkim
Software Engineer