Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
687b2c5
Full Rebuild (Sync) July 2025: bump ros2-distro-mutex to 0.10.0 and b…
traversaro Jul 15, 2025
e8d145a
Port more fixes from ros-humble
traversaro Jul 16, 2025
cd83cfd
cleanup patches for osx
wep21 Jul 17, 2025
b799d21
remove win patch
wep21 Jul 17, 2025
4ee2911
fix win patch
wep21 Jul 17, 2025
79fc2cf
fix win patch
wep21 Jul 17, 2025
822b57e
fix win patch
wep21 Jul 17, 2025
ae9e60e
remove win patch
wep21 Jul 17, 2025
4956066
fix win patch
wep21 Jul 17, 2025
69b8561
Merge pull request #1 from wep21/fullrebuild202507
traversaro Jul 17, 2025
f62ccd5
Add data_tamer_cpp
traversaro Jul 17, 2025
3583d10
Fix channel used in testpr
traversaro Jul 17, 2025
229539f
cap pybind11-abi version
wep21 Jul 17, 2025
ebceb68
Fix robot_state_publisher_smoke_test_launch.py
traversaro Jul 17, 2025
02acb77
Fix macos CI
traversaro Jul 24, 2025
389a721
Revert "cap pybind11-abi version"
wep21 Jul 24, 2025
38e0619
Update robot_state_publisher_smoke_test_launch.py
traversaro Jul 24, 2025
f84effe
Create ros-jazzy-control-toolbox.patch
traversaro Jul 24, 2025
ad5c093
Create ros-jazzy-data-tamer.patch
Tobias-Fischer Jul 24, 2025
6e58dcd
add graphviz pin
Tobias-Fischer Jul 25, 2025
3bc909b
Align with ros-humble
traversaro Jul 25, 2025
fba20be
Update testpr.yml
traversaro Jul 25, 2025
cd56754
Rename ros-jazzy-data-tamer.patch to ros-jazzy-data-tamer-cpp.patch
traversaro Jul 25, 2025
dbc8c38
Update dependencies.yaml
traversaro Jul 25, 2025
c8165fd
Update testpr.yml
traversaro Jul 25, 2025
041c13c
Update testpr.yml
traversaro Jul 25, 2025
0dedf7d
Update conda_build_config.yaml
traversaro Jul 25, 2025
1f2b5f5
Align conda_build_config.yaml with conda-forge-pinning
traversaro Jul 25, 2025
22a311a
Create ros-jazzy-ros2-control-cmake.patch
Tobias-Fischer Jul 26, 2025
c77e0ba
bump plotjuggler-ros
Tobias-Fischer Jul 26, 2025
32fcc8c
skip restoring ros-jazzy-ros2-control-cmake-*
Tobias-Fischer Jul 26, 2025
a721b29
Clang 18 for now
Tobias-Fischer Jul 26, 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
12 changes: 6 additions & 6 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,14 +21,13 @@ jobs:
- name: Install vinca
run: |
pip install git+https://github.com/RoboStack/vinca.git

- name: Generate recipes for linux-64
run: |
git clean -fdx
vinca --multiple --platform linux-64
- name: Generate azure pipelines for linux-64
run: |
vinca-gha --platform linux-64 --trigger-branch buildbranch_linux -d ./recipes --additional-recipes
vinca-gha --platform linux-64 --trigger-branch buildbranch_linux -d ./recipes
- name: Commit files for linux-64
run: |
if [[ -f "linux.yml" ]]; then
Expand All @@ -53,7 +52,7 @@ jobs:
vinca --multiple --platform osx-64
- name: Generate azure pipelines for osx-64
run: |
vinca-gha --platform osx-64 --trigger-branch buildbranch_osx -d ./recipes --additional-recipes
vinca-gha --platform osx-64 --trigger-branch buildbranch_osx -d ./recipes
- name: Commit files for osx-64
run: |
if [[ -f "osx.yml" ]]; then
Expand All @@ -78,7 +77,7 @@ jobs:
vinca --multiple --platform osx-arm64
- name: Generate azure pipelines for osx-arm64
run: |
vinca-gha --platform osx-arm64 --trigger-branch buildbranch_osx_arm64 -d ./recipes --additional-recipes
vinca-gha --platform osx-arm64 --trigger-branch buildbranch_osx_arm64 -d ./recipes
- name: Commit files for osx-arm64
run: |
if [[ -f "osx_arm64.yml" ]]; then
Expand All @@ -103,7 +102,8 @@ jobs:
vinca --multiple --platform win-64
- name: Generate azure pipelines for win-64
run: |
vinca-gha --platform win-64 --trigger-branch buildbranch_win -d ./recipes --additional-recipes
# --batch_size 10 is a workaround for https://github.com/RoboStack/robostack.github.io/issues/105
vinca-gha --platform win-64 --trigger-branch buildbranch_win -d ./recipes --batch_size 10
- name: Commit files for win-64
run: |
if [[ -f "win.yml" ]]; then
Expand All @@ -128,7 +128,7 @@ jobs:
vinca --multiple --platform linux-aarch64
- name: Generate azure pipelines for linux-aarch64
run: |
vinca-gha --platform linux-aarch64 --trigger-branch buildbranch_linux_aarch64 -d ./recipes --additional-recipes
vinca-gha --platform linux-aarch64 --trigger-branch buildbranch_linux_aarch64 -d ./recipes
- name: Commit files for linux-aarch64
run: |
if [[ -f "linux_aarch64.yml" ]]; then
Expand Down
138 changes: 64 additions & 74 deletions .github/workflows/testpr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,8 @@ on:

env:
ROS_VERSION: 2

# Change to 'true' to enable the cache upload as artifacts
SAVE_CACHE_AS_ARTIFACT: 'false'
jobs:
build:
strategy:
Expand All @@ -13,14 +14,19 @@ jobs:
include:
- os: ubuntu-latest
platform: linux-64
folder_cache: 'output/linux-64'
- os: ubuntu-24.04-arm
platform: linux-aarch64
folder_cache: 'output/linux-aarch64'
- os: macos-13
platform: osx-64
folder_cache: 'output/osx-64'
- os: macos-14
platform: osx-arm64
folder_cache: 'output/osx-arm64'
- os: windows-2022
platform: win-64
folder_cache: 'C:/bld/win-64'

runs-on: ${{ matrix.os }}

Expand All @@ -32,9 +38,16 @@ jobs:

- uses: prefix-dev/[email protected]
with:
pixi-version: v0.49.0
frozen: true

- name: Long paths workarounds for win-64
shell: bash -l {0}
if: matrix.platform == 'win-64'
run: |
# Workaround for problem related to long paths
echo "CONDA_BLD_PATH=C:\\bld\\" >> $GITHUB_ENV
mkdir /c/bld

# Workaround for https://github.com/RoboStack/ros-humble/pull/141#issuecomment-1941919816
- name: Clean up PATH
if: contains(matrix.os, 'windows')
Expand All @@ -54,94 +67,71 @@ jobs:
rm -rf /c/Strawberry
rm -rf "/c/Program Files (x86)/Windows Kits/10/Include/10.0.17763.0/"


# Regression for https://github.com/RoboStack/ros-jazzy/issues/44
- name: Check that anaconda-client command works fine
shell: bash -l {0}
run: |
pixi run anaconda --version

- name: Generate recipes for linux-64
shell: bash -l {0}
if: matrix.platform == 'linux-64'
run: |
mkdir -p recipes
$HOME/.pixi/bin/pixi run -v vinca --platform linux-64 -m -n
ls -la recipes
- name: Generate recipes for linux-aarch64
shell: bash -l {0}
if: matrix.platform == 'linux-aarch64'
run: |
mkdir -p recipes
$HOME/.pixi/bin/pixi run -v vinca --platform linux-aarch64 -m -n
ls -la recipes
- name: Generate recipes for osx-64
shell: bash -l {0}
if: matrix.platform == 'osx-64'
run: |
mkdir -p recipes
$HOME/.pixi/bin/pixi run -v vinca --platform osx-64 -m -n
ls -la recipes
- name: Generate recipes for osx-arm64
shell: bash -l {0}
if: matrix.platform == 'osx-arm64'
run: |
mkdir -p recipes
$HOME/.pixi/bin/pixi run -v vinca --platform osx-arm64 -m -n
ls -la recipes
- name: Generate recipes for win-64
- name: Generate recipes
shell: bash -l {0}
if: matrix.platform == 'win-64'
run: |
# Workaround for problem related to long paths
echo "CONDA_BLD_PATH=C:\\bld\\" >> $GITHUB_ENV
mkdir /c/bld
mkdir -p recipes
$HOME/.pixi/bin/pixi run -v vinca --platform win-64 -m -n
ls -la recipes
- name: Check if there are packages to be built
id: newrecipecheck
shell: bash -l {0}
run: |
# Workaround for https://github.com/prefix-dev/rattler-build/issues/1535
set +e
if [ ! -d recipes ] || [ -z "$(ls -A recipes)" ]; then
echo "RECIPE_CREATED=0" >> $GITHUB_OUTPUT
else
echo "RECIPE_CREATED=1" >> $GITHUB_OUTPUT
fi
- name: Build recipes for linux-64
pixi run -v vinca --platform ${{ matrix.platform }} -m -n

- name: Check patches
shell: bash -l {0}
if: steps.newrecipecheck.outputs.RECIPE_CREATED == 1 && matrix.platform == 'linux-64'
run: |
env -i $HOME/.pixi/bin/pixi run python check_patches_clean_apply.py
# env -i $HOME/.pixi/bin/pixi run rattler-build build --recipe-dir additional_recipes --target-platform linux-64 -m ./conda_build_config.yaml -c robostack-jazzy -c conda-forge --skip-existing
env -i $HOME/.pixi/bin/pixi run rattler-build build --recipe-dir recipes --target-platform linux-64 -m ./conda_build_config.yaml -c robostack-jazzy -c conda-forge --skip-existing
- name: Build recipes for linux-aarch64
pixi run python check_patches_clean_apply.py

- name: Restore build cache
id: cache-restore
uses: actions/cache/restore@v4
with:
path: |
${{ matrix.folder_cache }}
key: ${{ runner.os }}-${{ matrix.platform }}-pr-${{ github.event.pull_request.number }}
# allow a later run to pick up a cache that has an extra suffix
restore-keys: |
${{ runner.os }}-${{ matrix.platform }}-pr-${{ github.event.pull_request.number }}-

- name: Remove outdated files
shell: bash -l {0}
if: steps.newrecipecheck.outputs.RECIPE_CREATED == 1 && matrix.platform == 'linux-aarch64'
run: |
env -i $HOME/.pixi/bin/pixi run python check_patches_clean_apply.py
# env -i $HOME/.pixi/bin/pixi run rattler-build build --recipe-dir additional_recipes --target-platform linux-aarch64 -m ./conda_build_config.yaml -c robostack-jazzy -c conda-forge --skip-existing
env -i $HOME/.pixi/bin/pixi run rattler-build build --recipe-dir recipes --target-platform linux-aarch64 -m ./conda_build_config.yaml -c robostack-jazzy -c conda-forge --skip-existing
- name: Build recipes for osx-64
rm -rf ${{ matrix.folder_cache }}/cartographer-*
rm -rf ${{ matrix.folder_cache }}/ros-jazzy-rmw-zenoh-*
rm -rf ${{ matrix.folder_cache }}/ros-jazzy-gz-*
rm -rf ${{ matrix.folder_cache }}/ros-jazzy-sdformat-*
rm -rf ${{ matrix.folder_cache }}/ros-jazzy-ros2-control-cmake-*

- name: See packages restored by cache
shell: bash -l {0}
if: steps.newrecipecheck.outputs.RECIPE_CREATED == 1 && matrix.platform == 'osx-64'
run: |
env -i $HOME/.pixi/bin/pixi run python check_patches_clean_apply.py
# env -i $HOME/.pixi/bin/pixi run rattler-build build --recipe-dir additional_recipes --target-platform osx-64 -m ./conda_build_config.yaml -c robostack-jazzy -c conda-forge --skip-existing
env -i $HOME/.pixi/bin/pixi run rattler-build build --recipe-dir recipes --target-platform osx-64 -m ./conda_build_config.yaml -c robostack-jazzy -c conda-forge --skip-existing
- name: Build recipes for osx-arm64
ls ${{ matrix.folder_cache }}

- name: Build recipes
shell: bash -l {0}
if: steps.newrecipecheck.outputs.RECIPE_CREATED == 1 && matrix.platform == 'osx-arm64'
run: |
env -i $HOME/.pixi/bin/pixi run python check_patches_clean_apply.py
# env -i $HOME/.pixi/bin/pixi run rattler-build build --recipe-dir additional_recipes --target-platform osx-arm64 -m ./conda_build_config.yaml -c robostack-jazzy -c conda-forge --skip-existing
env -i $HOME/.pixi/bin/pixi run rattler-build build --recipe-dir recipes --target-platform osx-arm64 -m ./conda_build_config.yaml -c robostack-jazzy -c conda-forge --skip-existing
- name: Build recipes for win-64
pixi run rattler-build build --recipe-dir recipes --target-platform ${{ matrix.platform }} -m ./conda_build_config.yaml -c conda-forge -c robostack-jazzy --skip-existing

- name: See packages that will be saved in cache
shell: bash -l {0}
if: steps.newrecipecheck.outputs.RECIPE_CREATED == 1 && matrix.platform == 'win-64'
if: always()
run: |
$HOME/.pixi/bin/pixi run python check_patches_clean_apply.py
# $HOME/.pixi/bin/pixi run rattler-build build --recipe-dir additional_recipes --target-platform win-64 -m ./conda_build_config.yaml -c robostack-jazzy -c conda-forge --skip-existing
$HOME/.pixi/bin/pixi run rattler-build build --recipe-dir recipes --target-platform win-64 -m ./conda_build_config.yaml -c robostack-jazzy -c conda-forge --skip-existing
ls ${{ matrix.folder_cache }}

- name: Save build cache
uses: actions/cache/save@v4
if: always()
with:
path: |
${{ matrix.folder_cache }}
key: ${{ runner.os }}-${{ matrix.platform }}-pr-${{ github.event.pull_request.number }}-${{ github.run_id }}-${{ github.run_attempt }}

- name: Upload build cache as artifact
if: ${{ always() && env.SAVE_CACHE_AS_ARTIFACT == 'true' }}
uses: actions/upload-artifact@v4
with:
name: cache-${{ matrix.platform }}-${{ github.run_id }}
path: ${{ matrix.folder_cache }}
retention-days: 7
11 changes: 9 additions & 2 deletions .scripts/build_unix.sh
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,15 @@ if [[ "$target" == *"osx"* ]]; then
export PATH=$(echo $PATH | tr ":" "\n" | grep -v 'homebrew' | xargs | tr ' ' ':')
fi

extra_channel=""
cross_compile=""
if [[ "$target" == "emscripten-wasm32" ]]; then
extra_channel="-c https://repo.mamba.pm/emscripten-forge"
cross_compile="--target-platform emscripten-wasm32 --test skip"

else
extra_channel=""
cross_compile=""
fi


for recipe in ${CURRENT_RECIPES[@]}; do
pixi run -v rattler-build build \
Expand Down
13 changes: 11 additions & 2 deletions .scripts/build_win.bat
Original file line number Diff line number Diff line change
Expand Up @@ -25,5 +25,14 @@ for %%X in (%CURRENT_RECIPES%) do (
rem -m %FEEDSTOCK_ROOT%\.ci_support\conda_forge_pinnings.yaml
)

pixi run upload "%CONDA_BLD_PATH%\win-64\*.conda" --force
if errorlevel 1 exit 1
:: Check if .conda files exist in the win-64 directory
dir /b "%CONDA_BLD_PATH%\win-64\*.conda" >nul 2>&1
if errorlevel 1 (
:: No files found, display warning
echo Warning: No .conda files found in %CONDA_BLD_PATH%\win-64
echo This might be due to all the packages being skipped
) else (
:: Files found, run the upload command
pixi run upload "%CONDA_BLD_PATH%\win-64\*.conda" --force
if errorlevel 1 exit 1
)
20 changes: 0 additions & 20 deletions additional_recipes/ros-jazzy-octomap/recipe.yaml

This file was deleted.

20 changes: 0 additions & 20 deletions additional_recipes/ros-jazzy-urdfdom-headers/recipe.yaml

This file was deleted.

20 changes: 0 additions & 20 deletions additional_recipes/ros-jazzy-urdfdom-py/recipe.yaml

This file was deleted.

20 changes: 0 additions & 20 deletions additional_recipes/ros-jazzy-urdfdom/recipe.yaml

This file was deleted.

Loading