2012年1月30日月曜日

groovyでredmineのチケットを更新する

groovyでredmineのチケットを更新するには、以下のコードを実行します。
@Grab(group='org.apache.httpcomponents', module='httpclient', version='4.1.2')
import org.apache.http.*
import org.apache.http.client.*
import org.apache.http.client.methods.*
import org.apache.http.impl.client.*
import org.apache.http.entity.*
import org.apache.http.message.*
import org.apache.http.protocol.*
import groovy.json.*

httpclient = new DefaultHttpClient()
// チケットを更新する
issueId = 8
method = new HttpPut("http://redmine-server/redmine/issues/${issueId}.json")
// アカウントページで作成したAPIアクセスキーを設定する
apiKey = "your-api-key"
method.addHeader(new BasicHeader("X-Redmine-API-Key", apiKey))
// パラメータを設定
builder = new JsonBuilder()
builder.issue {
  project_id "testproject1"
  notes "例外発生"
}
method.setEntity(new StringEntity(builder.toString(), "application/json", "UTF-8"))
response = httpclient.execute(method)
println response.getStatusLine().getStatusCode()
println response.getEntity().getContent().text


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

0 件のコメント:

コメントを投稿