[
https://issues.apache.org/jira/browse/DERBY-4857?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12923971#action_12923971
]
Rick Hillegas commented on DERBY-4857:
--------------------------------------
Thanks again for the patch, Kristian. I updated my client, which got me past
the build issues. After that, I was able to test-drive the patch and
successfully build the release notes. Love it. A couple comments:
o It would be nice if the tool had a quiet mode. Maven is pretty chatty and
yours truly doesn't need to see the list of excluded bugs.
o Maven coughs up the following warning. It didn't seem to hurt anything but
I'm probably not the only person who will be puzzled by it:
WARNING: Unable to find required classes (javax.activation.DataHandler and
javax.mail.internet.MimeMultipart). Attachment support is disabled.
o I had to remove the following sanity-check from ReleaseNotesGenerator (line
282). It will kill release notes generation for feature releases. That is
because the release manager wants to publish the release notes a good week
before creating the branch and building the first release candidate. At that
time, the version number in release.properties is still an alpha version
number. I tripped across the fact that the version number in release.properties
on the trunk was 10.7.0.0 but I was trying to generate release notes for
10.7.1.0:
else if (!relVer.equals(releaseID)) {
throw new IllegalStateException("target release version mismatch " +
"between release.properties and bug list: " + releaseID +
" != " + relVer);
}
I think that the release number which appears in RELEASE-NOTES.html should
originate with the release number which you specify when you run "java -jar
target/JiraSOAP-LATEST-jar-with-dependencies.jar".
At this point, you have removed one of the redundant places where we specify
the release number (namely, in releaseSummary.xml). That's progress. I don't
think we need to sand this down further, although it's worth thinking about
streamlining how many times we still specify a release id:
o We specify a release id when we define the jira filter which defines the raw
stream of bug ids.
o We specify a release id when we run "java -jar
target/JiraSOAP-LATEST-jar-with-dependencies.jar".
o We specify a release id when we run the master target which builds the
release candidate.
Here is the script which I used to tie together all of the pieces of
release-notes generation. This may be useful to other release managers who want
to test-drive this patch:
Thanks,
-Rick
----------------
#! /bin/bash
#
# Run the machinery which creates the release notes. Make sure
# that you are not on a corporate VPN--otherwise maven may hang
# while trying to access the network.
#
# Arguments:
#
# $1 jira user name
# $2 jira password
# $3 release version (e.g. 10.7.1.0)
# $4 numeric id of filter used to create jira report of fixed bugs (e.g.
12314683)
#
# E.g.:
#
# createReleaseNotes rhillegas mypassword 10.7.1.0 12314683
export jiraname=$1
export jirapassword=$2
export derbyversion=$3
export relnotesdir=$HOME/junk/$derbyversion-relnotes
export filterid=$4
export destinationfile=$relnotesdir/fixedBugsList.txt
export remove=true
mkdir $relnotesdir
cd $BRANCH/tools/release/jirasoap
# build the application which uses SOAP to tease information out of JIRA
mvn -Pbuildclient
# now produce the filtered list of issues
java -jar target/JiraSOAP-LATEST-jar-with-dependencies.jar $jiraname
$jirapassword $derbyversion $filterid $destinationfile $remove
# now generate RELEASE-NOTES.html from the filtered list
cd ..
ant -Drelnotes.src.reports=$relnotesdir genrelnotes
> Utilize the SOAP API to fetch JIRA issue list for release notes generation
> --------------------------------------------------------------------------
>
> Key: DERBY-4857
> URL: https://issues.apache.org/jira/browse/DERBY-4857
> Project: Derby
> Issue Type: Improvement
> Components: Build tools
> Affects Versions: 10.7.1.0
> Reporter: Kristian Waagan
> Assignee: Kristian Waagan
> Attachments: derby-4857-1a-jirasoap_relnotes.diff,
> derby-4857-1a-jirasoap_relnotes.stat
>
>
> Somewhat simplified, the release manager (RM) must currently perform the
> following manual steps to feed the release note generate the data it needs:
> a) Create manual JIRA filter to select issues addressed by the release.
> b) Save the filter result to disk as XML.
> c) Write/modify the XML parser to be able to parse the report.
> d) Determine and record all JIRA release note attachment ids for the issues
> requiring a release note.
> By using the current version of the SOAP API (3.13.5), steps (b) to (d) can
> be removed.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.