2012年1月21日土曜日

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()
// プロジェクトを作成する
method = new HttpPost("http://redmine-server/redmine/projects.json")
// アカウントページで作成したAPIアクセスキーを設定する
apiKey = "your-api-key"
method.addHeader(new BasicHeader("X-Redmine-API-Key", apiKey))
//
builder = new JsonBuilder()
builder.project {
  name "プロジェクト名称"
  identifier "project1"
  description "groovyで作成したプロジェクト"
}
method.setEntity(new StringEntity(builder.toString(), "application/json", "UTF-8"))
response = httpclient.execute(method)
println response.getStatusLine().getStatusCode()
json = new JsonSlurper().parseText(response.getEntity().getContent().text)
// 作成したプロジェクトのID
println "id:${json.project.id}"


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

0 件のコメント:

コメントを投稿