Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[CI] Use reusable wfs from ros2_control_ci and use matrix strategy (backport #1040) #1045

Merged
merged 2 commits into from
Feb 17, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Humble Binary Build - main
name: Humble Binary Build
# author: Denis Štogl <[email protected]>
# description: 'Build & test all dependencies from released (binary) packages.'

Expand All @@ -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
22 changes: 6 additions & 16 deletions .github/workflows/humble-debian-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,19 +12,9 @@ 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_controllers
- name: Build and test
shell: bash
run: |
source /opt/ros2_ws/install/setup.bash
vcs import src < src/ros2_controllers/ros2_controllers.${{ env.ROS_DISTRO }}.repos
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
32 changes: 0 additions & 32 deletions .github/workflows/humble-rhel-binary-build.yml

This file was deleted.

19 changes: 19 additions & 0 deletions .github/workflows/humble-rhel-semi-binary-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
name: RHEL Humble Binary Build
on:
workflow_dispatch:
pull_request:
branches:
- humble
schedule:
# Run every day to detect flakiness and broken dependencies
- cron: '03 2 * * *'

jobs:
humble_rhel_binary:
name: Humble RHEL binary build
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
Original file line number Diff line number Diff line change
@@ -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:
Expand All @@ -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
2 changes: 1 addition & 1 deletion .github/workflows/humble-source-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -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
Expand Down
29 changes: 29 additions & 0 deletions .github/workflows/iron-binary-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
name: Iron Binary Build
# author: Denis Štogl <[email protected]>
# 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
22 changes: 6 additions & 16 deletions .github/workflows/iron-debian-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,19 +12,9 @@ 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_controllers
- name: Build and test
shell: bash
run: |
source /opt/ros2_ws/install/setup.bash
vcs import src < src/ros2_controllers/ros2_controllers.${{ env.ROS_DISTRO }}.repos
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
20 changes: 20 additions & 0 deletions .github/workflows/iron-rhel-semi-binary-build.yml
Original file line number Diff line number Diff line change
@@ -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
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
# 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
17 changes: 17 additions & 0 deletions .github/workflows/iron-source-build.yml
Original file line number Diff line number Diff line change
@@ -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
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Rolling Binary Build - main
name: Rolling Binary Build
# author: Denis Štogl <[email protected]>
# description: 'Build & test all dependencies from released (binary) packages.'

Expand All @@ -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
22 changes: 6 additions & 16 deletions .github/workflows/rolling-debian-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,19 +12,9 @@ on:
jobs:
rolling_debian:
name: Rolling debian build
runs-on: ubuntu-latest
env:
ROS_DISTRO: rolling
container: ghcr.io/ros-controls/ros:rolling-debian
steps:
- uses: actions/checkout@v4
with:
path: src/ros2_controllers
- name: Build and test
shell: bash
run: |
source /opt/ros2_ws/install/setup.bash
vcs import src < src/ros2_controllers/ros2_controllers.${{ env.ROS_DISTRO }}.repos
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
34 changes: 0 additions & 34 deletions .github/workflows/rolling-rhel-binary-build.yml

This file was deleted.

19 changes: 19 additions & 0 deletions .github/workflows/rolling-rhel-semi-binary-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
name: RHEL Rolling Semi-Binary Build
on:
workflow_dispatch:
pull_request:
branches:
- master
schedule:
# Run every day to detect flakiness and broken dependencies
- cron: '03 1 * * *'


jobs:
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
Original file line number Diff line number Diff line change
@@ -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:
Expand All @@ -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
4 changes: 1 addition & 3 deletions .github/workflows/rolling-source-build.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
name: Rolling Source Build
on:
workflow_dispatch:
branches:
- master
push:
branches:
- master
Expand All @@ -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
Expand Down
Loading