You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@turbine.apache.org by Apache Wiki <wi...@apache.org> on 2009/10/19 20:55:32 UTC

[Turbine Wiki] Update of "FulcrumMaven2Migration" by ThomasVandahl

Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Turbine Wiki" for change notification.

The "FulcrumMaven2Migration" page has been changed by ThomasVandahl.
The comment on this change is: Added some information on deployment.
http://wiki.apache.org/turbine/FulcrumMaven2Migration?action=diff&rev1=13&rev2=14

--------------------------------------------------

   * rc (Release Candidate)
   * release (Release)
  
- The 'rc' profile copies the artifacts to 
+ The 'rc' profile copies the artifacts to
  
  people.apache.org/www/turbine.apache.org/builds/turbine/fulcrum/${fulcrum.componentid}/${fulcrum.release.version}/${fulcrum.rc.version}/staged
  
@@ -29, +29 @@

   * it is uploaded to a key server
   * it is signed on a key signing party
   * it is found in the KEYS file
-  
+ 
  ==== A.3 Maven Installation ====
  
- Currently Maven 2.0.10 or better is required to run the release process 
+ Currently Maven 2.0.10 or better is required to run the release process
-  
+ 
  ==== A.4 Maven Server Settings ====
  
  It is a good idea to check your ''settings.xml'' that it contains the corresponding server entries for the repositories and websites defined in the fulcrum parent pom. If you have a different user name on your box than on ''people.apache.org'' you local user name will be used for authentication. Therefore the authentication will fail and after a few retries your are locked out from ''people.apache.org'' for a day - which in turn makes cutting a release rather lengthy. In theory you could also provide your password in the server section below but this unsafe and did not work in my case.
@@ -44, +44 @@

      <id>apache.releases</id>
      <username>YOUR_APACHE_USERNAME</username>
      <filePermissions>664</filePermissions>
-     <directoryPermissions>775</directoryPermissions>    
+     <directoryPermissions>775</directoryPermissions>
    </server>
    <server>
      <id>apache.website</id>
      <username>YOUR_APACHE_USERNAME</username>
      <filePermissions>664</filePermissions>
-     <directoryPermissions>775</directoryPermissions>    
+     <directoryPermissions>775</directoryPermissions>
    </server>
    <server>
      <id>apache.snapshots</id>
      <username>YOUR_APACHE_USERNAME</username>
      <filePermissions>664</filePermissions>
-     <directoryPermissions>775</directoryPermissions>    
+     <directoryPermissions>775</directoryPermissions>
    </server>
- </servers>  
+ </servers>
  }}}
  
  === B. Release Preparation ===
@@ -107, +107 @@

        <!-- Cannot define in parent ATM, see COMMONSSITE-26 -->
        <site>
          <id>apache.website</id>
-         <name>Fulcrum Release Candidate Staging Site</name>      
+         <name>Fulcrum Release Candidate Staging Site</name>
          <url>${fulcrum.deployment.protocol}://people.apache.org/www/turbine.apache.org/fulcrum/fulcrum-yaafi-crypto</url>
        </site>
      </distributionManagement>
@@ -124, +124 @@

  
  Check that your poms will not lose content when they are rewritten during the release process.
  
-  * mvn release:prepare -!DdryRun=true 
+  * 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.
  
@@ -136, +136 @@

  
   * we use the "real" version number for the RC, e.g. "1.0.6" instead of "1.0.6-RC1"
   * we use the "real" SVN tag, e.g "FULCRUM_YAAFI_CRYPTO_1_0_6" instead of "FULCRUM_YAAFI_CRYPTO_1_0_6_RC1"
-  * if the RC is accepted the generated artifacts are copied to the M2 repo - so the need to have the "real" version and tag 
+  * if the RC is accepted the generated artifacts are copied to the M2 repo - so the need to have the "real" version and tag
  
  ==== C.1 Stage Artifacts and Site ====
  
@@ -144, +144 @@

  
   1. {{{mvn -Prc release:perform}}}
  
- When the release plugin prompts for the tag name, choose the final name (for example, {{{FULCRUM_YAAFI_CRYPTO_1_0_6}}}). You may
+ When the release plugin prompts for the tag name, choose the final name (for example, {{{FULCRUM_YAAFI_CRYPTO_1_0_6}}}).
+ 
- experience memory problems with newer Maven versions. If that happens, set the environment variable
+ You may experience memory problems with newer Maven versions. If that happens, set the environment variable
  
   {{{export MAVEN_OPTS="-Xmx512m"}}}
  
  ==== C.2 Remove SHA1 and MD5 Fingerprints of PGP Signatures ====
-  
+ 
  During the release process some unwanted fingerprints of all ASCII-armored files are generated, e.g. "fulcrum-yaafi-crypto.jar.asc.md5" and "fulcrum-yaafi-crypto.jar.asc.sha1". It is a good idea to remove them manually for the time being.
  
  ==== C.3 Fix permissions ====
-  
+ 
  For some reason, the site deployed to the staging location will only have group write permissions on the lowest directory level. So it might be necessary to fix the group permissions on you newly created site tree so that others will be able to add new versions later. So like e.g.
  
   {{{chmod -R g+w /www/turbine.apache.org/builds/fulcrum/fulcrum-yaafi-crypto}}}
@@ -196, +197 @@

  
  ==== E.2 Copy Artifacts from Staging ====
  
- The Maven Stage plugin copies the artifacts (from you release candidate) to the M2 sync directory (people.apache.org/repo/m2-ibiblio-rsync-repository). 
+ The Maven Stage plugin copies the artifacts (from you release candidate) to the M2 sync directory (people.apache.org/repo/m2-ibiblio-rsync-repository).
  
  The following example was used to do the copy the artifacts for fulcrum-yaafi-crypto-1.0.6 based on RC4
  
@@ -207, +208 @@

    -DtargetRepositoryId=apache.releases \
    -Dversion=1.0.6
  }}}
-  
+ 
  ==== E.3 Deploy the Site ====
  
- Run {{{mvn site-deploy}}} to deploy the site - please note that you are deploying the site of the next development snapshot.
+ Run {{{mvn site-deploy}}} to deploy the site - please note that you are deploying the site of the next development snapshot. If you prefer
+ to deploy the actual release site, make sure you keep the directory {{{target/checkout}}} and do the deployment from there.
  
  === F. Celebrate ===
  
  ==== F.1 Send an Announcement ====
  
- Send an announcement to the developer and user mailing list. Since you have dutifully updated your {{{changes.xml}}} you can generate the announcement in {{{./target/announcement/}}}
+ Send an announcement to the developer and user mailing list. Since you have dutifully updated your {{{changes.xml}}} you can generate the announcement in {{{./target/announcement/}}}. Like in the case of the site deployment, this works best if you keep the checked-out project
+ after completing the {{{release:perform}}} step.
  
  {{{
  > mvn changes:announcement-generate
  }}}
-  
+ 
  
  = Outdated Fulcrum M2 Migration Guidelines =
  

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@turbine.apache.org
For additional commands, e-mail: dev-help@turbine.apache.org