machine:
  services:
    - docker

checkout:
  post:
    # workaround for known git bug where attempting to fetch a missing commit fails early on the first try
    - git submodule update --init --recursive || true
    - git submodule sync --recursive
    - git submodule deinit -f .
    - git submodule update --init --recursive --force

dependencies:
  pre:
    - sudo pip install cpp-coveralls
    - sudo apt-get install -y lcov

test:
  override:
    - ./Tools/docker_run.sh 'make tests_coverage'
    # copy test results for circleci
    - mkdir -p $CIRCLE_TEST_REPORTS/junit/ && cp ./build_posix_sitl_default/JUnitTestResults.xml build_unittest/test_detail.xml $CIRCLE_TEST_REPORTS/junit/
    - mkdir -p $CIRCLE_ARTIFACTS && cp -R coverage-html $CIRCLE_ARTIFACTS
    # only post to coveralls if not a fork PR
    - if [ -z ${CIRCLE_PR_USERNAME}]; then cpp-coveralls -l coverage.info; fi
