Skip to content
  • BigBlockIfTrue's avatar
    Create ninja target for building HTML documentation with mkdocs · 78d7dd9f
    BigBlockIfTrue authored
    Long-term purpose of this MR is to allow shipping offline HTML
    documentation along with our releases, so you can always locally access
    HTML docs for your specific installed version (online documentation is
    only for latest version). This is a lot more user-friendly than manually
    browsing an unorganised bunch of Markdown files.
    
    Simplified logic of which files to include for `mkdocs`: everything in
    the `docs` folder plus any `.md` files outside it. This dramatically
    reduces the run-time of `mkdocs` and the size of the generated
    documentation folder. It also broke links to source code files. These
    links can be removed in a follow-up MR.
    
    Additionally:
    
    * Changed site directory from `site` (default) to `doc-html`.
    * Renamed `files-for-mkdocs` directory to `doc-html-src`.
    * Moved `mkdocs.yml` into `doc` folder.
    
    This also makes the following changes for locally building
    documentation, but these changes are reversed when building online
    documentation in Gitlab CI:
    
    * `doc/release-notes.md` is now included, as "current release notes" (at
    a version tag, this file contains the actual release notes for that
    release; in between version tags, the file contains changes to master
    since last release).
    * Directory URLs are turned off (do not work locally).
    * Search plug-in is turned off (does not work locally).
    
    Implementation of the ninja target is loosely inspired by `ninja
    translate`.
    
    Test plan: `ninja doc-html` and browse locally from
    `doc-html/index.html`, and also check
    https://bigblockiftrue.gitlab.io/bitcoin-cash-node/
    78d7dd9f
Validating GitLab CI configuration… Learn more