Skip to content

Commit e3b0f2e

Browse files
authored
Merge branch 'master' into eye_display
2 parents 1df6472 + e5d7996 commit e3b0f2e

File tree

13 files changed

+578
-24
lines changed

13 files changed

+578
-24
lines changed

.github/workflows/config.yml

Lines changed: 45 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -205,7 +205,9 @@ jobs:
205205
run: |
206206
rm -fr ${{ matrix.ROS_DISTRO }}-${{ github.run_number }}-${{ github.run_attempt }}-${{ github.run_id }} || echo "OK"
207207
208-
# ROS-O setup https://github.com/v4hn/ros-o-builder/blob/jammy-one/README.md#install-instructions
208+
# ROS-O setup for v4hn https://github.com/v4hn/ros-o-builder/blob/jammy-one/README.md#install-instructions
209+
# ROS-O setup for techfak https://ros.packages.techfak.net/
210+
# note that v4hn uses ROS_DISTRO=one and techfak uses ROS_DISTRO
209211
ros-o:
210212
runs-on: ubuntu-latest
211213

@@ -214,7 +216,13 @@ jobs:
214216
matrix:
215217
include:
216218
- DISTRO: ubuntu:22.04
217-
ROS_REPOSITORY_URL: https://raw.githubusercontent.com/v4hn/ros-o-builder/jammy-one/repository
219+
ROS_ONE_VARIANT: v4hn
220+
ROS_REPOSITORY_URL: "deb [trusted=yes] https://raw.githubusercontent.com/v4hn/ros-o-builder/jammy-one/repository ./"
221+
ROSDEP_PACKAGE_MAPPING: "yaml https://raw.githubusercontent.com/v4hn/ros-o-builder/jammy-one/repository/local.yaml debian"
222+
- DISTRO: ubuntu:24.04
223+
ROS_ONE_VARIANT: techfak
224+
ROS_REPOSITORY_URL: "deb [trusted=yes] https://ros.packages.techfak.net noble-testing main"
225+
ROSDEP_PACKAGE_MAPPING: "yaml https://ros.packages.techfak.net/ros-one.yaml ubuntu"
218226

219227
container: ${{ matrix.DISTRO }}
220228

@@ -228,23 +236,41 @@ jobs:
228236
- name: Setup ROS-O deb repository
229237
run: |
230238
set -x
231-
apt update && apt install -qq -y ca-certificates
232-
echo "deb [trusted=yes] ${{ matrix.ROS_REPOSITORY_URL }}/ ./" | tee /etc/apt/sources.list.d/ros-o-builder.list
239+
apt update && apt install -qq -y ca-certificates git
240+
echo ${{ matrix.ROS_REPOSITORY_URL }} | tee /etc/apt/sources.list.d/ros-o-builder.list
241+
##
242+
# https://github.com/v4hn/ros-deb-builder-action/blob/b7c0ed93fde3a86b5b1027bf8f7145cad6067c90/prepare.sh#L27-L28
243+
# Canonical dropped the Debian ROS packages from 24.04 for political reasons. Wow.
244+
if [[ "${{ matrix.ROS_ONE_VARIANT }}" == "v4hn" && "${{ matrix.DISTRO }}" == "ubuntu:24.04" ]]; then apt install -y software-properties-common retry && retry -d 50,10,30,300 -t 12 add-apt-repository -y ppa:v-launchpad-jochen-sprickerhof-de/ros; fi
245+
##
233246
apt update
234-
apt install -qq -y python3-rosdep2
235-
echo "yaml ${{ matrix.ROS_REPOSITORY_URL }}/local.yaml debian" | tee /etc/ros/rosdep/sources.list.d/1-ros-o-builder.list
247+
if [[ "${{ matrix.ROS_ONE_VARIANT }}" == "v4hn" ]]; then
248+
apt install -qq -y python3-rosdep2
249+
fi
250+
if [[ "${{ matrix.ROS_ONE_VARIANT }}" == "techfak" ]]; then
251+
# Do not install python3-rosdep2, which is an outdated version of rosdep shipped via the Ubuntu repositories (instead of ROS)!
252+
apt install -qq -y python3-rosdep
253+
rosdep init
254+
fi
255+
echo ${{ matrix.ROSDEP_PACKAGE_MAPPING }} | tee /etc/ros/rosdep/sources.list.d/1-ros-o-builder.list
236256
rosdep update
237-
# disable installing recommends as ros-o-builder do
238-
echo 'APT::Install-Recommends "false";' | tee /etc/apt/apt.conf.d/99norecommends
257+
shell: bash
239258

240259
- name: Setup catkin-tools
241260
run: |
242261
set -x
243262
# setup catkin tools
244263
apt install -qq -y python3-pip
245-
pip3 install catkin-tools==0.9.4
264+
if [[ "${{ matrix.ROS_ONE_VARIANT }}" == "v4hn" ]]; then
265+
pip3 install catkin-tools==0.9.4
266+
apt install -qq -y catkin
267+
fi
268+
if [[ "${{ matrix.ROS_ONE_VARIANT }}" == "techfak" ]]; then
269+
apt install -qq -y ros-one-catkin python3-catkin-tools
270+
fi
246271
# setup build tools
247-
apt install -qq -y cmake build-essential catkin ros-one-rosbash
272+
apt install -qq -y cmake build-essential ros-one-rosbash
273+
shell: bash
248274

249275
- name: Setup Workspace
250276
run: |
@@ -253,8 +279,17 @@ jobs:
253279
# setup workspace
254280
mkdir -p ~/ws/src
255281
cd ~/ws/src
282+
if [[ "${{ matrix.ROS_ONE_VARIANT }}" == "techfak" ]]; then
283+
# TODO: remove these lines and uncomment https://github.com/ubi-agni/ros-builder-action/blob/191fab06004ad5784c28cf2ba2b18f6d163a860d/ros-one.repos#L1089
284+
git clone https://github.com/locusrobotics/catkin_virtualenv.git
285+
fi
256286
ln -sf $GITHUB_WORKSPACE .
257287
rosdep install -qq -r -y --from-path . --ignore-src || echo "OK"
288+
# check all system packages are able to install, because ROS-O build deb files that needs all packages
289+
PIP_BREAK_SYSTEM_PACKAGES=1 rosdep install -qq --simulate -y --from-path . --ignore-src -t exec -t buildtool_export -t buildtool -t build -t build_export | tee rosdep-install.sh
290+
# catkin_tools is not available on v4hn/jammy
291+
if [[ "${{ matrix.ROS_ONE_VARIANT }}" == "v4hn" ]]; then sed -i '/python3-catkin-tools/s/^/#/' rosdep-install.sh; fi
292+
sed 's/apt-get install/apt-get -y install/;/install ros-one/s/^/#/;/pip3 install/s/^/#/' rosdep-install.sh | bash -xe
258293
shell: bash
259294

260295
- name: Compile Packages

3rdparty/aques_talk/CMakeLists.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,10 @@ find_package(catkin REQUIRED)
55

66
catkin_package()
77

8+
if(DEFINED ENV{GITHUB_ACTIONS})
9+
message(WARNING "skip downloading aques_talk within GithubAction")
10+
return()
11+
endif()
812
# Considering the use of docker in addition to the usual use,
913
# we use dpkg-architecture command instead of ${CMAKE_SYSTEM_PROCESSOR} to get the architecture.
1014
# https://stackoverflow.com/a/58222507

bayesian_belief_networks/Makefile.bayesian

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ TARBALL = build/bayesian-belief-networks.zip
88
TARBALL_URL = https://github.com/eBay/bayesian-belief-networks/archive/$(GIT_REVISION).zip
99
SOURCE_DIR = build/bayesian-belief-networks-$(GIT_REVISION)
1010
MD5SUM_FILE = $(INSTALL_DIR)/bayesian-belief-networks.zip.md5sum
11+
TARBALL_PATCH = $(INSTALL_DIR)/bayesian-belief-networks.2to3
1112
UNPACK_CMD = unzip
1213

1314
PYTHONBIN = python$(ROS_PYTHON_VERSION)
@@ -34,7 +35,10 @@ installed: $(DIST_DIR) # examples
3435

3536
$(DIST_DIR): $(SOURCE_DIR)/unpacked
3637
mkdir -p $(DIST_DIR)
37-
cd $(SOURCE_DIR) && $(PYTHONBIN) ./setup.py build && PYTHONPATH=$(DIST_DIR) $(PYTHONBIN) ./setup.py install --prefix=$(INSTALL_DIR) $(SETUPTOOLS_ARG_EXTRA) --record installed_files.txt
38+
cd $(SOURCE_DIR) && \
39+
$(PYTHONBIN) ./setup.py build && \
40+
(PYTHONPATH=$(DIST_DIR) $(PYTHONBIN) ./setup.py install --prefix=$(INSTALL_DIR) $(SETUPTOOLS_ARG_EXTRA) --single-version-externally-managed --record installed_files.txt || \
41+
PYTHONPATH=$(DIST_DIR) $(PYTHONBIN) ./setup.py install --prefix=$(INSTALL_DIR) $(SETUPTOOLS_ARG_EXTRA) --record installed_files.txt)
3842

3943

4044
clean:

0 commit comments

Comments
 (0)