Skip to content

Commit

Permalink
Merge branch 'devel' into master
Browse files Browse the repository at this point in the history
  • Loading branch information
lvjonok authored Nov 10, 2024
2 parents 41a05d9 + 902d676 commit fa9f74c
Show file tree
Hide file tree
Showing 158 changed files with 26,580 additions and 1,581 deletions.
2 changes: 2 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# GitHub syntax highlighting
pixi.lock linguist-language=YAML linguist-generated=true
27 changes: 0 additions & 27 deletions .github/workflows/conda/environment_macos_linux.yml

This file was deleted.

25 changes: 0 additions & 25 deletions .github/workflows/conda/environment_windows.yml

This file was deleted.

4 changes: 4 additions & 0 deletions .github/workflows/linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@ on:
- COPYING.LESSER
- colcon.pkg
- .pre-commit-config.yaml
- CHANGELOG.md
- development/*.md
pull_request:
paths-ignore:
- doc/**
Expand All @@ -21,6 +23,8 @@ on:
- COPYING.LESSER
- colcon.pkg
- .pre-commit-config.yaml
- CHANGELOG.md
- development/*.md
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
name: CI - OSX/Linux via Conda
name: CI - MacOS/Linux/Windows via Pixi

on:
schedule:
- cron: '0 0 * * 1'
push:
paths-ignore:
- doc/**
Expand All @@ -11,6 +13,8 @@ on:
- COPYING.LESSER
- colcon.pkg
- .pre-commit-config.yaml
- CHANGELOG.md
- development/*.md
pull_request:
paths-ignore:
- doc/**
Expand All @@ -21,13 +25,15 @@ on:
- COPYING.LESSER
- colcon.pkg
- .pre-commit-config.yaml
- CHANGELOG.md
- development/*.md
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
pinocchio-conda:
name: ${{ matrix.os }} - Python ${{ matrix.python-version }} ${{ matrix.build_type }} with Conda
pinocchio-pixi:
name: ${{ matrix.os }} - Env ${{ matrix.environment }} ${{ matrix.build_type }} ${{ matrix.compiler }}
runs-on: ${{ matrix.os }}
env:
CCACHE_BASEDIR: ${GITHUB_WORKSPACE}
Expand All @@ -39,82 +45,99 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest]
os: [ubuntu-latest, macos-latest, macos-13]
environment: [all, all-py39]
build_type: [Release, Debug]
python-version: ['3.8', '3.12']

include:
# Disable BUILD_ADVANCED_TESTING as the test can take many time to run
- os: ubuntu-latest
BUILD_ADVANCED_TESTING: OFF
# Disable BUILD_ADVANCED_TESTING as the test can take many time to run
- os: macos-latest
BUILD_ADVANCED_TESTING: OFF
- os: macos-13
BUILD_ADVANCED_TESTING: OFF
- os: windows-latest
environment: all
build_type: Release
BUILD_ADVANCED_TESTING: OFF
- os: windows-latest
environment: all-clang-cl
build_type: Release
BUILD_ADVANCED_TESTING: OFF


steps:
# extract branch name or checkout devel branch for scheduled events
- name: Get branch name or checkout devel
shell: bash -el {0}
run: |
if [ "${{ github.event_name }}" == "schedule" ]; then
echo "BRANCH_NAME=devel" >> $GITHUB_ENV
echo "LABELS=build_all" >> $GITHUB_ENV
else
echo "BRANCH_NAME=$(echo ${GITHUB_REF#refs/heads/})" >> $GITHUB_ENV
fi
- uses: actions/checkout@v4
with:
ref: ${{ env.BRANCH_NAME }}
submodules: recursive

- uses: actions/cache@v4
with:
path: .ccache
save-always: true
key: ccache-macos-linux-conda-${{ matrix.os }}-${{ matrix.build_type }}-${{ matrix.python-version }}-${{ github.sha }}
restore-keys: ccache-macos-linux-conda-${{ matrix.os }}-${{ matrix.build_type }}-${{ matrix.python-version }}-

- uses: conda-incubator/setup-miniconda@v3
- uses: prefix-dev/setup-[email protected]
with:
activate-environment: pinocchio-linux
auto-update-conda: true
environment-file: .github/workflows/conda/environment_macos_linux.yml
python-version: ${{ matrix.python-version }}
auto-activate-base: false
pixi-version: v0.33.0
cache: true
environments: ${{ matrix.environment }}

# Avoid filling all disk space with debug symbols
- name: Setup CMAKE_TOOLCHAIN_FILE
if: (contains(matrix.os, 'macos') || contains(matrix.os, 'ubuntu')) && contains(matrix.build_type, 'Debug')
run: |
echo "CMAKE_TOOLCHAIN_FILE=${GITHUB_WORKSPACE}/.github/workflows/cmake/linux-debug-toolchain.cmake" >> "$GITHUB_ENV"
- name: Get Compilation Flags
id: get_labels
uses: actions/github-script@v7
env:
LABELS: ${{ env.LABELS }}
with:
script: |
const script = require('./.github/workflows/scripts/get_compilation_flags.js');
await script({github, context, core})
result-encoding: string

- name: Build Pinocchio
- name: Build Pinocchio [MacOS/Linux/Windows]
shell: bash -el {0}
env:
CMAKE_BUILD_PARALLEL_LEVEL: 2
PINOCCHIO_BUILD_TYPE: ${{ matrix.build_type }}
run: |
conda list
echo $CONDA_PREFIX
mkdir build
cd build
cmake .. \
-G "Ninja" \
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
-DCMAKE_INSTALL_PREFIX=$CONDA_PREFIX \
-DCMAKE_BUILD_TYPE=${{ matrix.build_type }} \
# Launch configure but overwrite default options
pixi run -e ${{ matrix.environment }} configure \
-DBUILD_ADVANCED_TESTING=${{ env.BUILD_ADVANCED_TESTING }} \
${{ steps.get_labels.outputs.cmakeFlags }}
cmake --build . -j2
ctest --output-on-failure
cmake --install .
pixi run -e ${{ matrix.environment }} cmake --build build --target all
pixi run -e ${{ matrix.environment }} ctest --test-dir build --output-on-failure
pixi run -e ${{ matrix.environment }} cmake --install build
- name: Uninstall Pinocchio
shell: bash -el {0}
run: |
cd build
cmake --build . --target uninstall
cmake --build build --target uninstall
check:
if: always()
name: check-macos-linux-conda
name: check-macos-linux-windows-pixi

needs:
- pinocchio-conda
- pinocchio-pixi

runs-on: Ubuntu-latest

Expand Down
11 changes: 10 additions & 1 deletion .github/workflows/nix.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,15 @@ name: "CI - Nix"

on:
push:
paths-ignore:
- doc/**
- .gitlab-ci.yml
- .gitignore
- '*.md'
- CITATION.*
- COPYING.LESSER
- .pre-commit-config.yaml
- CHANGELOG.md

jobs:
nix:
Expand All @@ -11,7 +20,7 @@ jobs:
os: [ubuntu, macos]
steps:
- uses: actions/checkout@v4
- uses: cachix/install-nix-action@v29
- uses: cachix/install-nix-action@v30
- uses: cachix/cachix-action@v15
with:
name: gepetto
Expand Down
8 changes: 7 additions & 1 deletion .github/workflows/ros-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,10 @@ on:
- '*.md'
- CITATION.*
- COPYING.LESSER
- colcon.pkg
- .pre-commit-config.yaml
- CHANGELOG.md
- development/*.md
pull_request:
paths-ignore:
- doc/**
Expand All @@ -22,7 +25,10 @@ on:
- '*.md'
- CITATION.*
- COPYING.LESSER
- colcon.pkg
- .pre-commit-config.yaml
- CHANGELOG.md
- development/*.md
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
Expand Down Expand Up @@ -60,5 +66,5 @@ jobs:
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@d23b9ad2c63bfad638a2b1fe3df34b8df9a2f17b
- uses: ros-industrial/industrial_ci@8d0620b3c43fc3bb2599b6ede6e0a261a2eced02
env: ${{ matrix.env }}
Loading

0 comments on commit fa9f74c

Please sign in to comment.