diff --git a/.github/dependabot.yml b/.github/dependabot.yml
index f5e9921f..a54004f9 100644
--- a/.github/dependabot.yml
+++ b/.github/dependabot.yml
@@ -11,6 +11,13 @@ updates:
directory: "/"
schedule:
interval: "weekly"
+ - package-ecosystem: "github-actions"
+ # Workflow files stored in the
+ # default location of `.github/workflows`
+ directory: "/"
+ schedule:
+ interval: "weekly"
+ target-branch: "jazzy"
- package-ecosystem: "github-actions"
# Workflow files stored in the
# default location of `.github/workflows`
diff --git a/.github/mergify.yml b/.github/mergify.yml
index 84ad380e..44f51cf5 100644
--- a/.github/mergify.yml
+++ b/.github/mergify.yml
@@ -8,6 +8,15 @@ pull_request_rules:
branches:
- humble
+ - name: Backport to jazzy at reviewers discretion
+ conditions:
+ - base=master
+ - "label=backport-jazzy"
+ actions:
+ backport:
+ branches:
+ - jazzy
+
- name: Ask to resolve conflict
conditions:
- conflict
diff --git a/.github/workflows/README.md b/.github/workflows/README.md
index 05e7602b..0d7a3bdd 100644
--- a/.github/workflows/README.md
+++ b/.github/workflows/README.md
@@ -2,7 +2,8 @@
ROS 2 Distro | Branch | Build status | Documentation | Released packages
:---------: | :----: | :----------: | :-----------: | :---------------:
-**Rolling**
**Jazzy** | [`master`](https://github.com/ros-controls/realtime_tools/tree/master) | [](https://github.com/ros-controls/realtime_tools/actions/workflows/rolling-binary-build.yml?branch=master)
[](https://github.com/ros-controls/realtime_tools/actions/workflows/rolling-source-build.yml?branch=master) | [API](http://docs.ros.org/en/rolling/p/realtime_tools/) | [realtime_tools](https://index.ros.org/p/realtime_tools/#rolling)
+**Rolling** | [`master`](https://github.com/ros-controls/realtime_tools/tree/master) | [](https://github.com/ros-controls/realtime_tools/actions/workflows/rolling-binary-build.yml?branch=master)
[](https://github.com/ros-controls/realtime_tools/actions/workflows/rolling-source-build.yml?branch=master) | [API](http://docs.ros.org/en/rolling/p/realtime_tools/) | [realtime_tools](https://index.ros.org/p/realtime_tools/#rolling)
+**Jazzy** | [`jazzy`](https://github.com/ros-controls/realtime_tools/tree/jazzy) | [](https://github.com/ros-controls/realtime_tools/actions/workflows/jazzy-binary-build.yml?branch=jazzy)
[](https://github.com/ros-controls/realtime_tools/actions/workflows/jazzy-source-build.yml?branch=jazzy) | [API](http://docs.ros.org/en/jazzy/p/realtime_tools/) | [realtime_tools](https://index.ros.org/p/realtime_tools/#jazzy)
**Humble** | [`humble`](https://github.com/ros-controls/realtime_tools/tree/humble) | [](https://github.com/ros-controls/realtime_tools/actions/workflows/humble-binary-build.yml?branch=master)
[](https://github.com/ros-controls/realtime_tools/actions/workflows/humble-source-build.yml?branch=master) | [API](http://docs.ros.org/en/humble/p/realtime_tools/) | [realtime_tools](https://index.ros.org/p/realtime_tools/#humble)
diff --git a/.github/workflows/jazzy-abi-compatibility.yml b/.github/workflows/jazzy-abi-compatibility.yml
new file mode 100644
index 00000000..ce5d8381
--- /dev/null
+++ b/.github/workflows/jazzy-abi-compatibility.yml
@@ -0,0 +1,17 @@
+name: Jazzy ABI Compatibility Check
+on:
+ workflow_dispatch:
+ pull_request:
+ branches:
+ - jazzy
+
+concurrency:
+ # cancel previous runs of the same workflow, except for pushes on jazzy branch
+ group: ${{ github.workflow }}-${{ github.ref }}
+ cancel-in-progress: ${{ !startsWith(github.ref, '/refs/heads') }}
+
+jobs:
+ abi_check:
+ uses: ros-controls/ros2_control_ci/.github/workflows/reusable-abi-check.yml@master
+ with:
+ ros_distro: jazzy
diff --git a/.github/workflows/jazzy-binary-build-win.yml b/.github/workflows/jazzy-binary-build-win.yml
new file mode 100644
index 00000000..d3f87de1
--- /dev/null
+++ b/.github/workflows/jazzy-binary-build-win.yml
@@ -0,0 +1,34 @@
+name: Jazzy Windows Binary Build
+# author: Christoph Fröhlich
+# description: 'Build & test all dependencies from released (binary) windows packages.'
+
+on:
+ workflow_dispatch:
+ pull_request:
+ branches:
+ - jazzy
+ # types:
+ # - labeled
+ push:
+ branches:
+ - jazzy
+ # issue_comment:
+ # types:
+ # - created
+
+concurrency:
+ # cancel previous runs of the same workflow, except for pushes on jazzy branch
+ group: ${{ github.workflow }}-${{ github.ref }}
+ cancel-in-progress: ${{ !startsWith(github.ref, '/refs/heads') }}
+
+jobs:
+ binary-windows:
+ # if: |
+ # (github.event_name == 'issue_comment' && contains(github.event.comment.body, '/check-windows')) ||
+ # (github.event_name == 'pull_request' && contains(github.event.label.name, 'check-windows')) ||
+ # (github.event_name == 'workflow_dispatch')
+ uses: ros-controls/ros2_control_ci/.github/workflows/reusable-ros-tooling-win-build.yml@master
+ with:
+ ros_distro: jazzy
+ ref_for_scheduled_build: jazzy
+ os_name: windows-2019
diff --git a/.github/workflows/jazzy-binary-build.yml b/.github/workflows/jazzy-binary-build.yml
new file mode 100644
index 00000000..afca09c1
--- /dev/null
+++ b/.github/workflows/jazzy-binary-build.yml
@@ -0,0 +1,43 @@
+name: Jazzy Binary Build
+# author: Denis Štogl
+# description: 'Build & test all dependencies from released (binary) packages.'
+
+on:
+ workflow_dispatch:
+ pull_request:
+ branches:
+ - jazzy
+ push:
+ branches:
+ - jazzy
+ schedule:
+ # Run every morning to detect flakiness and broken dependencies
+ - cron: '03 1 * * *'
+
+concurrency:
+ # cancel previous runs of the same workflow, except for pushes on jazzy branch
+ group: ${{ github.workflow }}-${{ github.ref }}
+ cancel-in-progress: ${{ !startsWith(github.ref, '/refs/heads') }}
+
+jobs:
+ binary:
+ uses: ros-controls/ros2_control_ci/.github/workflows/reusable-industrial-ci-with-cache.yml@master
+ strategy:
+ fail-fast: false
+ matrix:
+ ROS_DISTRO: [jazzy]
+ ROS_REPO: [main, testing]
+ with:
+ ros_distro: ${{ matrix.ROS_DISTRO }}
+ ros_repo: ${{ matrix.ROS_REPO }}
+ ref_for_scheduled_build: jazzy
+ binary_clang:
+ uses: ros-controls/ros2_control_ci/.github/workflows/reusable-industrial-ci-with-cache.yml@master
+ with:
+ ros_distro: jazzy
+ ros_repo: testing
+ ref_for_scheduled_build: jazzy
+ additional_debs: clang
+ c_compiler: clang
+ cxx_compiler: clang++
+ not_test_build: true
diff --git a/.github/workflows/jazzy-binary-downstream-build.yml b/.github/workflows/jazzy-binary-downstream-build.yml
new file mode 100644
index 00000000..252ba2e8
--- /dev/null
+++ b/.github/workflows/jazzy-binary-downstream-build.yml
@@ -0,0 +1,28 @@
+name: Jazzy Downstream Build
+# description: 'Build & test downstream packages from source.'
+# author: Christoph Froehlich
+
+on:
+ workflow_dispatch:
+ pull_request:
+ branches:
+ - jazzy
+ push:
+ branches:
+ - jazzy
+
+concurrency:
+ # cancel previous runs of the same workflow, except for pushes on jazzy branch
+ group: ${{ github.workflow }}-${{ github.ref }}
+ cancel-in-progress: ${{ !startsWith(github.ref, '/refs/heads') }}
+
+jobs:
+ build-downstream:
+ uses: ros-controls/ros2_control_ci/.github/workflows/reusable-industrial-ci-with-cache.yml@master
+ with:
+ ros_distro: jazzy
+ ros_repo: testing
+ ref_for_scheduled_build: jazzy
+ not_test_build: true
+ downstream_workspace: ros_controls.jazzy.repos
+ not_test_downstream: true
diff --git a/.github/workflows/jazzy-coverage-build.yml b/.github/workflows/jazzy-coverage-build.yml
new file mode 100644
index 00000000..864afbcd
--- /dev/null
+++ b/.github/workflows/jazzy-coverage-build.yml
@@ -0,0 +1,22 @@
+name: Jazzy Coverage Build
+on:
+ workflow_dispatch:
+ push:
+ branches:
+ - jazzy
+ pull_request:
+ branches:
+ - jazzy
+
+concurrency:
+ # cancel previous runs of the same workflow, except for pushes on jazzy branch
+ group: ${{ github.workflow }}-${{ github.ref }}
+ cancel-in-progress: ${{ !startsWith(github.ref, '/refs/heads') }}
+
+jobs:
+ coverage:
+ name: coverage build
+ uses: ros-controls/ros2_control_ci/.github/workflows/reusable-build-coverage.yml@master
+ secrets: inherit
+ with:
+ ros_distro: jazzy
diff --git a/.github/workflows/jazzy-debian-build.yml b/.github/workflows/jazzy-debian-build.yml
new file mode 100644
index 00000000..f1629d6b
--- /dev/null
+++ b/.github/workflows/jazzy-debian-build.yml
@@ -0,0 +1,21 @@
+name: Jazzy Debian Build
+on:
+ workflow_dispatch:
+ pull_request:
+ branches:
+ - jazzy
+ schedule:
+ # Run every day to detect flakiness and broken dependencies
+ - cron: '33 2 * * *'
+
+concurrency:
+ # cancel previous runs of the same workflow, except for pushes on jazzy branch
+ group: ${{ github.workflow }}-${{ github.ref }}
+ cancel-in-progress: ${{ !startsWith(github.ref, '/refs/heads') }}
+
+jobs:
+ debian_source_build:
+ uses: ros-controls/ros2_control_ci/.github/workflows/reusable-debian-build.yml@master
+ with:
+ ros_distro: jazzy
+ ref_for_scheduled_build: jazzy
diff --git a/.github/workflows/jazzy-pre-commit.yml b/.github/workflows/jazzy-pre-commit.yml
new file mode 100644
index 00000000..4deac0fc
--- /dev/null
+++ b/.github/workflows/jazzy-pre-commit.yml
@@ -0,0 +1,17 @@
+name: Jazzy Pre-Commit
+
+on:
+ workflow_dispatch:
+ pull_request:
+ branches:
+ - jazzy
+
+concurrency:
+ group: ${{ github.workflow }}-${{ github.ref }}
+ cancel-in-progress: true
+
+jobs:
+ pre-commit:
+ uses: ros-controls/ros2_control_ci/.github/workflows/reusable-pre-commit.yml@master
+ with:
+ ros_distro: jazzy
diff --git a/.github/workflows/jazzy-rhel-semi-binary-build.yml b/.github/workflows/jazzy-rhel-semi-binary-build.yml
new file mode 100644
index 00000000..f740cb76
--- /dev/null
+++ b/.github/workflows/jazzy-rhel-semi-binary-build.yml
@@ -0,0 +1,21 @@
+name: Jazzy RHEL Binary Build
+on:
+ workflow_dispatch:
+ pull_request:
+ branches:
+ - jazzy
+ schedule:
+ # Run every day to detect flakiness and broken dependencies
+ - cron: '03 3 * * *'
+
+concurrency:
+ # cancel previous runs of the same workflow, except for pushes on jazzy branch
+ group: ${{ github.workflow }}-${{ github.ref }}
+ cancel-in-progress: ${{ !startsWith(github.ref, '/refs/heads') }}
+
+jobs:
+ rhel_semi_binary_build:
+ uses: ros-controls/ros2_control_ci/.github/workflows/reusable-rhel-binary-build.yml@master
+ with:
+ ros_distro: jazzy
+ ref_for_scheduled_build: jazzy
diff --git a/.github/workflows/jazzy-rosdoc2.yml b/.github/workflows/jazzy-rosdoc2.yml
new file mode 100644
index 00000000..5d3f131e
--- /dev/null
+++ b/.github/workflows/jazzy-rosdoc2.yml
@@ -0,0 +1,20 @@
+name: Jazzy rosdoc2
+
+on:
+ workflow_dispatch:
+ pull_request:
+ branches:
+ - jazzy
+ paths:
+ - doc/**
+ - rosdoc2.yaml
+ - package.xml
+
+concurrency:
+ # cancel previous runs of the same workflow, except for pushes on jazzy branch
+ group: ${{ github.workflow }}-${{ github.ref }}
+ cancel-in-progress: ${{ !startsWith(github.ref, '/refs/heads') }}
+
+jobs:
+ check:
+ uses: ros-controls/ros2_control_ci/.github/workflows/reusable-rosdoc2.yml@master
diff --git a/.github/workflows/jazzy-source-build.yml b/.github/workflows/jazzy-source-build.yml
new file mode 100644
index 00000000..533b1eed
--- /dev/null
+++ b/.github/workflows/jazzy-source-build.yml
@@ -0,0 +1,19 @@
+name: Jazzy Source Build
+on:
+ workflow_dispatch:
+ push:
+ branches:
+ - jazzy
+ schedule:
+ # Run every day to detect flakiness and broken dependencies
+ - cron: '03 3 * * *'
+
+jobs:
+ source:
+ uses: ros-controls/ros2_control_ci/.github/workflows/reusable-ros-tooling-source-build.yml@master
+ with:
+ ros_distro: jazzy
+ ref: jazzy
+ ros2_repo_branch: jazzy
+ os_name: ubuntu-latest
+ container: ubuntu:24.04
diff --git a/.github/workflows/rolling-abi-compatibility.yml b/.github/workflows/rolling-abi-compatibility.yml
index 76331f44..c7a34fd0 100644
--- a/.github/workflows/rolling-abi-compatibility.yml
+++ b/.github/workflows/rolling-abi-compatibility.yml
@@ -13,15 +13,11 @@ concurrency:
jobs:
abi_check:
runs-on: ubuntu-latest
- strategy:
- fail-fast: false
- matrix:
- ROS_DISTRO: [jazzy, rolling]
steps:
- uses: actions/checkout@v4
- uses: ros-industrial/industrial_ci@master
env:
- ROS_DISTRO: ${{ matrix.ROS_DISTRO }}
+ ROS_DISTRO: rolling
ROS_REPO: main
ABICHECK_URL: github:${{ github.repository }}#${{ github.base_ref }}
NOT_TEST_BUILD: true
diff --git a/.github/workflows/rolling-binary-build.yml b/.github/workflows/rolling-binary-build.yml
index 78becc36..cc5f5c21 100644
--- a/.github/workflows/rolling-binary-build.yml
+++ b/.github/workflows/rolling-binary-build.yml
@@ -25,7 +25,7 @@ jobs:
strategy:
fail-fast: false
matrix:
- ROS_DISTRO: [jazzy, rolling]
+ ROS_DISTRO: [rolling]
ROS_REPO: [main, testing]
with:
ros_distro: ${{ matrix.ROS_DISTRO }}
diff --git a/.github/workflows/rolling-binary-downstream-build.yml b/.github/workflows/rolling-binary-downstream-build.yml
index 91efb7e3..3192b6e3 100644
--- a/.github/workflows/rolling-binary-downstream-build.yml
+++ b/.github/workflows/rolling-binary-downstream-build.yml
@@ -19,15 +19,10 @@ concurrency:
jobs:
build-downstream:
uses: ros-controls/ros2_control_ci/.github/workflows/reusable-industrial-ci-with-cache.yml@master
- strategy:
- fail-fast: false
- matrix:
- ROS_DISTRO: [jazzy, rolling]
- ROS_REPO: [testing]
with:
- ros_distro: ${{ matrix.ROS_DISTRO }}
- ros_repo: ${{ matrix.ROS_REPO }}
+ ros_distro: rolling
+ ros_repo: testing
ref_for_scheduled_build: master
not_test_build: true
- downstream_workspace: ros_controls.${{ matrix.ROS_DISTRO }}.repos
+ downstream_workspace: ros_controls.rolling.repos
not_test_downstream: true
diff --git a/.github/workflows/rolling-debian-build.yml b/.github/workflows/rolling-debian-build.yml
index ae3ef3bc..8e0898ca 100644
--- a/.github/workflows/rolling-debian-build.yml
+++ b/.github/workflows/rolling-debian-build.yml
@@ -16,10 +16,6 @@ concurrency:
jobs:
debian_source_build:
uses: ros-controls/ros2_control_ci/.github/workflows/reusable-debian-build.yml@master
- strategy:
- fail-fast: false
- matrix:
- ROS_DISTRO: [jazzy, rolling]
with:
- ros_distro: ${{ matrix.ROS_DISTRO }}
+ ros_distro: rolling
ref_for_scheduled_build: master
diff --git a/.github/workflows/rolling-pre-commit.yml b/.github/workflows/rolling-pre-commit.yml
index aec5a783..fa444fc5 100644
--- a/.github/workflows/rolling-pre-commit.yml
+++ b/.github/workflows/rolling-pre-commit.yml
@@ -13,9 +13,5 @@ concurrency:
jobs:
pre-commit:
uses: ros-controls/ros2_control_ci/.github/workflows/reusable-pre-commit.yml@master
- strategy:
- fail-fast: false
- matrix:
- ROS_DISTRO: [jazzy, rolling]
with:
- ros_distro: ${{ matrix.ROS_DISTRO }}
+ ros_distro: rolling
diff --git a/.github/workflows/rolling-rhel-semi-binary-build.yml b/.github/workflows/rolling-rhel-semi-binary-build.yml
index ab50864c..5ce19b00 100644
--- a/.github/workflows/rolling-rhel-semi-binary-build.yml
+++ b/.github/workflows/rolling-rhel-semi-binary-build.yml
@@ -16,10 +16,6 @@ concurrency:
jobs:
rhel_semi_binary_build:
uses: ros-controls/ros2_control_ci/.github/workflows/reusable-rhel-binary-build.yml@master
- strategy:
- fail-fast: false
- matrix:
- ROS_DISTRO: [jazzy, rolling]
with:
- ros_distro: ${{ matrix.ROS_DISTRO }}
+ ros_distro: rolling
ref_for_scheduled_build: master
diff --git a/.github/workflows/rolling-source-build.yml b/.github/workflows/rolling-source-build.yml
index fb885556..e984dd46 100644
--- a/.github/workflows/rolling-source-build.yml
+++ b/.github/workflows/rolling-source-build.yml
@@ -11,19 +11,9 @@ on:
jobs:
source:
uses: ros-controls/ros2_control_ci/.github/workflows/reusable-ros-tooling-source-build.yml@master
- strategy:
- fail-fast: false
- matrix:
- include:
- - ROS_DISTRO: jazzy
- CONTAINER: ubuntu:24.04
- OS_NAME: ubuntu-latest
- - ROS_DISTRO: rolling
- CONTAINER: ubuntu:24.04
- OS_NAME: ubuntu-latest
with:
- ros_distro: ${{ matrix.ROS_DISTRO }}
+ ros_distro: rolling
ref: master
- ros2_repo_branch: ${{ matrix.ROS_DISTRO }}
- os_name: ${{ matrix.OS_NAME }}
- container: ${{ matrix.CONTAINER }}
+ ros2_repo_branch: rolling
+ os_name: ubuntu-latest
+ container: ubuntu:24.04
diff --git a/README.md b/README.md
index 6903dafd..0f56f4fb 100644
--- a/README.md
+++ b/README.md
@@ -9,7 +9,7 @@ Contains a set of tools that can be used from a hard realtime thread, without br
ROS2 Distro | Branch | Build status | Documentation | Released packages
:---------: | :----: | :----------: | :-----------: | :---------------:
**Rolling** | [`master`](https://github.com/ros-controls/realtime_tools/tree/master) | [](https://github.com/ros-controls/realtime_tools/actions/workflows/rolling-binary-build.yml?branch=master)
[](https://github.com/ros-controls/realtime_tools/actions/workflows/rolling-source-build.yml?branch=master) | [API](http://docs.ros.org/en/rolling/p/realtime_tools/) | [realtime_tools](https://index.ros.org/p/realtime_tools/#rolling)
-**Jazzy** | [`master`](https://github.com/ros-controls/realtime_tools/tree/master) | see above | [API](http://docs.ros.org/en/jazzy/p/realtime_tools/) | [realtime_tools](https://index.ros.org/p/realtime_tools/#jazzy)
+**Jazzy** | [`jazzy`](https://github.com/ros-controls/realtime_tools/tree/jazzy) | [](https://github.com/ros-controls/realtime_tools/actions/workflows/jazzy-binary-build.yml?branch=jazzy)
[](https://github.com/ros-controls/realtime_tools/actions/workflows/jazzy-source-build.yml?branch=jazzy) | [API](http://docs.ros.org/en/jazzy/p/realtime_tools/) | [realtime_tools](https://index.ros.org/p/realtime_tools/#jazzy)
**Humble** | [`humble`](https://github.com/ros-controls/realtime_tools/tree/humble) | [](https://github.com/ros-controls/realtime_tools/actions/workflows/humble-binary-build.yml?branch=master)
[](https://github.com/ros-controls/realtime_tools/actions/workflows/humble-source-build.yml?branch=master) | [API](http://docs.ros.org/en/humble/p/realtime_tools/) | [realtime_tools](https://index.ros.org/p/realtime_tools/#humble)