Concept of runbooks from GitHub

Connect a GitHub repository to host runbooks from it. The runbooks inside the GitHub repository show as runbooks in your runbook Library provided the connection is active.

Among other benefits, the following use cases are covered by this integration:
  • Use a GitHub development process for creating, updating, and maintaining runbooks. For example, you can use GitHub reviews to approve a new version for a runbook.
  • Use a single GitHub repository to store runbooks used in many different runbook installations.
  • Develop runbooks alongside your code as part of the acceptance criteria.
  • Integrate runbook management and development into existing GitOps workflows.
  • Use branches to develop new runbooks before they show up in the runbook Library.
The runbooks from GitHub feature have the following properties:
  • All runbooks from GitHub are always version 1. If you want to create them as "Drafts" first, it is recommended to develop those on a different branch first.
  • Runbooks that are defined in GitHub can reference Automations, but not include them inline. Inline Automations are stripped.
  • Requests to the GitHub repository are cached for up to 24 hours. The exception are requests to list the contents of the folder. The data from that call is used to check whether checksums of specific files in the folder have been changed. If a change is detected, the cached entry for that file is deleted and the current content retrieved. Restarting the runbook Service process empties the cache.
  • If communication to GitHub is no longer possible, or if the connection is deleted, the runbooks from GitHub are not visible in the runbook Library. They re-appear once the connection is setup again. Ongoing runbook instances will continue and conclude, even if the connection is not restored.
  • The runbook ID for runbooks from GitHub is created with the pattern: gitHub:${fileName} where ${filename} is the name of the file including the file extension. For example, myGitHubrunbook.json.