Skip to content

WIP

WIP #329

Workflow file for this run

on:
push:
branches:
- '**'
tags:
- 'NEVER'
pull_request:
types: [opened, reopened]
defaults:
run:
shell: bash
env:
APT: sudo apt install -y --no-install-recommends
# Set the python path manually to include /usr/-/python2.7/dist-packages
# as this is where apt-get installs python packages.
ROSINSTALL_FILE: $GITHUB_WORKSPACE/dependencies.rosinstall
CATKIN_OPTIONS: $GITHUB_WORKSPACE/catkin.options
jobs:
noble_deb_packages:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v5
- run: sudo make install-deps
- run: $APT fakeroot devscripts build-essential
- run: |
make deb-build DEB_TARGET=jammy
make deb-install DEB_TARGET=jammy
# make cmake_dependency # requires ROS
jammy_deb_packages:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v5
- run: sudo make install-deps
- run: $APT fakeroot devscripts build-essential
- run: |
make deb-build DEB_TARGET=jammy
make deb-install DEB_TARGET=jammy
# make cmake_dependency # requires ROS
focal_deb_packages:
container: ros:noetic-ros-base-focal
runs-on: ubuntu-latest
env:
ROS_DISTRO: noetic
ROS_HOSTNAME: localhost
ROS_CI_DESKTOP: focal
steps:
- uses: actions/checkout@v5
- run: apt update && apt install -y --no-install-recommends make wget sudo
- run: rm /etc/ros/rosdep/sources.list.d/20-default.list
- run: make install-ros ROS_DISTRO=$ROS_DISTRO UBUNTU_DISTRO=$ROS_CI_DESKTOP
- run: make install-deps
- run: $APT fakeroot devscripts build-essential
- shell: bash
run: |
source /opt/ros/$ROS_DISTRO/setup.bash
make deb-build DEB_TARGET=focal
make deb-install DEB_TARGET=focal
make cmake_dependency
noble_gcc_noros:
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v5
- run: sudo apt update
- run: sudo make install-deps
- run: make build-tests TYPE=Debug OPTIONS=noros TARGETS="all" TC=gcc ARGS=-V
noble_gcc_ros:
runs-on: ubuntu-24.04
env:
ROS_DISTRO: jazzy
ROS_CI_DESKTOP: noble
steps:
- uses: actions/checkout@v5
- run: sudo make install-ros ROS_DISTRO=$ROS_DISTRO UBUNTU_DISTRO=$ROS_CI_DESKTOP
- run: sudo make install-deps
- run: |
source /opt/ros/$ROS_DISTRO/setup.bash
make build-tests TYPE=Debug OPTIONS=ros2 TARGETS="all" TC=gcc ARGS=-V
jammy_gcc_noros:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v5
- run: sudo apt update
- run: sudo make install-deps
- run: make build-tests TYPE=Debug OPTIONS=noros TARGETS="all" TC=gcc ARGS=-V
jammy_gcc_ros:
runs-on: ubuntu-22.04
env:
ROS_DISTRO: humble
ROS_CI_DESKTOP: jammy
steps:
- uses: actions/checkout@v5
- run: sudo make install-ros ROS_DISTRO=$ROS_DISTRO UBUNTU_DISTRO=$ROS_CI_DESKTOP
- run: sudo make install-deps
- run: |
source /opt/ros/$ROS_DISTRO/setup.bash
make build-tests TYPE=Debug OPTIONS=ros2 TARGETS="all" TC=gcc ARGS=-V
focal_gcc_noros:
container: ros:noetic-ros-base-focal
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- run: rm /etc/ros/rosdep/sources.list.d/20-default.list
- run: apt update && apt install -y --no-install-recommends make wget sudo
- run: make install-deps
- run: make build-tests TYPE=Debug OPTIONS=noros_focal TARGETS="all" TC=gcc ARGS=-V
focal_gcc_ros:
container: ros:noetic-ros-base-focal
runs-on: ubuntu-latest
env:
ROS_DISTRO: noetic
ROS_HOSTNAME: localhost
ROS_CI_DESKTOP: focal
steps:
- uses: actions/checkout@v5
- run: rm /etc/ros/rosdep/sources.list.d/20-default.list
- run: apt update && apt install -y --no-install-recommends make wget sudo
- run: make install-ros ROS_DISTRO=$ROS_DISTRO UBUNTU_DISTRO=$ROS_CI_DESKTOP
- run: make install-deps
- shell: bash
run: |
source /opt/ros/$ROS_DISTRO/setup.bash
make build-tests TYPE=Debug OPTIONS=ros TARGETS="all" TC=gcc ARGS=-V
jammy_spelling:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v5
- run: sudo apt update
- run: $APT python3-pip python3-setuptools
- run: sudo pip3 install scspell3k
- run: make spell
noble_clang_ros_scanbuild:
runs-on: ubuntu-24.04
env:
ROS_DISTRO: jazzy
ROS_CI_DESKTOP: noble
steps:
- uses: actions/checkout@v5
- run: sudo make install-ros ROS_DISTRO=$ROS_DISTRO UBUNTU_DISTRO=$ROS_CI_DESKTOP
- run: sudo make install-deps
- run: $APT clang-tools-20 clang-tidy-20
- run: |
source /opt/ros/$ROS_DISTRO/setup.bash
make clangcheck SCANBUILD=scan-build-20 OPTIONS=ros2_tidy TC=clang
noble_clang_noros_scanbuild:
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v5
- run: sudo apt update
- run: sudo make install-deps
- run: $APT clang-tools-20 clang-tidy-20
- run: make clangcheck SCANBUILD=scan-build-20 OPTIONS=noros_tidy TC=clang
# focal
focal_noetic_catkin_old:
container: ros:noetic-ros-base-focal
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- run: rm -Rf ariles2_nlohmann_json_ws ariles2_jsonnet_ws ariles2_namevalue_ws ariles2_ros2param_ws ariles2_protobuf3_ws ariles2_rosparam_ws/CATKIN_IGNORE
- run: |
source /opt/ros/noetic/setup.bash
make catkin_test_old ROS_DISTRO=noetic UBUNTU_DISTRO=focal
focal_noetic_catkin_new:
container: ros:noetic-ros-base-focal
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- run: rm -Rf ariles2_nlohmann_json_ws ariles2_rosparam_ws/CATKIN_IGNORE
- run: |
source /opt/ros/noetic/setup.bash
make catkin_test_new ROS_DISTRO=noetic UBUNTU_DISTRO=focal
# does not work with ros2param (rclcpp dependency)
#prerelease:
# runs-on: ubuntu-20.04
# steps:
# - uses: actions/checkout@v5
# with:
# fetch-depth: 0
# - run: make ros_prerelease ROS_DISTRO=noetic UBUNTU_DISTRO=focal BRANCH=`git branch --show-current`
# env:
# CCACHE_DIR: ${GITHUB_WORKSPACE}/.ccache
jammy_ccws:
container: asherikov/ccws_jammy
runs-on: ubuntu-latest
env:
WORKSPACE_SRC: ${GITHUB_WORKSPACE}
steps:
- uses: actions/checkout@v5
- run: rm demo_cmake/CATKIN_IGNORE
- run: |
cd /ccws
apt update
make dep_install
make ariles2_cmake_demo ariles2_ros2param_ws
- run: |
cd /ccws
make BUILD_PROFILE=static_checks
make _ws BUILD_PROFILE=scan_build
make BUILD_PROFILE=static_checks BASE_BUILD_PROFILE=scan_build
noble_ccws:
container: asherikov/ccws_noble
runs-on: ubuntu-latest
env:
WORKSPACE_SRC: ${GITHUB_WORKSPACE}
steps:
- uses: actions/checkout@v5
- run: rm demo_cmake/CATKIN_IGNORE
- run: |
cd /ccws
apt update
make dep_install
make ariles2_cmake_demo ariles2_ros2param_ws
- run: |
cd /ccws
make BUILD_PROFILE=static_checks
make _ws BUILD_PROFILE=scan_build
make BUILD_PROFILE=static_checks BASE_BUILD_PROFILE=scan_build