cocoon-cvs mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From cziege...@apache.org
Subject cvs commit: cocoon-site/src/documentation/content/xdocs site.xml
Date Tue, 08 Jun 2004 08:20:43 GMT
cziegeler    2004/06/08 01:20:43

  Modified:    src/documentation/content/xdocs site.xml
  Added:       src/documentation/content/xdocs/devinfo index.xml
                        releasing.xml book.xml
  Log:
  New developer info section with release howto (from wiki)
  
  Revision  Changes    Path
  1.1                  cocoon-site/src/documentation/content/xdocs/devinfo/index.xml
  
  Index: index.xml
  ===================================================================
  <?xml version="1.0" encoding="UTF-8"?>
  <!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.2//EN" "document-v12.dtd">
  <document>
    <header>
      <title>Cocoon Developer Info</title>
    </header>
    <body>
      <section>
        <title>Overview</title>
        <p>
          This page lists resources and information useful to Apache Cocoon
          committers. 
        </p>
        <ul>
          <li><link href="releasing.html">Howto Release Cocoon</link></li>
        </ul>
      </section>
      <section>
        <title>Apache Developer Info</title>
        <p>
          Here are some interesting resources and information useful to all
          Apache committers.  More information can be obtained from the
          infrastructure@apache.org mailing list.
        </p>
        <ul>
          <li><link href="http://www.apache.org/dev">Apache Developer Info</link></li>
          <li><link href="http://www.apache.org/dev/contributors.html">Contributors
Tech Guide</link></li>
          <li><link href="http://www.apache.org/dev/committers.html">Committers
FAQ</link></li>
          <li><link href="http://www.apache.org/dev/pmc.html">PMC FAQ</link></li>
          <li><link href="http://www.apache.org/dev/version-control.html">Version
Control FAQ</link></li>
          <li><link href="http://www.apache.org/dev/machines.html">Machines List</link></li>
        </ul>
      </section>
    </body>
  </document>
  
  
  
  1.1                  cocoon-site/src/documentation/content/xdocs/devinfo/releasing.xml
  
  Index: releasing.xml
  ===================================================================
  <?xml version="1.0" encoding="UTF-8"?>
  <!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.2//EN" "document-v12.dtd">
  <document>
    <header>
      <title>Howto Release Cocoon</title>
    </header>
    <body>
      <section>
        <title>Overview</title>
        <p>
          This info is for Cocoon committers who need to distribute a new release of Cocoon.
        </p>
      </section>
      <section>
        <title>A) Naming Conventions</title>
        <p>
          The name of each downloadable archive should be named after the following
          regular expression:
        </p>
        <source>
          PROJECT(-SUBPROJECT)?-VERSION(-VARIANT)?-(src|bin).(zip|tar.gz) 
        </source>
        <p>
          Where:
        </p>
        <ul>
          <li>PROJECT is the name of the top-level project,</li>
          <li>SUBPROJECT is the name of the eventual subproject (optional)</li>
          <li>VERSION is a version string (without - dashes)</li>
          <li>VARIANT identifies the "type of distribution" (ex. win32, jdk12, linux,
jdk14...) (optional)</li>
        </ul>
        <p>
          So, in Cocoon's case, all our archives shall be called something like:
          <em>cocoon-2.0.4-jdk14-bin.tar.gz</em> or <em>cocoon-2.1m1-src.zip</em>
          and so on...
        </p>
        <p>
          If one day we ever released some subproject code (for example Lenya), the
          name should be along the lines of <em>cocoon-lenya-1.0-bin.tar.gz</em>.
          You get the point.
        </p>
      </section>
      <section>
        <title>B) The Release Process</title>
        <p>
          This is a step-by-step procedure.
        </p>
        <section>
          <title>Code freeze</title>
          <p>
            Prior to the release day, a code freeze should be announced approx. 7 days in
advance.
          </p>
        </section>
        <section>
          <title>Announce the release process</title>
          <p>
            Send a simple mail to the dev list. This is in order to ensure that 
            noone will check in during the release process. If someone checks in 
            during the building, testing and tagging, the release process has to 
            be started at the beginning again.
          </p>
        </section>
        <section><title>Get the version</title>
          <p>
            Check-out a fresh copy from the cvs on a unix platform (this is important, 
            do not use windows!)
          </p>
        </section>
        <section>
          <title>Set correct version information</title>
          <p>
            Change the version information in <em>src/java/org/apache/cocoon/cocoon.properties</em>
            by removing <em>-dev</em> and eventually add new release information
like m1, b1 etc.
            If this release is a final version, change the <em>released.version</em>
info 
            to the new version as well.
          </p>
          <p>
            And also change the version accordingly in <em>forrest.properties</em>.

            But don't check-in this yet!
          </p>
        </section>
        <section>
          <title>Exclude unstable blocks from the default build</title>
          <p>
            Edit the blocks.properties file and exclude all unstable blocks.
            Since it's a release they should not get compiled by default.
          </p>
        </section>
        <section>
          <title>Build the distrubtion</title>
          <p>
            Make sure that you make a clean build and that you are really not using windows:
          </p>
          <source>
  # ./build.sh clean-dist
  # ./build.sh dist
          </source>
        </section>
        <section>
          <title>Test the distribution</title>
          <p>
            Unarchive the build distribution and test it. These tests should include
            different platforms (windows and unix) and different JDKs (1.3 and 1.4).
            Testing includes building Cocoon from the release version and trying out the samples.
            Please also run 'build test'.
          </p>
        </section>
        <section>
          <title>Decide what to do next</title>
          <p>
            If any problem occurs during building and/or testing, you have to decide whether
            this is a blocker and has to be fixed or if this problem can be ignored.
            If it is a blocker, the problem must be fixed and after that you have to restart
            at the beginning. This decision is a from case to case decision and it's
            the release manager who decides if it's a blocker or not :)
          </p>
        </section>
        <section>
          <title>Continue with the release</title>
          <p>
            Now check-in the changed version from the first step and tag the release in cvs.
          </p>
        </section>
        <section>
          <title>Start next version</title>
          <p>
            Check the version in <em>src/java/org/apache/cocoon/cocoon.properties</em>
by increasing
            the version information and adding "-dev" at the end, for example m3-dev.
            Change status.xml by adding the release with proper version and date and start
a
            new release section with the placeholders. Add a dummy action here.
            And also change the version in forrest.properties
          </p>
        </section>
        <section>
          <title>Sign the release</title>
          <p>
            Therefore you have to put your public key in the KEYS file before! 
            In addition create a md5 file for the distribution
          </p>
        </section>
        <section>
          <title>Bugtracking</title>
          <p>
            Enter the new version into bugzilla, so users can file entries against it.
          </p>
        </section>
        <section>
          <title>Upload the release</title>
          <p>
            Upload the release and the signatures to www.apache.org and put it
            under /www/www.apache.org/dist/cocoon into the correct directories (sources
            and binaries). Make sure that you set the permissions correctly.
            It's important to give the group write access!
            Add/change the links from the cocoon directory to the new version in
            the sources/binaries directory. Update the README.html and the HEADER.html.
            For more information see below.
          </p>
        </section>
        <section>
          <title>Announcement</title>
          <p>
            Announce to the dev list that the release process is finished and end a possible

            code freeze.
          </p>
        </section>
        <section>
          <title>Take a break...</title>
          <p>
            Now wait for 24h so the mirror sites can pick up the new version.
            You can have a look at <link href="http://www.apache.org/mirrors/">mirror
info page</link> 
            to see the status of the mirrors.
          </p>
        </section>
        <section>
          <title>Update mirror page</title>
          <p>
            Change the mirror.html in the cocoon-site module as well and update this
            single file on the website. For more information see below.
          </p>
        </section>
        <section>
          <title>Create the announcement mail</title>
          <p>
            Currently this is hand-typed (or copied) - we have to reinstall the 
            announcement target. Send this email to wherever appropriate.
            Currently it goes to (dev at cocoon.apache.org, users at cocoon.apache.org,
            general at xml.apache.org and announcements at xml.apache.org)
          </p>
        </section>
        <section>
          <title>Register final version</title>
          <p>
            Enter a final version (no betas or milestones) into Freshmeat.
          </p>
        </section>
        <section>
          <title>Update the site docs</title>
          <p>
            Update the site docs as described <link href="http://wiki.cocoondev.org/Wiki.jsp?page=CocoonWebsiteUpdate">here</link>.
          </p>
        </section>
        <section><title>Enter new version</title>
          <p>
            Update the latest version on the <link href="http://wiki.cocoondev.org/Wiki.jsp?page=LatestRelease">Wiki</link>.
          </p>
        </section>
      </section>
      <section>
        <title>C) Directories</title>
        <p>
          The only (ONLY) place where distributions shall reside is inside the
          /www/www.apache.org/dist/cocoon on daedalus.apache.org.
        </p>
        <p>
          This directory contains three subdirectories:
        </p>
        <ul>
          <li>BINARIES: this is where the binary distribution tar/zipballs are located.</li>
          <li>SOURCES: this is where the source distribution tar/zipballs are located.</li>
          <li>OLD: all old and deprecated distributions.</li>
        </ul>
        <p>
          In the future, when other subprojects of Cocoon will start putting out their
          own releases, new directories will be created under the top level directory,
          with the same structure. For example the final directory will look something
          like:
        </p>
        <source>
  www/www.apache.org/dist/cocoon/
  |
  +- BINARIES/
  |  |
  |  +- cocoon-2.0.3-bin.tar.gz
  |  |
  |  \- cocoon-2.0.4-bin.tar.gz
  |
  +- SOURCES/
  |  |
  |  +- cocoon-2.0.3-src.tar.gz
  |  |
  |  +- cocoon-2.0.4-src.tar.gz
  |  |
  |  +- cocoon-2.1m1-src.tar.gz
  |  |
  |  \- cocoon-2.1m2-src.tar.gz
  |
  +- OLD/
  |  | 
  |  +- cocoon-1.8.1.tar.gz
  |  |
  |  \- cocoon-1.8.2.tar.gz
  |
  +- cocoon-latest-bin.tar.gz -> BINARIES/cocoon-2.0.4-bin.tar.gz
  |
  +- cocoon-latest-src.tar.gz -> SOURCES/cocoon-2.0.4-src.tar.gz
  |
  +- lenya/
  |  |
  |  +- BINARIES/
  |  |  |
  |  |  \- cocoon-lenya-1.0-bin.tar.gz
  |  |
  |  +- SOURCES/
  |  |  |
  |  |  \- cocoon-lenya-1.0-src.tar.gz
  |  |
  |  +- cocoon-lenya-latest-bin.tar.gz -> BINARIES/cocoon-lenya-1.0-bin.tar.gz
  |  |
  |  \- cocoon-lenya-latest-src.tar.gz -> SOURCES/cocoon-lenya-1.0-src.tar.gz
  | 
  \- license.txt
        </source>
      </section>
      <section>
        <title>Publishing and linking</title>
        <p>
  Once the distribution ball is rolled following the naming convention and
  copied in the appropriate directory as outlined above, make sure that the
  following links are present (and only those links) in the root directory for
  the project/subproject:
        </p>
        <p>
  - A link to the latest released stable version for each tar/zipball:
    for example, if the latest release is 2.0.4, and this release includes
    3 different balls, 2 for binaries and 1 for sources, the following
    links must be done:
        </p>
        <source>
    # cd /www/www.apache.org/dist/cocoon
    # ln -s BINARIES/cocoon-2.0.4-vm14-bin.tar.gz cocoon-2.0.4-vm14-bin.tar.gz
    # ln -s BINARIES/cocoon-2.0.4-vm14-bin.zip cocoon-2.0.4-vm14-bin.zip
    # ln -s BINARIES/cocoon-2.0.4-bin.tar.gz cocoon-2.0.4-bin.tar.gz
    # ln -s BINARIES/cocoon-2.0.4-bin.zip cocoon-2.0.4-bin.zip
    # ln -s SOURCES/cocoon-2.0.4-src.tar.gz cocoon-2.0.4-src.tar.gz
    # ln -s SOURCES/cocoon-2.0.4-src.zip cocoon-2.0.4-src.zip
        </source>
        <p>
  - A link to the latest milestone version for each tar/zipball (if present):
    for example, if 2.1m1 publishes only one ball, the source one:
        </p>
        <source>
    # cd /www/www.apache.org/dist/cocoon
    # ln -s SOURCES/cocoon-2.1-src.tar.gz cocoon-2.1-src.tar.gz
    # ln -s SOURCES/cocoon-2.1-src.zip cocoon-2.1-src.zip
        </source>
        <p>
  - A link to the LATEST STABLE DOWNLOADABLE with the "version" string
    replaced by the "latest" keyword. If the above example of 2.0.4 is still
    valid:
        </p>
        <source>
    # cd /www/www.apache.org/dist/cocoon
    # ln -s BINARIES/ccoon-2.0.4-vm14-bin.tar.gz cocoon-latest-vm14-bin.tar.gz
    # ln -s BINARIES/cocoon-2.0.4-vm14-bin.zip cocoon-latest-vm14-bin.zip
    # ln -s BINARIES/cocoon-2.0.4-bin.tar.gz cocoon-latest-bin.tar.gz
    # ln -s BINARIES/cocoon-2.0.4-bin.zip cocoon-latest-bin.zip
    # ln -s SOURCES/cocoon-2.0.4-src.tar.gz cocoon-latest-src.tar.gz
    # ln -s SOURCES/cocoon-2.0.4-src.zip cocoon-latest-src.zip
        </source>
        <p>
  Make sure to change the "latest version" strings and URLs in the README.html
  and HEADER.html files in the /www/www.apache.org/dist/cocoon/ directory and
  the mirror.html file in the /www/cocoon.apache.org/ directory.
        </p>
        <p>
  Note that for release final downloads you shouldn't edit the mirrors.html
  file, as the release should always be linked to cocoon-latest-.....
        </p>
      </section>
      <section>
        <title>D) Mirroring and announcing</title>
        <p>
  Once the release is published wait at least 24 hours before announcing it to
  the mailing lists, so that mirror sites will have the opportunity to pick
  the changes up and you won't get bugged by people unable to download the
  distributions.
        </p>
        <p>
  Remember that the locations to mention in any announcements when downloads
  are involved is <em>http://cocoon.apache.org/mirror.cgi</em>.
  So that people will actually __use__ the mirrors and not peg the Foundation's
  bandwidth (which is quite expensive).
        </p>
      </section>
    </body>
  </document>
  
  
  
  1.1                  cocoon-site/src/documentation/content/xdocs/devinfo/book.xml
  
  Index: book.xml
  ===================================================================
  <?xml version="1.0"?>
  <!DOCTYPE book PUBLIC "-//APACHE//DTD Cocoon Documentation Book V1.0//EN" "book-cocoon-v10.dtd">
  
  <book software="Apache Cocoon"
        title="Apache Cocoon Developer Information"
        copyright="@year@ The Apache Software Foundation">
  
    <menu label="Navigation">
      <menu-item label="Main" href="../index.html"/>
    </menu>
  
    <menu label="Developer Infos">
      <menu-item label="Overview" href="index.html"/>
      <menu-item label="Releasing" href="releasing.html"/>
    </menu>
  
  </book>
  
  
  
  1.20      +4 -0      cocoon-site/src/documentation/content/xdocs/site.xml
  
  Index: site.xml
  ===================================================================
  RCS file: /home/cvs/cocoon-site/src/documentation/content/xdocs/site.xml,v
  retrieving revision 1.19
  retrieving revision 1.20
  diff -u -r1.19 -r1.20
  --- site.xml	8 Jun 2004 07:23:47 -0000	1.19
  +++ site.xml	8 Jun 2004 08:20:43 -0000	1.20
  @@ -50,6 +50,10 @@
       <hosting label="Cocoon Hosting" href="hosting.html"/>
     </menu>
   
  +  <dev-infos label="Developer Infos" href="devinfo/">
  +    <overview label="Developer Infos" href="index.html"/>
  +  </dev-infos>
  +
     <external-refs>
       <xml.apache.org href="http://xml.apache.org/">
         <forrest href="forrest/">
  
  
  

Mime
View raw message