2012年1月14日土曜日

groovyでredmineからオープンチケットの一覧を取得する

groovyでredmineからオープンチケットの一覧を取得するには、以下のコードを実行します。
@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()
// オープンチケットの一覧を取得する
project_id = "testproject1"
method = new HttpGet("http://redmine-server/redmine/issues.json" +
  "?limit=100&offset=0"
)
// アカウントページで作成した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 "number of open 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 件のコメント:

コメントを投稿