4040 # Rolling Ridley (No End-Of-Life)
4141 - docker_image : ubuntu:noble
4242 ros_distribution : rolling
43+ ros_tar_url : " https://github.com/ros2/ros2/releases/download/release-rolling-nightlies/ros2-rolling-nightly-linux-amd64.tar.bz2"
4344 steps :
4445 - name : Setup Node.js ${{ matrix.node-version }} on ${{ matrix.architecture }}
4546 uses : actions/setup-node@v6
@@ -48,12 +49,23 @@ jobs:
4849 architecture : ${{ matrix.architecture }}
4950
5051 - name : Setup ROS2
52+ if : ${{ !matrix.ros_tar_url }}
5153 uses : ros-tooling/setup-ros@v0.7
5254 with :
5355 required-ros-distributions : ${{ matrix.ros_distribution }}
54- use-ros2-testing : ${{ matrix.ros_distribution == 'rolling' }}
56+
57+ - name : Install ROS2 Rolling Nightly
58+ if : ${{ matrix.ros_tar_url }}
59+ run : |
60+ apt-get update
61+ apt-get install -y build-essential cmake curl tar bzip2 python3
62+ curl -sL "${{ matrix.ros_tar_url }}" -o /tmp/ros2-nightly.tar.bz2
63+ mkdir -p /opt/ros2_nightly
64+ tar xjf /tmp/ros2-nightly.tar.bz2 -C /opt/ros2_nightly
65+ rm /tmp/ros2-nightly.tar.bz2
5566
5667 - name : Install test-msgs and mrpt_msgs on Linux
68+ if : ${{ !matrix.ros_tar_url }}
5769 run : |
5870 sudo apt install ros-${{ matrix.ros_distribution }}-test-msgs ros-${{ matrix.ros_distribution }}-mrpt-msgs
5971 # Adjust dependencies based on Ubuntu version
6577
6678 - uses : actions/checkout@v6
6779
80+ - name : Build rclnodejs (nightly)
81+ if : ${{ matrix.ros_tar_url }}
82+ run : |
83+ uname -a
84+ source /opt/ros2_nightly/ros2-linux/setup.bash
85+ npm i
86+
6887 - name : Build and test rclnodejs
88+ if : ${{ !matrix.ros_tar_url }}
6989 run : |
7090 uname -a
7191 source /opt/ros/${{ matrix.ros_distribution }}/setup.bash
@@ -75,15 +95,15 @@ jobs:
7595 npm run clean
7696
7797 - name : Test with IDL ROS messages against rolling
78- if : ${{ matrix.ros_distribution == 'rolling' }}
98+ if : ${{ !matrix.ros_tar_url && matrix.ros_distribution == 'rolling' }}
7999 run : |
80100 source /opt/ros/${{ matrix.ros_distribution }}/setup.bash
81101 npm i
82102 npm run test-idl
83103 npm run clean
84104
85105 - name : Coveralls
86- if : ${{ matrix.ros_distribution == 'rolling' && matrix['node-version'] == '24.X' }}
106+ if : ${{ !matrix.ros_tar_url && matrix.ros_distribution == 'rolling' && matrix['node-version'] == '24.X' }}
87107 uses : coverallsapp/github-action@v2
88108 with :
89109 github-token : ${{ secrets.GITHUB_TOKEN }}
0 commit comments