Update lint_master.yml #8670
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# This workflow builds & runs test cases in iceoryx | |
name: Build & Test | |
# Triggers the workflow on push or pull request events but only for the master branch | |
on: | |
push: | |
branches: [ master ] | |
pull_request: | |
branches: [ master, release*, integration* ] | |
jobs: | |
pre-flight-check: | |
runs-on: ubuntu-20.04 | |
steps: | |
- uses: actions/checkout@v4 | |
- run: ./tools/scripts/clang_format.sh check | |
build-test-ubuntu: | |
runs-on: ubuntu-20.04 | |
needs: pre-flight-check | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: egor-tensin/[email protected] | |
with: | |
version: 9 | |
platform: x64 | |
- uses: jwlawson/[email protected] | |
with: | |
cmake-version: '3.16.3' # version used in Ubuntu 20.04 LTS | |
- run: ./tools/ci/build-test-ubuntu.sh | |
# uses ubuntu to run freebsd in a virtualbox | |
build-test-unix-with-freebsd: | |
# prevent stuck jobs consuming runners for 6 hours | |
timeout-minutes: 60 | |
needs: pre-flight-check | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Unix (FreeBSD) test | |
id: Test | |
uses: vmactions/freebsd-vm@v1 | |
with: | |
release: "13.2" | |
copyback: false | |
prepare: pkg install -y cmake git ncurses bash wget bison | |
run: | | |
git config --global --add safe.directory /home/runner/work/iceoryx/iceoryx | |
./tools/ci/build-test-freebsd.sh | |
build-test-windows: | |
runs-on: windows-2019 | |
needs: pre-flight-check | |
steps: | |
- uses: actions/checkout@v4 | |
- run: ./tools/ci/build-test-windows.ps1 | |
shell: powershell | |
run-integration-test: | |
runs-on: ubuntu-22.04 | |
needs: pre-flight-check | |
steps: | |
- name: Setup ROS | |
uses: ros-tooling/[email protected] | |
with: | |
required-ros-distributions: humble | |
- uses: actions/checkout@v4 | |
- run: ./tools/ci/run-integration-test.sh | |
build-test-ubuntu-with-sanitizers-gcc-latest: | |
runs-on: ubuntu-20.04 | |
needs: pre-flight-check | |
steps: | |
- uses: egor-tensin/[email protected] | |
with: | |
version: 11 | |
platform: x64 | |
- uses: actions/checkout@v4 | |
- run: ./tools/ci/build-test-ubuntu-with-sanitizers.sh gcc | |
build-test-ubuntu-with-sanitizers-clang-latest: | |
runs-on: ubuntu-20.04 | |
needs: pre-flight-check | |
steps: | |
- uses: egor-tensin/setup-clang@v1 | |
with: | |
version: 13 | |
platform: x64 | |
- uses: actions/checkout@v4 | |
- run: ./tools/ci/build-test-ubuntu-with-sanitizers.sh clang | |
build-test-macos-with-sanitizers: | |
runs-on: macos-latest | |
# prevent stuck jobs consuming macos runners for 6 hours | |
timeout-minutes: 60 | |
needs: pre-flight-check | |
steps: | |
- uses: actions/checkout@v4 | |
- run: ./tools/ci/build-test-macos-with-sanitizers.sh | |
coverage-and-docs: | |
runs-on: ubuntu-20.04 | |
needs: pre-flight-check | |
steps: | |
- uses: actions/checkout@v4 | |
- run: ./tools/ci/coverage-and-docs.sh | |
- name: Archive generated doxygen | |
uses: actions/upload-artifact@v4 | |
with: | |
name: iceoryx-pdf | |
path: | | |
./build/doc/*.pdf | |
retention-days: 30 | |
- name: Upload coverage to Codecov | |
uses: codecov/codecov-action@v4 | |
with: | |
file: ./lcov_results/unittest/lcov/iceoryx_lcov_result_unit.info | |
name: iceoryx | |
flags: unittests | |
fail_ci_if_error: false | |
token: ${{ secrets.CODECOV_TOKEN }} | |
- name: Upload coverage to Codecov | |
uses: codecov/codecov-action@v4 | |
with: | |
file: ./lcov_results/unittest_timing/lcov/iceoryx_lcov_result_unit-timing.info | |
name: iceoryx | |
flags: unittests_timing | |
fail_ci_if_error: false | |
token: ${{ secrets.CODECOV_TOKEN }} |