Skip to content

About

Reusable GH action workflow to build public Auterion ROS2 Debian packages

Resources

Stars

1 star

Watchers

9 watching

Forks

Latest commit

 

History

38 Commits

Folders and files

Repository files navigation

Reusable workflow for building Auterion public ROS2 Debian packages

Example usage

jobs:
  build:
    name: Build debian packages
    strategy:
      fail-fast: false
      matrix:
        platform:
          - platform: linux/arm64
            runner: "buildjet-4vcpu-ubuntu-2204-arm"
          - platform: linux/amd64
            runner: "buildjet-2vcpu-ubuntu-2204"
        distro:
          - ubuntu: jammy
            ros2: humble
          - ubuntu: noble
            ros2: jazzy
          - ubuntu: noble
            ros2: rolling

    uses: Auterion/ros-debian-workflow/.github/workflows/build-ros-debian.yml@main
    with:
      platform: ${{ matrix.platform.platform }}
      ubuntu-distro: ${{ matrix.distro.ubuntu }}
      ros2-distro: ${{ matrix.distro.ros2 }}
      runner: ${{ matrix.platform.runner }}
      source-prefix: px4_ros2_cpp # Optional, defaults to '.'
    secrets: inherit

This will also publish the packages to Cloudsmith if the release event is triggered.

Local usage

Debian packages can be built locally. To do so, first build the build environment docker container (only required once):

./build_env.sh

Then, build a package:

./build_pkg.sh <path/to/package> <version> [<.deb dependencies>]

For example:

./build_pkg.sh px4-ros2-interface-lib/px4_ros2_cpp 0.0.100 \
    ros-humble-px4-msgs_0.0.100-0jammy_arm64.deb

About

Reusable GH action workflow to build public Auterion ROS2 Debian packages

Resources

Stars

1 star

Watchers

9 watching

Forks

Releases

Packages

Used by

Contributors

Languages