Ruby is required to use Bundler so first make sure you have Ruby on your machine. If you are using an OS packaged version of Ruby, you will have to also install the ruby-dev (Ubuntu) or ruby-devel (Fedora) package as well. Depending on your OS, you may also need other packages, such as ruby-full, make, gcc, nodejs, build-essentials, or patch.
With Ruby installed on your machine, you can install Bundler using the command below:
gem install bundler
git clone https://github.com/apache/accumulo-website cd accumulo-website bundle install
Run the following command to run the website locally using Jekyll's embedded webserver:
cd accumulo-website bundle exec jekyll serve -w
The website can viewed at http://0.0.0.0:4000/
You can just build static HTML files which are viewable in
cd accumulo-website bundle exec jekyll build
Custom liquid tags are used to make linking to javadocs, properties, and documents easier. The source for these tags is at _plugins/links.rb.
|jlink||Creates Javadoc link||Link text will be class name by default. Use |
|jurl||Creates Javadoc URL||None|
|plink||Creates Property link||Assumes server property by default. Use |
|purl||Creates Property URL||Default is server property. Use |
|dlink||Creates Documentation link||None|
|durl||Creates Documentation URL||None|
|ghi||GitHub issue link||None|
|ghc||GitHub code link||Branch defaults to |
|jira||Jira issue link||None|
Building Accumulo generates
client-properties.md. To regenerate these, do the following.
cd <accumulo source dir> mvn package -DskipTests cp ./core/target/generated-docs/server-properties.md <accumulo website source>/_docs-2/configuration cp ./core/target/generated-docs/client-properties.md <accumulo website source>/_docs-2/configuration
For Apache Accumulo committers, the
asf-site branch needs to be updated with the generated HTML. Changes to this branch are automagically mirrored to the website.
This can be done easily by invoking the post-commit hook (either by hand, or automatically via configuring Git to invoke the post-commit hook). The commands below are a guide for committers who wish to publish the web site.
# ensure local asf-site branch is up to date git checkout asf-site git pull upstream asf-site # switch to master branch, update it, and build new site git checkout master git pull upstream master ./_devtools/git-hooks/post-commit # switch to asf-site, look at the commit created by post-commit script, and push it if ok git checkout asf-site git log -p git push upstream asf-site
In the commands above
upstream is :
$ git remote -v | grep upstream upstream https://gitbox.apache.org/repos/asf/accumulo-website/ (fetch) upstream https://gitbox.apache.org/repos/asf/accumulo-website/ (push)
To automatically run this post-commit hook in your local repository, copy the given file into your
cp ./_devtools/git-hooks/post-commit .git/hooks/