使用Powershell更改受理人并通过JIRA REST API添加注释问题

时间:2014-06-26 04:50:12

标签: api rest powershell curl jira

对于看似简单的事情,我没有运气通过REST API更新JIRA问题。

有没有人能够使用Powershell更新JIRA问题?我已经很好地用尽了stackoverflow和atlassian网站上的所有选项。

curl,invoke-restmethod或invoke-webrequest的脚本没有做任何事情,只返回错误。

从问题中检索信息不是问题。改变它......圣牛。

如果有人能帮我找到解决这个问题的方法,我将非常感激。

谢谢!

1 个答案:

答案 0 :(得分:1)

function ConvertTo-Base64($string) {
    $bytes  = [System.Text.Encoding]::UTF8.GetBytes($string);
    $encoded = [System.Convert]::ToBase64String($bytes);
    return $encoded;
}

function Get-HttpBasicHeader([string]$username, [string]$password, $Headers = @{}) {
    $b64 = ConvertTo-Base64 "$($username):$($Password)"
    $Headers["Authorization"] = "Basic $b64"
    $Headers["X-Atlassian-Token"] = "nocheck"
    return $Headers
}

function add_comment([string]$issueKey,[string]$comment) {
    $body = ('{"body": "'+$comment+'"}')
    $comment=(Invoke-RestMethod -uri ($restapiuri +"issue/$issueKey/comment") -Headers $headers -Method POST -ContentType "application/json" -Body $body).id    
    return $comment
}


$restapiuri = "https://jira.server.com/rest/api/2/"
$headers = Get-HttpBasicHeader "user" "password"

add_comment "MyIssue-1234" "[~test.user] please handle the issue."