Instrument client/service for end-to-end request/response tracking #1241
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: Sanity checks | |
on: | |
pull_request: | |
push: | |
branches: | |
- rolling | |
schedule: | |
- cron: "0 5 * * *" | |
defaults: | |
run: | |
shell: bash | |
jobs: | |
binary: | |
runs-on: ubuntu-latest | |
container: | |
image: ubuntu:24.04 | |
continue-on-error: true | |
strategy: | |
fail-fast: false | |
matrix: | |
distro: | |
- rolling | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
path: ws/src/ros2/ros2_tracing | |
- uses: ros-tooling/setup-ros@master | |
with: | |
required-ros-distributions: ${{ matrix.distro }} | |
use-ros2-testing: true | |
- name: Install other dependencies | |
run: | | |
sudo apt-get update | |
sudo apt-get install -y -q ros-${{ matrix.distro }}-*tracetools* babeltrace | |
- name: Make sure that tracing instrumentation is available | |
run: | | |
source /opt/ros/${{ matrix.distro }}/setup.bash | |
ros2 run tracetools status | |
- name: Build test_tracetools | |
run: | | |
source /opt/ros/${{ matrix.distro }}/setup.bash | |
colcon build --packages-select test_tracetools | |
- name: Generate trace and make sure it is not empty | |
run: | | |
source install/setup.bash | |
ros2 launch tracetools_launch example.launch.py | |
babeltrace ~/.ros/tracing/ | |
- name: Build tracetools without tracepoints | |
run: | | |
cd $GITHUB_WORKSPACE/ws | |
source /opt/ros/${{ matrix.distro }}/setup.bash | |
colcon build --packages-select tracetools --cmake-args -DTRACETOOLS_TRACEPOINTS_EXCLUDED=ON | |
- name: Make sure that tracing instrumentation is not available | |
run: | | |
cd $GITHUB_WORKSPACE/ws | |
source install/setup.bash | |
(! ros2 run tracetools status) | |
source: | |
runs-on: ubuntu-latest | |
container: | |
image: ubuntu:24.04 | |
continue-on-error: true | |
strategy: | |
fail-fast: false | |
matrix: | |
distro: | |
- rolling | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
path: ws/src/ros2/ros2_tracing | |
- uses: ros-tooling/setup-ros@master | |
- name: Build | |
run: | | |
cd $GITHUB_WORKSPACE/ws | |
vcs import src/ --input https://raw.githubusercontent.com/ros2/ros2/${{ matrix.distro }}/ros2.repos --skip-existing | |
vcs log -l1 src/ | |
rosdep update | |
rosdep install -r --from-paths src --ignore-src -y --rosdistro ${{ matrix.distro }} --skip-keys "fastcdr rti-connext-dds-6.0.1 urdfdom_headers" | |
colcon build --packages-up-to tracetools ros2run ros2launch demo_nodes_cpp tracetools_launch test_tracetools | |
- name: Make sure that tracing instrumentation is available | |
run: | | |
cd $GITHUB_WORKSPACE/ws | |
source install/setup.bash | |
ros2 run tracetools status | |
- name: Generate trace and make sure it is not empty | |
run: | | |
cd $GITHUB_WORKSPACE/ws | |
source install/setup.bash | |
ros2 launch tracetools_launch example.launch.py | |
babeltrace ~/.ros/tracing/ | |
- name: Build tracetools without tracepoints | |
run: | | |
cd $GITHUB_WORKSPACE/ws | |
colcon build --packages-select tracetools --cmake-clean-cache --cmake-args -DTRACETOOLS_TRACEPOINTS_EXCLUDED=ON | |
- name: Make sure that tracing instrumentation is not available | |
run: | | |
cd $GITHUB_WORKSPACE/ws | |
source install/setup.bash | |
(! ros2 run tracetools status) | |
- name: Remove LTTng-UST | |
run: | | |
sudo apt-get purge -y liblttng-ust-dev | |
- name: Make sure building tracetools without LTTng fails | |
run: | | |
cd $GITHUB_WORKSPACE/ws | |
(! colcon build --packages-select tracetools --cmake-clean-cache) | |
- name: Make sure building tracetools without LTTng and without tracepoints works | |
run: | | |
cd $GITHUB_WORKSPACE/ws | |
colcon build --packages-select tracetools --cmake-clean-cache --cmake-args -DTRACETOOLS_TRACEPOINTS_EXCLUDED=ON | |
- name: Make sure that tracing instrumentation is not available | |
run: | | |
cd $GITHUB_WORKSPACE/ws | |
source install/setup.bash | |
(! ros2 run tracetools status) |