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:
Check out the git release tag for the release.
Code Block bookkeeper$ git checkout release-4.3.0
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.
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.
. Copy this to zookeeperCode Block bookkeeper$ mvn javadoc:aggregate ... ... bookkeeper$ cp -r target/site/apidocs
/bookkeeper../bookkeeper-site/content
1/docs/r4.
and add it3.0
- Add the new release docs directory to subversion.
- 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.
Modify
zookeeperbookkeeper-site/templates/
bookkeeper/sidenavskeleton.
textilehtml and and a link for the release documentation.
Code Block language diff <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>
- Add the release to zookeeperbookkeeper-site/content/bookkeeper/releases.textile.
- Go through the staging/publish sequence from above. Obviously the version numbers will change for each release.