name: CI on: pull_request: types: - opened - synchronize - reopened - ready_for_review jobs: check_commit_messages: name: check commit messages if: github.event.pull_request.draft == false runs-on: self-hosted steps: - name: clone repository uses: actions/checkout@v2 with: fetch-depth: 0 - name: check commit messages run: ./tools/check_commit_messages.py check_copyright_and_style: name: check copyright and style if: github.event.pull_request.draft == false runs-on: self-hosted steps: - name: clone repository uses: actions/checkout@v2 with: token: ${{ secrets.GitHub_PAT }} fetch-depth: 0 submodules: recursive - name: Copyright notice check run: config/license_header_check.sh --ci --check-only - name: Style checking run: ./config/style_check_hook.sh --last - name: Clang tidy check run: ./config/clang_check.sh build_rt1051_binary: name: build rt1051 binary if: github.event.pull_request.draft == false needs: - check_copyright_and_style runs-on: self-hosted steps: - name: clone repository uses: actions/checkout@v2 with: token: ${{ secrets.GitHub_PAT }} submodules: recursive - name: Build for RT1051 run: | export JOBS=${JOBS:-$(nproc)} && \ echo "JOBS=${JOBS}" && \ ./configure.sh pure rt1051 Release -G Ninja && \ pushd build-purephone-rt1051-Release && \ ninja -j ${JOBS} && \ popd build_linux_binary_and_run_tests: name: build linux binary and run tests if: github.event.pull_request.draft == false needs: - check_copyright_and_style runs-on: self-hosted steps: - name: clone repository uses: actions/checkout@v2 with: token: ${{ secrets.GitHub_PAT }} submodules: recursive - name: build Linux Debug run: | export JOBS=${JOBS:-$(nproc)} && \ echo "JOBS=${JOBS}" && \ ./configure.sh pure linux Debug -G Ninja && \ pushd build-purephone-linux-Debug && \ ninja -j ${JOBS} unittests && \ ninja -j ${JOBS} && \ popd - name: run unit tests run: | ./tools/run_unittests.sh enabled_unittests - name: Check for statics run: | ./tools/find_global_data.py build-purephone-linux-Debug/PurePhone.elf - name: check if all Unit Tests where run run: | ./tools/check_unittests.sh enabled_unit_tests