2014-10-03 1 views
0

JIRA-JENKINS plugin을 통해 가능합니다. 하지만 저는 JIRA이나 Jenkins에 관리자가 아닙니다. 따라서 JIRA 또는 JENKINS에 플러그인을 설치하지 않고 jenkin 작업을 통해 JIRA 출시 노트를 생성 할 수 있는지 알고 싶습니다.플러그인이없는 jenkins 작업을 통해 JIRA 릴리즈 노트를 생성하십시오.

+0

구성을 수정할 수있는 권한이 없다면 어떻게 할 것입니까? 소스 제어 주석 빌드 로그를 살펴보고 언급 된 JIRA 문제 목록을 컴파일하는 자체 파서를 작성할 수 있습니다. – Slav

답변

1

maven-changes-plugin을 사용할 수 있습니다. 작은 Maven 프로젝트 (소스가 필요 없음)를 만들고 필요한 구성으로 플러그인 섹션에 플러그인을 포함해야합니다 (여기를 참조하십시오 : http://maven.apache.org/plugins/maven-changes-plugin/jira-report-mojo.html)

그런 다음 Jenkins 작업을 생성하고 maven 필요한 목표 (대부분 "mvn changes : jira-report"). 당신의 배포 작업에서

의 말에 쉘 실행 단계를 추가

+0

감사합니다 :) 이것을 시험해 보겠습니다. –

3

좋아, 여기 내 솔루션 (즉, 인터넷 검색을 내가 발견 한 몇 가지 부분적인 해결책의 혼합이다) 인, 지금 그것을했다 작업을 수행하고 다음 스크립트의 모든 매개 변수를 올바른 값으로 바꿉니다.

version=<your_jira_version> ##(for example 1.0.71) 

project_name=<your_jira_project_key> ##(for example PRJ) 

jira_version_id=$(curl --silent -u <jira_user>:<jira_password> -X GET -H "Content-Type: application/json" "https://<your_jira_url>/rest/api/2/project/${project_name}/versions" | jq "map(select(.[\"name\"] == \"$version\")) | .[0] | .id" | sed -e 's/^"//' -e 's/"$//') 

project_id=$(curl --silent -u <jira_user>:<jira_password> -X GET -H "Content-Type: application/json" "https://<your_jira_url>/rest/api/2/project/${project_name}" | jq .id | sed -e 's/^"//' -e 's/"$//') 

release_notes_page="https://<your_jira_url>/secure/ReleaseNote.jspa?version=${jira_version_id}&styleName=Text&projectId=${project_id}" 

release_notes=$(curl --silent -D- -u <jira_user>:<jira_password> -X GET -H "Content-Type: application/json" "$release_notes_page") 

rm -rf releasenotes.txt 

echo "$release_notes" | sed -n "/<textarea rows=\"40\" cols=\"120\">/,/<\/textarea>/p" | grep -v "textarea" > releasenotes.txt