rocksdb/docs
Pooja Malik 892a156267 Advisor: README and blog, and also tests for DBBenchRunner, DatabaseOptions (#4201)
Summary:
This pull request adds a README file and a blog post for the Advisor tool. It also adds the missing tests for some Optimizer modules. Some comments are added to the classes being tested for improved readability.
Pull Request resolved: https://github.com/facebook/rocksdb/pull/4201

Reviewed By: maysamyabandeh

Differential Revision: D9125311

Pulled By: poojam23

fbshipit-source-id: aefcf2f06eaa05490cc2834ef5aa6e21f0d1dc55
2018-08-01 16:13:09 -07:00
..
_data rocksdb 5.5.1 release post 2017-07-05 16:41:30 -07:00
_docs Fix broken links 2017-07-24 15:12:45 -07:00
_includes Remove all instances of relative_url until GitHub pages problem is fixed. 2016-11-15 07:40:18 -08:00
_layouts A bit of doc restructuring 2016-10-12 20:23:00 -07:00
_posts Advisor: README and blog, and also tests for DBBenchRunner, DatabaseOptions (#4201) 2018-08-01 16:13:09 -07:00
_sass
_top-level Reword support a little bit to more clear and concise 2016-11-21 11:39:13 -08:00
blog Remove all instances of relative_url until GitHub pages problem is fixed. 2016-11-15 07:40:18 -08:00
css Remove all instances of relative_url until GitHub pages problem is fixed. 2016-11-15 07:40:18 -08:00
doc-type-examples A bit of doc restructuring 2016-10-12 20:23:00 -07:00
docs
static blog post for auto-tuned rate limiter 2017-12-18 17:56:50 -08:00
.gitignore
_config.yml CSS issues are arising on the Github Pages side. Temp fix. 2016-11-14 07:08:52 -08:00
CNAME
CONTRIBUTING.md Update product and feature template for Jekyll 3.3 2016-11-07 09:26:20 -08:00
feed.xml single quotes in feed 2016-11-07 16:30:58 -08:00
Gemfile Update product and feature template for Jekyll 3.3 2016-11-07 09:26:20 -08:00
Gemfile.lock Update docs/Gemfile.lock for nokogiri cve (#4116) 2018-07-12 11:57:40 -07:00
index.md
LICENSE-DOCUMENTATION Add documentation license 2017-04-27 18:06:11 -07:00
README.md Update product and feature template for Jekyll 3.3 2016-11-07 09:26:20 -08:00
TEMPLATE-INFORMATION.md A bit of doc restructuring 2016-10-12 20:23:00 -07:00

User Documentation for rocksdb.org

This directory will contain the user and feature documentation for RocksDB. The documentation will be hosted on GitHub pages.

Contributing

See CONTRIBUTING.md for details on how to add or modify content.

Run the Site Locally

The requirements for running a GitHub pages site locally is described in GitHub help. The steps below summarize these steps.

If you have run the site before, you can start with step 1 and then move on to step 5.

  1. Ensure that you are in the /docs directory in your local RocksDB clone (i.e., the same directory where this README.md exists). The below RubyGems commands, etc. must be run from there.

  2. Make sure you have Ruby and RubyGems installed.

    Ruby >= 2.2 is required for the gems. On the latest versions of Mac OS X, Ruby 2.0 is the default. Use brew install ruby (or your preferred upgrade mechanism) to install a newer version of Ruby for your Mac OS X system.

  3. Make sure you have Bundler installed.

    # may require sudo
    gem install bundler
    
  4. Install the project's dependencies

    # run this in the 'docs' directory
    bundle install
    

    If you get an error when installing nokogiri, you may be running into the problem described in this nokogiri issue. You can either brew uninstall xz (and then brew install xz after the bundle is installed) or xcode-select --install (although this may not work if you have already installed command line tools).

  5. Run Jekyll's server.

    • On first runs or for structural changes to the documentation (e.g., new sidebar menu item), do a full build.
    bundle exec jekyll serve
    
    • For content changes only, you can use --incremental for faster builds.
    bundle exec jekyll serve --incremental
    

    We use bundle exec instead of running straight jekyll because bundle exec will always use the version of Jekyll from our Gemfile. Just running jekyll will use the system version and may not necessarily be compatible.

    • To run using an actual IP address, you can use --host=0.0.0.0
    bundle exec jekyll serve --host=0.0.0.0
    

    This will allow you to use the IP address associated with your machine in the URL. That way you could share it with other people.

    e.g., on a Mac, you can your IP address with something like ifconfig | grep "inet " | grep -v 127.0.0.1.

  6. Either of commands in the previous step will serve up the site on your local device at http://127.0.0.1:4000/ or http://localhost:4000.

Updating the Bundle

The site depends on Github Pages and the installed bundle is based on the github-pages gem. Occasionally that gem might get updated with new or changed functionality. If that is the case, you can run:

bundle update

to get the latest packages for the installation.