Skip to content

Latest commit

 

History

History
301 lines (205 loc) · 10.9 KB

README.md

File metadata and controls

301 lines (205 loc) · 10.9 KB

Contributors Forks Stargazers Issues


Logo

Viking Documentation

A static website hosting Viking and Research IT related documentation.
Explore the docs »

Report Bug · Request Feature

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Roadmap
  5. Contributing
  6. Contact
  7. Reference
  8. Acknowledgments

About The Project

Product Name Screen Shot

Technical

Infrastructure

The website is hosted in S3 and delivered from a CloudFront distribution. It is defined in cloudformation.yaml and deployed via GitHub Actions, although the SSL certificate is manually created and added to CloudFront through the AWS website. The certificate is validated through DNS by adding the CNAMEs it provides, this can be done via a ticket to Systems.

Content

The content is generated using sphinx with the rtd theme. The source markdown files are stored in docs and the content is deployed via GitHub Actions.

Development

There isn't a development server that auto-builds bundled with Sphinx. Create a new branch and make your changes. When your changes are ready to be deployed, submit a PR and request approval. Upon a merge the site is built and deployed to an S3 bucket and the CloudFlare cache is invalidated through GitHub actions.

(back to top)

Built With

  • Python
  • Read the Docs
  • Sphinx

(back to top)

Getting Started

Below is a step by step guide to getting up and running on Linux followed by an example on Windows. The built pages are static so once built the site is easily viewable in any web browser.

Prerequisites

Python 3 and git.

Installation

  1. Clone the repo

    git clone [email protected]:university-of-york/research-it-documentation.git
    cd research-it-documentation/
    
  2. Create a Python virtual environment and activate it

    python3 -m venv .venv
    source .venv/bin/activate
    
  3. Install the required packages

    python3 -m pip install -r requirements.txt
    
  4. Build the site

    sphinx-build -b html docs/source site/ -a
    
  5. To view the site simply open the newly built site/index.html in your browser

Windows Installation

Python can be installed via Anaconda3 from the Software Center on a managed Windows PC (Git should already be installed), then from a PowerShell:

git clone https://github.com/university-of-york/research-it-documentation.git
cd research-it-documentation/
python -m venv .venv
.\.venv\Scripts\Activate.ps1
python -m pip install -r requirements.txt
sphinx-build -b html docs/source site/ -a

To view the site simply open the newly built site/index.html in your browser

Manual dependency install

If needed, you can manually install the two required Python packages sphinx-rtd-theme and sphinx with:

python3 -m pip install sphinx-rtd-theme sphinx

Usage

Replacements

The docs/source/replacements.py file contains a dictionary of replacement words to use throughout the docs. For exmaple, all the module versions to load in the jobscript examples. This makes it simple to update that part of the docs in the future.

Substitutions

The global.rst file contains an RST substitution so you can use |br| to create a raw html </br>. Useful in some formatting for example in the table headers. To use this substitution in a page you must include the following at the top of the page: .. include:: /global.rst

Custom CSS

Found in the docs/source/_static/css/custom.css file. Only a minimal set of CSS tweaks are there as we keep close to the default theme.

Images and Tables

Located in the assets/img and assets/data folders. The csv files in the data folder are useful for displaying tables with better formatting.

Example template

To help quickly make a new page, docs/source/template.rst can be used as a base.

Application guides

Any .rst files dropped into the docs/source/applications folder will automatically be globbed and added to that section by the toctree directive in the docs/source/applications/index.rst page.

(back to top)

Roadmap

  • Infrastructure
    • Move site to AWS
    • Fix issue with CloudFront cache invalidation
  • Get ready for Pull Requests:
    • Update README.md to new format
    • Use public actions for workflow
  • New pages:
    • Create 'Data Management' section
    • Add X11 Forwarding page
    • Slurm common commands page
  • Update pages:
    • Update Virtual desktops page
    • Move all application specific pages to one section
      • Split up into separate pages
    • FAQ page with common issues
    • RELION jobscript

See the open issues for a full list of proposed features (and known issues).

(back to top)

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

Note

You may need to keep your pull request in sync with the base branch if other updates are also being added around the same time.

(back to top)

Contact

Research IT - [email protected]

Project Link: https://github.com/university-of-york/research-it-documentation

(back to top)

Reference

(back to top)

Acknowledgments

(back to top)