Header menu logo issie

Updating the documentation

Introduction

The ISSIE documentation is generated by fsdocs from Markdown documents by the GitHub action .github/workflows/docs.yml, which runs build_docs.sh on every push to master. That outputs a static website to the gh-pages branch, and changes to that branch are automatically deployed to the documentation website.

To change the documentation PR the markdown files to ISSIE master, rebuilding will be automatic when the changes are committed to master.

The Markdown source files can be found on the ISSIE repo:

How to develop documentation

For developer preview of changes use dotnet fsdocs watch --noapidocs in the repo root directory. The documentation (without API) will be generated and a browser window opened to preview. Changes will get reloaded automatically.

See Issue 532 for more details of why watch does not work with API.

PR to ISSIE master the changed documentation.

Gotcha

build_docs.sh refuses to finish if fsdocs produced no output/index.html. That check is there because fsdocs catches its own phase errors and still exits 0, and the deploy step publishes whatever is in output/ — so without it a failed build silently replaced the live site while the workflow stayed green. If the docs job fails at that line, read the fsdocs output above it rather than re-running.

No secret needs managing: .github/workflows/docs.yml authenticates with secrets.GITHUB_TOKEN, which GitHub mints for each run. (An earlier version of this page described a deploy key that had to be regenerated every six months. There is no such key now.)

Type something to start searching.