Skip to content

Commit

Permalink
[CI] Reusable workflows from ros2_control_ci (backport #1383) (#1393)
Browse files Browse the repository at this point in the history
  • Loading branch information
mergify[bot] authored Feb 15, 2024
1 parent 48ea160 commit 9260d32
Show file tree
Hide file tree
Showing 20 changed files with 163 additions and 335 deletions.
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Humble Binary Build - testing
name: Humble Binary Build
# author: Denis Štogl <denis@stoglrobotics.de>
# description: 'Build & test all dependencies from released (binary) packages.'

Expand All @@ -16,9 +16,13 @@ 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_DISTRO: [humble]
ROS_REPO: [main, testing]
with:
ros_distro: humble
ros_repo: testing
upstream_workspace: ros2_control-not-released.humble.repos
ros_distro: ${{ matrix.ROS_DISTRO }}
ros_repo: ${{ matrix.ROS_REPO }}
upstream_workspace: ros2_control-not-released.${{ matrix.ROS_DISTRO }}.repos
ref_for_scheduled_build: humble
31 changes: 12 additions & 19 deletions .github/workflows/humble-debian-build.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Debian Humble Build
name: Debian Humble Source Build
on:
workflow_dispatch:
pull_request:
Expand All @@ -10,21 +10,14 @@ on:


jobs:
humble_debian:
name: Humble debian build
runs-on: ubuntu-latest
env:
ROS_DISTRO: humble
container: ghcr.io/ros-controls/ros:humble-debian
steps:
- uses: actions/checkout@v4
with:
path: src/ros2_control
- name: Build and test
shell: bash
run: |
source /opt/ros2_ws/install/setup.bash
vcs import src < src/ros2_control/ros2_control.${{ env.ROS_DISTRO }}.repos
colcon build --packages-skip rqt_controller_manager
colcon test --packages-skip rqt_controller_manager control_msgs controller_manager_msgs
colcon test-result --verbose
debian_source_build:
uses: ros-controls/ros2_control_ci/.github/workflows/reusable-debian-build.yml@master
strategy:
matrix:
ROS_DISTRO: [humble]
with:
ros_distro: ${{ matrix.ROS_DISTRO }}
upstream_workspace: ros2_control.${{ matrix.ROS_DISTRO }}.repos
ref_for_scheduled_build: master
skip_packages: rqt_controller_manager
skip_packages_test: controller_manager_msgs control_msgs
32 changes: 11 additions & 21 deletions .github/workflows/humble-rhel-binary-build.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: RHEL Humble Binary Build
name: RHEL Humble Semi-Binary Build
on:
workflow_dispatch:
pull_request:
Expand All @@ -9,23 +9,13 @@ on:
- cron: '03 1 * * *'

jobs:
humble_rhel_binary:
name: Humble RHEL binary build
runs-on: ubuntu-latest
env:
ROS_DISTRO: humble
container: ghcr.io/ros-controls/ros:humble-rhel
steps:
- uses: actions/checkout@v4
with:
path: src/ros2_control
- name: Install dependencies
run: |
rosdep update
rosdep install -iyr --from-path src/ros2_control || true
- name: Build and test
run: |
source /opt/ros/${{ env.ROS_DISTRO }}/setup.bash
colcon build --packages-skip rqt_controller_manager
colcon test --packages-skip rqt_controller_manager ros2controlcli
colcon test-result --verbose
rhel_semi_binary_build:
uses: ros-controls/ros2_control_ci/.github/workflows/reusable-rhel-binary-build.yml@master
strategy:
matrix:
ROS_DISTRO: [humble]
with:
ros_distro: ${{ matrix.ROS_DISTRO }}
upstream_workspace: ros2_control.${{ matrix.ROS_DISTRO }}.repos
ref_for_scheduled_build: humble
skip_packages: rqt_controller_manager
23 changes: 0 additions & 23 deletions .github/workflows/humble-semi-binary-build-main.yml

This file was deleted.

23 changes: 0 additions & 23 deletions .github/workflows/humble-semi-binary-build-testing.yml

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Humble Binary Build - main
name: Humble Semi-Binary Build
# author: Denis Štogl <denis@stoglrobotics.de>
# description: 'Build & test all dependencies from released (binary) packages.'

Expand All @@ -16,9 +16,13 @@ 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_DISTRO: [humble]
ROS_REPO: [main, testing]
with:
ros_distro: humble
ros_repo: main
upstream_workspace: ros2_control-not-released.humble.repos
ros_distro: ${{ matrix.ROS_DISTRO }}
ros_repo: ${{ matrix.ROS_REPO }}
upstream_workspace: ros2_control.${{ matrix.ROS_DISTRO }}.repos
ref_for_scheduled_build: humble
2 changes: 1 addition & 1 deletion .github/workflows/humble-source-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,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: humble
ref: humble
Expand Down
28 changes: 28 additions & 0 deletions .github/workflows/iron-binary-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: Iron Binary Build
# author: Denis Štogl <denis@stoglrobotics.de>
# description: 'Build & test all dependencies from released (binary) packages.'

on:
workflow_dispatch:
pull_request:
branches:
- iron
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_DISTRO: [iron]
ROS_REPO: [main, testing]
with:
ros_distro: ${{ matrix.ROS_DISTRO }}
ros_repo: ${{ matrix.ROS_REPO }}
upstream_workspace: ros2_control-not-released.iron.repos
ref_for_scheduled_build: iron
31 changes: 12 additions & 19 deletions .github/workflows/iron-debian-build.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Debian Iron Build
name: Debian Iron Source Build
on:
workflow_dispatch:
pull_request:
Expand All @@ -10,21 +10,14 @@ on:


jobs:
iron_debian:
name: Iron debian build
runs-on: ubuntu-latest
env:
ROS_DISTRO: iron
container: ghcr.io/ros-controls/ros:iron-debian
steps:
- uses: actions/checkout@v4
with:
path: src/ros2_control
- name: Build and test
shell: bash
run: |
source /opt/ros2_ws/install/setup.bash
vcs import src < src/ros2_control/ros2_control.${{ env.ROS_DISTRO }}.repos
colcon build --packages-skip rqt_controller_manager
colcon test --packages-skip rqt_controller_manager control_msgs controller_manager_msgs
colcon test-result --verbose
debian_source_build:
uses: ros-controls/ros2_control_ci/.github/workflows/reusable-debian-build.yml@master
strategy:
matrix:
ROS_DISTRO: [iron]
with:
ros_distro: ${{ matrix.ROS_DISTRO }}
upstream_workspace: ros2_control.${{ matrix.ROS_DISTRO }}.repos
ref_for_scheduled_build: master
skip_packages: rqt_controller_manager
skip_packages_test: controller_manager_msgs control_msgs
32 changes: 11 additions & 21 deletions .github/workflows/iron-rhel-binary-build.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: RHEL Iron Binary Build
name: RHEL Iron Semi-Binary Build
on:
workflow_dispatch:
pull_request:
Expand All @@ -10,23 +10,13 @@ on:


jobs:
iron_rhel_binary:
name: Iron RHEL binary build
runs-on: ubuntu-latest
env:
ROS_DISTRO: iron
container: ghcr.io/ros-controls/ros:iron-rhel
steps:
- uses: actions/checkout@v4
with:
path: src/ros2_control
- name: Install dependencies
run: |
rosdep update
rosdep install -iyr --from-path src/ros2_control || true
- name: Build and test
run: |
source /opt/ros/${{ env.ROS_DISTRO }}/setup.bash
colcon build --packages-skip rqt_controller_manager
colcon test --packages-skip rqt_controller_manager ros2controlcli
colcon test-result --verbose
rhel_semi_binary_build:
uses: ros-controls/ros2_control_ci/.github/workflows/reusable-rhel-binary-build.yml@master
strategy:
matrix:
ROS_DISTRO: [iron]
with:
ros_distro: ${{ matrix.ROS_DISTRO }}
upstream_workspace: ros2_control.${{ matrix.ROS_DISTRO }}.repos
ref_for_scheduled_build: iron
skip_packages: rqt_controller_manager
28 changes: 28 additions & 0 deletions .github/workflows/iron-semi-binary-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
name: Iron Semi-Binary Build
# author: Denis Štogl <denis@stoglrobotics.de>
# description: 'Build & test all dependencies from released (binary) packages.'

on:
workflow_dispatch:
pull_request:
branches:
- iron
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_DISTRO: [iron]
ROS_REPO: [main, testing]
with:
ros_distro: ${{ matrix.ROS_DISTRO }}
ros_repo: ${{ matrix.ROS_REPO }}
upstream_workspace: ros2_control.iron.repos
ref_for_scheduled_build: iron
2 changes: 1 addition & 1 deletion .github/workflows/iron-source-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,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: iron
ref: iron
Expand Down
Loading

0 comments on commit 9260d32

Please sign in to comment.