Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
56b496d
[readme] update install/compile information
ThomasDuvinage Mar 13, 2025
b89bc90
[CI] update catkin to colcon
ThomasDuvinage Mar 13, 2025
06500dc
[CI] add packaging for Jammy
ThomasDuvinage Mar 13, 2025
a0933fa
[CI] build standalone for Jammy
ThomasDuvinage Mar 13, 2025
5ba87d1
[submodules] remove cmake submodules
ThomasDuvinage Mar 13, 2025
101e01c
[clang] update clang version
ThomasDuvinage Mar 13, 2025
ccc1c2a
[test] make test ros free
ThomasDuvinage Mar 13, 2025
233230c
[doc] configure doxyfile
ThomasDuvinage Mar 13, 2025
525a19e
Mirgrate to ROS2
ThomasDuvinage Mar 13, 2025
741345f
cland format
ThomasDuvinage Mar 13, 2025
2871b6e
[CI] remove install source before colcon build
ThomasDuvinage Mar 13, 2025
ad0d2bf
[CI] update condition on doc upload
ThomasDuvinage Mar 13, 2025
af4efcf
[CI] remove standalone tests and update install documentation build o…
ThomasDuvinage Mar 13, 2025
377eec8
[CI] add missing flag to build
ThomasDuvinage Mar 14, 2025
c0bf152
[CI] remove recursive for CCC
ThomasDuvinage Mar 14, 2025
7ad1aea
[CI] update LD_LIBRARY_PATH
ThomasDuvinage Mar 14, 2025
c6932be
[cmake] install cmake config
ThomasDuvinage Mar 14, 2025
0e81e8b
[cmake] remove installed files from config
ThomasDuvinage Mar 14, 2025
a8f8ae4
[cmake] update export target name
ThomasDuvinage Mar 14, 2025
33f850b
[cmake] make find_package global
ThomasDuvinage Mar 14, 2025
775b60d
[CI] remove debug test
ThomasDuvinage Mar 14, 2025
64b929a
feat(cmake): update min cmake version based on warning
ThomasDuvinage May 28, 2025
6a80b6d
fix(package): add correct buildtool and depend on NMPC
ThomasDuvinage May 28, 2025
b49c236
build(fix): export transitive dependencies
ThomasDuvinage Jul 2, 2025
2410226
build(cmake): CCC as shared library
ThomasDuvinage Jul 10, 2025
458b38f
test(python): migrate to ros2
ThomasDuvinage Jul 10, 2025
7d82464
doc(readme): add ros2 comment, specify that examples are not yet supp…
ThomasDuvinage Oct 23, 2025
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
8 changes: 4 additions & 4 deletions .clang-format-common.sh
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
# This script is meant to be sourced from other scripts

# Check for clang-format, prefer 10 if available
if [[ -x "$(command -v clang-format-10)" ]]; then
clang_format=clang-format-10
# Check for clang-format, prefer 14 if available
if [[ -x "$(command -v clang-format-14)" ]]; then
clang_format=clang-format-14
elif [[ -x "$(command -v clang-format)" ]]; then
clang_format=clang-format
else
echo "clang-format or clang-format-10 must be installed"
echo "clang-format or clang-format-14 must be installed"
exit 1
fi

Expand Down
145 changes: 0 additions & 145 deletions .github/workflows/ci-catkin.yaml

This file was deleted.

135 changes: 135 additions & 0 deletions .github/workflows/ci-colcon.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,135 @@
name: CI of CentroidalControlCollection (colcon)

on:
push:
branches:
- '**'
pull_request:
branches:
- '**'

jobs:

clang-format:
runs-on: ubuntu-22.04
steps:
- name: Checkout repository code
uses: actions/checkout@v3
- name: Install clang-format-14
run: |
sudo apt-get -qq update
sudo apt-get -qq install clang-format-14
- name: Run clang-format-check
run: |
./.clang-format-check.sh

build-and-test:
strategy:
fail-fast: false
matrix:
os: [ubuntu-22.04]
build-type: [RelWithDebInfo]
standalone: [colcon]
runs-on: ${{ matrix.os }}
steps:
- name: Set environment variables
run: |
set -e
set -x
echo "LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH" >> $GITHUB_ENV
if [ "${{ matrix.os }}" == "ubuntu-22.04" ] && \
[ "${{ matrix.build-type }}" == "RelWithDebInfo" ] && \
[ "${{ matrix.standalone }}" == "colcon" ] && \
[ "${{ github.repository_owner }}" == "isri-aist" ] && \
[ "${{ github.ref }}" == "refs/heads/master" ]
then
echo "UPLOAD_DOCUMENTATION=true" >> $GITHUB_ENV
sudo apt-get install -qq doxygen graphviz
else
echo "UPLOAD_DOCUMENTATION=false" >> $GITHUB_ENV
fi
- name: Install ROS2
if: matrix.standalone == 'colcon'
uses: jrl-umi3218/github-actions/install-dependencies@master
with:
ros: |
apt: ros-base
- name: Install Dependencies
uses: jrl-umi3218/github-actions/install-dependencies@master
with:
build-type: ${{ matrix.build-type }}
ubuntu: |
apt-mirrors:
mc-rtc:
cloudsmith: mc-rtc/head
apt: libgtest-dev libeigen-qld-dev libmc-rtc-dev

- name: Checkout repository code
uses: actions/checkout@v3
with:
path: colcon_ws/src/CentroidalControlCollection
- name: Checkout QpSolverCollection
uses: actions/checkout@v3
with:
repository: isri-aist/QpSolverCollection
path: colcon_ws/src/QpSolverCollection
- name: Checkout ForceControlCollection
uses: actions/checkout@v3
with:
repository: isri-aist/ForceControlCollection
path: colcon_ws/src/ForceControlCollection
- name: Checkout NMPC
uses: actions/checkout@v3
with:
repository: isri-aist/NMPC
submodules: recursive
path: colcon_ws/src/NMPC
- name: Rosdep install
run: |
set -e
set -x
cd ${GITHUB_WORKSPACE}/colcon_ws
if [ ! -f /etc/ros/rosdep/sources.list.d/20-default.list ]
then
sudo rosdep init
fi
rosdep update
rosdep install -y -r --from-paths src --ignore-src
- name: Colcon build
run: |
set -e
set -x
cd ${GITHUB_WORKSPACE}/colcon_ws
colcon build --merge-install --cmake-args -DUSE_ROS2=ON -DCMAKE_BUILD_TYPE=${{ matrix.build-type }} -DENABLE_QLD=ON -DINSTALL_DOCUMENTATION=${{ env.UPLOAD_DOCUMENTATION }}
- name: Run tests
run: |
set -e
set -x
cd ${GITHUB_WORKSPACE}/colcon_ws
set +x
. install/setup.bash
set -x
colcon test --merge-install --packages-select centroidal_control_collection
colcon test-result --all --verbose
- name: Upload documentation
# Only run for one configuration and on origin master branch
if: env.UPLOAD_DOCUMENTATION == 'true'
run: |
set -e
set -x
cd ${GITHUB_WORKSPACE}/colcon_ws/src/${{ github.repository }}
git config --global user.name "Masaki Murooka"
git config --global user.email "[email protected]"
git remote set-url origin "https://mmurooka:${{ secrets.CI_TOKEN }}@github.com/isri-aist/CentroidalControlCollection"
git fetch --depth=1 origin gh-pages:gh-pages
git checkout --quiet gh-pages
rm -rf doxygen/ cmake/
cp -r ${GITHUB_WORKSPACE}/colcon_ws/build/centroidal_control_collection/doc/html/ doxygen
git add doxygen
git_status=`git status -s`
if test -n "$git_status"; then
git commit --quiet -m "Update Doxygen HTML files from commit ${{ github.sha }}"
git push origin gh-pages
else
echo "Github pages documentation is already up-to-date."
fi
9 changes: 6 additions & 3 deletions .github/workflows/ci-standalone.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,14 +13,17 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ubuntu-20.04]
os: [ubuntu-22.04]
build-type: [Debug, RelWithDebInfo]
compiler: [gcc, clang]
runs-on: ${{ matrix.os }}
steps:
- name: Set environment variables
run: |
set -e
set -x
echo "LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH" >> $GITHUB_ENV
- uses: actions/checkout@v3
with:
submodules: recursive
- name: Install dependencies
uses: jrl-umi3218/github-actions/install-dependencies@master
with:
Expand Down
5 changes: 5 additions & 0 deletions .github/workflows/package.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,11 @@ jobs:
uses: jrl-umi3218/github-actions/.github/workflows/package-project.yml@master
with:
main-repo: isri-aist/CentroidalControlCollection
matrix: |
{
"dist": ["jammy"],
"arch": ["amd64"]
}
secrets:
CLOUDSMITH_API_KEY: ${{ secrets.CLOUDSMITH_API_KEY }}
GH_TOKEN: ${{ secrets.GH_PAGES_TOKEN }}
3 changes: 0 additions & 3 deletions .gitmodules

This file was deleted.

Loading