Versions Compared

Key

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

As bookkeeper is a subproject of zookeeper, we use Apache Bookkeeper uses the Apache cms CMS system also used by zookeeper to generate our website and documentation.

...

Code Block
$ svn co https://svn.apache.org/repos/asf/zookeeperbookkeeper/site/trunk zookeeperbookkeeper-site
$ svn co https://svn.apache.org/repos/infra/websites/cms cms

...

Code Block
$ cms/build/build_site.pl --source-base zookeeperbookkeeper-site/ --target-base output

There are three locations for bookkeeper documentation within the zookeeper-site tree.

...

You can view the generates site by running the python SimpleHTTPServer and navigating to http://localhost:8000/.

Code Block
/tmp/output$ python -m SimpleHTTPServer
Serving HTTP on 0.0.0.0 port 8000 ...
...
...

Making modifications

Modifications to the site doesn't require a JIRA, though modifications to the source tree (i.e. docs/trunk) doesif it is a large modification you should create one. When you make a modification to the bookkeeper site and submit it through subversion, they will not be automatically built. First you need trigger a build. To do this, commit a change to https://svn.apache.org/repos/asf/zookeeper/site/trunk/build_trigger. This triggers a svn trigger which triggers the cms system.

The cms system will put the modifications in staging; http://zookeeperbookeeper.staging.apache.org.See http://www.apache.org/dev/cms.html for details on how

You'll need the CMS bookmarklet to publish the staged site. See the CMS documentation for details.

Generating documentation for release

When making a release, you need to generate the version's documentation and then copy it into zookeeperbookkeeper-site/content/bookkeeper/docs. To do this:

  1. Check out the git release tag for the release.

    Code Block
    bookkeeper$ git checkout release-4.3.0
  2. Copy the documentation directory from the release tag to zookeeperbookkeeper-site/content/bookkeeper/docs.

    Code Block
    $bookkeeper$ cp -r bookkeeper-svn/tags/release-4.1.0/doc/ zookeeperdoc/ ../bookkeeper-site/content/bookkeeper/docs/r4.13.0

    Add to subversion.

  3. Generate the javadoc for the release

    . In bookkeeper-svn/tags/release-4.1.0/ run mvn javadoc:aggregate. This will create bookkeeper-svn/tags/release-4.1.0/

    and copy it to the site.

    Code Block
    bookkeeper$ mvn javadoc:aggregate
    ...
    ...
    bookkeeper$ cp -r target/site/apidocs
    . Copy this to zookeeper
     ../bookkeeper-site/content
    /bookkeeper
    /docs/r4.
    1
    3.0
    and add it
  4. Add the new release docs directory to subversion.
  5. Modify zookeeperbookkeeper-site/content/bookkeeper/docs/r4.13.0/index.textile to point to the javadoc and release notes. See zookeeperbookkeeper-site/content/bookkeeper/docs/r4.0.0/index.textile for an example of how to do this.
  6. Modify

    zookeeper

    bookkeeper-site/templates/

    bookkeeper/sidenav

    skeleton.

    textile

    html and and a link for the release documentation.

    Code Block
    languagediff
                 <li class="dropdown">
                   <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false">Documentation<span class="caret"></span></a>
                   <ul class="dropdown-menu" role="menu">
                     <li><a href="/docs/trunk">Trunk</a></li>
    +                <li><a href="/docs/r4.3.0">Release 4.3.0</a></li>
                     <li><a href="/docs/r4.2.3">Release 4.2.3</a></li>
  7. Add the release to zookeeperbookkeeper-site/content/bookkeeper/releases.textile.
  8. Go through the staging/publish sequence from above. Obviously the version numbers will change for each release.