Repository navigation
49 lines (45 loc) · 1.65 KB
/
Copy pathrtps_interop.yml
File metadata and controls
49 lines (45 loc) · 1.65 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
name: RTPS interop (FastDDS / CycloneDDS / ROS 2)
# Minimal token scope: the harness only checks out and builds, never writes.
permissions:
contents: read
on:
pull_request:
paths:
- "components/rtps/**"
- "components/socket/**"
- "components/cdr/**"
- "lib/espp.cmake"
- "pc/tests/rtps_*"
- ".github/workflows/rtps_interop.yml"
workflow_dispatch:
# Supersede in-progress runs: a new commit on the same PR (or the same branch for
# a manual dispatch) cancels the earlier, now-stale interop run. Keyed by the
# workflow (so it never cross-cancels other workflows) + the PR number, which is
# globally unique - unlike the head branch name, two fork PRs can't collide on it.
# Falls back to github.ref for workflow_dispatch (no PR number there). This
# workflow never runs on push to main, so cancel-in-progress is always safe here.
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
jobs:
interop:
# Once per ROS 2 release the matrix supports: Jazzy (the image the harness
# was built on) and Humble (the LTS most deployed robots still run, with
# the older rmw_cyclonedds_cpp 1.3.x). One failing does not cancel the other.
name: interop (${{ matrix.distro }})
runs-on: ubuntu-latest
timeout-minutes: 50
strategy:
fail-fast: false
matrix:
distro: [jazzy, humble]
steps:
- uses: actions/checkout@v7
with:
submodules: "recursive"
- name: Run interop matrix
env:
ROS_DISTRO: ${{ matrix.distro }}
run: |
cd components/rtps/interop
./run.sh