From ca7050f756f207dfbf2e571f00ff7792abc45b52 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Christoph=20Fr=C3=B6hlich?= Date: Thu, 15 Feb 2024 11:35:15 +0100 Subject: [PATCH] Use reusable wfs from ros2_control_ci and use matrix strategy (#1040) (cherry picked from commit cb6884a64a6d1f5e22afd48bb9fe0d8bafc8fece) # Conflicts: # .github/workflows/humble-binary-build-testing.yml # .github/workflows/humble-debian-build.yml # .github/workflows/humble-rhel-semi-binary-build.yml # .github/workflows/humble-semi-binary-build-main.yml # .github/workflows/iron-binary-build.yml # .github/workflows/iron-debian-build.yml # .github/workflows/iron-rhel-semi-binary-build.yml # .github/workflows/iron-semi-binary-build.yml # .github/workflows/iron-source-build.yml # .github/workflows/reusable-industrial-ci-with-cache.yml # .github/workflows/reusable-ros-tooling-source-build.yml # .github/workflows/rolling-binary-build-testing.yml # .github/workflows/rolling-debian-build.yml # .github/workflows/rolling-rhel-semi-binary-build.yml # .github/workflows/rolling-semi-binary-build-testing.yml --- ...build-main.yml => humble-binary-build.yml} | 9 ++++-- .github/workflows/humble-debian-build.yml | 9 ++++++ ....yml => humble-rhel-semi-binary-build.yml} | 9 ++++++ ...sting.yml => humble-semi-binary-build.yml} | 9 ++++-- .github/workflows/humble-source-build.yml | 2 +- .github/workflows/iron-binary-build.yml | 29 +++++++++++++++++++ .github/workflows/iron-debian-build.yml | 9 ++++++ .../workflows/iron-rhel-semi-binary-build.yml | 20 +++++++++++++ .github/workflows/iron-semi-binary-build.yml | 28 ++++++++++++++++++ .github/workflows/iron-source-build.yml | 17 +++++++++++ ...uild-main.yml => rolling-binary-build.yml} | 9 ++++-- .github/workflows/rolling-debian-build.yml | 9 ++++++ ...yml => rolling-rhel-semi-binary-build.yml} | 12 +++++++- ...main.yml => rolling-semi-binary-build.yml} | 9 ++++-- .github/workflows/rolling-source-build.yml | 4 +-- 15 files changed, 167 insertions(+), 17 deletions(-) rename .github/workflows/{humble-binary-build-main.yml => humble-binary-build.yml} (69%) rename .github/workflows/{humble-rhel-binary-build.yml => humble-rhel-semi-binary-build.yml} (66%) rename .github/workflows/{humble-semi-binary-build-testing.yml => humble-semi-binary-build.yml} (66%) create mode 100644 .github/workflows/iron-binary-build.yml create mode 100644 .github/workflows/iron-rhel-semi-binary-build.yml create mode 100644 .github/workflows/iron-semi-binary-build.yml create mode 100644 .github/workflows/iron-source-build.yml rename .github/workflows/{rolling-binary-build-main.yml => rolling-binary-build.yml} (72%) rename .github/workflows/{rolling-rhel-binary-build.yml => rolling-rhel-semi-binary-build.yml} (65%) rename .github/workflows/{rolling-semi-binary-build-main.yml => rolling-semi-binary-build.yml} (70%) diff --git a/.github/workflows/humble-binary-build-main.yml b/.github/workflows/humble-binary-build.yml similarity index 69% rename from .github/workflows/humble-binary-build-main.yml rename to .github/workflows/humble-binary-build.yml index 401b2a98d2..2b3d2f577f 100644 --- a/.github/workflows/humble-binary-build-main.yml +++ b/.github/workflows/humble-binary-build.yml @@ -1,4 +1,4 @@ -name: Humble Binary Build - main +name: Humble Binary Build # author: Denis Štogl # description: 'Build & test all dependencies from released (binary) packages.' @@ -18,9 +18,12 @@ on: jobs: binary: - uses: ./.github/workflows/reusable-industrial-ci-with-cache.yml + uses: ros-controls/ros2_control_ci/.github/workflows/reusable-industrial-ci-with-cache.yml@master + strategy: + matrix: + ROS_REPO: [main, testing] with: ros_distro: humble - ros_repo: main + ros_repo: ${{ matrix.ROS_REPO }} upstream_workspace: ros2_controllers-not-released.humble.repos ref_for_scheduled_build: humble diff --git a/.github/workflows/humble-debian-build.yml b/.github/workflows/humble-debian-build.yml index e8deb2caa5..2400c9d39e 100644 --- a/.github/workflows/humble-debian-build.yml +++ b/.github/workflows/humble-debian-build.yml @@ -12,6 +12,7 @@ on: jobs: humble_debian: name: Humble debian build +<<<<<<< HEAD runs-on: ubuntu-latest env: ROS_DISTRO: humble @@ -28,3 +29,11 @@ jobs: colcon build --packages-skip rqt_controller_manager rqt_joint_trajectory_controller colcon test --packages-skip rqt_controller_manager rqt_joint_trajectory_controller control_msgs controller_manager_msgs colcon test-result --verbose +======= + uses: ros-controls/ros2_control_ci/.github/workflows/reusable-debian-build.yml@master + with: + ros_distro: humble + upstream_workspace: ros2_controllers.humble.repos + ref_for_scheduled_build: humble + skip_packages: rqt_joint_trajectory_controller +>>>>>>> cb6884a (Use reusable wfs from ros2_control_ci and use matrix strategy (#1040)) diff --git a/.github/workflows/humble-rhel-binary-build.yml b/.github/workflows/humble-rhel-semi-binary-build.yml similarity index 66% rename from .github/workflows/humble-rhel-binary-build.yml rename to .github/workflows/humble-rhel-semi-binary-build.yml index efb1aa7d9e..65abeb1bc1 100644 --- a/.github/workflows/humble-rhel-binary-build.yml +++ b/.github/workflows/humble-rhel-semi-binary-build.yml @@ -11,6 +11,7 @@ on: jobs: humble_rhel_binary: name: Humble RHEL binary build +<<<<<<< HEAD:.github/workflows/humble-rhel-binary-build.yml runs-on: ubuntu-latest env: ROS_DISTRO: humble @@ -30,3 +31,11 @@ jobs: colcon build --packages-skip rqt_joint_trajectory_controller colcon test --packages-skip rqt_joint_trajectory_controller colcon test-result --verbose +======= + uses: ros-controls/ros2_control_ci/.github/workflows/reusable-rhel-binary-build.yml@master + with: + ros_distro: humble + upstream_workspace: ros2_controllers.humble.repos + ref_for_scheduled_build: humble + skip_packages: rqt_joint_trajectory_controller +>>>>>>> cb6884a (Use reusable wfs from ros2_control_ci and use matrix strategy (#1040)):.github/workflows/humble-rhel-semi-binary-build.yml diff --git a/.github/workflows/humble-semi-binary-build-testing.yml b/.github/workflows/humble-semi-binary-build.yml similarity index 66% rename from .github/workflows/humble-semi-binary-build-testing.yml rename to .github/workflows/humble-semi-binary-build.yml index ef290ce065..05f614cabf 100644 --- a/.github/workflows/humble-semi-binary-build-testing.yml +++ b/.github/workflows/humble-semi-binary-build.yml @@ -1,4 +1,4 @@ -name: Humble Semi-Binary Build - testing +name: Humble Semi-Binary Build # description: 'Build & test that compiles the main dependencies from source.' on: @@ -17,9 +17,12 @@ on: jobs: semi_binary: - uses: ./.github/workflows/reusable-industrial-ci-with-cache.yml + uses: ros-controls/ros2_control_ci/.github/workflows/reusable-industrial-ci-with-cache.yml@master + strategy: + matrix: + ROS_REPO: [main, testing] with: ros_distro: humble - ros_repo: testing + ros_repo: ${{ matrix.ROS_REPO }} upstream_workspace: ros2_controllers.humble.repos ref_for_scheduled_build: humble diff --git a/.github/workflows/humble-source-build.yml b/.github/workflows/humble-source-build.yml index 801cd92402..8ac4a81824 100644 --- a/.github/workflows/humble-source-build.yml +++ b/.github/workflows/humble-source-build.yml @@ -12,7 +12,7 @@ on: jobs: source: - uses: ./.github/workflows/reusable-ros-tooling-source-build.yml + uses: ros-controls/ros2_control_ci/.github/workflows/reusable-ros-tooling-source-build.yml@master with: ros_distro: humble ref: humble diff --git a/.github/workflows/iron-binary-build.yml b/.github/workflows/iron-binary-build.yml new file mode 100644 index 0000000000..146d5a8c69 --- /dev/null +++ b/.github/workflows/iron-binary-build.yml @@ -0,0 +1,29 @@ +name: Iron Binary Build +# author: Denis Štogl +# description: 'Build & test all dependencies from released (binary) packages.' + +on: + workflow_dispatch: + pull_request: + branches: + - iron + - '*feature*' + - '*feature/**' + push: + branches: + - iron + schedule: + # Run every morning to detect flakiness and broken dependencies + - cron: '03 1 * * *' + +jobs: + binary: + uses: ros-controls/ros2_control_ci/.github/workflows/reusable-industrial-ci-with-cache.yml@master + strategy: + matrix: + ROS_REPO: [main, testing] + with: + ros_distro: iron + ros_repo: ${{ matrix.ROS_REPO }} + upstream_workspace: ros2_controllers-not-released.iron.repos + ref_for_scheduled_build: iron diff --git a/.github/workflows/iron-debian-build.yml b/.github/workflows/iron-debian-build.yml index 09dbd051b2..61a633b683 100644 --- a/.github/workflows/iron-debian-build.yml +++ b/.github/workflows/iron-debian-build.yml @@ -12,6 +12,7 @@ on: jobs: iron_debian: name: Iron debian build +<<<<<<< HEAD runs-on: ubuntu-latest env: ROS_DISTRO: iron @@ -28,3 +29,11 @@ jobs: colcon build --packages-skip rqt_controller_manager rqt_joint_trajectory_controller colcon test --packages-skip rqt_controller_manager rqt_joint_trajectory_controller control_msgs controller_manager_msgs colcon test-result --verbose +======= + uses: ros-controls/ros2_control_ci/.github/workflows/reusable-debian-build.yml@master + with: + ros_distro: iron + upstream_workspace: ros2_controllers.iron.repos + ref_for_scheduled_build: iron + skip_packages: rqt_joint_trajectory_controller +>>>>>>> cb6884a (Use reusable wfs from ros2_control_ci and use matrix strategy (#1040)) diff --git a/.github/workflows/iron-rhel-semi-binary-build.yml b/.github/workflows/iron-rhel-semi-binary-build.yml new file mode 100644 index 0000000000..66ad427a98 --- /dev/null +++ b/.github/workflows/iron-rhel-semi-binary-build.yml @@ -0,0 +1,20 @@ +name: RHEL Iron Binary Build +on: + workflow_dispatch: + pull_request: + branches: + - iron + schedule: + # Run every day to detect flakiness and broken dependencies + - cron: '03 1 * * *' + + +jobs: + iron_rhel_binary: + name: Iron RHEL binary build + uses: ros-controls/ros2_control_ci/.github/workflows/reusable-rhel-binary-build.yml@master + with: + ros_distro: iron + upstream_workspace: ros2_controllers.iron.repos + ref_for_scheduled_build: iron + skip_packages: rqt_joint_trajectory_controller diff --git a/.github/workflows/iron-semi-binary-build.yml b/.github/workflows/iron-semi-binary-build.yml new file mode 100644 index 0000000000..ab508dfc50 --- /dev/null +++ b/.github/workflows/iron-semi-binary-build.yml @@ -0,0 +1,28 @@ +name: Iron Semi-Binary Build +# description: 'Build & test that compiles the main dependencies from source.' + +on: + workflow_dispatch: + pull_request: + branches: + - iron + - '*feature*' + - '*feature/**' + push: + branches: + - iron + schedule: + # Run every morning to detect flakiness and broken dependencies + - cron: '33 1 * * *' + +jobs: + semi_binary: + uses: ros-controls/ros2_control_ci/.github/workflows/reusable-industrial-ci-with-cache.yml@master + strategy: + matrix: + ROS_REPO: [main, testing] + with: + ros_distro: iron + ros_repo: ${{ matrix.ROS_REPO }} + upstream_workspace: ros2_controllers.iron.repos + ref_for_scheduled_build: iron diff --git a/.github/workflows/iron-source-build.yml b/.github/workflows/iron-source-build.yml new file mode 100644 index 0000000000..3609dcfc41 --- /dev/null +++ b/.github/workflows/iron-source-build.yml @@ -0,0 +1,17 @@ +name: Iron Source Build +on: + workflow_dispatch: + push: + branches: + - iron + 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: iron + ref: iron + ros2_repo_branch: iron diff --git a/.github/workflows/rolling-binary-build-main.yml b/.github/workflows/rolling-binary-build.yml similarity index 72% rename from .github/workflows/rolling-binary-build-main.yml rename to .github/workflows/rolling-binary-build.yml index 793db5d7e5..7b5a3bda65 100644 --- a/.github/workflows/rolling-binary-build-main.yml +++ b/.github/workflows/rolling-binary-build.yml @@ -1,4 +1,4 @@ -name: Rolling Binary Build - main +name: Rolling Binary Build # author: Denis Štogl # description: 'Build & test all dependencies from released (binary) packages.' @@ -22,9 +22,12 @@ on: jobs: binary: - uses: ./.github/workflows/reusable-industrial-ci-with-cache.yml + uses: ros-controls/ros2_control_ci/.github/workflows/reusable-industrial-ci-with-cache.yml@master + strategy: + matrix: + ROS_REPO: [main, testing] with: ros_distro: rolling - ros_repo: main + ros_repo: ${{ matrix.ROS_REPO }} upstream_workspace: ros2_controllers-not-released.rolling.repos ref_for_scheduled_build: master diff --git a/.github/workflows/rolling-debian-build.yml b/.github/workflows/rolling-debian-build.yml index b6d0a4193a..2c8c4446ed 100644 --- a/.github/workflows/rolling-debian-build.yml +++ b/.github/workflows/rolling-debian-build.yml @@ -12,6 +12,7 @@ on: jobs: rolling_debian: name: Rolling debian build +<<<<<<< HEAD runs-on: ubuntu-latest env: ROS_DISTRO: rolling @@ -28,3 +29,11 @@ jobs: colcon build --packages-skip rqt_controller_manager rqt_joint_trajectory_controller colcon test --packages-skip rqt_controller_manager rqt_joint_trajectory_controller colcon test-result --verbose +======= + uses: ros-controls/ros2_control_ci/.github/workflows/reusable-debian-build.yml@master + with: + ros_distro: rolling + upstream_workspace: ros2_controllers.rolling.repos + ref_for_scheduled_build: master + skip_packages: rqt_joint_trajectory_controller +>>>>>>> cb6884a (Use reusable wfs from ros2_control_ci and use matrix strategy (#1040)) diff --git a/.github/workflows/rolling-rhel-binary-build.yml b/.github/workflows/rolling-rhel-semi-binary-build.yml similarity index 65% rename from .github/workflows/rolling-rhel-binary-build.yml rename to .github/workflows/rolling-rhel-semi-binary-build.yml index dece43b673..aff265da57 100644 --- a/.github/workflows/rolling-rhel-binary-build.yml +++ b/.github/workflows/rolling-rhel-semi-binary-build.yml @@ -1,4 +1,4 @@ -name: RHEL Rolling Binary Build +name: RHEL Rolling Semi-Binary Build on: workflow_dispatch: pull_request: @@ -10,6 +10,7 @@ on: jobs: +<<<<<<< HEAD:.github/workflows/rolling-rhel-binary-build.yml rolling_rhel_binary: name: Rolling RHEL binary build runs-on: ubuntu-latest @@ -32,3 +33,12 @@ jobs: colcon build --packages-skip rqt_joint_trajectory_controller colcon test --packages-skip rqt_joint_trajectory_controller colcon test-result --verbose +======= + rolling_rhel: + uses: ros-controls/ros2_control_ci/.github/workflows/reusable-rhel-binary-build.yml@master + with: + ros_distro: rolling + upstream_workspace: ros2_controllers.rolling.repos + ref_for_scheduled_build: master + skip_packages: rqt_joint_trajectory_controller +>>>>>>> cb6884a (Use reusable wfs from ros2_control_ci and use matrix strategy (#1040)):.github/workflows/rolling-rhel-semi-binary-build.yml diff --git a/.github/workflows/rolling-semi-binary-build-main.yml b/.github/workflows/rolling-semi-binary-build.yml similarity index 70% rename from .github/workflows/rolling-semi-binary-build-main.yml rename to .github/workflows/rolling-semi-binary-build.yml index 8b395e5163..a20c4d4fd3 100644 --- a/.github/workflows/rolling-semi-binary-build-main.yml +++ b/.github/workflows/rolling-semi-binary-build.yml @@ -1,4 +1,4 @@ -name: Rolling Semi-Binary Build - main +name: Rolling Semi-Binary Build # description: 'Build & test that compiles the main dependencies from source.' on: @@ -21,9 +21,12 @@ on: jobs: semi_binary: - uses: ./.github/workflows/reusable-industrial-ci-with-cache.yml + uses: ros-controls/ros2_control_ci/.github/workflows/reusable-industrial-ci-with-cache.yml@master + strategy: + matrix: + ROS_REPO: [main, testing] with: ros_distro: rolling - ros_repo: main + ros_repo: ${{ matrix.ROS_REPO }} upstream_workspace: ros2_controllers.rolling.repos ref_for_scheduled_build: master diff --git a/.github/workflows/rolling-source-build.yml b/.github/workflows/rolling-source-build.yml index 40abcd1b0c..567b2c8ec6 100644 --- a/.github/workflows/rolling-source-build.yml +++ b/.github/workflows/rolling-source-build.yml @@ -1,8 +1,6 @@ name: Rolling Source Build on: workflow_dispatch: - branches: - - master push: branches: - master @@ -12,7 +10,7 @@ on: jobs: source: - uses: ./.github/workflows/reusable-ros-tooling-source-build.yml + uses: ros-controls/ros2_control_ci/.github/workflows/reusable-ros-tooling-source-build.yml@master with: ros_distro: rolling ref: master