Order of Folders in PREFIX_PATH in Cross-Build CI Jobs is Incorrect
Description of the bug
For cross-builds, the PREFIX_PATH variable is being set to search /opt/ros
first instead of the local workspace. Since an earlier version of the messages
repo is installed in /opt/ros
and a newer version cloned in the workspace, this breaks CI builds.
Steps to reproduce the bug
Trigger a CI pipeline on a repository where a change in messages
affects another repository. Example: https://gitlab.com/autowarefoundation/autoware.ai/common/pipelines/84180745
Expected behavior
The jobs in the pipeline completes successfully.
Actual behavior
The cross-build jobs fail due to a change in the messages
repo and the order of package searching. Since PREFIX_PATH searches /opt/ros
first, it uses the old message definition instead of the one built in the workspace.
This must be applied to all repositories:
-
autoware (!21 (merged)) -
common (common!37 (merged)) -
core_perception (core_perception!46 (merged)) -
core_planning (core_planning!34 (merged)) -
drivers (drivers!18 (merged)) -
messages (messages!17 (merged)) -
simulation (simulation!17 (merged)) -
utilities (utilities!41 (merged)) -
visualization (visualization!18 (merged))
Edited by Joshua Whitley