Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,6 @@ _site
.sass-cache
.jekyll-metadata
.DS_Store
Gemfile.lock
.idea
.jekyll-cache
.ruby-version
26 changes: 24 additions & 2 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,28 @@ If you want to make minor changes to an existing file, you can use this approach

If you're adding a new page or making major changes to the documentation, such as adding new images, sections, or styling, we recommend that you work in a local copy of the repository and test the rendered HTML before submitting a PR.

#### Setting up a Docker-based copy of the repository

If you have Docker installed, you can use Docker to test any major changes to the documentation website locally by using the following steps:

1. [Fork this repository](https://docs.github.com/en/get-started/quickstart/fork-a-repo) and clone your fork in the directory of your choice.

1. Navigate to your cloned repository.

1. Build the documentation website Jekyll image by using the following command:

```
docker build -t documentation-website .
```

1. Start Jekyll from inside the image using the following command:

When building the site for the first time, it'll take some time for the site to build. When your Jekyll instance is ready, you will see `Server running... press ctrl-c to stop`.

> __Note__: If you would like to run a hosted version of the documentation site you will need to do the following:
> 1. Change the `url` setting in `_config_docker.yml` to your URL: `url: "http://10.0.0.5:4000"`
> 1. Change the `HOST` and `JEKYLL_ENV` variables: `docker run -p 4000:4000 -e JEKYLL_ENV=production -e HOST=0.0.0.0 -v $(pwd):/app documentation-website

#### Setting up your local copy of the repository

Follow these steps to set up your local copy of the repository:
Expand All @@ -78,11 +100,11 @@ Follow these steps to set up your local copy of the repository:

1. Navigate to your cloned repository.

1. Install [Ruby](https://www.ruby-lang.org/en/) if you don't already have it. We recommend [RVM](https://rvm.io/), but you can use any method you prefer:
1. Install [Ruby](https://www.ruby-lang.org/en/) version 3.2.4 if you don't already have it. We recommend [RVM](https://rvm.io/), but you can use any method you prefer:

```
curl -sSL https://get.rvm.io | bash -s stable
rvm install 3.2
rvm install 3.2.4
ruby -v
```

Expand Down
17 changes: 17 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
FROM ruby:3.2.4

WORKDIR /app

COPY Gemfile Gemfile.lock ./

RUN bundle install

# Expose the default Jekyll port
EXPOSE 4000

# Enable the link checker
ENV JEKYLL_LINK_CHECKER="internal"
ENV JEKYLL_ENV=development
ENV HOST=127.0.0.1

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we move the host and jekyll_env to an env variable? This way we can allow the users to more easily set variables.

ENV JEKYLL_ENV=development
ENV HOST=127.0.0.1

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Probably! I haven't actually used ENV much in the past, so it felt "new" to me... ! Please make the change!

CMD ["bundle", "exec", "jekyll", "serve", "--host", "$HOST", "--port", "4000", "--incremental", "--livereload", "--trace", "--config", "_config.yml,_config_docker.yml"]
2 changes: 2 additions & 0 deletions Gemfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
source "http://rubygems.org"

ruby "3.2.4"

# Hello! This is where you manage which Jekyll version is used to run.
# When you want to use a different version, change it below, save the
# file and run `bundle install`. Run Jekyll with `bundle exec`, like so:
Expand Down
197 changes: 197 additions & 0 deletions Gemfile.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1,197 @@
GEM
remote: http://rubygems.org/
specs:
addressable (2.8.6)
public_suffix (>= 2.0.2, < 6.0)
bigdecimal (3.1.8)
colorator (1.1.0)
concurrent-ruby (1.3.1)
em-websocket (0.5.3)
eventmachine (>= 0.12.9)
http_parser.rb (~> 0)
ethon (0.16.0)
ffi (>= 1.15.0)
eventmachine (1.2.7)
ffi (1.16.3)
forwardable-extended (2.6.0)
google-protobuf (4.27.0)
bigdecimal
rake (>= 13)
google-protobuf (4.27.0-aarch64-linux)
bigdecimal
rake (>= 13)
google-protobuf (4.27.0-arm64-darwin)
bigdecimal
rake (>= 13)
google-protobuf (4.27.0-x86-linux)
bigdecimal
rake (>= 13)
google-protobuf (4.27.0-x86_64-darwin)
bigdecimal
rake (>= 13)
google-protobuf (4.27.0-x86_64-linux)
bigdecimal
rake (>= 13)
http_parser.rb (0.8.0)
i18n (1.14.5)
concurrent-ruby (~> 1.0)
jekyll (4.3.3)
addressable (~> 2.4)
colorator (~> 1.0)
em-websocket (~> 0.5)
i18n (~> 1.0)
jekyll-sass-converter (>= 2.0, < 4.0)
jekyll-watch (~> 2.0)
kramdown (~> 2.3, >= 2.3.1)
kramdown-parser-gfm (~> 1.0)
liquid (~> 4.0)
mercenary (>= 0.3.6, < 0.5)
pathutil (~> 0.9)
rouge (>= 3.0, < 5.0)
safe_yaml (~> 1.0)
terminal-table (>= 1.8, < 4.0)
webrick (~> 1.7)
jekyll-last-modified-at (1.3.0)
jekyll (>= 3.7, < 5.0)
posix-spawn (~> 0.3.9)
jekyll-redirect-from (0.16.0)
jekyll (>= 3.3, < 5.0)
jekyll-remote-theme (0.4.3)
addressable (~> 2.0)
jekyll (>= 3.5, < 5.0)
jekyll-sass-converter (>= 1.0, <= 3.0.0, != 2.0.0)
rubyzip (>= 1.3.0, < 3.0)
jekyll-sass-converter (3.0.0)
sass-embedded (~> 1.54)
jekyll-seo-tag (2.8.0)
jekyll (>= 3.8, < 5.0)
jekyll-sitemap (1.4.0)
jekyll (>= 3.7, < 5.0)
jekyll-watch (2.2.1)
listen (~> 3.0)
just-the-docs (0.3.3)
jekyll (>= 3.8.5)
jekyll-seo-tag (~> 2.0)
rake (>= 12.3.1, < 13.1.0)
kramdown (2.4.0)
rexml
kramdown-parser-gfm (1.1.0)
kramdown (~> 2.0)
liquid (4.0.4)
listen (3.9.0)
rb-fsevent (~> 0.10, >= 0.10.3)
rb-inotify (~> 0.9, >= 0.9.10)
mercenary (0.4.0)
pathutil (0.16.2)
forwardable-extended (~> 2.6)
posix-spawn (0.3.15)
public_suffix (5.0.5)
rake (13.0.6)
rb-fsevent (0.11.2)
rb-inotify (0.11.1)
ffi (~> 1.0)
rexml (3.2.8)
strscan (>= 3.0.9)
rouge (4.2.1)
ruby-enum (1.0.0)
ruby-link-checker (0.2.0)
rubyzip (2.3.2)
safe_yaml (1.0.5)
sass-embedded (1.77.3)
google-protobuf (>= 3.25, < 5.0)
rake (>= 13)
sass-embedded (1.77.3-aarch64-linux-android)
google-protobuf (>= 3.25, < 5.0)
sass-embedded (1.77.3-aarch64-linux-gnu)
google-protobuf (>= 3.25, < 5.0)
sass-embedded (1.77.3-aarch64-linux-musl)
google-protobuf (>= 3.25, < 5.0)
sass-embedded (1.77.3-aarch64-mingw-ucrt)
google-protobuf (>= 3.25, < 5.0)
sass-embedded (1.77.3-arm-linux-androideabi)
google-protobuf (>= 3.25, < 5.0)
sass-embedded (1.77.3-arm-linux-gnueabihf)
google-protobuf (>= 3.25, < 5.0)
sass-embedded (1.77.3-arm-linux-musleabihf)
google-protobuf (>= 3.25, < 5.0)
sass-embedded (1.77.3-arm64-darwin)
google-protobuf (>= 3.25, < 5.0)
sass-embedded (1.77.3-riscv64-linux-android)
google-protobuf (>= 3.25, < 5.0)
sass-embedded (1.77.3-riscv64-linux-gnu)
google-protobuf (>= 3.25, < 5.0)
sass-embedded (1.77.3-riscv64-linux-musl)
google-protobuf (>= 3.25, < 5.0)
sass-embedded (1.77.3-x86-cygwin)
google-protobuf (>= 3.25, < 5.0)
sass-embedded (1.77.3-x86-linux-android)
google-protobuf (>= 3.25, < 5.0)
sass-embedded (1.77.3-x86-linux-gnu)
google-protobuf (>= 3.25, < 5.0)
sass-embedded (1.77.3-x86-linux-musl)
google-protobuf (>= 3.25, < 5.0)
sass-embedded (1.77.3-x86-mingw-ucrt)
google-protobuf (>= 3.25, < 5.0)
sass-embedded (1.77.3-x86_64-cygwin)
google-protobuf (>= 3.25, < 5.0)
sass-embedded (1.77.3-x86_64-darwin)
google-protobuf (>= 3.25, < 5.0)
sass-embedded (1.77.3-x86_64-linux-android)
google-protobuf (>= 3.25, < 5.0)
sass-embedded (1.77.3-x86_64-linux-gnu)
google-protobuf (>= 3.25, < 5.0)
sass-embedded (1.77.3-x86_64-linux-musl)
google-protobuf (>= 3.25, < 5.0)
strscan (3.1.0)
terminal-table (3.0.2)
unicode-display_width (>= 1.1.1, < 3)
typhoeus (1.4.1)
ethon (>= 0.9.0)
unicode-display_width (2.5.0)
webrick (1.8.1)

PLATFORMS
aarch64-linux
aarch64-linux-android
aarch64-linux-gnu
aarch64-linux-musl
aarch64-mingw-ucrt
arm-linux-androideabi
arm-linux-gnueabihf
arm-linux-musleabihf
arm64-darwin
riscv64-linux-android
riscv64-linux-gnu
riscv64-linux-musl
ruby
x86-cygwin
x86-linux
x86-linux-android
x86-linux-gnu
x86-linux-musl
x86-mingw-ucrt
x86_64-cygwin
x86_64-darwin
x86_64-linux
x86_64-linux-android
x86_64-linux-gnu
x86_64-linux-musl

DEPENDENCIES
jekyll (~> 4.3.2)
jekyll-last-modified-at
jekyll-redirect-from (~> 0.16)
jekyll-remote-theme (~> 0.4)
jekyll-sitemap
just-the-docs (~> 0.3.3)
ruby-enum
ruby-link-checker
typhoeus
tzinfo-data
webrick (~> 1.7)

RUBY VERSION
ruby 3.2.4p170

BUNDLED WITH
2.5.11
1 change: 1 addition & 0 deletions _config_docker.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
url: "http://127.0.0.1:4000"