rethinkdb / www

The RethinkDB website.
https://rethinkdb.com
Apache License 2.0
7 stars 11 forks source link

RethinkDB website

Building the website

Note: Before you can build the website, make sure your system is ready; read the "Getting your system ready to build the website" section.

We use Jekyll to build the website. To setup, build, and deploy the website, you will use a series of rake tasks.

The website relies on an external repository (rethinkdb/docs), which is managed by the rake tasks.

First-time setup

Start by cloning this repository:

git clone git@github.com:rethinkdb/www.git

Before you can build the site, you need to install required dependencies with Bundler, and initialize external repositories:

rake init

Build and serve the website

To build and serve the site:

rake

Other operations

Getting your system ready to build the website

This guide steps through how to build the website, assuming you have no tools installed. It describes:

Remember: if you update your path at any point in this guide, start a new Bash sesion or run (on OS X):

source ~/.bash_profile

Set up Homebrew

ruby <(curl -fsS https://raw.githubusercontent.com/Homebrew/install/master/install)

Append this to your path to use binaries installed by Homebrew:

export PATH="/usr/local/bin:$PATH"

Update Homebrew formulae:

brew update

Install nvm to manage Node.js version (using v0.39.7 in this case):

curl https://raw.githubusercontent.com/creationix/nvm/v0.39.7/install.sh | bash

Tell nvm to install the latest LTS version of Node.js (in this case, 18)

nvm install 18

Set the default version of Node.js:

nvm alias default 18

Install rbenv to manage Ruby versions:

brew install rbenv ruby-build v8

Add this to your path: Uses Homebrew's directories rather than ~/.rbenv:

export RBENV_ROOT=~/.rbenv
export RUBY_CONFIGURE_OPTS="--with-openssl-dir=$(brew --prefix openssl@1.1)"

Add this to your path: enable shims and autocompletions for rbenv:

if which rbenv > /dev/null; then eval "$(rbenv init -)"; fi

Install the latest version of Ruby 3.2.x (in this case, 3.2.2)

rbenv install -s 3.2.2

Set the Ruby version to be the global default

rbenv global 3.2.2
rbenv rehash

Update to the latest verion of Rubygems:

gem update --system

Install Bundler:

gem install bundler

Configure Bundler for faster, paralleized gem installation. First, find out the number of cores on your system (on OS X):

sysctl -n hw.ncpu

Then, configure Bundler to use n-1 cores, where n is the number of cores on your system (in this case, 4 cores):

bundle config --global jobs 3

Now, ensure you're in the root directory of the git repo and run:

rake init

You can test that everything was successful by trying to build the site:

rake serve

Deploying

We are automatically deploying to Netlify. This means, whenever a pull request is merged, after the successulf build, the new version of the site will be available.

Note: A preview site will be generated for every pull request.