Versions Compared

Key

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

The ZooKeeper website is built using Jekyll formatted in Markdown sources. The production website is updated using gitpubsub via the zookeeper.git/asf-site branch. Basic workflow is: modify the site source on the "website" branch and commit it once you are happy with the results, then update the "asf-site" branch with the generated content. Once asf-site is pushed the updates will be reflected on the ZooKeeper production website.

The content source to generate the ZooKeeper website can be found here: https://git-wip-usgitbox.apache.org/repos/asf?p=zookeeper.git;a=shortlog;h=refs/heads/website

The live website is whatever is committed to asf-site, here: https://git-wip-usgitbox.apache.org/repos/asf?p=zookeeper.git;a=shortlog;h=refs/heads/asf-site . Any changed committed to this branch are immediately replicated to the live production website at http://zookeeper.apache.org/

...

The ZooKeeper website build uses a number of tools.

You need to have Ruby and Python installed. Also install the following libraries:

$ sudo gem install jekyll jekyll-redirect-from pygments.rb
$ sudo pip install Pygments

Apache Maven and a maven plugin generating HTML from MarkDown sources.

Besides maven you don't have to install anything else.(Note: If you are on a system with both Ruby 1.9 and Ruby 2.0 you may need to replace gem with gem2.0)

Steps to update the site:

1. git clone -b website https://

...

gitbox.apache.org/repos/asf/zookeeper.git

2. update the appropriate pages, typically a markdown file e.g. credits.md, etc...

...

jekyll build

3. mvn clean install

4. cp -RP _released_docs

...

target/html/doc

...

 These are the static release docs,

...

not generated

...

in this process.

At this point verify that the generated files render properly

...

(open target/html/index.html in

...

a browser). If you are happy with the results move on to the next step

...

, otherwise

...

go to step 2 above.

5. git status should show modified files for the markdown that you changed

6. git add <the changed files>

7. git commit -

...

m "<appropriate commit message>"

8. git push origin website

...

The source for the site is committed, now we need to push the generated files to the live site.

9.

...

git checkout asf-site

10. rm -fr content

...

11. mv target/html content

12. git add content

...

Verify that content/index.html and other generated files are proper, e.g. open them in a browser

...

13. git status

...

 should show modified files for the markdown that you changed

14. git commit -m "<appropriate commit message>"

15. git push origin asf-site