Skip to content

Fixes Underwater Camera Plugin which sets the ROS2 node name statically, which doesn't allow to have multiples #106

Fixes Underwater Camera Plugin which sets the ROS2 node name statically, which doesn't allow to have multiples

Fixes Underwater Camera Plugin which sets the ROS2 node name statically, which doesn't allow to have multiples #106

---
name: Jazzy Source Build
# yamllint disable-line rule:truthy
on:
workflow_dispatch:
push:
branches:
- ros2
paths:
- "**.hpp"
- "**.h"
- "**.cpp"
- "**.py"
- ".github/workflows/jazzy-source-build.yml"
- "**/package.xml"
- "**/CMakeLists.txt"
- "dave.jazzy.repos"
pull_request:
types: [opened, reopened]
schedule:
# Run every week to detect flakiness and broken dependencies
- cron: "03 3 * * 1"
env:
ros_distro: jazzy
ref: jazzy-release
os_name: ubuntu-latest
container: ubuntu:noble
jobs:
ros-jazzy-ubuntu-noble-source-build:
name: ros-jazzy-ubuntu-noble
runs-on: ubuntu-latest
container: ubuntu:noble
env:
# this will be src/{repo-owner}/{repo-name}
path: src/${{ github.repository }}
steps:
- name: "Determine prerequisites"
id: prereq
run: |
command -v sudo >/dev/null 2>&1 || (apt update && apt install -y sudo)
DEBIAN_FRONTEND=noninteractive sudo apt update && sudo apt upgrade -y
echo "need_node=$(command -v node >/dev/null 2>&1 && echo 0 || echo 1)"
>> $GITHUB_OUTPUT
# needed for github actions, and only if a bare ubuntu image is used
- uses: actions/setup-node@v4
# if: ${{ steps.prereq.outputs.need_node == '1' && !env.ACT }}
if: ${{ steps.prereq.outputs.need_node == '1' }}
- name: Install node
# Consider switching to https://github.com/actions/setup-node when it works
# https://github.com/nektos/act/issues/973
# if: ${{ steps.prereq.outputs.need_node == '1' && env.ACT }}
if: ${{ steps.prereq.outputs.need_node == '1' }}
run: |
sudo apt install -y curl
curl -sS https://webi.sh/node | sh
echo ~/.local/opt/node/bin >> $GITHUB_PATH
# needed only if a non-ros image is used
- uses: ros-tooling/setup-ros@0.7.7
with:
use-ros2-testing: true
- name: "Install ROS-Gazebo Framework Deps"
id: install-ros-gazebo
run: |
sudo /bin/bash -c "$(
curl -fsSL https://raw.githubusercontent.com/IOES-Lab/dave/ros2/extras/ros-jazzy-gz-harmonic-install.sh
)"
- uses: actions/checkout@v4
with:
path: ${{ env.path }}
- id: package_list_action
uses: ros-controls/ros2_control_ci/.github/actions/set-package-list@master
with:
path: ${{ env.path }}
- uses: ros-tooling/action-ros-ci@0.3.14
with:
target-ros2-distro: ${{ env.ros_distro }}
# ref: ${{ env.ref }}
package-name: ${{ steps.package_list_action.outputs.package_list }}
vcs-repo-file-url: |
https://raw.githubusercontent.com/ros2/ros2/${{ env.ref }}/ros2.repos
${{ env.path }}/extras/repos/dave.${{ env.ros_distro }}.repos
colcon-mixin-repository:
https://raw.githubusercontent.com/colcon/colcon-mixin-repository/master/index.yaml
- uses: actions/upload-artifact@v4.3.3
with:
name: colcon-logs-${{ env.os_name }}-${{ env.ros_distro }}
path: ros_ws/log