You are viewing a plain text version of this content. The canonical link for it is here.
Posted to taglibs-dev@jakarta.apache.org by gl...@apache.org on 2002/04/05 20:01:59 UTC
cvs commit: jakarta-taglibs/src/doc addtaglib.xml
glenn 02/04/05 10:01:59
Modified: . common.properties common.xml
src/doc addtaglib.xml
Log:
Changes to the build and release process.
Added support for creating a jar/war MANIFEST.MF.
Added a new target called "release" for the common taglib build.
This is used when doing a release, it creates the zip and tar.gz files.
Added a new section to addtaglib.xml with instructions for the release
manager.
Revision Changes Path
1.10 +10 -3 jakarta-taglibs/common.properties
Index: common.properties
===================================================================
RCS file: /home/cvs/jakarta-taglibs/common.properties,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- common.properties 11 Oct 2001 23:48:04 -0000 1.9
+++ common.properties 5 Apr 2002 18:01:59 -0000 1.10
@@ -31,15 +31,20 @@
#
# TAGLIB DOC KIT
#
-# These properties support the generation of the HTML documentation
-# and TLD for a taglib using a single XML document
+# These properties support the generation of the HTML documentation,
+# jar and war mainifest's, and TLD for a taglib using a single XML document
#
taglib-doc.dir = ${taglibs.basedir}/src/taglib
tld11.xsl = ${taglib-doc.dir}/tld11.xsl
tld12.xsl = ${taglib-doc.dir}/tld12.xsl
taglib-doc.xsl = ${taglib-doc.dir}/taglib-doc.xsl
changes-doc.xsl = ${taglib-doc.dir}/changes-doc.xsl
-
+manifest.xsl = ${taglib-doc.dir}/manifest.xsl
+
+# Override this property from the ant command line when doing a release
+# with the version number of the release, i.e. 1.0B1
+release=UNKNOWN
+
#
# DERIVED PROPERTIES
#
@@ -91,5 +96,7 @@
library-dist.post=default.post
dist.pre=default.pre
dist.post=default.post
+release.pre=default.pre
+release.post=default.post
clean.pre=default.pre
clean.post=default.post
1.25 +31 -4 jakarta-taglibs/common.xml
Index: common.xml
===================================================================
RCS file: /home/cvs/jakarta-taglibs/common.xml,v
retrieving revision 1.24
retrieving revision 1.25
diff -u -r1.24 -r1.25
--- common.xml 23 Feb 2002 19:29:28 -0000 1.24
+++ common.xml 5 Apr 2002 18:01:59 -0000 1.25
@@ -20,6 +20,24 @@
</target>
<!-- =================================================================== -->
+ <!-- Perform an official release -->
+ <!-- =================================================================== -->
+ <target name="release" depends="library-dist,documentation-dist,examples-dist,dist">
+ <antcall target="${release.pre}"/>
+ <copy file="../LICENSE" tofile="${dist.dir}/LICENSE"/>
+ <copy file="../README" tofile="${dist.dir}/README"/>
+ <!-- delete the doc directory, it isn't needed -->
+ <delete dir="${dist.dir}/doc"/>
+ <zip zipfile="${dist.dir}/../jakarta-taglibs-${taglib.name}-${release}.zip"
+ basedir="${dist.dir}" excludes="doc/**"/>
+ <tar tarfile="${dist.dir}/../jakarta-taglibs-${taglib.name}-${release}.tar"
+ basedir="${dist.dir}" excludes="doc/**"/>
+ <gzip zipfile="${dist.dir}/../jakarta-taglibs-${taglib.name}-${release}.tar.gz"
+ src="${dist.dir}/../jakarta-taglibs-${taglib.name}-${release}.tar"/>
+ <antcall target="${release.post}"/>
+ </target>
+
+ <!-- =================================================================== -->
<!-- Create the entire set of distribution files -->
<!-- =================================================================== -->
<target name="dist" depends="library-dist,documentation-dist,examples-dist">
@@ -82,6 +100,13 @@
<available file="xml/${taglib.name}.xml" property="template.present"/>
<!-- See if there is any documentation web app documents -->
<available file="${doc.src}/web" property="documentation.present"/>
+ <!-- Generate a manifest for the jar and war files -->
+ <style in="${xml.src}/${taglib.name}.xml"
+ destdir="${build.dir}/${taglib.name}"
+ out="${build.dir}/${taglib.name}/${taglib.name}.mf"
+ style="${manifest.xsl}">
+ <param name="release" expression="${release}"/>
+ </style>
<antcall target="${prepare.post}"/>
</target>
@@ -227,7 +252,8 @@
<!-- =================================================================== -->
<target name="documentation-dist" depends="documentation">
<antcall target="${documentation-dist.pre}"/>
- <jar jarfile="${dist.doc}" basedir="${build.doc}" excludes="intro.html"/>
+ <jar jarfile="${dist.doc}" basedir="${build.doc}" excludes="intro.html"
+ manifest="${build.dir}/${taglib.name}/${taglib.name}.mf" />
<mkdir dir="${taglibs.doc}"/>
<copy todir="${taglibs.doc}">
<fileset dir="${build.doc}">
@@ -242,7 +268,8 @@
<!-- =================================================================== -->
<target name="examples-dist" depends="examples">
<antcall target="${examples-dist.pre}"/>
- <jar jarfile="${dist.examples}" basedir="${build.examples}"/>
+ <jar jarfile="${dist.examples}" basedir="${build.examples}"
+ manifest="${build.dir}/${taglib.name}/${taglib.name}.mf" />
<antcall target="${examples-dist.post}"/>
</target>
@@ -252,8 +279,8 @@
<target name="library-dist" depends="library">
<antcall target="${library-dist.pre}"/>
<copy file="${examples.tld}" toFile="${library.tld}"/>
- <jar jarfile="${dist.library}/${taglib.name}.jar"
- basedir="${build.library}"/>
+ <jar jarfile="${dist.library}/${taglib.name}.jar" basedir="${build.library}"
+ manifest="${build.dir}/${taglib.name}/${taglib.name}.mf" />
<copy file="${examples.tld}" toFile="${dist.tld}"/>
<antcall target="${library-dist.post}"/>
</target>
1.12 +43 -0 jakarta-taglibs/src/doc/addtaglib.xml
Index: addtaglib.xml
===================================================================
RCS file: /home/cvs/jakarta-taglibs/src/doc/addtaglib.xml,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -r1.11 -r1.12
--- addtaglib.xml 22 Jul 2001 15:46:11 -0000 1.11
+++ addtaglib.xml 5 Apr 2002 18:01:59 -0000 1.12
@@ -19,6 +19,7 @@
<a href="#Milestone">Publishing a milestone release</a><br/>
<a href="#Beta">Publishing a beta release</a><br/>
<a href="#Release">Publishing an official release</a><br/>
+<a href="#manager">Release Manager Actions</a><br/>
</section>
<section name="Approval from JAKARTA-TAGLIBS committers" href="Approval">
@@ -478,5 +479,47 @@
<p>The taglib release will be available for download at:
http://jakarta.apache.org/builds/jakarta-taglibs/releases/{taglib-name}/{release-name}.zip</p>
</section>
+
+<section name="Release Manager Actions" href="manager">
+<p>Prerequisites:
+<ul>
+<li>The jakarta-taglibs committer performing a release must have
+a shell account on the apache web server.</li>
+<li>The jakarta-taglibs committer performing a release must have
+a PGP key for signing the release. See
+<a href="http://jakarta.apache.org/builds/jakarta-taglibs/releases/KEYS">
+http://jakarta.apache.org/builds/jakarta-taglibs/releases/KEYS</a></li>
+</ul>
+</p>
+
+<p>Building a release:
+<ul>
+<li>This works for any taglib that uses the common taglib ant build. If the
+taglib does not use this, you are on your own.</li>
+<li>Checkout a clean copy of jakarta-taglibs from CVS:
+ <code>cvs co jakarta-taglibs</code>.</li>
+<li>cd to the directory for the taglib being released:
+ <code>cd jakarta-taglibs/{taglib-name}</code>.</li>
+<li>Use ant to build the release distribution passing in the release version:
+ <code>ant -Drelease={release-version} -Ddist.dir=../dist/jakarta-taglibs release</code>.</li>
+<li>Sign the tar.gz and zip files for the taglib release found in the dist directory.</li>
+</ul>
+</p>
+
+<p>Publishing the release to http://jakarta.apache.org/:
+<ul>
+<li>Publish the release documentation found in the dist dir to the jakarta-taglibs
+webiste location identified for the release. Make sure the group write bit is set
+for all directories and files.</li>
+<li>Publish the release distributions and .asc files to the jakarta-taglibs
+release directory on the website. Make sure the group write bit is set
+for all directories and files.</li>
+<li>Announce the release to announcements@jakarta.apache.org, taglibs-user@jakarta.apache.org,
+and taglibs-dev@jakarta.apache.org.</li>
+</ul>
+</p>
+
+</section>
+
</body>
</document>
--
To unsubscribe, e-mail: <ma...@jakarta.apache.org>
For additional commands, e-mail: <ma...@jakarta.apache.org>