Skip to content

Commit

Permalink
Merge pull request #1220 from cmastalli/topic/ci-and-cmake
Browse files Browse the repository at this point in the history
  • Loading branch information
cmastalli authored Feb 5, 2024
2 parents 0b830c4 + 36328f9 commit b57d566
Show file tree
Hide file tree
Showing 9 changed files with 122 additions and 23 deletions.
16 changes: 16 additions & 0 deletions .github/workflows/changelog.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
name: CHANGELOG

on:
pull_request:
types: [assigned, opened, synchronize, reopened, labeled, unlabeled]
branches:
- devel

jobs:
check-changelog:
name: Check changelog action
runs-on: ubuntu-latest
steps:
- uses: tarides/changelog-check-action@v2
with:
changelog: CHANGELOG.md
47 changes: 39 additions & 8 deletions .github/workflows/conda-ci.yml
Original file line number Diff line number Diff line change
@@ -1,43 +1,74 @@
name: CONDA

on: [push, pull_request]
# This determines when this workflow is run
on:
push:
paths-ignore:
- 'doc/**'
- '.gitlab-ci.yml'
- '.gitignore'
- '.pre-commit-config.yaml'
- '*.md'
- 'LICENSE'
- 'pyproject.toml'
- 'package.xml'
- 'dependencies.rosintall'
pull_request:
paths-ignore:
- 'doc/**'
- '.gitlab-ci.yml'
- '.gitignore'
- '.pre-commit-config.yaml'
- '*.md'
- 'LICENSE'
- 'pyproject.toml'
- 'package.xml'
- 'dependencies.rosintall'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
crocoddyl-conda:
name: (${{ matrix.os }}, clang, multi-threading, ipopt, ${{ matrix.build_type }})
runs-on: ${{ matrix.os }}
env:
CCACHE_DIR: ${{ matrix.CCACHE_DIR }}
CCACHE_BASEDIR: "${GITHUB_WORKSPACE}"
CCACHE_DIR: "${GITHUB_WORKSPACE}/.ccache"
CCACHE_COMPRESS: true
CCACHE_COMPRESSLEVEL: 5

strategy:
fail-fast: false
matrix:
# os: ["ubuntu-latest", "macos-latest"]
os: ["macos-latest"]
build_type: [Release, Debug]
python-version: ["3.8", "3.12"]
compiler: [clang]

include:
# - os: ubuntu-latest
# CCACHE_DIR: /home/runner/.ccache
- os: macos-latest
CCACHE_DIR: /Users/runner/.ccache

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
submodules: recursive

- uses: actions/cache@v3
- uses: actions/cache@v4
with:
path: ${{ env.CCACHE_DIR }}
key: ccache-conda-${{ matrix.os }}-${{ matrix.build_type }}
key: ccache-conda-${{ matrix.os }}-${{ matrix.build_type }}-${{ matrix.python-version }}-${{ github.sha }}
restore-keys: ccache-conda-${{ matrix.os }}-${{ matrix.build_type }}-${{ matrix.python-version }}-

- uses: conda-incubator/setup-miniconda@v2
- uses: conda-incubator/setup-miniconda@v3
with:
activate-environment: crocoddyl
auto-update-conda: true
environment-file: .github/workflows/conda/conda-env.yml
python-version: ${{ matrix.python-version }}
auto-activate-base: false

- name: Install conda dependencies
shell: bash -l {0}
Expand Down
34 changes: 30 additions & 4 deletions .github/workflows/ros1-ci.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,32 @@
name: ROS

# This determines when this workflow is run
on: [push, pull_request] # on all pushes and PRs
on:
push:
paths-ignore:
- 'doc/**'
- '.gitlab-ci.yml'
- '.gitignore'
- '.pre-commit-config.yaml'
- '*.md'
- 'LICENSE'
- 'pyproject.toml'
- 'package.xml'
- 'dependencies.rosintall'
pull_request:
paths-ignore:
- 'doc/**'
- '.gitlab-ci.yml'
- '.gitignore'
- '.pre-commit-config.yaml'
- '*.md'
- 'LICENSE'
- 'pyproject.toml'
- 'package.xml'
- 'dependencies.rosintall'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
CI:
Expand All @@ -28,14 +53,15 @@ jobs:
runs-on: ubuntu-latest
continue-on-error: true
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
submodules: recursive
# This step will fetch/store the directory used by ccache before/after the ci run
- uses: actions/cache@v3
- uses: actions/cache@v4
with:
path: ${{ env.CCACHE_DIR }}
key: ccache-${{ matrix.env.ROS_DISTRO }}-${{ matrix.env.ROS_REPO }}
key: ccache-${{ matrix.env.ROS_DISTRO }}-${{ matrix.env.ROS_REPO }}-${{ github.sha }}
restore-keys: ccache-${{ matrix.env.ROS_DISTRO }}-${{ matrix.env.ROS_REPO }}-
# Run industrial_ci
- uses: 'ros-industrial/industrial_ci@master'
env: ${{ matrix.env }}
34 changes: 30 additions & 4 deletions .github/workflows/ros2-ci.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,32 @@
name: ROS

# This determines when this workflow is run
on: [push, pull_request]
on:
push:
paths-ignore:
- 'doc/**'
- '.gitlab-ci.yml'
- '.gitignore'
- '.pre-commit-config.yaml'
- '*.md'
- 'LICENSE'
- 'pyproject.toml'
- 'package.xml'
- 'dependencies.rosintall'
pull_request:
paths-ignore:
- 'doc/**'
- '.gitlab-ci.yml'
- '.gitignore'
- '.pre-commit-config.yaml'
- '*.md'
- 'LICENSE'
- 'pyproject.toml'
- 'package.xml'
- 'dependencies.rosintall'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
CI:
Expand Down Expand Up @@ -29,13 +54,14 @@ jobs:
runs-on: ubuntu-latest
continue-on-error: true
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
with:
submodules: recursive
# This step will fetch/store the directory used by ccache before/after the ci run
- uses: actions/cache@v3
- uses: actions/cache@v4
with:
path: ${{ env.CCACHE_DIR }}
key: ccache-${{ matrix.env.ROS_DISTRO }}-${{ matrix.env.ROS_REPO }}
key: ccache-${{ matrix.env.ROS_DISTRO }}-${{ matrix.env.ROS_REPO }}-${{ github.sha }}
restore-keys: ccache-${{ matrix.env.ROS_DISTRO }}-${{ matrix.env.ROS_REPO }}-
- uses: 'ros-industrial/industrial_ci@master'
env: ${{ matrix.env }}
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).

## [Unreleased]

* Improved CI, updated cmake and fixed launch file in https://github.com/loco-3d/crocoddyl/pull/1220
* Introduced a Rviz display in https://github.com/loco-3d/crocoddyl/pull/1216
* Enabled display of thrust and simplied displayers code in https://github.com/loco-3d/crocoddyl/pull/1215
* Introduced floating base thruster actuation model in https://github.com/loco-3d/crocoddyl/pull/1213
Expand Down
8 changes: 4 additions & 4 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -88,11 +88,11 @@ endif()

# Add the different required and optional dependencies
if(BUILD_PYTHON_INTERFACE)
add_project_dependency(eigenpy 3.1.4 REQUIRED PKG_CONFIG_REQUIRES
"eigenpy >= 3.1.4")
add_project_dependency(eigenpy 3.1.0 REQUIRED PKG_CONFIG_REQUIRES
"eigenpy >= 3.1.0")
endif(BUILD_PYTHON_INTERFACE)
add_project_dependency(pinocchio 2.6.21 REQUIRED PKG_CONFIG_REQUIRES
"pinocchio >= 2.6.21")
add_project_dependency(pinocchio 2.6.20 REQUIRED PKG_CONFIG_REQUIRES
"pinocchio >= 2.6.20")
if(BUILD_EXAMPLES
OR BUILD_TESTING
OR BUILD_BENCHMARK)
Expand Down
1 change: 0 additions & 1 deletion bindings/python/crocoddyl/crocoddyl.launch
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
<?xml version="1.0" ?>
<launch>
<arg name="filename" default="$(eval env('PWD'))"/>

Expand Down
2 changes: 1 addition & 1 deletion dependencies.rosinstall
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
- git:
uri: https://github.com/Gepetto/example-robot-data.git
version: devel
version: v4.0.9
local-name: example-robot-data

0 comments on commit b57d566

Please sign in to comment.