Skip to content

Conversation

remimimimimi
Copy link
Contributor

@remimimimimi remimimimimi commented Oct 3, 2025

Problem

In the future we will have backends written in different languages which would require different dependencies. Current approach can't fulfill this, since we expect all binaries to be self-contained. It works for backends written in rust, but don't work for backends written in python for example.

Solution

Instead we can build conda packages from backends and pack them into temporary channel that will be stored in artifacts. This way in the pixi build testsuite we can augment manifests that we test with absolute path to this channel and therefore obtain latest backends required for testing.

@remimimimimi remimimimimi changed the title chore: bundle pixi-build-ros in ci artifacts chore(ci): bundle pixi-build-ros in artifacts Oct 3, 2025
@remimimimimi remimimimimi force-pushed the chore/bundle-pixi-build-ros-in-ci-artifacts branch 2 times, most recently from 3eea16f to e06541e Compare October 3, 2025 11:52
Comment on lines 1 to 2
# export CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_LINKER="clang"
# export CARGO_TARGET_X86_64_UNKNOWN_LINUX_GNU_RUSTFLAGS="-C link-arg=-fuse-ld=$CONDA_PREFIX/bin/mold"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there are reason to disable this?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Build of pixi-build-ros fails with mold, didn't investigated reasons though. I'll return back to this after CI will be green.

@remimimimimi remimimimimi force-pushed the chore/bundle-pixi-build-ros-in-ci-artifacts branch from e06541e to 877a8bd Compare October 6, 2025 11:34
@remimimimimi remimimimimi marked this pull request as draft October 6, 2025 11:35
@remimimimimi remimimimimi force-pushed the chore/bundle-pixi-build-ros-in-ci-artifacts branch 9 times, most recently from 5353731 to 93a47a9 Compare October 7, 2025 08:58
@remimimimimi remimimimimi changed the title chore(ci): bundle pixi-build-ros in artifacts chore(ci): build channel from artifacts Oct 7, 2025
@remimimimimi remimimimimi force-pushed the chore/bundle-pixi-build-ros-in-ci-artifacts branch 6 times, most recently from 8c96417 to 9f948a8 Compare October 14, 2025 14:41
@remimimimimi remimimimimi marked this pull request as ready for review October 15, 2025 12:27
Copy link
Contributor

@Hofer-Julian Hofer-Julian left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good!

Comment on lines +134 to +137
files:
exclude:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Schema is unhappy with this.

  • If the schema's wrong -> fix the schema
  • Otherwise fix this


build:
script:
- cargo build --profile ci --locked --bins
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe add the following to avoid rebuilds from scratch:

export CARGO_TARGET_DIR=${{ SRC_DIR }}/../../target-cache

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It seems to be invalidated between builds of recipe.

@remimimimimi
Copy link
Contributor Author

I found a regression in compilation time. It seems that pixi-build-ros requires recompilation of rust part blowing up compilation time by the factor of 2. Reason is still unclear for me, but it works fine when I rebase my commits on top of #409. I'll start bisecting it.

@remimimimimi remimimimimi force-pushed the chore/bundle-pixi-build-ros-in-ci-artifacts branch from 89f1dcf to 698cd97 Compare October 16, 2025 12:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants