If you have your InterMine repo set up to automatically run tests using Travis, you can deploy the documentation automatically whenever new code is checked into your master branch, using Github Pages as a host.

In order to deploy, there must be an encrypted $GH_TOKEN set in .travis.yml to authenticate with Github. This is safe because of the way Travis treats encrypted variables. This token needs to be generated by someone with access to the repo

Go to the Personal access tokens section of Github, and create a now token with repo permissions only. If it’s a public repo, then public_repo permissions will suffice. Name it something memorable, and copy it down somewhere safe when you are shown it, as you’re only shown it the once.

Important: to ensure you don’t inadvertently leak your token, granting someone else write-access to your repo, you must encrypt this token! Do *not* paste it into .travis.yml without encrypting it first!
To encrypt you Github token, you’re need to install Travis CLI locally if you haven’t already, then run

$ travis encrypt GH_TOKEN=put-your-very-secret-github-token-here

This will output the encrypted variable into your console, looking something like:

secure:long string of nonsense here

Copy the entire output to your .travis.yml under the env global section. You should end up with a section like this. It’s ok to have more than one secure environment variable.