2012年1月23日月曜日

groovyでredmineから優先順位がUrgentのチケットの一覧を取得する

groovyでredmineから優先順位がUrgentのチケットの一覧を取得するには、以下のコードを実行します。
@Grab(group='org.apache.httpcomponents', module='httpclient', version='4.1.2')
import org.apache.http.client.methods.*
import org.apache.http.impl.client.*
import org.apache.http.message.*
import groovy.json.*

httpclient = new DefaultHttpClient()
// 優先順位がUrgent(priority_id=6)のチケットの一覧を取得する
project_id = "testproject1"
method = new HttpGet("http://redmine-server/redmine/issues.json" +
  "?limit=100&offset=0&priority_id=6"
)
// アカウントページで作成したAPIアクセスキーを設定する
apiKey = "your-api-key"
method.addHeader(new BasicHeader("X-Redmine-API-Key", apiKey))
response = httpclient.execute(method)

json = new JsonSlurper().parseText(response.getEntity().getContent().text)
println json
println "number of closed issue:${json.total_count}"
json.issues.each {
  println "----"
  // 題名
  println "name:${it.subject}"
  // ステータス
  println "status:${it.status.name}"
  // 説明
  println "description:${it.description}"
  // プライオリティ
  println "priority:${it.priority.name}"
  // 登録日時
  println "created_on:${it.created_on}"
}

動作環境
groovy 1.8.4, JDK6 Update29, redmine 1.3.0

0 件のコメント:

コメントを投稿