5959 runs-on : ubuntu-latest
6060 needs : [determine-distros]
6161 container :
62- image : ros:${{ matrix.ros_distro }}-ros-base-${{ matrix.ubuntu_distro }}
63- credentials :
64- username : ${{ secrets.DOCKERHUB_USERNAME }}
65- password : ${{ secrets.DOCKERHUB_TOKEN }}
62+ image : ubuntu:${{ matrix.ubuntu_distro }}
6663
6764 strategy :
6865 fail-fast : false
@@ -84,11 +81,24 @@ jobs:
8481 - name : Checkout code
8582 uses : actions/checkout@v4
8683
84+ - name : Setup ROS repository
85+ run : |
86+ apt-get update -qq
87+ apt-get install -y curl gnupg lsb-release
88+ curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
89+ echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(lsb_release -cs) main" > /etc/apt/sources.list.d/ros2.list
90+ apt-get update -qq
91+ shell : bash
92+ env :
93+ DEBIAN_FRONTEND : noninteractive
94+
8795 - name : Build Debian packages
8896 run : |
8997 chmod +x scripts/build_debian_packages.sh
9098 ./scripts/build_debian_packages.sh ${{ matrix.ros_distro }} ${{ matrix.ubuntu_distro }}
9199 shell : bash
100+ env :
101+ DEBIAN_FRONTEND : noninteractive
92102
93103 - name : Upload Debian packages
94104 uses : actions/upload-artifact@v4
@@ -102,10 +112,7 @@ jobs:
102112 runs-on : ubuntu-latest
103113 needs : [determine-distros, generate-debian]
104114 container :
105- image : ros:${{ matrix.ros_distro }}-ros-base-${{ matrix.ubuntu_distro }}
106- credentials :
107- username : ${{ secrets.DOCKERHUB_USERNAME }}
108- password : ${{ secrets.DOCKERHUB_TOKEN }}
115+ image : ubuntu:${{ matrix.ubuntu_distro }}
109116
110117 strategy :
111118 fail-fast : false
@@ -124,9 +131,16 @@ jobs:
124131 ubuntu_distro : noble
125132
126133 steps :
127- - name : Setup environment
134+ - name : Setup ROS repository
128135 run : |
129136 apt-get update -qq
137+ apt-get install -y curl gnupg lsb-release
138+ curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
139+ echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(lsb_release -cs) main" > /etc/apt/sources.list.d/ros2.list
140+ apt-get update -qq
141+ shell : bash
142+ env :
143+ DEBIAN_FRONTEND : noninteractive
130144
131145 - name : Download Debian packages
132146 uses : actions/download-artifact@v4
@@ -140,12 +154,14 @@ jobs:
140154 echo "Smoke testing install on ROS2 ${{ matrix.ros_distro }}"
141155 ls -la debian_packages/${{ matrix.ros_distro }}/
142156
143- # Install the debian packages
157+ # Install the debian packages (apt will pull in ROS dependencies automatically)
144158 apt-get install -y ./debian_packages/${{ matrix.ros_distro }}/ros-${{ matrix.ros_distro }}-greenwave-monitor-interfaces_*.deb ./debian_packages/${{ matrix.ros_distro }}/ros-${{ matrix.ros_distro }}-greenwave-monitor_*.deb ./debian_packages/${{ matrix.ros_distro }}/ros-${{ matrix.ros_distro }}-r2s-gw_*.deb
145159
146160 # Verify packages are installed
147161 dpkg -s ros-${{ matrix.ros_distro }}-r2s-gw ros-${{ matrix.ros_distro }}-greenwave-monitor ros-${{ matrix.ros_distro }}-greenwave-monitor-interfaces
148162 shell : bash
163+ env :
164+ DEBIAN_FRONTEND : noninteractive
149165
150166 - name : Test ncurses_dashboard execution (no extra dependencies)
151167 run : |
0 commit comments