From aabd9bd89086b4de41155eadcf9c578b27762d3a Mon Sep 17 00:00:00 2001 From: Christian Rauch Date: Mon, 16 Dec 2024 00:57:00 +0100 Subject: [PATCH] bloom packages --- .github/workflows/bloom.yml | 73 +++++++++++++++++++++++++++++++++++++ 1 file changed, 73 insertions(+) create mode 100644 .github/workflows/bloom.yml diff --git a/.github/workflows/bloom.yml b/.github/workflows/bloom.yml new file mode 100644 index 0000000..6bd0184 --- /dev/null +++ b/.github/workflows/bloom.yml @@ -0,0 +1,73 @@ +name: bloom + +on: [push, pull_request] + +jobs: + build: + name: "${{ matrix.distro }} (${{ matrix.ros_distribution }})" + + runs-on: ubuntu-latest + + strategy: + fail-fast: false + matrix: + include: + - distro: ubuntu + version: 22.04 + ros_distribution: humble + + - distro: ubuntu + version: 24.04 + ros_distribution: jazzy + + - distro: almalinux + version: 8 + ros_distribution: humble + + - distro: almalinux + version: 9 + ros_distribution: jazzy + + container: + image: ${{ matrix.distro }}:${{ matrix.version }} + + env: + DEBIAN_FRONTEND: noninteractive + PIP_BREAK_SYSTEM_PACKAGES: 1 + + steps: + - uses: actions/checkout@v4 + + - uses: ros-tooling/setup-ros@v0.7 + + - name: install build tool dependencies (ubuntu) + if: ${{ matrix.distro == 'ubuntu' }} + run: | + apt install -y --no-install-recommends devscripts equivs + + - name: install build tool dependencies (almalinux) + if: ${{ matrix.distro == 'almalinux' }} + run: | + dnf install -y python3-mypy clang-tools-extra + + - name: install bloom + run: pip3 install -U git+https://github.com/christianrauch/bloom.git@fix_rpm_macros + + - name: bloom (ubuntu) + if: ${{ matrix.distro == 'ubuntu' }} + run: | + rosdep update + bloom-generate rosdebian --ros-distro ${{ matrix.ros_distribution }} + mk-build-deps + apt install -y --no-install-recommends ./ros-${{ matrix.ros_distribution }}-camera-ros-build-deps_*_all.deb + dpkg-buildpackage -b + apt install -y --no-install-recommends ../ros-${{ matrix.ros_distribution }}-camera-ros_*.deb ../ros-${{ matrix.ros_distribution }}-camera-ros-dbgsym_*.ddeb + + - name: bloom (almalinux) + if: ${{ matrix.distro == 'almalinux'}} + run: | + rosdep update + bloom-generate rosrpm --ros-distro ${{ matrix.ros_distribution }} + dnf builddep -y rpm/template.spec + rpmbuild -bb --build-in-place rpm/template.spec + dnf install -y /github/home/rpmbuild/RPMS/*/ros-${{ matrix.ros_distribution }}-camera-ros-*.rpm