Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Code Block
cd tags/2.0-M5-RC2/distribution/all
mvn -o clean installPdistribution

Copy the distribution to somewhere and try it

Try all the samples/demos

The war samples are currently to be tested with

  • Tomcat 5.5.20 and Tomcat 6.0.14
  • Jetty 6.1.3
  • Geronimo 2.0.2 Tomcat6 jee5
  • WebSphere 6.1 fix pack 9+

Clean you local repo of SCA modules and compile the source distro and run some samples.

Check for copyrights in the code to ensure that are what you are expecting

Code Block

grep -iR --exclude=LICENSE --exclude=NOTICE Copyright * | awk '{if (!match($0, ".+ASF.+")) {print $0}}'

check all the NOTICE files

Code Block

for i in `find . -name NOTICE`; do echo XXXXXXXXXXXXXXXXXXXXXXXXXXXX; echo $i; cat $i; done > ../tmp

Check for any SNAPSHOTS left in by mistake

Code Block

grep -r --include=*.xml SNAPSHOT *

Code Block

cd tags/2.0-M5-RC2/distribution/all/target
cp apache-tuscany-sca-all-2.0.zip <someplace>
cp apache-tuscany-sca-all-2.0-src.zip <someotherplace>

Try all the samples/demos

The war samples are currently to be tested with

  • Tomcat 5.5.20 and Tomcat 6.0.14
  • Jetty 6.1.3
  • Geronimo 2.0.2 Tomcat6 jee5
  • WebSphere 6.1 fix pack 9+

Clean you local repo of SCA modules and compile the source distro and run some samples. As you will have deleted the maven-tuscany-plugin artifact, you'll need to do a 3 part manual maven build, building in the modules directory, then the maven directory, and finally the samples directory.

Check for copyrights in the code to ensure that are what you are expecting

Code Block

grep -iR --exclude=LICENSE --exclude=NOTICE Copyright * | awk '{if (!match($0, ".+ASF.+")) {print $0}}'

check all the NOTICE files

Code Block

for i in `find . -name NOTICE`; do echo XXXXXXXXXXXXXXXXXXXXXXXXXXXX; echo $i; cat $i; done > ../tmp

Check for any SNAPSHOTS left in by mistake

Code Block

grep -r --include=*.xml SNAPSHOT *

Check the LICENSE file against what is provided in the distributions. There is no automation for this bit.

Check that all jars in the distribution\lib is mentioned on the binary LICENSE

Code Block

for fn in `find . -name "*.jar" -printf "%f\n"`; do if grep -q $fn ../LICENSE; then "-"; else "$fn NOT present"; fi; done;

And check that all jars that are mentioned are present

Code Block

for fn in `awk '/.jar/ {if (match($0,"[a-zA-Z0-9._-]+[.]jar")) {print substr($0, RSTART,RLENGTH) } }' ../LICENSE`; do if ls * | grep -q $fn; then echo "-";else echo ">>> $fn NOT present"; fi; done

Check for junk included by accident

Code Block

  find . -name log -print
  find . -name work -print
  find . -name lck -print
  find . -name activemq-data -print
  find . -name temp -print
  find . -name tmp -print

Once you are happy with the release artifacts you can sign them and make them available from review.

Sign the artifacts

Linux

Code Block

cd tags/1.1-RC3a/distribution/target
for i in *.zip *.gz; do gpg --output $i.asc --detach-sig --armor $i; done
for i in *.zip *.gz; do openssl md5 -hex $i | sed 's/MD5(\([^)]*\))= \([0-9a-f]*\)/\2 *\1/' > $i.md5; done

Windows:

Code Block

for %A in (*.zip) do gpg --output %A.asc --detach-sig --armor %A
for %A in (*.gz) do gpg --output %A.asc --detach-sig --armor %A
for %A in (*.zip) do gpg --print-md md5 %A > %A.md5
for %A in (*.gz) do gpg --print-md md5 %A > %A.md5

The commands above should produce artifacts of an appropriate format, as follows.

md5 should look like

Code Block

  8fb7cb398063ed0dffa414168468fffc *apache-tuscany-sca-1.1-incubating.zip

asc should look like

Code Block

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (Cygwin)

iD8DBQBHnLGGE8fTrnkHPxIRAqPmAJ4tOR6W663FKCXHPi1GlLBWDyZwJgCeMqbb
68DOq0YsU/O7kJsBHuZXhJw=
=elh0
-----END PGP SIGNATURE-----

Put the artifacts up in your home directory on people.apache.org

Code Block

cd tags/1.1-RC3a/distribution/target
pscp *.asc kelvingoodson@people.apache.org:public_html/sca-java/2.0-M5/RC2/
pscp *.md5 kelvingoodson@people.apache.org:public_html/sca-java/2.0-M5/RC2/
pscp *.zip kelvingoodson@people.apache.org:public_html/sca-java/2.0-M5/RC2/
pscp *.gz kelvingoodson@people.apache.org:public_html/sca-java/2.0-M5/RC2/
Code Block

cd tags/1.1-RC3a/distribution/src/main/release
pscp RELEASE_NOTES kelvingoodson@people.apache.org:public_html/sca-java/2.0-M5/RC2/
pscp CHANGES kelvingoodson@people.apache.org:public_html/sca-java/2.0-M5/RC2/

Check permissions on the files

Code Block

chmod 644 *.zip
chmod 644 *.gz
chmod 644 *.txt

Deploy the maven artifacts

Note below that the reference to "me.people" in the "id" part of the -DaltDeploymentRepository argument to the maven deploy plugin is simply an identifier relating to a stanza in your local maven repo's settings.xml file. Note that also if you use ssh authentication by referencing a file containing your private key from the settings.xml file, then be sure to use a file in open ssh format.  People who have followed the apache instructions for creating ssh keys on Windows with putty will probably not have created open ssh format files. You can however convert your .ppk file to the open ssh forrmat by loading it into puttygen and using the conversion menu.

Code Block

cd tags/1.1-RC3a
mvn -N -DaltDeploymentRepository=e.people::default::scp://people.apache.org/home/slaws/public_html/tuscany/1.1-RC3a/maven verify gpg:sign install:install deploy:deploy -Dgpg.passphrase=

cd shades
mvn clean
mvn -DaltDeploymentRepository=me.people::default::scp://people.apache.org/home/slaws/public_html/tuscany/1.1-RC3a/maven verify gpg:sign install:install deploy:deploy -Dgpg.passphrase=

cd modules

mvn clean
mvn -DaltDeploymentRepository=me.people::default::scp://people.apache.org/home/slaws/public_html/tuscany/1.1-RC3a/maven verify gpg:sign install:install deploy:deploy -Dgpg.passphrase=

cd features

mvn clean
mvn -DaltDeploymentRepository=me.people::default::scp://people.apache.org/home/slaws/public_html/tuscany/1.1-RC3a/maven verify gpg:sign install:install deploy:deploy -Dgpg.passphrase=Check the LICENSE file against what is provided in the distributions. There is no automation for this bit.