Skip to content

Commit 17cee10

Browse files
committed
Add CI and nightly for each distro
Signed-off-by: Carlosespicur <carlosespicur@proton.me>
1 parent 9c6c16a commit 17cee10

6 files changed

Lines changed: 162 additions & 0 deletions

File tree

.github/workflows/humble-ci.yml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
name: rcutils CI Humble
2+
3+
on:
4+
push:
5+
branches: [ humble ]
6+
pull_request:
7+
branches: [ humble ]
8+
9+
jobs:
10+
humble-ci:
11+
uses: ./.github/workflows/reusable-ci.yml
12+
with:
13+
branch: ${{ github.ref }}
14+
os: ubuntu-22.04
15+
docker-image: ubuntu:jammy
16+
ros-distribution: humble

.github/workflows/jazzy-ci.yml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
name: rcutils CI Jazzy
2+
3+
on:
4+
push:
5+
branches: [ jazzy ]
6+
pull_request:
7+
branches: [ jazzy ]
8+
9+
jobs:
10+
humble-ci:
11+
uses: ./.github/workflows/reusable-ci.yml
12+
with:
13+
branch: ${{ github.ref }}
14+
os: ubuntu-24.04
15+
docker-image: ubuntu:noble
16+
ros-distribution: jazzy

.github/workflows/kilted-ci.yml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
name: rcutils CI Kilted
2+
3+
on:
4+
push:
5+
branches: [ kilted ]
6+
pull_request:
7+
branches: [ kilted ]
8+
9+
jobs:
10+
humble-ci:
11+
uses: ./.github/workflows/reusable-ci.yml
12+
with:
13+
branch: ${{ github.ref }}
14+
os: ubuntu-24.04
15+
docker-image: ubuntu:noble
16+
ros-distribution: kilted

.github/workflows/nightly-ci.yml

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
name: rcutils nightly CI (all distributions)
2+
3+
on:
4+
schedule:
5+
# Run once per day to detect broken dependencies.
6+
- cron: '59 23 * * *'
7+
8+
jobs:
9+
humble-ci:
10+
uses: ./.github/workflows/reusable-ci.yml
11+
with:
12+
branch: humble
13+
os: ubuntu-22.04
14+
docker-image: ubuntu:jammy
15+
ros-distribution: humble
16+
jazzy-ci:
17+
uses: ./.github/workflows/reusable-ci.yml
18+
with:
19+
branch: jazzy
20+
os: ubuntu-24.04
21+
docker-image: ubuntu:noble
22+
ros-distribution: jazzy
23+
kilted-ci:
24+
uses: ./.github/workflows/reusable-ci.yml
25+
with:
26+
branch: kilted
27+
os: ubuntu-24.04
28+
docker-image: ubuntu:noble
29+
ros-distribution: kilted
30+
rolling-ci:
31+
uses: ./.github/workflows/reusable-ci.yml
32+
with:
33+
branch: rolling
34+
os: ubuntu-24.04
35+
docker-image: ubuntu:noble
36+
ros-distribution: rolling

.github/workflows/reusable-ci.yml

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
name: Reusable rcutils CI
2+
3+
on:
4+
workflow_call:
5+
inputs:
6+
branch:
7+
description: "The rcutils branch to use for the workflow"
8+
required: true
9+
type: string
10+
os:
11+
description: "The OS to use for the workflow"
12+
required: true
13+
type: string
14+
docker-image:
15+
description: "The docker image to use for the workflow"
16+
required: true
17+
type: string
18+
ros-distribution:
19+
description: "The ROS distribution to use for the workflow"
20+
required: true
21+
type: string
22+
23+
jobs:
24+
build:
25+
runs-on: ${{ inputs.os }}
26+
strategy:
27+
fail-fast: false
28+
container:
29+
image: ${{ inputs.docker-image }}
30+
steps:
31+
32+
- name: Sync repository
33+
uses: actions/checkout@v5
34+
with:
35+
ref: ${{ inputs.branch }}
36+
submodules: recursive
37+
38+
- name: Setup ROS 2
39+
uses: ros-tooling/setup-ros@0.7.15
40+
with:
41+
use-ros2-testing: true
42+
required-ros-distributions: ${{ inputs.ros-distribution }}
43+
44+
- name : Download and install rcutils-dependencies
45+
run: |
46+
apt-get install ros-${{ inputs.ros-distribution }}-mimick-vendor
47+
apt-get -y install ros-${{ inputs.ros-distribution }}-performance-test-fixture
48+
49+
- uses : ros-tooling/action-ros-ci@0.4.5
50+
with:
51+
package-name: "rcutils"
52+
target-ros2-distro: ${{ inputs.ros-distribution }}
53+
colcon-defaults: |
54+
{
55+
"build": {
56+
"mixin": [ "coverage-gcc" ]
57+
}
58+
}
59+
colcon-mixin-repository: https://raw.githubusercontent.com/colcon/colcon-mixin-repository/master/index.yaml
60+
- uses: codecov/codecov-action@v1
61+
with:
62+
file: ros_ws/lcov/total_coverage.info

.github/workflows/rolling-ci.yml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
name: rcutils CI Rolling
2+
3+
on:
4+
push:
5+
branches: [ rolling ]
6+
pull_request:
7+
branches: [ rolling ]
8+
9+
jobs:
10+
humble-ci:
11+
uses: ./.github/workflows/reusable-ci.yml
12+
with:
13+
branch: ${{ github.ref }}
14+
os: ubuntu-24.04
15+
docker-image: ubuntu:noble
16+
ros-distribution: rolling

0 commit comments

Comments
 (0)