Update rpi-colcon.yml #3
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build for RPi | |
on: | |
push: | |
branches: [ "main" ] | |
pull_request: | |
branches: [ "main" ] | |
jobs: | |
build: | |
runs-on: ubuntu-24.04 | |
name: Build on RPi in QEMU | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: uraimo/run-on-arch-action@v2 | |
name: Run commands | |
id: runcmd | |
with: | |
arch: none | |
distro: none | |
base_image: arm64v8/ubuntu:24.04 | |
# Not required, but speeds up builds | |
githubToken: ${{ github.token }} | |
# Create an artifacts directory | |
setup: | | |
mkdir -p "${PWD}/artifacts" | |
# Mount the artifacts directory as /artifacts in the container | |
dockerRunArgs: | | |
--volume "${PWD}/artifacts:/artifacts" | |
# Pass some environment variables to the container | |
env: | # YAML, but pipe character is necessary | |
artifact_name: git-rpi-build | |
workspace: ${GITHUB_WORKSPACE} | |
install: | | |
sudo apt update | |
sudo apt install -y software-properties-common | |
sudo add-apt-repository -y universe | |
sudo apt update && sudo apt install curl -y | |
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg | |
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null | |
sudo apt update | |
sudo apt install -y ros-rolling-ros-base ros-rolling-moveit* ros-rolling-ros2-control* ros-dev-tools python3-transforms3d python3-colcon-mixin ros-rolling-libphidget22 python3-serial python3-pyudev ros-rolling-spacenav ros-rolling-geographic-msgs python3-rosdep | |
sudo rosdep init | |
# Set an output parameter `uname` for use in subsequent steps | |
run: | | |
source /opt/ros/galactic/setup.bash | |
rosdep update | |
cd ${workspace}/arm_ws | |
rosdep install --from-paths src -y --ignore-src | |
colcon build --symlink-install --cmake-args " -DCMAKE_BUILD_TYPE=RelWithDebInfo" | |
cp -r install/ "/artifacts/${artifact_name}" | |
echo "Produced artifact at /artifacts/${artifact_name}" | |
- name: Show build files | |
run: | | |
ls -al "${PWD}/artifacts" |