This page was moved to https://cwiki.apache.org/confluence/display/CAUSEWAY/ReleaseProcess
Click in the link above if you are not automatically redirected in 10 seconds.


You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 9 Next »

Notes made while at Knockree

Release notes

1. discovered that the mvn release:prepare will fail if try to run on cygwin in Windows

  • so don't do this! use CMD.EXE on Windows, or regular shell on Ubuntu/Mac.
    2. need to verify all licenses. After a bit of experimentation, found the following worked:
  • mvn license:download-licenses
    • generates target/generated-resources/licenses.xml for every module
    • indicates the license (taken from the dependencies' pom)
  • groovy checkmissinglicenses.groovy
    • parses the output and lists those dependencies
      3. updated .../trunk/src/main/appended-resources/supplemental-models.xml
  • which has licenses for almost all of those dependencies where the license info is missing
  • for the remainder, have manually created some xxx.LICENSE.txt files in appended-resources

4. have added maven-remote-resources-plugin

  • which will process the above licenses and generate
  • also references the apache-incubator-disclaimer-resource-bundle, needed for incubator projects

TODO: need to figure out how to add the xxx.LICENSE.txt files. Think the easiest might be to add our own custom resource bundle and use to generate.

1. suggestion made was to manually create a branch and experiment with what the mvn release does. So...
2. svn mkdir https://svn.apache.org/repos/asf/incubator/isis/branches/release-practice -m "yada yada"
3. svn copy https://svn.apache.org/repos/asf/incubator/isis/trunk https://svn.apache.org/repos/asf/incubator/isis/branches/release-practice/trunk
4. in workspace, cp -R the trunk to a new dir, and svn switch
5. recommendation from Zoe Slattery:

  • updated parent pom's <scm>/<url> to reflect this dir.

Do a dry run
5. mvn -Papache-release release:prepare -DdryRun=true


Running the RAT Tool (from Nour)

Here's how I used RAT 1:

1. mvn clean eclipse:clean

This step to move any files which are not part of source code and
any binary file as a result of a build.

2. I checked out the source code of RAT tool and built a JAR.

3- I have an updated source code working copy of Isis trunk.

4- java -jar apache-rat-0.8-SNAPSHOT.jar ./
Out of that command I got the attached RAT report.

I could interpret the information there by comparing it with a report
I generated for Apache OpenEJB 2, but I still need someone to have a
look at it more specifically for files IDK what they are used for, for
example the *.hsp files and like.

But as a general note, I believe we need to add ASL header for each
and every file which going to be included in our source tar-ball and
which is not generated as generated files don't need to have that
header, if we can add it thats better but if not then no problem.

Releases "Proper"

There's an official write-up of the process for publishing maven artifacts at http://www.apache.org/dev/publishing-maven-artifacts.html.

There's also a fantastic write-up (so Mark tells us) about how to release using the stuff inherited from org.apache:apache-parent:7 (as we do). It was put together by Donald Woods, and can be found at http://incubator.apache.org/bval/cwiki/release-process.html

Nour's notes

I found these resources as start to get a hands on experience about
Apache release process.

General release process rules:
--------------------------------------------
1- http://www.apache.org/dev/release-publishing.html
2- http://www.apache.org/dev/release.html

Podling release management:
-------------------------------------------
1- http://incubator.apache.org/incubation/Incubation_Policy.html#Releases
2- http://incubator.apache.org/guides/releasemanagement.html

  • No labels