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] Reusable workflows from ros2_control_ci (backport #1383) #1393

Merged
merged 2 commits into from
Feb 15, 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 - testing
name: Humble Binary Build
# author: Denis Štogl <[email protected]>
# 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 <[email protected]>
# 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 <[email protected]>
# 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 <[email protected]>
# 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
Loading