Skip to content

Commit 5110d37

Browse files
committed
Consolidate vinca files in single vinca.yaml file with platform-specific selector
1 parent 1b2b018 commit 5110d37

File tree

9 files changed

+55
-698
lines changed

9 files changed

+55
-698
lines changed

.github/workflows/main.yml

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@ jobs:
2525
- name: Generate recipes for linux-64
2626
run: |
2727
git clean -fdx
28-
cp vinca_linux_64.yaml vinca.yaml
2928
vinca --multiple --platform linux-64
3029
- name: Generate azure pipelines for linux-64
3130
run: |
@@ -51,7 +50,6 @@ jobs:
5150
- name: Generate recipes for osx-64
5251
run: |
5352
git clean -fdx
54-
cp vinca_osx.yaml vinca.yaml
5553
vinca --multiple --platform osx-64
5654
- name: Generate azure pipelines for osx-64
5755
run: |
@@ -77,7 +75,6 @@ jobs:
7775
- name: Generate recipes for osx-arm64
7876
run: |
7977
git clean -fdx
80-
cp vinca_osx_arm64.yaml vinca.yaml
8178
vinca --multiple --platform osx-arm64
8279
- name: Generate azure pipelines for osx-arm64
8380
run: |
@@ -103,7 +100,6 @@ jobs:
103100
- name: Generate recipes for win-64
104101
run: |
105102
git clean -fdx
106-
cp vinca_win.yaml vinca.yaml
107103
vinca --multiple --platform win-64
108104
- name: Generate azure pipelines for win-64
109105
run: |
@@ -129,7 +125,6 @@ jobs:
129125
- name: Generate recipes for linux-aarch64
130126
run: |
131127
git clean -fdx
132-
cp vinca_linux_aarch64.yaml vinca.yaml
133128
vinca --multiple --platform linux-aarch64
134129
- name: Generate azure pipelines for linux-aarch64
135130
run: |

.github/workflows/testpr.yml

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -13,21 +13,14 @@ jobs:
1313
include:
1414
- os: ubuntu-latest
1515
platform: linux-64
16-
additional_recipes:
17-
- "ros-jazzy-livox-ros-driver2"
1816
- os: ubuntu-24.04-arm
1917
platform: linux-aarch64
20-
additional_recipes:
21-
- "ros-jazzy-livox-ros-driver2"
2218
- os: macos-13
2319
platform: osx-64
24-
additional_recipes: []
2520
- os: macos-14
2621
platform: osx-arm64
27-
additional_recipes: []
2822
- os: windows-2022
2923
platform: win-64
30-
additional_recipes: []
3124

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

@@ -72,31 +65,27 @@ jobs:
7265
shell: bash -l {0}
7366
if: matrix.platform == 'linux-64'
7467
run: |
75-
cp vinca_linux_64.yaml vinca.yaml
7668
mkdir -p recipes
7769
$HOME/.pixi/bin/pixi run -v vinca --platform linux-64 -m -n
7870
ls -la recipes
7971
- name: Generate recipes for linux-aarch64
8072
shell: bash -l {0}
8173
if: matrix.platform == 'linux-aarch64'
8274
run: |
83-
cp vinca_linux_aarch64.yaml vinca.yaml
8475
mkdir -p recipes
8576
$HOME/.pixi/bin/pixi run -v vinca --platform linux-aarch64 -m -n
8677
ls -la recipes
8778
- name: Generate recipes for osx-64
8879
shell: bash -l {0}
8980
if: matrix.platform == 'osx-64'
9081
run: |
91-
cp vinca_osx.yaml vinca.yaml
9282
mkdir -p recipes
9383
$HOME/.pixi/bin/pixi run -v vinca --platform osx-64 -m -n
9484
ls -la recipes
9585
- name: Generate recipes for osx-arm64
9686
shell: bash -l {0}
9787
if: matrix.platform == 'osx-arm64'
9888
run: |
99-
cp vinca_osx_arm64.yaml vinca.yaml
10089
mkdir -p recipes
10190
$HOME/.pixi/bin/pixi run -v vinca --platform osx-arm64 -m -n
10291
ls -la recipes
@@ -107,14 +96,9 @@ jobs:
10796
# Workaround for problem related to long paths
10897
echo "CONDA_BLD_PATH=C:\\bld\\" >> $GITHUB_ENV
10998
mkdir /c/bld
110-
cp vinca_win.yaml vinca.yaml
11199
mkdir -p recipes
112100
$HOME/.pixi/bin/pixi run -v vinca --platform win-64 -m -n
113101
ls -la recipes
114-
- name: Copy additional recipes which have been changed into recipes
115-
shell: bash -l {0}
116-
run: |
117-
echo '${{ toJson(matrix.additional_recipes) }}' | jq -r ".[]" | xargs -I@ cp -r additional_recipes/@ recipes/
118102
- name: Check if there are packages to be built
119103
id: newrecipecheck
120104
shell: bash -l {0}

.gitignore

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
vinca.yaml
21
recipes/
32
*.bat
43
*.sh

pixi.toml

Lines changed: 2 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -29,26 +29,11 @@ vinca = { git ="https://github.com/RoboStack/vinca.git", rev = "8c56fc3e47a988f1
2929
#vinca = { path = "../vinca", editable = true }
3030

3131
[tasks]
32-
generate-recipes = { cmd = "vinca -m", depends-on = ["rename-file"] }
33-
remove-file = { cmd = "rm vinca.yaml; rm -rf recipes_only_patch; rm -rf recipes; mkdir recipes" }
32+
remove-recipes = { cmd = "rm -rf recipes_only_patch; rm -rf recipes; mkdir recipes" }
33+
generate-recipes = { cmd = "vinca -m", depends-on = ["rename-recipes"] }
3434
check-patches = { cmd = "python check_patches_clean_apply.py", depends-on = ["generate-recipes"] }
3535
build_additional_recipes = { cmd = "rattler-build build --recipe-dir ./additional_recipes -m ./conda_build_config.yaml --skip-existing -c robostack-jazzy -c https://repo.prefix.dev/conda-forge", depends-on = ["generate-recipes"] }
3636
build = { cmd = "rattler-build build --recipe-dir ./recipes -m ./conda_build_config.yaml -c robostack-jazzy -c https://repo.prefix.dev/conda-forge --skip-existing", depends-on = ["build_additional_recipes", "generate-recipes"] }
3737
build_one_package = { cmd = "cp ./patch/$PACKAGE.*patch ./recipes/$PACKAGE/patch/; rattler-build build --recipe ./recipes/$PACKAGE/recipe.yaml -m ./conda_build_config.yaml -c robostack-jazzy -c https://repo.prefix.dev/conda-forge", env = { PACKAGE = "ros-jazzy-ros-workspace" } }
3838
create_snapshot = { cmd = "vinca-snapshot -d jazzy -o rosdistro_snapshot.yaml" }
3939
upload = "anaconda -t $ANACONDA_API_TOKEN upload"
40-
41-
[target.linux-64.tasks]
42-
rename-file = { cmd = "ln -s vinca_linux_64.yaml vinca.yaml", depends-on = ["remove-file"] }
43-
44-
[target.osx-64.tasks]
45-
rename-file = { cmd = "ln -s vinca_osx.yaml vinca.yaml", depends-on = ["remove-file"] }
46-
47-
[target.osx-arm64.tasks]
48-
rename-file = { cmd = "ln -s vinca_osx_arm64.yaml vinca.yaml", depends-on = ["remove-file"] }
49-
50-
[target.linux-aarch64.tasks]
51-
rename-file = { cmd = "ln -s vinca_linux_aarch64.yaml vinca.yaml", depends-on = ["remove-file"] }
52-
53-
[target.win-64.tasks]
54-
rename-file = { cmd = "cp vinca_win.yaml vinca.yaml", depends-on = ["remove-file"] }

vinca_osx_arm64.yaml renamed to vinca.yaml

Lines changed: 53 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -19,20 +19,26 @@ full_rebuild: true
1919
packages_skip_by_deps:
2020
- cartographer
2121
- urdfdom
22-
- urdfdom_py
2322
- urdfdom_headers
24-
- pendulum_control
25-
- rttest
26-
- tlsf
27-
- tlsf_cpp
23+
- urdfdom_py
2824
- octomap
25+
- if: not linux
26+
then:
27+
- pendulum_control
28+
- rttest
29+
- tlsf
30+
- tlsf_cpp
31+
2932

3033
packages_remove_from_deps:
3134
- cartographer
32-
- pendulum_control
33-
- rttest
34-
- tlsf
35-
- tlsf_cpp
35+
- if: not linux
36+
then:
37+
- pendulum_control
38+
- rttest
39+
- tlsf
40+
- tlsf_cpp
41+
3642

3743
skip_existing:
3844
# - output
@@ -57,9 +63,6 @@ packages_select_by_deps:
5763
- desktop_full
5864

5965
- moveit
60-
- moveit-py
61-
- moveit-ros-perception
62-
- moveit-ros-occupancy-map-monitor
6366
- moveit-planners-chomp
6467
- moveit-servo
6568
- moveit-visual-tools
@@ -79,14 +82,10 @@ packages_select_by_deps:
7982
- turtlebot3
8083
- turtlebot3_simulations
8184

82-
- plotjuggler-ros
83-
8485
- apriltag_ros
8586

8687
- ackermann-msgs
87-
- velodyne
8888
- sbg_driver
89-
- gtsam
9089

9190
# requested in https://github.com/RoboStack/ros-humble/issues/249
9291
- twist_mux
@@ -102,7 +101,6 @@ packages_select_by_deps:
102101
- grid_map
103102

104103
- foxglove_bridge
105-
- foxglove_compressed_video_transport
106104
- foxglove_msgs
107105

108106
- lanelet2
@@ -128,35 +126,51 @@ packages_select_by_deps:
128126
- autoware_cmake
129127
- autoware_utils
130128

131-
- ffmpeg_image_transport
132-
133129
- apriltag_detector
134130

135-
- apriltag_draw
136-
137-
- apriltag_detector_umich
138-
139-
- apriltag_detector_mit
140-
141-
- apriltag_tools
142-
143131
- ament_cmake_black
144132

145133
- behaviortree_cpp
146134

147-
- dual-laser-merger
148-
149-
- pointcloud-to-laserscan
150-
151-
- laser-segmentation
152-
153-
- rqt_tf_tree
154-
155-
- rviz_satellite
156-
157-
- odom_to_tf_ros2
158-
159135
- ouster_ros
160136

137+
# These packages are only built on Windows as they depend on Linux-specific API
138+
- if: linux
139+
then:
140+
# Depends on socketcan
141+
- ros2_socketcan
142+
# Depends on v4l
143+
- usb_cam
144+
145+
# These packages are currently only build on Linux, but they currently only build on
146+
# Linux as trying to build them in the past on macos or Windows resulted in errors
147+
- if: linux
148+
then:
149+
- py_binding_tools
150+
151+
# These packages are currently not build on Windows, but they be with some work
152+
- if: not win
153+
then:
154+
- plotjuggler-ros
155+
- foxglove_compressed_video_transport
156+
- velodyne
157+
- moveit-py
158+
- moveit-ros-perception
159+
- moveit-ros-occupancy-map-monitor
160+
# todo: switch to dummy vendored package that just depends on the conda-forge's gtsam, so it works also on Windows
161+
- gtsam
162+
# TODO on windows: fix iconv link issue
163+
- ffmpeg_image_transport
164+
- apriltag_draw
165+
- apriltag_tools
166+
- apriltag_detector_umich
167+
- apriltag_detector_mit
168+
- dual-laser-merger
169+
- pointcloud-to-laserscan
170+
- laser-segmentation
171+
- rqt_tf_tree
172+
- rviz_satellite
173+
- odom_to_tf_ros2
174+
161175
patch_dir: patch
162176
rosdistro_snapshot: rosdistro_snapshot.yaml

0 commit comments

Comments
 (0)