Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[CI] testing #93

Closed
wants to merge 9 commits into from
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
51 changes: 37 additions & 14 deletions .github/workflows/build.yaml
Original file line number Diff line number Diff line change
@@ -1,39 +1,62 @@
name: build
on:
push:
pull_request:
schedule:
- cron: '55 0 * * *'

defaults:
run:
shell: bash
concurrency:
group: ${{ github.head_ref || github.ref_name }}
cancel-in-progress: true
jobs:
build_and_test:
name: Build and test
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
ros_distribution:
- galactic
- rolling
include:
# Galactic Geochelone (May 2021 - November 2022)
- docker_image: ubuntu:focal
- ubuntu_distribution: focal
ros_distribution: galactic
ros_version: 2
# Rolling Ridley (No End-Of-Life)
- docker_image: ubuntu:jammy
- ubuntu_distribution: jammy
ros_distribution: rolling
ros_version: 2
name: Build and test
runs-on: ubuntu-latest
container:
image: ${{ matrix.docker_image }}
image: osrf/ros:${{ matrix.ros_distribution }}-desktop-${{ matrix.ubuntu_distribution }}
steps:
- name: pwd
run: pwd
- name: setup ROS environment
uses: ros-tooling/[email protected]
with:
required-ros-distributions: ${{ matrix.ros_distribution }}
- name: build
- name: install_clang_and_tools
run: sudo apt update && sudo apt install -y clang clang-tools lld wget python3-pip python3-colcon-coveragepy-result python3-colcon-lcov-result lcov
# TODO: fix for cryptography>2.8 failing in galactic https://github.com/open-rmf/rmf/pull/202#pullrequestreview-1100045417
- name: fix cryptography==2.8 # https://github.com/open-rmf/rmf/pull/202#pullrequestreview-1100045417
run: pip3 install cryptography==2.8
if: ${{ matrix.ros_distribution == 'galactic' || matrix.ros_distribution == 'foxy' }}
# TODO: remove this when uncrustify 0.72 is fixed https://github.com/uncrustify/uncrustify/issues/3191
- name: hack for uncrustify 0.72 problems
run: wget http://mirrors.kernel.org/ubuntu/pool/universe/u/uncrustify/uncrustify_0.69.0+dfsg1-1build1_amd64.deb && dpkg -i uncrustify_0.69.0+dfsg1-1build1_amd64.deb && apt install -f -y
if: ${{ matrix.ubuntu_distribution == 'jammy'}}
# TODO: Remove this step when the incompatibility between libunwind14 and libundind dissapears https://github.com/open-rmf/rmf_traffic_editor/issues/439
- name: Horrible hack for libceres
run: |
apt-get remove -y --purge libc++-dev || true
apt-get remove -y --purge libc++abi-dev || true
apt-get remove -y --purge libunwind-14-dev || true
apt-get remove -y --purge libunwind-14-dev || true
apt-get remove -y --purge libunwind-dev || true
apt -y autoremove
if: ${{ matrix.ubuntu_distribution == 'jammy'}}
- name: build_and_test
uses: ros-tooling/[email protected]
env:
CC: clang
QT_QPA_PLATFORM: offscreen
with:
target-ros2-distro: ${{ matrix.ros_distribution }}
# build all packages listed in the meta package
Expand All @@ -44,7 +67,7 @@ jobs:
colcon-defaults: |
{
"build": {
"mixin": ["coverage-gcc"]
"mixin": ["coverage-gcc", "lld"]
}
}
colcon-mixin-repository: https://raw.githubusercontent.com/colcon/colcon-mixin-repository/master/index.yaml
Expand Down