GitHub Actions is used for Continuous Integration, and every commit is checked for memory leaks, unit tests, and agent build. The CI process looks as follows:

  • Start ubuntu-20.04 runner
  • Deploy custom container image with requirements already installed
  • Checkout repository to container
  • Build agent and unit tests
  • Check code for memory leaks using Valgrind
  • Run unit tests
  • Build documentation
  • Publish Agent API to GitHub pages

CI configuration is available in the files .github/workflows/unit-tests.yml and .github/workflows/gh-pages.yml.