2 on: [push, pull_request]
8 - name: Checkout Parent Repository
9 uses: actions/checkout@v2
12 repository: FreeRTOS/FreeRTOS
13 submodules: 'recursive'
15 - name: Clone This Repo
16 uses: actions/checkout@v2
18 path: ./FreeRTOS/Source
21 uses: actions/setup-python@master
25 - name: Install packages
27 sudo apt-get install lcov cflow ruby doxygen build-essential
28 - name: Run Unit Tests with ENABLE_SANITIZER=1
30 make -C FreeRTOS/Test/CMock clean
31 make -C FreeRTOS/Test/CMock ENABLE_SANITIZER=1 run_col_formatted
32 - name: Run Unit Tests for coverage
34 make -C FreeRTOS/Test/CMock clean
35 make -C FreeRTOS/Test/CMock lcovhtml
36 lcov --config-file FreeRTOS/Test/CMock/lcovrc --summary FreeRTOS/Test/CMock/build/cmock_test.info > FreeRTOS/Test/CMock/build/cmock_test_summary.txt
37 - name: Upload coverage to Codecov
38 uses: codecov/codecov-action@v1
40 files: FreeRTOS/Test/CMock/build/cmock_test.info
42 root_dir: FreeRTOS/Source
44 fail_ci_if_error: false
45 path_to_write_report: coverage/codecov_report.txt
47 - name: Archive code coverage data
48 uses: actions/upload-artifact@v2
51 path: FreeRTOS/Test/CMock/build/cmock_test*
52 - name: Archive code coverage html report
53 uses: actions/upload-artifact@v2
56 path: FreeRTOS/Test/CMock/build/coverage