Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: changed site deploy section, corrected svn tagging section

...

No Format
mvn commons:download-page

Define Staging Site for Release Candidate

Also ensure that the rc profile will stage the site (rather than update the Commons component website). See bottom of Commons SCXML POM as an example. See COMMONSSITE-26 for background.

No Format

<profiles>
  <profile>
    <id>rc</id>
    <distributionManagement>
      <!-- Cannot define in parent ATM, see COMMONSSITE-26 -->
      <site>
        <id>apache.website</id>
        <name>Apache Commons Release Candidate Staging Site</name>
        <url>${commons.deployment.protocol}://people.apache.org/www/people.apache.org/builds/commons/${commons.componentid}/${commons.release.version}/${commons.rc.version}/site</url>
      </site>
    </distributionManagement>
  </profile>
</profiles>

Prepare Your Assembly Descriptors

...

When you followed the instructions you have modified a couple of files by now - commit them now otherwise the release process will fail.

...

Create the SVN tags

Check that your poms will not lose content when they are rewritten during the release process.

  • mvn release:prepare -DdryRun=true
  • Diff the original file pom.xml with the one called pom.xml.tag to see if the license or any other info has been removed. This has been known to happen if the starting <project> tag is not on a single line. The only things that should be different between these files are the <version> and <scm> elements. Any other changes, you must backport yourself to the original pom.xml file and commit before proceeding with the release.
  • Remember to do 'mvn release:clean ' before you start the real release process.
  • If everything is ok, run: mvn release:prepare

After this step the necessary SVN tags should have been created. You probably have problems running this command. Sometimes a profile in the settings help, like this:

No Format

<profile>
  <id>apache-release</id>
  <properties>
     <gpg.passphrase></gpg.passphrase>
     <gpg.keyname>your_key</gpg.keyname>
  </properties>
</profile>

Or running mvn with this arguments:

No Format

mvn -DdryRun=true -Dgpg.keyname=your_key \
-Darguments="-Dgpg.keyname=your_key" release:prepare

Deploy the artifacts

Once the code appears to be ready, the Maven artifacts can be deployed:

...

See Closing the Staged Repository for information about reviewing your staged artifacts and making them available for others to review.

Stage the site

The site plugin can be used for staging a website. You probably need to add some authentication information to your settings.xml. Please mind the id "stagingSite".

No Format

<server>
  <id>stagingSite</id>
  <username>repouser</username>
  <!-- other optional elements:
     <password>my_login_password</password>
     <privateKey>/path/to/identity</privateKey> (default is ~/.ssh/id_dsa)
     <passphrase>my_key_passphrase</passphrase>
  -->
</server>

Once done, run a command like this from your tag:

No Format

mvn site:stage-deploy -DstagingDirectory=src/site \
-DstagingSiteURL=scp://[...]/people.apache.org/builds/commons/compress/1.1/RC1

The site should appear on the specified folder.

Send Out The Vote

Below you find a vote template to save you some time ...

...