Skip to content

control: Update tilt_sensor node for attitude topic #6440

control: Update tilt_sensor node for attitude topic

control: Update tilt_sensor node for attitude topic #6440

Workflow file for this run

################################################################################
# This workflow will install Python dependencies, run tests and lint with a
# variety of Python versions. For more information see:
# https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
################################################################################
name: OASIS Python
# Controls when the action will run. Triggers the workflow on push or pull
# request events
on: [push, pull_request]
# A workflow run is made up of one or more jobs that can run sequentially or in
# parallel
jobs:
# This workflow contains a single job called "build"
build:
# The type of runner that the job will run on
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
include:
- os: ubuntu-24.04
ros2_distro: kilted
# Steps represent a sequence of tasks that will be executed as part of the
# job
steps:
- name: Build environment information
run: 'echo "Matrix OS: ${{ matrix.os }} on $HOSTNAME with $(getconf _NPROCESSORS_ONLN) cores"'
# Check-out the repository under $GITHUB_WORKSPACE, so the job can
# access it
- name: Checkout main repo
uses: actions/checkout@v4
- name: Restore oasis_msgs
id: restore-oasis-msgs
uses: actions/cache@v4
with:
path: ros-ws/oasis-${{ matrix.ros2_distro }}/install
key: oasis-msgs-${{ runner.os }}-${{ matrix.ros2_distro }}-${{ hashFiles('oasis_msgs/msg/**', 'oasis_msgs/srv/**', 'oasis_msgs/CMakeLists.txt', 'oasis_msgs/package.xml') }}
- name: Restore tox environment
id: restore-tox
uses: actions/cache@v4
with:
path: |
.tox
key: tox-env-${{ hashFiles('tox.ini', 'requirements-tox.txt') }}
- name: Set up Python 3.12
uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Update pip
run: python3 -m pip install --upgrade pip
- name: Setup ROS 2 apt sources
if: steps.restore-oasis-msgs.outputs.cache-hit != 'true'
run: ./oasis_tooling/scripts/setup_ros2_desktop.sh
- name: Install ROS message dependencies
if: steps.restore-oasis-msgs.outputs.cache-hit != 'true'
run: |
sudo apt-get install -y \
cmake \
ros-${{ matrix.ros2_distro }}-ament-cmake \
ros-${{ matrix.ros2_distro }}-geometry-msgs \
ros-${{ matrix.ros2_distro }}-rosidl-default-generators \
ros-${{ matrix.ros2_distro }}-rosidl-default-runtime \
ros-${{ matrix.ros2_distro }}-sensor-msgs \
ros-${{ matrix.ros2_distro }}-std-msgs
- name: Ensure ROS Python tooling is available
if: steps.restore-oasis-msgs.outputs.cache-hit != 'true'
run: |
python3 -m pip install \
catkin_pkg \
empy \
lark \
numpy
- name: Build oasis_msgs
if: steps.restore-oasis-msgs.outputs.cache-hit != 'true'
run: |
source /opt/ros/${{ matrix.ros2_distro }}/setup.bash
mkdir -p oasis_msgs/build
cd oasis_msgs/build
cmake .. -DCMAKE_INSTALL_PREFIX=${{ github.workspace }}/ros-ws/oasis-${{ matrix.ros2_distro }}/install
# Build and install in parallel using the CMake driver
cmake --build . --target install --parallel
- name: Install tox
run: |
pip3 install tox
# Run the tests!
- name: Run tox
run: |
tox