Skip to content

Commit

Permalink
Add compiler versions to CI matrix
Browse files Browse the repository at this point in the history
Relates to #349

Signed-off-by: Evan Flynn <[email protected]>
  • Loading branch information
flynneva committed Feb 9, 2025
1 parent 614c8e3 commit 9d08ea5
Showing 1 changed file with 24 additions and 10 deletions.
34 changes: 24 additions & 10 deletions .github/workflows/build_test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -70,16 +70,38 @@ jobs:
strategy:
fail-fast: false
matrix:
cxx_compiler:
- g++12
- g++-14
- clang-14
- clang-16
- clang-18
ros_distro: ${{ fromJson(needs.get_ros_distros.outputs.series) }}
include:
${{ fromJson(needs.get_ros_distros.outputs.matrix) }}
- ${{ fromJson(needs.get_ros_distros.outputs.matrix) }}
- cxx_compiler: g++-12
cc_compiler: gcc-12
- cxx_compiler: g++-14
cc_compiler: gcc-14
- cxx_compiler: clang-14
cc_compiler: clang-14
- cxx_compiler: clang-16
cc_compiler: clang-16
- cxx_compiler: clang-18
cc_compiler: clang-18
exclude:
- { ros_distro: humble, cxx_compiler: g++-14 }
- { ros_distro: humble, cxx_compiler: clang-16 }
- { ros_distro: humble, cxx_compiler: clang-18 }

container:
image: rostooling/setup-ros-docker:${{ matrix.docker_image }}
steps:
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get -y install policykit-1 libgtk2.0-common screen uml-utilities libc6-dev libicu-dev gcc python3 python3-pip
sudo apt-get -y install ${{ matrix.cc_compiler }} ${{ matrix.cxx_compiler }}
mkdir renode_portable
wget https://builds.renode.io/renode-latest.linux-portable.tar.gz
tar xf renode-latest.linux-portable.tar.gz -C renode_portable --strip-components=1
Expand All @@ -96,15 +118,7 @@ jobs:
package-name: usb_cam
target-ros2-distro: ${{ matrix.ros_distro }}
vcs-repo-file-url: ""
colcon-defaults: |
{
"build": {
"mixin": ["coverage-gcc"]
}
}
# If possible, pin the repository in the workflow to a specific commit to avoid
# changes in colcon-mixin-repository from breaking your tests.
colcon-mixin-repository: https://raw.githubusercontent.com/colcon/colcon-mixin-repository/1ddb69bedfd1f04c2f000e95452f7c24a4d6176b/index.yaml
extra-cmake-args: -DCMAKE_C_COMPILER=${{ matrix.cc_compiler }} -DCMAKE_CXX_COMPILER=${{ matrix.cxx_compiler }}
# Compile again, this time enabling integration tests
- name: Build integration tests
shell: bash
Expand Down

0 comments on commit 9d08ea5

Please sign in to comment.