Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
780c31a
Full Rebuild (Sync) November 2025: bump ros-distro-mutex to 0.7.0 and…
traversaro Nov 1, 2025
7dc10be
Cleanup leftovers
traversaro Nov 1, 2025
8be3b14
fix ros-noetic-moveitros-perception.win.patch
baszalmstra Nov 1, 2025
be2ea0a
fix patch/ros-noetic-camera-calibration-parsers.win.patch
baszalmstra Nov 1, 2025
ec09d8c
fix ros-noetic-cmake-modules.patch
baszalmstra Nov 1, 2025
440e143
fix ros-noetic-libmavconn.win.patch
baszalmstra Nov 1, 2025
4a40b02
fix ros-noetic-mavros.win.patch
baszalmstra Nov 1, 2025
6c9a046
Update CMakeLists.txt for rtabmap_rviz_plugins
Tobias-Fischer Nov 1, 2025
479e3f0
regenerate ros-noetic-moveit-ros-planning-interface.patch
baszalmstra Nov 1, 2025
7938f3b
remove ros-noetic-resource-retriever.patch
baszalmstra Nov 1, 2025
f0c95d8
remove ros-noetic-rosbag.patch
baszalmstra Nov 1, 2025
c3c60d6
regenerate ros-noetic-rqt-image-view.patch
baszalmstra Nov 1, 2025
3349f6e
remove ros-noetic-rosgraph.patch
baszalmstra Nov 1, 2025
1958693
remove ros-noetic-rospack.patch
baszalmstra Nov 1, 2025
525308f
regenerate ros-noetic-rviz.patch
baszalmstra Nov 1, 2025
d87c769
remove ros-noetic-topic-tools.patch
baszalmstra Nov 1, 2025
8eace16
remove ros-noetic-tf2-py.osx.patch
baszalmstra Nov 1, 2025
cea65b1
regenerate ros-noetic-tf.win.patch
baszalmstra Nov 1, 2025
596aa7a
Add fcl package to dummy package that depend on conda-forge ones
traversaro Nov 1, 2025
59f0d4a
Change rattler build to handle recipes individually
Tobias-Fischer Nov 2, 2025
46315d5
Add error handling to subprocess.run
Tobias-Fischer Nov 2, 2025
7b211bb
Add encoding parameter to subprocess.run
Tobias-Fischer Nov 2, 2025
1aecdb4
Add UTF-8 encoding for console output
Tobias-Fischer Nov 2, 2025
66e754c
Debug
Tobias-Fischer Nov 2, 2025
6867fbf
Remove fish and zsh patch from ros-noetic-rosbash
traversaro Nov 3, 2025
84b3e00
Delete patch/ros-noetic-eigen-conversions.patch
traversaro Nov 3, 2025
4b34637
Fix wrong override version for ros-noetic-fcl
traversaro Nov 3, 2025
c4f59f5
Fix cras-cpp-common on osx
Tobias-Fischer Nov 8, 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
90 changes: 0 additions & 90 deletions .github/workflows/build_robostack.yml

This file was deleted.

44 changes: 19 additions & 25 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,21 +15,18 @@ jobs:
with:
persist-credentials: false # otherwise, the token used is the GITHUB_TOKEN, instead of your personal token
fetch-depth: 0 # otherwise, you will failed to push refs to dest repo
- uses: actions/setup-python@v5

- uses: prefix-dev/setup-pixi@v0.8.10
with:
python-version: '3.11' # Version range or exact version of a Python version to use, using SemVer's version range syntax
- name: Install vinca
run: |
pip install git+https://github.com/RoboStack/vinca.git
frozen: true

- name: Generate recipes for linux-64
run: |
git clean -fdx
cp vinca_linux_64.yaml vinca.yaml
vinca --multiple --platform linux-64
- name: Generate azure pipelines for linux-64
pixi run -v vinca --multiple --platform linux-64
- name: Generate GitHub Actions pipelines for linux-64
run: |
vinca-gha --platform linux-64 --trigger-branch buildbranch_linux -d ./recipes --additional-recipes
pixi run -v 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 @@ -51,11 +48,10 @@ jobs:
- name: Generate recipes for osx-64
run: |
git clean -fdx
cp vinca_osx.yaml vinca.yaml
vinca --multiple --platform osx-64
- name: Generate azure pipelines for osx-64
pixi run -v vinca --multiple --platform osx-64
- name: Generate GitHub Actions pipelines for osx-64
run: |
vinca-gha --platform osx-64 --trigger-branch buildbranch_osx -d ./recipes --additional-recipes
pixi run -v 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 @@ -77,11 +73,10 @@ jobs:
- name: Generate recipes for osx-arm64
run: |
git clean -fdx
cp vinca_osx_arm64.yaml vinca.yaml
vinca --multiple --platform osx-arm64
- name: Generate azure pipelines for osx-arm64
pixi run -v vinca --multiple --platform osx-arm64
- name: Generate GitHub Actions pipelines for osx-arm64
run: |
vinca-gha --platform osx-arm64 --trigger-branch buildbranch_osx_arm64 -d ./recipes --additional-recipes
pixi run -v 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,11 +98,11 @@ jobs:
- name: Generate recipes for win-64
run: |
git clean -fdx
cp vinca_win.yaml vinca.yaml
vinca --multiple --platform win-64
- name: Generate azure pipelines for win-64
pixi run -v vinca --multiple --platform win-64
- name: Generate GitHub Actions 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
pixi run -v 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 @@ -129,11 +124,10 @@ jobs:
- name: Generate recipes for linux-aarch64
run: |
git clean -fdx
cp vinca_linux_aarch64.yaml vinca.yaml
vinca --multiple --platform linux-aarch64
- name: Generate azure pipelines for linux-aarch64
pixi run -v vinca --multiple --platform linux-aarch64
- name: Generate GitHub Actions pipelines for linux-aarch64
run: |
vinca-gha --platform linux-aarch64 --trigger-branch buildbranch_linux_aarch64 -d ./recipes --additional-recipes
pixi run -v 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
140 changes: 71 additions & 69 deletions .github/workflows/testpr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,10 @@ on:

env:
ROS_VERSION: 1

# Change to 'true' to enable the cache upload as artifacts
SAVE_CACHE_AS_ARTIFACT: 'false'
# Change to 'true' to ignore cache and force a full rebuild, but please restore to 'false' before merging
IGNORE_CACHE_AND_DO_FULL_REBUILD: 'true'
jobs:
build:
strategy:
Expand All @@ -13,20 +16,24 @@ 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 }}

steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v5
with:
persist-credentials: false # otherwise, the token used is the GITHUB_TOKEN, instead of your personal token
fetch-depth: 0 # otherwise, you will failed to push refs to dest repo
Expand All @@ -35,6 +42,14 @@ jobs:
with:
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,86 +69,73 @@ jobs:
rm -rf /c/Strawberry
rm -rf "/c/Program Files (x86)/Windows Kits/10/Include/10.0.17763.0/"

- name: Generate recipes for linux-64
shell: bash -l {0}
if: matrix.platform == 'linux-64'
run: |
cp vinca_linux_64.yaml vinca.yaml
mkdir -p recipes
$HOME/.pixi/bin/pixi run -v vinca --platform linux-64 -m
ls -la recipes
- name: Generate recipes for linux-aarch64
shell: bash -l {0}
if: matrix.platform == 'linux-aarch64'
run: |
cp vinca_linux_aarch64.yaml vinca.yaml
mkdir -p recipes
$HOME/.pixi/bin/pixi run -v vinca --platform linux-aarch64 -m
ls -la recipes
- name: Generate recipes for osx-64
shell: bash -l {0}
if: matrix.platform == 'osx-64'
run: |
cp vinca_osx.yaml vinca.yaml
mkdir -p recipes
$HOME/.pixi/bin/pixi run -v vinca --platform osx-64 -m
ls -la recipes
- name: Generate recipes for osx-arm64
# Regression for https://github.com/RoboStack/ros-jazzy/issues/44
- name: Check that anaconda-client command works fine
shell: bash -l {0}
if: matrix.platform == 'osx-arm64'
run: |
cp vinca_osx_arm64.yaml vinca.yaml
mkdir -p recipes
$HOME/.pixi/bin/pixi run -v vinca --platform osx-arm64 -m
ls -la recipes
- name: Generate recipes for win-64
pixi run anaconda --version

- 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
cp vinca_win.yaml vinca.yaml
mkdir -p recipes
$HOME/.pixi/bin/pixi run -v vinca --platform win-64 -m
ls -la recipes
- name: Check if there are packages to be built
id: newrecipecheck
pixi run -v vinca --platform ${{ matrix.platform }} -m -n

- name: Check patches
shell: bash -l {0}
run: |
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 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: Optional force full rebuild
if: ${{ env.IGNORE_CACHE_AND_DO_FULL_REBUILD == 'true' }}
shell: bash -l {0}
if: steps.newrecipecheck.outputs.RECIPE_CREATED == 1 && matrix.platform == 'linux-64'
run: |
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-staging -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-staging -c conda-forge --skip-existing
- name: Build recipes for linux-aarch64
rm -rf ${{ matrix.folder_cache }}/*

- name: See packages restored by cache
shell: bash -l {0}
if: steps.newrecipecheck.outputs.RECIPE_CREATED == 1 && matrix.platform == 'linux-aarch64'
run: |
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-staging -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-staging -c conda-forge --skip-existing
- name: Build recipes for osx-64
ls ${{ matrix.folder_cache }} || true

- name: Build recipes
shell: bash -l {0}
if: steps.newrecipecheck.outputs.RECIPE_CREATED == 1 && matrix.platform == 'osx-64'
run: |
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-staging -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-staging -c conda-forge --skip-existing
- name: Build recipes for osx-arm64
pixi run rattler-build build --recipe-dir recipes --target-platform ${{ matrix.platform }} -m ./conda_build_config.yaml -c conda-forge -c robostack-staging --skip-existing

- name: See packages that will be saved in cache
shell: bash -l {0}
if: steps.newrecipecheck.outputs.RECIPE_CREATED == 1 && matrix.platform == 'osx-arm64'
if: always()
run: |
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-staging -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-staging -c conda-forge --skip-existing
- name: Build recipes for win-64
ls ${{ matrix.folder_cache }} || true

- 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: Generate GitHub Actions workflows to catch post-PR problems
shell: bash -l {0}
if: steps.newrecipecheck.outputs.RECIPE_CREATED == 1 && matrix.platform == 'win-64'
run: |
$HOME/.pixi/bin/pixi run rattler-build build --recipe-dir additional_recipes --target-platform win-64 -m ./conda_build_config.yaml -c robostack-staging -c conda-forge --skip-existing
$HOME/.pixi/bin/pixi run rattler-build build --recipe-dir recipes -m ./conda_build_config.yaml --target-platform win-64 -c robostack-staging -c conda-forge --skip-existing
pixi run vinca-gha --platform ${{ matrix.platform }} --trigger-branch dummy_build_branch_as_it_is_unused -d ./recipes

- 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
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
vinca.yaml
recipes/
*.bat
*.sh
Expand Down
Loading
Loading