# HPCE Documentation This site contains internal documentation of HCPE services at Paul Scherrer Institute, particularly the *Merlin 6* and *Merlin 7* clusters. Live pages are available at . ## Installation ### Docker The easiest and most reproducable way to test changes is using docker. From the top directory, run the following: ```console $ docker compose build $ docker compose up ``` This will start a webserver on `http://0.0.0.0:4001/`. Changes to most pages will be automatically reflected in the website (with the exception of changes to `config.yml`, which requires restarting the webserver). ### Running locally Building locally requires ruby 2.5 and bundler. To install: ```console $ gem install bundler jekyll $ bundle ``` To run a local webserver: ```console $ bundle exec jekyll serve ``` ## Theme The theme is derived from the [Jekyll Doc Theme 6.0](https://github.com/tomjoht/documentation-theme-jekyll) by Tom Johnson. ### Organization - Documentation is organized within the `pages` directory - Add the following frontmatter to each (Merlin6) page: ```md --- title: Introduction sidebar: merlin6_sidebar permalink: /merlin6/introduction.html keywords: key1, key2 --- ``` - Sidebars are specified in data files, e.g. `_data/sidebars/merlin6_sidebar.yml`. - The top menu is controlled by `_data/topnav.yml` - News can be addin in `_posts`. Filenames must include the date. - Lots of features still need to be configured (e.g. pdf output, tags, etc) - The search bar uses finds substring of the title, tags, keywords, and summary frontmatter. ## Deployment We use the Gitea workflow (see `.gitea/workflow/deploy-pages.yml` for details). The pages are automatically re-generated on each push to `master` branch. The resulting website is stored under the `gitea-pages` branch, and is automatically exposed. ## License Theme content is licensed under the MIT license. The Navgoco jQuery component used in the sidebar is licensed under the BSD license. See licenses subdirectory for license terms.