From 69088ec3790e0a473ea557d35df4e4d7a098263b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christoph=20Fr=C3=B6hlich?= Date: Thu, 16 Jan 2025 16:57:18 +0100 Subject: [PATCH 1/2] Branch for humble (#265) (cherry picked from commit 84a903b0fc6129e6b088a2209acde1b10ca4b8b1) --- .github/dependabot.yml | 7 ++++ .github/mergify.yml | 9 +++++ .../workflows/humble-abi-compatibility.yml | 18 ++++++++++ .github/workflows/humble-build-binary.yml | 35 +++++++++++++++++++ .github/workflows/humble-build-coverage.yml | 17 +++++++++ .github/workflows/humble-build-downstream.yml | 23 ++++++++++++ .../workflows/humble-build-semi-binary.yml | 24 +++++++++++++ .github/workflows/humble-build-source.yml | 19 ++++++++++ .github/workflows/humble-ci-pre-commit.yml | 13 +++++++ .github/workflows/humble-debian-build.yml | 18 ++++++++++ .../humble-rhel-semi-binary-build.yml | 18 ++++++++++ ...lity.yml => rolling-abi-compatibility.yml} | 2 +- ...ld-binary.yml => rolling-build-binary.yml} | 4 ++- ...overage.yml => rolling-build-coverage.yml} | 0 ...tream.yml => rolling-build-downstream.yml} | 4 ++- ...nary.yml => rolling-build-semi-binary.yml} | 4 ++- ...ld-source.yml => rolling-build-source.yml} | 3 -- ...e-commit.yml => rolling-ci-pre-commit.yml} | 4 ++- ...ian-build.yml => rolling-debian-build.yml} | 2 +- ...yml => rolling-rhel-semi-binary-build.yml} | 2 +- README.md | 6 ++-- 21 files changed, 219 insertions(+), 13 deletions(-) create mode 100644 .github/workflows/humble-abi-compatibility.yml create mode 100644 .github/workflows/humble-build-binary.yml create mode 100644 .github/workflows/humble-build-coverage.yml create mode 100644 .github/workflows/humble-build-downstream.yml create mode 100644 .github/workflows/humble-build-semi-binary.yml create mode 100644 .github/workflows/humble-build-source.yml create mode 100644 .github/workflows/humble-ci-pre-commit.yml create mode 100644 .github/workflows/humble-debian-build.yml create mode 100644 .github/workflows/humble-rhel-semi-binary-build.yml rename .github/workflows/{abi-compatibility.yml => rolling-abi-compatibility.yml} (91%) rename .github/workflows/{build-binary.yml => rolling-build-binary.yml} (94%) rename .github/workflows/{build-coverage.yml => rolling-build-coverage.yml} (100%) rename .github/workflows/{build-downstream.yml => rolling-build-downstream.yml} (91%) rename .github/workflows/{build-semi-binary.yml => rolling-build-semi-binary.yml} (91%) rename .github/workflows/{build-source.yml => rolling-build-source.yml} (90%) rename .github/workflows/{ci-pre-commit.yml => rolling-ci-pre-commit.yml} (79%) rename .github/workflows/{debian-build.yml => rolling-debian-build.yml} (92%) rename .github/workflows/{rhel-semi-binary-build.yml => rolling-rhel-semi-binary-build.yml} (92%) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 05a48fc6..f5e9921f 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -11,3 +11,10 @@ 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: "humble" diff --git a/.github/mergify.yml b/.github/mergify.yml index f31518a0..bc3c219e 100644 --- a/.github/mergify.yml +++ b/.github/mergify.yml @@ -1,5 +1,14 @@ pull_request_rules: + - name: Backport to humble at reviewers discretion + conditions: + - base=master + - "label=backport-humble" + actions: + backport: + branches: + - humble + - name: Ask to resolve conflict conditions: - conflict diff --git a/.github/workflows/humble-abi-compatibility.yml b/.github/workflows/humble-abi-compatibility.yml new file mode 100644 index 00000000..5c288fab --- /dev/null +++ b/.github/workflows/humble-abi-compatibility.yml @@ -0,0 +1,18 @@ +name: Humble - ABI Compatibility Check +on: + workflow_dispatch: + pull_request: + branches: + - humble + +jobs: + abi_check: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: ros-industrial/industrial_ci@master + env: + ROS_DISTRO: humble + ROS_REPO: testing + ABICHECK_URL: github:${{ github.repository }}#${{ github.base_ref }} + NOT_TEST_BUILD: true diff --git a/.github/workflows/humble-build-binary.yml b/.github/workflows/humble-build-binary.yml new file mode 100644 index 00000000..a36c0b78 --- /dev/null +++ b/.github/workflows/humble-build-binary.yml @@ -0,0 +1,35 @@ +# This config uses industrial_ci (https://github.com/ros-industrial/industrial_ci.git). +# For troubleshooting, see readme (https://github.com/ros-industrial/industrial_ci/blob/master/README.rst) + +name: Humble - Binary Build +on: + pull_request: + branches: + - humble + push: + branches: + - humble + schedule: + # Run every day to detect flakiness and broken dependencies + - cron: '28 6 * * *' + + +jobs: + binary: + uses: ros-controls/ros2_control_ci/.github/workflows/reusable-industrial-ci-with-cache.yml@master + with: + ros_distro: humble + ros_repo: testing + upstream_workspace: control_toolbox-not-released.humble.repos + ref_for_scheduled_build: humble + binary_clang: + uses: ros-controls/ros2_control_ci/.github/workflows/reusable-industrial-ci-with-cache.yml@master + with: + ros_distro: humble + ros_repo: testing + upstream_workspace: control_toolbox-not-released.humble.repos + ref_for_scheduled_build: humble + additional_debs: clang + c_compiler: clang + cxx_compiler: clang++ + not_test_build: true diff --git a/.github/workflows/humble-build-coverage.yml b/.github/workflows/humble-build-coverage.yml new file mode 100644 index 00000000..1571c4f3 --- /dev/null +++ b/.github/workflows/humble-build-coverage.yml @@ -0,0 +1,17 @@ +name: Humble - Coverage Build +on: + workflow_dispatch: + push: + branches: + - humble + pull_request: + branches: + - humble + +jobs: + coverage_humble: + name: coverage build - humble + uses: ros-controls/ros2_control_ci/.github/workflows/reusable-build-coverage.yml@master + secrets: inherit + with: + ros_distro: humble diff --git a/.github/workflows/humble-build-downstream.yml b/.github/workflows/humble-build-downstream.yml new file mode 100644 index 00000000..c1abe2a4 --- /dev/null +++ b/.github/workflows/humble-build-downstream.yml @@ -0,0 +1,23 @@ +# This config uses industrial_ci (https://github.com/ros-industrial/industrial_ci.git). +# For troubleshooting, see readme (https://github.com/ros-industrial/industrial_ci/blob/master/README.rst) + +name: Humble - Downstream Build +on: + pull_request: + branches: + - humble + push: + branches: + - humble + + +jobs: + build-downstream: + uses: ros-controls/ros2_control_ci/.github/workflows/reusable-industrial-ci-with-cache.yml@master + with: + ros_distro: humble + ros_repo: testing + ref_for_scheduled_build: humble + not_test_build: true + downstream_workspace: ros_controls.humble.repos + not_test_downstream: true diff --git a/.github/workflows/humble-build-semi-binary.yml b/.github/workflows/humble-build-semi-binary.yml new file mode 100644 index 00000000..5d5eb76f --- /dev/null +++ b/.github/workflows/humble-build-semi-binary.yml @@ -0,0 +1,24 @@ +# This config uses industrial_ci (https://github.com/ros-industrial/industrial_ci.git). +# For troubleshooting, see readme (https://github.com/ros-industrial/industrial_ci/blob/master/README.rst) + +name: Humble - Semi-Binary Build +on: + pull_request: + branches: + - humble + push: + branches: + - humble + schedule: + # Run every day to detect flakiness and broken dependencies + - cron: '28 6 * * *' + + +jobs: + semi-binary: + uses: ros-controls/ros2_control_ci/.github/workflows/reusable-industrial-ci-with-cache.yml@master + with: + ros_distro: humble + ros_repo: testing + upstream_workspace: control_toolbox.humble.repos + ref_for_scheduled_build: humble diff --git a/.github/workflows/humble-build-source.yml b/.github/workflows/humble-build-source.yml new file mode 100644 index 00000000..447cce9b --- /dev/null +++ b/.github/workflows/humble-build-source.yml @@ -0,0 +1,19 @@ +name: Humble - Source Build +on: + workflow_dispatch: + push: + branches: + - humble + schedule: + # Run every day to detect flakiness and broken dependencies + - cron: '03 3 * * *' + +jobs: + source_build: + uses: ros-controls/ros2_control_ci/.github/workflows/reusable-ros-tooling-source-build.yml@master + with: + ros_distro: humble + ref: humble + ros2_repo_branch: humble + os_name: ubuntu-22.04 + container: "" diff --git a/.github/workflows/humble-ci-pre-commit.yml b/.github/workflows/humble-ci-pre-commit.yml new file mode 100644 index 00000000..b707737f --- /dev/null +++ b/.github/workflows/humble-ci-pre-commit.yml @@ -0,0 +1,13 @@ +name: Humble - Pre-Commit + +on: + workflow_dispatch: + pull_request: + branches: + - humble + +jobs: + pre-commit: + uses: ros-controls/ros2_control_ci/.github/workflows/reusable-pre-commit.yml@master + with: + ros_distro: humble diff --git a/.github/workflows/humble-debian-build.yml b/.github/workflows/humble-debian-build.yml new file mode 100644 index 00000000..79a9fc79 --- /dev/null +++ b/.github/workflows/humble-debian-build.yml @@ -0,0 +1,18 @@ +name: Humble - Debian Source Build +on: + workflow_dispatch: + pull_request: + branches: + - humble + schedule: + # Run every day to detect flakiness and broken dependencies + - cron: '03 5 * * *' + + +jobs: + debian_source_build: + uses: ros-controls/ros2_control_ci/.github/workflows/reusable-debian-build.yml@master + with: + ros_distro: humble + upstream_workspace: control_toolbox.humble.repos + ref_for_scheduled_build: humble diff --git a/.github/workflows/humble-rhel-semi-binary-build.yml b/.github/workflows/humble-rhel-semi-binary-build.yml new file mode 100644 index 00000000..58a154e4 --- /dev/null +++ b/.github/workflows/humble-rhel-semi-binary-build.yml @@ -0,0 +1,18 @@ +name: Humble - RHEL Semi-Binary Build +on: + workflow_dispatch: + pull_request: + branches: + - humble + schedule: + # Run every day to detect flakiness and broken dependencies + - cron: '03 3 * * *' + + +jobs: + rhel_semi_binary_build: + uses: ros-controls/ros2_control_ci/.github/workflows/reusable-rhel-binary-build.yml@master + with: + ros_distro: humble + upstream_workspace: control_toolbox.humble.repos + ref_for_scheduled_build: humble diff --git a/.github/workflows/abi-compatibility.yml b/.github/workflows/rolling-abi-compatibility.yml similarity index 91% rename from .github/workflows/abi-compatibility.yml rename to .github/workflows/rolling-abi-compatibility.yml index 31dc90ae..61e4b2a2 100644 --- a/.github/workflows/abi-compatibility.yml +++ b/.github/workflows/rolling-abi-compatibility.yml @@ -11,7 +11,7 @@ jobs: strategy: fail-fast: false matrix: - ROS_DISTRO: [rolling, jazzy, humble] + ROS_DISTRO: [rolling, jazzy] steps: - uses: actions/checkout@v4 - uses: ros-industrial/industrial_ci@master diff --git a/.github/workflows/build-binary.yml b/.github/workflows/rolling-build-binary.yml similarity index 94% rename from .github/workflows/build-binary.yml rename to .github/workflows/rolling-build-binary.yml index 6c85872e..b254ea3f 100644 --- a/.github/workflows/build-binary.yml +++ b/.github/workflows/rolling-build-binary.yml @@ -4,6 +4,8 @@ name: Binary Build on: pull_request: + branches: + - ros2-master push: branches: - ros2-master @@ -18,7 +20,7 @@ jobs: strategy: fail-fast: false matrix: - ROS_DISTRO: [rolling, jazzy, humble] + ROS_DISTRO: [rolling, jazzy] ROS_REPO: [main, testing] with: ros_distro: ${{ matrix.ROS_DISTRO }} diff --git a/.github/workflows/build-coverage.yml b/.github/workflows/rolling-build-coverage.yml similarity index 100% rename from .github/workflows/build-coverage.yml rename to .github/workflows/rolling-build-coverage.yml diff --git a/.github/workflows/build-downstream.yml b/.github/workflows/rolling-build-downstream.yml similarity index 91% rename from .github/workflows/build-downstream.yml rename to .github/workflows/rolling-build-downstream.yml index d6588993..bb5ca6ae 100644 --- a/.github/workflows/build-downstream.yml +++ b/.github/workflows/rolling-build-downstream.yml @@ -4,6 +4,8 @@ name: Downstream Build on: pull_request: + branches: + - ros2-master push: branches: - ros2-master @@ -15,7 +17,7 @@ jobs: strategy: fail-fast: false matrix: - ROS_DISTRO: [rolling, jazzy, humble] + ROS_DISTRO: [rolling, jazzy] ROS_REPO: [testing] with: ros_distro: ${{ matrix.ROS_DISTRO }} diff --git a/.github/workflows/build-semi-binary.yml b/.github/workflows/rolling-build-semi-binary.yml similarity index 91% rename from .github/workflows/build-semi-binary.yml rename to .github/workflows/rolling-build-semi-binary.yml index cb2cb450..8de53032 100644 --- a/.github/workflows/build-semi-binary.yml +++ b/.github/workflows/rolling-build-semi-binary.yml @@ -4,6 +4,8 @@ name: Semi-Binary Build on: pull_request: + branches: + - ros2-master push: branches: - ros2-master @@ -18,7 +20,7 @@ jobs: strategy: fail-fast: false matrix: - ROS_DISTRO: [rolling, jazzy, humble] + ROS_DISTRO: [rolling, jazzy] ROS_REPO: [testing] with: ros_distro: ${{ matrix.ROS_DISTRO }} diff --git a/.github/workflows/build-source.yml b/.github/workflows/rolling-build-source.yml similarity index 90% rename from .github/workflows/build-source.yml rename to .github/workflows/rolling-build-source.yml index 8708039f..00c6e61f 100644 --- a/.github/workflows/build-source.yml +++ b/.github/workflows/rolling-build-source.yml @@ -15,9 +15,6 @@ jobs: fail-fast: false matrix: include: - - ROS_DISTRO: humble - CONTAINER: "" - OS_NAME: ubuntu-22.04 - ROS_DISTRO: jazzy CONTAINER: ubuntu:24.04 OS_NAME: ubuntu-latest diff --git a/.github/workflows/ci-pre-commit.yml b/.github/workflows/rolling-ci-pre-commit.yml similarity index 79% rename from .github/workflows/ci-pre-commit.yml rename to .github/workflows/rolling-ci-pre-commit.yml index a355fc89..64699170 100644 --- a/.github/workflows/ci-pre-commit.yml +++ b/.github/workflows/rolling-ci-pre-commit.yml @@ -3,6 +3,8 @@ name: Pre-Commit on: workflow_dispatch: pull_request: + branches: + - ros2-master jobs: pre-commit: @@ -10,6 +12,6 @@ jobs: strategy: fail-fast: false matrix: - ROS_DISTRO: [humble, jazzy, rolling] + ROS_DISTRO: [jazzy, rolling] with: ros_distro: ${{ matrix.ROS_DISTRO }} diff --git a/.github/workflows/debian-build.yml b/.github/workflows/rolling-debian-build.yml similarity index 92% rename from .github/workflows/debian-build.yml rename to .github/workflows/rolling-debian-build.yml index 0d3aeea4..17b6827d 100644 --- a/.github/workflows/debian-build.yml +++ b/.github/workflows/rolling-debian-build.yml @@ -15,7 +15,7 @@ jobs: strategy: fail-fast: false matrix: - ROS_DISTRO: [rolling, jazzy, humble] + ROS_DISTRO: [rolling, jazzy] with: ros_distro: ${{ matrix.ROS_DISTRO }} upstream_workspace: control_toolbox.${{ matrix.ROS_DISTRO }}.repos diff --git a/.github/workflows/rhel-semi-binary-build.yml b/.github/workflows/rolling-rhel-semi-binary-build.yml similarity index 92% rename from .github/workflows/rhel-semi-binary-build.yml rename to .github/workflows/rolling-rhel-semi-binary-build.yml index 108980a2..f130c1fc 100644 --- a/.github/workflows/rhel-semi-binary-build.yml +++ b/.github/workflows/rolling-rhel-semi-binary-build.yml @@ -15,7 +15,7 @@ jobs: strategy: fail-fast: false matrix: - ROS_DISTRO: [rolling, jazzy, humble] + ROS_DISTRO: [rolling, jazzy] with: ros_distro: ${{ matrix.ROS_DISTRO }} upstream_workspace: control_toolbox.${{ matrix.ROS_DISTRO }}.repos diff --git a/README.md b/README.md index ea879f75..f5a402d4 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ control_toolbox =========== [![License](https://img.shields.io/badge/License-BSD%203--Clause-blue.svg)](https://opensource.org/licenses/BSD-3-Clause) [![Licence](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0) -[![codecov](https://codecov.io/gh/ros-controls/control_toolbox/graph/badge.svg?token=0o4dFzADHj)](https://codecov.io/gh/ros-controls/control_toolbox) +[![codecov](https://codecov.io/gh/ros-controls/control_toolbox/branch/humble/graph/badge.svg?token=0o4dFzADHj)](https://codecov.io/gh/ros-controls/control_toolbox/tree/humble) This package contains several C++ classes useful in writing controllers. @@ -11,9 +11,9 @@ See the documentation of [ros2_control](http://control.ros.org) and release info ## Build status ROS2 Distro | Branch | Build status | Documentation | Released packages :---------: | :----: | :----------: | :-----------: | :---------------: -**Rolling** | [`ros2-master`](https://github.com/ros-controls/control_toolbox/tree/ros2-master) | [![Binary Build](https://github.com/ros-controls/control_toolbox/actions/workflows/build-binary.yml/badge.svg?branch=ros2-master)](https://github.com/ros-controls/control_toolbox/actions/workflows/build-binary.yml?branch=ros2-master)
[![Rolling Source Build](https://github.com/ros-controls/control_toolbox/actions/workflows/build-source.yml/badge.svg?branch=ros2-master)](https://github.com/ros-controls/control_toolbox/actions/workflows/build-source.yml?branch=ros2-master) | [API](http://docs.ros.org/en/rolling/p/control_toolbox/) | [control_toolbox](https://index.ros.org/p/control_toolbox/#rolling) +**Rolling** | [`ros2-master`](https://github.com/ros-controls/control_toolbox/tree/ros2-master) | [![Binary Build](https://github.com/ros-controls/control_toolbox/actions/workflows/rolling-build-binary.yml/badge.svg?branch=ros2-master)](https://github.com/ros-controls/control_toolbox/actions/workflows/rolling-build-binary.yml?branch=ros2-master)
[![Source Build](https://github.com/ros-controls/control_toolbox/actions/workflows/rolling-build-source.yml/badge.svg?branch=ros2-master)](https://github.com/ros-controls/control_toolbox/actions/workflows/rolling-build-source.yml?branch=ros2-master) | [API](http://docs.ros.org/en/rolling/p/control_toolbox/) | [control_toolbox](https://index.ros.org/p/control_toolbox/#rolling) **Jazzy** | [`ros2-master`](https://github.com/ros-controls/control_toolbox/tree/ros2-master) | see above | [API](http://docs.ros.org/en/jazzy/p/control_toolbox/) | [control_toolbox](https://index.ros.org/p/control_toolbox/#jazzy) -**Humble** | [`ros2-master`](https://github.com/ros-controls/control_toolbox/tree/ros2-master) | see above | [API](http://docs.ros.org/en/humble/p/control_toolbox/) | [control_toolbox](https://index.ros.org/p/control_toolbox/#humble) +**Humble** | [`humble`](https://github.com/ros-controls/control_toolbox/tree/humble) | [![Humble Binary Build](https://github.com/ros-controls/control_toolbox/actions/workflows/humble-build-binary.yml/badge.svg?branch=ros2-master)](https://github.com/ros-controls/control_toolbox/actions/workflows/humble-build-binary.yml?branch=ros2-master)
[![Humble Source Build](https://github.com/ros-controls/control_toolbox/actions/workflows/humble-build-source.yml/badge.svg?branch=ros2-master)](https://github.com/ros-controls/control_toolbox/actions/workflows/humble-build-source.yml?branch=ros2-master) | [API](http://docs.ros.org/en/humble/p/control_toolbox/) | [control_toolbox](https://index.ros.org/p/control_toolbox/#humble) ## Publication From 79a0a7bcf5c290518f8985aa2704f995a2aaa7b3 Mon Sep 17 00:00:00 2001 From: "mergify[bot]" <37929162+mergify[bot]@users.noreply.github.com> Date: Thu, 16 Jan 2025 17:03:56 +0100 Subject: [PATCH 2/2] Update mergify.yml (#270) (#272) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit (cherry picked from commit d7c44d410cec708408192b74ba850c2f9901bf95) Co-authored-by: Christoph Fröhlich --- .github/mergify.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/mergify.yml b/.github/mergify.yml index bc3c219e..1035341d 100644 --- a/.github/mergify.yml +++ b/.github/mergify.yml @@ -2,7 +2,7 @@ pull_request_rules: - name: Backport to humble at reviewers discretion conditions: - - base=master + - base=ros2-master - "label=backport-humble" actions: backport: