OpenSSL Documentation website is based on Material for MkDocs and this repository contains required configuration and build scripts.
The website is automatically rebuilt on changes in doc
directory of openssl/openssl
. Then a
new commit is pushed to gh-pages
branch which triggers
pages-build-deployment
GitHub Actions workflow.
To deploy documentation website manually trigger Deploy site GitHub Actions workflow.
All required dependencies are packed into a container image quay.io/openssl-ci/docs
.
To start playing around you can spin up a container and run commands:
-
Clone the repository:
git clone https://github.com/openssl/openssl-docs.git
-
Run the container:
podman run -it -v $(pwd)/openssl-docs:/mnt -w /mnt -p 8000:8000 --userns=keep-id quay.io/openssl-ci/docs:latest bash
-
Build the docs:
python build.py <OPENSSL VERSION>
-
Run the development web server:
mike serve -a 0.0.0.0:8000
A small wrapper script to clone a specific OpenSSL branch and build documentaton website with
mike
. Run it to build the website:
python build.py <OPENSSL BRANCH>
mike
puts generated content into a separate branch gh-pages
. Please refer mike
documentation for the details.
All pre- and post- processing is done via MkDocs
hooks. Please refer MkDocs
documentation for the details.