We use Github pages and Jekyll to power the documentation website for SReachTools.
- When cloning the repository, make sure to do
git submodule update --init
to download the website atsreachtools.github.io
into the_site
folder. - Run docs2md to update the documentation folder.
- By default, the website is assumed to be a child (titled
SReachTools-website
) of the parent folder ofsrtinit --rootpath
. - For example, if
srtinit --rootpath
returns/myworkspace/SReachTools/
, then the website folder must be at/myworkspace/SReachTools-website/
. - Specify the path to the website folder as an argument, if this not the case.
- By default, the website is assumed to be a child (titled
- Change directory into the
_site
folder, which now has the updated website. - Push the changes to the repository.
- Install jekyll
sudo apt-get install ruby ruby-dev build-essential
- Update paths
echo '# Install Ruby Gems to ~/gems' >> ~/.bashrc echo 'export GEM_HOME=$HOME/gems' >> ~/.bashrc echo 'export PATH=$HOME/gems/bin:$PATH' >> ~/.bashrc source ~/.bashrc
- Install Jekyll and bundler
gem install jekyll bundler
- Getting Updates
In case, you receive a cryptic error of the form:
bundle update bundle init bundle install
Traceback (most recent call last):
2: from /home/abyvinod/gems/bin/bundler:23:in `<main>'
1: from /usr/lib/ruby/2.5.0/rubygems.rb:308:in `activate_bin_path'
/usr/lib/ruby/2.5.0/rubygems.rb:289:in `find_spec_for_exe': can't find gem bundler (>= 0.a) with executable bundler (Gem::GemNotFoundException)
it is because of Gemfile.lock. See https://stackoverflow.com/a/54038218 for
details. The resolution is by doing the following command:
gem install bundler -v 1.16.2
- Pushing the changes on to github will deploy the website.
Use git tag -a <tag name> -f
to update a tag