curl로 Atlassian JIRA REST API 연계하기

  1. JIRA 사이트는 https://jira.example.com이고 프로토콜은 HTTPS(SSL) 사용한다고 가정
  2. REST API URL 은 JIRA 사이트 뒤에 jira/rest/api/2/ 를 붙이고 action 을 기술(Ex:  jira/rest/api/2/issue,  jira/rest/api/2/project)
  3. 인증은 HTTP Basic Auth 를 사용하며 ID/Pwd 는 admin/admin
  4. HTTP 요청 헤더에 Content-Type: application/json 가 설정되어야 JIRA 가 제대로 처리함

Java 로 구현한 REST-API 는 https://github.com/lesstif/jira-rest-client 참조

PHP 로 구현한 JIRA REST-API 는 https://github.com/lesstif/php-jira-rest-client 참조

 

Issue

Issue 생성

data.js
    "fields": {
        "project": {
            "id": "10000"
        },
        "summary": "something's wrong",
        "issuetype": {
            "id": "10000"
        },
        "assignee": {
            "name": "homer"
        },
        "reporter": {
            "name": "smithers"
        },
        "priority": {
            "id": "20000"
        },
        "labels": [
            "bugfix",
            "blitz_test"
        ],
        "timetracking": {
            "originalEstimate": "10",
            "remainingEstimate": "5"
        },
        "security": {
            "id": "10000"
        },
        "versions": [
            {
                "id": "10000"
            }
        ],
        "environment": "environment",
        "description": "description",
        "duedate": "2011-03-11",
        "fixVersions": [
            {
                "id": "10001"
            }
        ],
        "components": [
            {
                "id": "10000"
            }
        ]      
    }
curl -u admin:admin -X POST --data @data.js -H "Content-Type: application/json" https://jira.example.com/jira/rest/api/2/issue/ 

 

 

Project

 

Ref