-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathpixi.toml
More file actions
56 lines (47 loc) · 3.34 KB
/
Copy pathpixi.toml
File metadata and controls
56 lines (47 loc) · 3.34 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
[workspace]
name = "ros-lyrical"
description = "RoboStack repo to package ros-lyrical packages as conda packages"
authors = ["Tobias Fischer <tobias.fischer@qut.edu.au>", "Wolf Vollprecht <w.vollprecht@gmail.com>", "Silvio Traversaro <silvio@traversaro.it>", "Daisuke Nishimatsu <daisuke.nishimatsu1021@gmail.com>"]
channels = ["https://repo.prefix.dev/conda-forge"]
platforms = ["osx-arm64", "linux-64", "osx-64", "linux-aarch64", "win-64"]
[system-requirements]
# 2.17 is the glibc version used in centos 7
libc = { family="glibc", version="2.17" }
[dependencies]
python = ">=3.14.0,<3.15"
# Include the latest rattler-build fixes w.r.t. to patches handling
# rattler-build regression, pinning to 0.57
rattler-build = "<0.58.0"
cmake = "<4.0"
setuptools = "<82.0"
rattler-index = ">=0.27.16"
[target.win-64.dependencies]
# patch is required by rattler-build
m2-patch = "*"
# git is required by rattler-build
git = "*"
[pypi-dependencies]
# This is typically the latest commit on main branch
vinca = { git = "https://github.com/RoboStack/vinca.git", rev = "ee9f94d55137a49aba76ae15047947c171ed4605" }
# Uncomment this line to work with a local vinca for faster iteration, but remember to comment it back
# (and regenerate the pixi.lock) once you push the modified commit to the repo
# vinca = { path = "../vinca", editable = true }
[tasks]
generate-recipes = { cmd = "vinca -m", depends-on = ["remove-recipes"] }
generate-gha-workflows = { cmd = "vinca-gha --trigger-branch dummy_build_branch_as_it_is_unused -d ./recipes", depends-on = ["generate-recipes"] }
check-patches = { cmd = "python check_patches_clean_apply.py", depends-on = ["generate-recipes"] }
create_snapshot = { cmd = "vinca-snapshot -d lyrical -o rosdistro_snapshot.yaml" }
upload = "rattler-build upload prefix -c robostack-lyrical --generate-attestation"
build_continue_on_failure = { cmd = "rattler-build build --recipe-dir ./recipes -m ./conda_build_config.yaml -c robostack-lyrical -c https://repo.prefix.dev/conda-forge --continue-on-failure --skip-existing", depends-on = ["generate-recipes"] }
sort = { cmd = "vinca-sort-vinca-lists {{ check }} vinca.yaml && vinca-sort-yaml-keys {{ check }} pkg_additional_info.yaml robostack.yaml rosdistro_additional_recipes.yaml", args = [{ arg = "check", default = "" }] }
[tasks.build]
cmd = "rattler-build build --recipe-dir ./recipes -m ./conda_build_config.yaml -c https://prefix.dev/robostack-lyrical -c https://prefix.dev/conda-forge --skip-existing"
depends-on = ["generate-recipes"]
description = "Build all packages, from the ./recipes dir. This will skip already existing packages, so it can be used to build only a subset of packages by first removing the recipes of the packages you want to rebuild (see `pixi remove-recipes`)."
[tasks.remove-recipes]
cmd = "rm -rf recipes_only_patch; rm -rf recipes; mkdir recipes"
description = "Remove all generated recipes, before regenerating them."
[tasks.build-one]
cmd = "cp ./patch/{{ PACKAGE }}.*patch ./recipes/{{ PACKAGE }}/patch/; rattler-build build --recipe ./recipes/{{ PACKAGE }}/recipe.yaml -m ./conda_build_config.yaml -c https://prefix.dev/robostack-lyrical -c https://prefix.dev/conda-forge"
args = [{ arg = "PACKAGE", default = "ros-lyrical-ros-workspace" }]
description = "Build a single package, from the ./recipes dir. Add the `ros-lyrical-` prefix to the package name, e.g. `pixi build-one --package ros-lyrical-ros-workspace`"