Skip to content

Commit

Permalink
Update CI configuration and setup. Add better overview (#681)
Browse files Browse the repository at this point in the history
  • Loading branch information
destogl authored Jun 8, 2022
1 parent 214c2c4 commit 8fd48f7
Show file tree
Hide file tree
Showing 32 changed files with 598 additions and 90 deletions.
23 changes: 0 additions & 23 deletions .github/workflows/binary.yml

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,23 +1,26 @@
name: Build & Test ros2_control with source-based setup
name: Coverage Build
on:
push:
pull_request:
branches:
- master
schedule:
# Run every morning to detect flakiness and broken dependencies
- cron: '17 8 * * *'

jobs:
ci_source:
name: Galactic source job
coverage:
name: coverage build
runs-on: ubuntu-20.04
strategy:
fail-fast: false
env:
ROS_DISTRO: rolling
steps:
- uses: ros-tooling/[email protected]
with:
required-ros-distributions: ${{ env.ROS_DISTRO }}
- uses: actions/checkout@v3
- uses: ros-tooling/[email protected]
with:
target-ros2-distro: galactic
target-ros2-distro: ${{ env.ROS_DISTRO }}
import-token: ${{ secrets.GITHUB_TOKEN }}
# build all packages listed in the meta package
package-name:
controller_interface
Expand All @@ -27,17 +30,18 @@ jobs:
ros2controlcli
ros2_control
ros2_control_test_assets
transmission_interface
vcs-repo-file-url: |
https://raw.githubusercontent.com/ros2/ros2/galactic/ros2.repos
https://raw.githubusercontent.com/${{ github.repository }}/${{ github.sha }}/ros2_control/ros2_control.repos
https://raw.githubusercontent.com/${{ github.repository }}/${{ github.sha }}/ros2_control-not-released.${{ env.ROS_DISTRO }}.repos?token=${{ secrets.GITHUB_TOKEN }}
colcon-defaults: |
{
"build": {
"mixin": ["coverage-gcc"]
}
}
colcon-mixin-repository: https://raw.githubusercontent.com/colcon/colcon-mixin-repository/master/index.yaml
- uses: codecov/codecov-action@v1
skip-tests: true
- uses: codecov/[email protected]
with:
file: ros_ws/lcov/total_coverage.info
flags: unittests
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,21 +6,18 @@ name: Format
on:
workflow_dispatch:
pull_request:
push:
branches:
- master

jobs:
pre-commit:
name: Format
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
- uses: actions/setup-python@v2
with:
python-version: 3.9.7
- name: Install clang-format-10
run: sudo apt-get install clang-format-10 cppcheck
- name: Install system hooks
run: sudo apt install -qq clang-format-11 cppcheck
- uses: pre-commit/[email protected]
with:
extra_args: --all-files --hook-stage manual
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ jobs:
matrix:
linter: [copyright, cppcheck, lint_cmake]
steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v3
- uses: ros-tooling/[email protected]
- uses: ros-tooling/[email protected]
with:
Expand All @@ -33,7 +33,7 @@ jobs:
strategy:
fail-fast: false
steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v3
- uses: ros-tooling/[email protected]
- uses: ros-tooling/[email protected]
with:
Expand Down
17 changes: 17 additions & 0 deletions .github/workflows/foxy-abi-compatibility.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
name: ABI Compatibility Check
on:
pull_request:
branches:
- foxy

jobs:
abi_check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: ros-industrial/industrial_ci@master
env:
ROS_DISTRO: foxy
ROS_REPO: main
ABICHECK_URL: github:${{ github.repository }}#${{ github.base_ref }}
NOT_TEST_BUILD: true
22 changes: 22 additions & 0 deletions .github/workflows/foxy-binary-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
name: Foxy Binary Build
# author: Denis Štogl <[email protected]>
# description: 'Build & test all dependencies from released (binary) packages.'

on:
pull_request:
branches:
- foxy
push:
branches:
- foxy
schedule:
# Run every morning to detect flakiness and broken dependencies
- cron: '03 1 * * *'

jobs:
binary:
uses: ./.github/workflows/reusable-industrial-ci-with-cache.yml
with:
ros_distro: foxy
upstream_workspace: ros2_control-not-released.foxy.repos
ref_for_scheduled_build: foxy
21 changes: 21 additions & 0 deletions .github/workflows/foxy-semi-binary-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
name: Foxy Semi-Binary Build
# description: 'Build & test that compiles the main dependencies from source.'

on:
pull_request:
branches:
- foxy
push:
branches:
- foxy
schedule:
# Run every morning to detect flakiness and broken dependencies
- cron: '33 1 * * *'

jobs:
semi_binary:
uses: ./.github/workflows/reusable-industrial-ci-with-cache.yml
with:
ros_distro: foxy
upstream_workspace: ros2_control.foxy.repos
ref_for_scheduled_build: foxy
15 changes: 15 additions & 0 deletions .github/workflows/foxy-source-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
name: Foxy Source Build
on:
push:
branches:
- foxy
schedule:
# Run every day to detect flakiness and broken dependencies
- cron: '03 3 * * *'

jobs:
source:
uses: ./.github/workflows/reusable-ros-tooling-source-build.yml
with:
ros_distro: foxy
ref: foxy
17 changes: 17 additions & 0 deletions .github/workflows/galactic-abi-compatibility.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
name: ABI Compatibility Check
on:
pull_request:
branches:
- galactic

jobs:
abi_check:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: ros-industrial/industrial_ci@master
env:
ROS_DISTRO: galactic
ROS_REPO: main
ABICHECK_URL: github:${{ github.repository }}#${{ github.base_ref }}
NOT_TEST_BUILD: true
22 changes: 22 additions & 0 deletions .github/workflows/galactic-binary-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
name: Galactic Binary Build
# author: Denis Štogl <[email protected]>
# description: 'Build & test all dependencies from released (binary) packages.'

on:
pull_request:
branches:
- galactic
push:
branches:
- galactic
schedule:
# Run every morning to detect flakiness and broken dependencies
- cron: '03 1 * * *'

jobs:
binary:
uses: ./.github/workflows/reusable-industrial-ci-with-cache.yml
with:
ros_distro: galactic
upstream_workspace: ros2_control-not-released.galactic.repos
ref_for_scheduled_build: galactic
21 changes: 21 additions & 0 deletions .github/workflows/galactic-semi-binary-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
name: Galactic Semi-Binary Build
# description: 'Build & test that compiles the main dependencies from source.'

on:
pull_request:
branches:
- galactic
push:
branches:
- galactic
schedule:
# Run every morning to detect flakiness and broken dependencies
- cron: '33 1 * * *'

jobs:
semi_binary:
uses: ./.github/workflows/reusable-industrial-ci-with-cache.yml
with:
ros_distro: galactic
upstream_workspace: ros2_control.galactic.repos
ref_for_scheduled_build: galactic
15 changes: 15 additions & 0 deletions .github/workflows/galactic-source-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
name: Galactic Source Build
on:
push:
branches:
- galactic
schedule:
# Run every day to detect flakiness and broken dependencies
- cron: '03 3 * * *'

jobs:
source:
uses: ./.github/workflows/reusable-ros-tooling-source-build.yml
with:
ros_distro: galactic
ref: galactic
39 changes: 39 additions & 0 deletions .github/workflows/prerelease-check.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
name: Pre-Release Check

on:
workflow_dispatch:
inputs:
ros_distro:
description: 'Chose ROS distribution'
required: true
default: 'rolling'
type: choice
options:
- foxy
- galactic
- humble
- rolling
branch:
description: 'Chose branch for distro'
required: true
default: 'master'
type: choice
options:
- foxy
- galactic
- humble
- master

jobs:
pre_release:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
ref: ${{ github.event.inputs.branch }}
- name: industrial_ci
uses: ros-industrial/industrial_ci@master
env:
ROS_DISTRO: ${{ github.event.inputs.ros_distro }}
PRERELEASE: true
BASEDIR: ${{ github.workspace }}/.work
26 changes: 0 additions & 26 deletions .github/workflows/prerelease.yaml

This file was deleted.

Loading

0 comments on commit 8fd48f7

Please sign in to comment.