Skip to content

Commit 978e590

Browse files
committed
Merge branch 'add-control-filters-gravity-compensation' of https://github.com/StoglRobotics-forks/control_toolbox into add-control-filters-gravity-compensation
2 parents 2cecfd6 + f2d02af commit 978e590

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

42 files changed

+1511
-941
lines changed

.github/workflows/build-coverage.yml

+41
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
name: Build Source
2+
on:
3+
push:
4+
branches:
5+
- ros2-master
6+
schedule:
7+
# Run every day to detect flakiness and broken dependencies
8+
- cron: '28 3 * * *'
9+
10+
jobs:
11+
source:
12+
name: source build
13+
runs-on: ubuntu-20.04
14+
strategy:
15+
fail-fast: false
16+
steps:
17+
- uses: ros-tooling/[email protected]
18+
- uses: ros-tooling/[email protected]
19+
with:
20+
target-ros2-distro: rolling
21+
# build all packages listed in the meta package
22+
package-name:
23+
control_toolbox
24+
vcs-repo-file-url: |
25+
https://raw.githubusercontent.com/ros-controls/control_toolbox/ros2-master/control_toolbox.repos
26+
colcon-defaults: |
27+
{
28+
"build": {
29+
"mixin": ["coverage-gcc"]
30+
}
31+
}
32+
colcon-mixin-repository: https://raw.githubusercontent.com/colcon/colcon-mixin-repository/master/index.yaml
33+
- uses: codecov/[email protected]
34+
with:
35+
file: ros_ws/lcov/total_coverage.info
36+
flags: unittests
37+
name: codecov-umbrella
38+
- uses: actions/upload-artifact@v1
39+
with:
40+
name: colcon-logs-${{ matrix.os }}
41+
path: ros_ws/log

.github/workflows/build-foxy.yml

+55
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
# This config uses industrial_ci (https://github.com/ros-industrial/industrial_ci.git).
2+
# For troubleshooting, see readme (https://github.com/ros-industrial/industrial_ci/blob/master/README.rst)
3+
4+
name: Build foxy
5+
on:
6+
pull_request:
7+
push:
8+
branches:
9+
- ros2-master
10+
schedule:
11+
# Run every day to detect flakiness and broken dependencies
12+
- cron: '28 6 * * *'
13+
14+
jobs:
15+
binary:
16+
name: binary build
17+
runs-on: ubuntu-latest
18+
strategy:
19+
matrix:
20+
env:
21+
- {ROS_DISTRO: foxy, ROS_REPO: main}
22+
- {ROS_DISTRO: foxy, ROS_REPO: testing}
23+
env:
24+
CCACHE_DIR: ${{ github.workspace }}/.ccache
25+
BASEDIR: ${{ github.workspace }}/.work
26+
CACHE_PREFIX: ${{ matrix.env.ROS_DISTRO }}-${{ matrix.env.ROS_REPO }}
27+
steps:
28+
- uses: actions/checkout@v1
29+
# The target directory cache doesn't include the source directory because
30+
# that comes from the checkout. See "prepare target_ws for cache" task below
31+
- name: cache target_ws
32+
if: ${{ ! matrix.env.CCOV }}
33+
uses: pat-s/[email protected]
34+
with:
35+
path: ${{ env.BASEDIR }}/target_ws
36+
key: target_ws-${{ env.CACHE_PREFIX }}-${{ hashFiles('**/CMakeLists.txt', '**/package.xml') }}-${{ github.run_id }}
37+
restore-keys: |
38+
target_ws-${{ env.CACHE_PREFIX }}-${{ hashFiles('**/CMakeLists.txt', '**/package.xml') }}
39+
- name: cache ccache
40+
uses: pat-s/[email protected]
41+
with:
42+
path: ${{ env.CCACHE_DIR }}
43+
key: ccache-${{ env.CACHE_PREFIX }}-${{ github.sha }}-${{ github.run_id }}
44+
restore-keys: |
45+
ccache-${{ env.CACHE_PREFIX }}-${{ github.sha }}
46+
ccache-${{ env.CACHE_PREFIX }}
47+
- uses: 'ros-industrial/industrial_ci@master'
48+
env: ${{matrix.env}}
49+
- name: prepare target_ws for cache
50+
if: ${{ always() && ! matrix.env.CCOV }}
51+
run: |
52+
du -sh ${{ env.BASEDIR }}/target_ws
53+
sudo find ${{ env.BASEDIR }}/target_ws -wholename '*/test_results/*' -delete
54+
sudo rm -rf ${{ env.BASEDIR }}/target_ws/src
55+
du -sh ${{ env.BASEDIR }}/target_ws

.github/workflows/build-galactic.yml

+55
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
# This config uses industrial_ci (https://github.com/ros-industrial/industrial_ci.git).
2+
# For troubleshooting, see readme (https://github.com/ros-industrial/industrial_ci/blob/master/README.rst)
3+
4+
name: Build galactic
5+
on:
6+
pull_request:
7+
push:
8+
branches:
9+
- ros2-master
10+
schedule:
11+
# Run every day to detect flakiness and broken dependencies
12+
- cron: '28 6 * * *'
13+
14+
jobs:
15+
binary:
16+
name: binary build
17+
runs-on: ubuntu-latest
18+
strategy:
19+
matrix:
20+
env:
21+
- {ROS_DISTRO: galactic, ROS_REPO: main}
22+
- {ROS_DISTRO: galactic, ROS_REPO: testing}
23+
env:
24+
CCACHE_DIR: ${{ github.workspace }}/.ccache
25+
BASEDIR: ${{ github.workspace }}/.work
26+
CACHE_PREFIX: ${{ matrix.env.ROS_DISTRO }}-${{ matrix.env.ROS_REPO }}
27+
steps:
28+
- uses: actions/checkout@v1
29+
# The target directory cache doesn't include the source directory because
30+
# that comes from the checkout. See "prepare target_ws for cache" task below
31+
- name: cache target_ws
32+
if: ${{ ! matrix.env.CCOV }}
33+
uses: pat-s/[email protected]
34+
with:
35+
path: ${{ env.BASEDIR }}/target_ws
36+
key: target_ws-${{ env.CACHE_PREFIX }}-${{ hashFiles('**/CMakeLists.txt', '**/package.xml') }}-${{ github.run_id }}
37+
restore-keys: |
38+
target_ws-${{ env.CACHE_PREFIX }}-${{ hashFiles('**/CMakeLists.txt', '**/package.xml') }}
39+
- name: cache ccache
40+
uses: pat-s/[email protected]
41+
with:
42+
path: ${{ env.CCACHE_DIR }}
43+
key: ccache-${{ env.CACHE_PREFIX }}-${{ github.sha }}-${{ github.run_id }}
44+
restore-keys: |
45+
ccache-${{ env.CACHE_PREFIX }}-${{ github.sha }}
46+
ccache-${{ env.CACHE_PREFIX }}
47+
- uses: 'ros-industrial/industrial_ci@master'
48+
env: ${{matrix.env}}
49+
- name: prepare target_ws for cache
50+
if: ${{ always() && ! matrix.env.CCOV }}
51+
run: |
52+
du -sh ${{ env.BASEDIR }}/target_ws
53+
sudo find ${{ env.BASEDIR }}/target_ws -wholename '*/test_results/*' -delete
54+
sudo rm -rf ${{ env.BASEDIR }}/target_ws/src
55+
du -sh ${{ env.BASEDIR }}/target_ws

.github/workflows/build-rolling.yml

+55
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
# This config uses industrial_ci (https://github.com/ros-industrial/industrial_ci.git).
2+
# For troubleshooting, see readme (https://github.com/ros-industrial/industrial_ci/blob/master/README.rst)
3+
4+
name: Build rolling
5+
on:
6+
pull_request:
7+
push:
8+
branches:
9+
- ros2-master
10+
schedule:
11+
# Run every day to detect flakiness and broken dependencies
12+
- cron: '28 6 * * *'
13+
14+
jobs:
15+
binary:
16+
name: binary build
17+
runs-on: ubuntu-latest
18+
strategy:
19+
matrix:
20+
env:
21+
- {ROS_DISTRO: rolling, ROS_REPO: main}
22+
- {ROS_DISTRO: rolling, ROS_REPO: testing}
23+
env:
24+
CCACHE_DIR: ${{ github.workspace }}/.ccache
25+
BASEDIR: ${{ github.workspace }}/.work
26+
CACHE_PREFIX: ${{ matrix.env.ROS_DISTRO }}-${{ matrix.env.ROS_REPO }}
27+
steps:
28+
- uses: actions/checkout@v1
29+
# The target directory cache doesn't include the source directory because
30+
# that comes from the checkout. See "prepare target_ws for cache" task below
31+
- name: cache target_ws
32+
if: ${{ ! matrix.env.CCOV }}
33+
uses: pat-s/[email protected]
34+
with:
35+
path: ${{ env.BASEDIR }}/target_ws
36+
key: target_ws-${{ env.CACHE_PREFIX }}-${{ hashFiles('**/CMakeLists.txt', '**/package.xml') }}-${{ github.run_id }}
37+
restore-keys: |
38+
target_ws-${{ env.CACHE_PREFIX }}-${{ hashFiles('**/CMakeLists.txt', '**/package.xml') }}
39+
- name: cache ccache
40+
uses: pat-s/[email protected]
41+
with:
42+
path: ${{ env.CCACHE_DIR }}
43+
key: ccache-${{ env.CACHE_PREFIX }}-${{ github.sha }}-${{ github.run_id }}
44+
restore-keys: |
45+
ccache-${{ env.CACHE_PREFIX }}-${{ github.sha }}
46+
ccache-${{ env.CACHE_PREFIX }}
47+
- uses: 'ros-industrial/industrial_ci@master'
48+
env: ${{matrix.env}}
49+
- name: prepare target_ws for cache
50+
if: ${{ always() && ! matrix.env.CCOV }}
51+
run: |
52+
du -sh ${{ env.BASEDIR }}/target_ws
53+
sudo find ${{ env.BASEDIR }}/target_ws -wholename '*/test_results/*' -delete
54+
sudo rm -rf ${{ env.BASEDIR }}/target_ws/src
55+
du -sh ${{ env.BASEDIR }}/target_ws

.github/workflows/test.yml renamed to .github/workflows/build-source-foxy.yml

+10-18
Original file line numberDiff line numberDiff line change
@@ -1,37 +1,29 @@
1-
name: Test control_toolbox
1+
name: Build Source foxy
22
on:
3-
pull_request:
43
push:
54
branches:
6-
- ros2-master
5+
- foxy-devel
76
schedule:
8-
# Run every morning to detect flakiness and broken dependencies
9-
- cron: '17 8 * * *'
7+
# Run every day to detect flakiness and broken dependencies
8+
- cron: '28 3 * * *'
109

1110
jobs:
12-
build_and_test:
13-
runs-on: ubuntu-18.04
11+
source:
12+
name: source build
13+
runs-on: ubuntu-20.04
1414
strategy:
1515
fail-fast: false
1616
steps:
17-
- uses: ros-tooling/setup-ros@v0.1
18-
- uses: ros-tooling/action-ros-ci@v0.1
17+
- uses: ros-tooling/setup-ros@v0.2
18+
- uses: ros-tooling/action-ros-ci@v0.2
1919
with:
2020
vcs-repo-file-url: |
21-
https://raw.githubusercontent.com/ros-controls/control_toolbox/ros2-master/control_toolbox.rosinstall
21+
https://raw.githubusercontent.com/ros-controls/control_toolbox/ros2-master/control_toolbox.repos
2222
https://raw.githubusercontent.com/ros2/ros2/master/ros2.repos
2323
package-name: control_toolbox
2424
colcon-mixin-name: coverage-gcc
2525
colcon-mixin-repository: https://raw.githubusercontent.com/colcon/colcon-mixin-repository/master/index.yaml
2626
target-ros2-distro: foxy
27-
- uses: codecov/codecov-action@v1
28-
with:
29-
token: ${{ secrets.CODECOV_TOKEN }}
30-
file: ros_ws/lcov/total_coverage.info
31-
flags: unittests
32-
name: codecov-umbrella
33-
yml: ./codecov.yml
34-
fail_ci_if_error: true
3527
- uses: actions/upload-artifact@v1
3628
with:
3729
name: colcon-logs-${{ matrix.os }}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
name: Build Source galactic
2+
on:
3+
push:
4+
branches:
5+
- ros2-master
6+
schedule:
7+
# Run every day to detect flakiness and broken dependencies
8+
- cron: '28 3 * * *'
9+
10+
jobs:
11+
source:
12+
name: source build
13+
runs-on: ubuntu-20.04
14+
strategy:
15+
fail-fast: false
16+
steps:
17+
- uses: ros-tooling/[email protected]
18+
- uses: ros-tooling/[email protected]
19+
with:
20+
vcs-repo-file-url: |
21+
https://raw.githubusercontent.com/ros-controls/control_toolbox/ros2-master/control_toolbox.repos
22+
https://raw.githubusercontent.com/ros2/ros2/master/ros2.repos
23+
package-name: control_toolbox
24+
colcon-mixin-name: coverage-gcc
25+
colcon-mixin-repository: https://raw.githubusercontent.com/colcon/colcon-mixin-repository/master/index.yaml
26+
target-ros2-distro: galactic
27+
- uses: actions/upload-artifact@v1
28+
with:
29+
name: colcon-logs-${{ matrix.os }}
30+
path: ros_ws/log
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
name: Build Source rolling
2+
on:
3+
push:
4+
branches:
5+
- ros2-master
6+
schedule:
7+
# Run every day to detect flakiness and broken dependencies
8+
- cron: '28 3 * * *'
9+
10+
jobs:
11+
source:
12+
name: source build
13+
runs-on: ubuntu-20.04
14+
strategy:
15+
fail-fast: false
16+
steps:
17+
- uses: ros-tooling/[email protected]
18+
- uses: ros-tooling/[email protected]
19+
with:
20+
vcs-repo-file-url: |
21+
https://raw.githubusercontent.com/ros-controls/control_toolbox/ros2-master/control_toolbox.repos
22+
https://raw.githubusercontent.com/ros2/ros2/master/ros2.repos
23+
package-name: control_toolbox
24+
colcon-mixin-name: coverage-gcc
25+
colcon-mixin-repository: https://raw.githubusercontent.com/colcon/colcon-mixin-repository/master/index.yaml
26+
target-ros2-distro: rolling
27+
- uses: actions/upload-artifact@v1
28+
with:
29+
name: colcon-logs-${{ matrix.os }}
30+
path: ros_ws/log

.github/workflows/format.yml

+25
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
# This is a format job. Pre-commit has a first-party GitHub action, so we use
2+
# that: https://github.com/pre-commit/action
3+
4+
name: Format
5+
6+
on:
7+
workflow_dispatch:
8+
pull_request:
9+
push:
10+
branches:
11+
- ros2-master
12+
13+
jobs:
14+
pre-commit:
15+
name: Format
16+
runs-on: ubuntu-latest
17+
steps:
18+
- uses: actions/checkout@v2
19+
- uses: actions/setup-python@v2
20+
- name: Install clang-format-10
21+
run: sudo apt-get install clang-format-10 cppcheck
22+
- uses: pre-commit/[email protected]
23+
with:
24+
extra_args: --all-files --hook-stage manual
25+
token: ${{ secrets.GITHUB_TOKEN }}

.github/workflows/lint.yml

-30
This file was deleted.

0 commit comments

Comments
 (0)