From 93675b3148c7f6761c60442bac09030d85a4b273 Mon Sep 17 00:00:00 2001 From: "Felix Exner (fexner)" Date: Fri, 16 Feb 2024 23:19:50 +0100 Subject: [PATCH] Build full stack (#5) * Test: Add rolling build * Added workflows for all three distros * Do not specify branches for local workflow files --- .github/workflows/humble-binary-build.yml | 23 ++++++++++++++ .github/workflows/iron-binary-build.yml | 23 ++++++++++++++ .github/workflows/rolling-binary-build.yml | 23 ++++++++++++++ ros_controls.humble.repos | 37 ++++++++++++++++++++++ ros_controls.iron.repos | 37 ++++++++++++++++++++++ ros_controls.rolling.repos | 37 ++++++++++++++++++++++ 6 files changed, 180 insertions(+) create mode 100644 .github/workflows/humble-binary-build.yml create mode 100644 .github/workflows/iron-binary-build.yml create mode 100644 .github/workflows/rolling-binary-build.yml create mode 100644 ros_controls.humble.repos create mode 100644 ros_controls.iron.repos create mode 100644 ros_controls.rolling.repos diff --git a/.github/workflows/humble-binary-build.yml b/.github/workflows/humble-binary-build.yml new file mode 100644 index 0000000..494718e --- /dev/null +++ b/.github/workflows/humble-binary-build.yml @@ -0,0 +1,23 @@ +name: Humble Binary Build - main +# author: Denis Štogl +# description: 'Build & test all dependencies from released (binary) packages.' + +on: + workflow_dispatch: + schedule: + # Run every morning to detect flakiness and broken dependencies + - cron: '03 1 * * *' + +jobs: + binary: + uses: ./.github/workflows/reusable-industrial-ci-with-cache.yml + strategy: + fail-fast: false + matrix: + ROS_DISTRO: [humble] + ROS_REPO: [main, testing] + with: + ros_distro: ${{ matrix.ROS_DISTRO }} + ros_repo: ${{ matrix.ROS_REPO }} + target_workspace: ros_controls.${{ matrix.ROS_DISTRO }}.repos + ref_for_scheduled_build: master diff --git a/.github/workflows/iron-binary-build.yml b/.github/workflows/iron-binary-build.yml new file mode 100644 index 0000000..585898d --- /dev/null +++ b/.github/workflows/iron-binary-build.yml @@ -0,0 +1,23 @@ +name: Iron Binary Build - main +# author: Denis Štogl +# description: 'Build & test all dependencies from released (binary) packages.' + +on: + workflow_dispatch: + schedule: + # Run every morning to detect flakiness and broken dependencies + - cron: '03 1 * * *' + +jobs: + binary: + uses: ./.github/workflows/reusable-industrial-ci-with-cache.yml + strategy: + fail-fast: false + matrix: + ROS_DISTRO: [iron] + ROS_REPO: [main, testing] + with: + ros_distro: ${{ matrix.ROS_DISTRO }} + ros_repo: ${{ matrix.ROS_REPO }} + target_workspace: ros_controls.${{ matrix.ROS_DISTRO }}.repos + ref_for_scheduled_build: master diff --git a/.github/workflows/rolling-binary-build.yml b/.github/workflows/rolling-binary-build.yml new file mode 100644 index 0000000..0d631a2 --- /dev/null +++ b/.github/workflows/rolling-binary-build.yml @@ -0,0 +1,23 @@ +name: Rolling Binary Build - main +# author: Denis Štogl +# description: 'Build & test all dependencies from released (binary) packages.' + +on: + workflow_dispatch: + schedule: + # Run every morning to detect flakiness and broken dependencies + - cron: '03 1 * * *' + +jobs: + binary: + uses: ./.github/workflows/reusable-industrial-ci-with-cache.yml + strategy: + fail-fast: false + matrix: + ROS_DISTRO: [rolling] + ROS_REPO: [main, testing] + with: + ros_distro: ${{ matrix.ROS_DISTRO }} + ros_repo: ${{ matrix.ROS_REPO }} + target_workspace: ros_controls.${{ matrix.ROS_DISTRO }}.repos + ref_for_scheduled_build: master diff --git a/ros_controls.humble.repos b/ros_controls.humble.repos new file mode 100644 index 0000000..2579021 --- /dev/null +++ b/ros_controls.humble.repos @@ -0,0 +1,37 @@ +repositories: + ros-controls/realtime_tools: + type: git + url: https://github.com/ros-controls/realtime_tools.git + version: master + ros-controls/control_msgs: + type: git + url: https://github.com/ros-controls/control_msgs.git + version: humble + ros-controls/ros2_control: + type: git + url: https://github.com/ros-controls/ros2_control.git + version: humble + ros-controls/ros2_controllers: + type: git + url: https://github.com/ros-controls/ros2_controllers.git + version: humble + ros-controls/kinematics_interface: + type: git + url: https://github.com/ros-controls/kinematics_interface.git + version: master + ros-controls/gz_ros2_control: + type: git + url: https://github.com/ros-controls/gz_ros2_control.git + version: humble + ros-controls/gazebo_ros2_control: + type: git + url: https://github.com/ros-controls/gazebo_ros2_control.git + version: humble + ros-controls/ros2_control_demos: + type: git + url: https://github.com/ros-controls/ros2_control_demos.git + version: humble + ros-controls/control_toolbox: + type: git + url: https://github.com/ros-controls/control_toolbox.git + version: ros2-master diff --git a/ros_controls.iron.repos b/ros_controls.iron.repos new file mode 100644 index 0000000..6f56d86 --- /dev/null +++ b/ros_controls.iron.repos @@ -0,0 +1,37 @@ +repositories: + ros-controls/realtime_tools: + type: git + url: https://github.com/ros-controls/realtime_tools.git + version: master + ros-controls/control_msgs: + type: git + url: https://github.com/ros-controls/control_msgs.git + version: master + ros-controls/ros2_control: + type: git + url: https://github.com/ros-controls/ros2_control.git + version: iron + ros-controls/ros2_controllers: + type: git + url: https://github.com/ros-controls/ros2_controllers.git + version: iron + ros-controls/kinematics_interface: + type: git + url: https://github.com/ros-controls/kinematics_interface.git + version: master + ros-controls/gz_ros2_control: + type: git + url: https://github.com/ros-controls/gz_ros2_control.git + version: iron + ros-controls/gazebo_ros2_control: + type: git + url: https://github.com/ros-controls/gazebo_ros2_control.git + version: iron + ros-controls/ros2_control_demos: + type: git + url: https://github.com/ros-controls/ros2_control_demos.git + version: iron + ros-controls/control_toolbox: + type: git + url: https://github.com/ros-controls/control_toolbox.git + version: ros2-master diff --git a/ros_controls.rolling.repos b/ros_controls.rolling.repos new file mode 100644 index 0000000..ea7c0db --- /dev/null +++ b/ros_controls.rolling.repos @@ -0,0 +1,37 @@ +repositories: + ros-controls/realtime_tools: + type: git + url: https://github.com/ros-controls/realtime_tools.git + version: master + ros-controls/control_msgs: + type: git + url: https://github.com/ros-controls/control_msgs.git + version: master + ros-controls/ros2_control: + type: git + url: https://github.com/ros-controls/ros2_control.git + version: master + ros-controls/ros2_controllers: + type: git + url: https://github.com/ros-controls/ros2_controllers.git + version: master + ros-controls/kinematics_interface: + type: git + url: https://github.com/ros-controls/kinematics_interface.git + version: master + ros-controls/gz_ros2_control: + type: git + url: https://github.com/ros-controls/gz_ros2_control.git + version: master + ros-controls/gazebo_ros2_control: + type: git + url: https://github.com/ros-controls/gazebo_ros2_control.git + version: master + ros-controls/ros2_control_demos: + type: git + url: https://github.com/ros-controls/ros2_control_demos.git + version: master + ros-controls/control_toolbox: + type: git + url: https://github.com/ros-controls/control_toolbox.git + version: ros2-master