ci: cover kilted and lyrical, and add a real Resolute rolling job - #753
Open
nbbrooks wants to merge 1 commit into
Open
ci: cover kilted and lyrical, and add a real Resolute rolling job#753nbbrooks wants to merge 1 commit into
nbbrooks wants to merge 1 commit into
Conversation
The ros2 branch is released to four distros but the matrix tests two: jazzy 0.1.5-1 jazzy-source kilted 0.1.5-1 NOT tested lyrical 0.1.5-3 NOT tested rolling 0.1.5-2 rolling-source -- see below (humble is released from its own branch and is not affected.) The rolling-source jobs do not test Resolute. With a prebuilt image, ROS_DISTRO: rolling does not imply Resolute -- the OS comes from the image, and moveit/moveit2:rolling-source is Ubuntu noble, built 2026-01-24, with MoveIt compiled inside it. Rolling moved to Resolute, so those jobs have been green while testing a distro/OS pairing that no longer ships. The tag will not refresh either: moveit2's docker.yaml has 12 successes to 85 failures, last success 2026-06-24. Rather than convert them, add bare-OS jobs alongside -- the same shape moveit2's own ci.yaml uses, where a non-blocking "rolling-resolute" job sits next to the prebuilt rolling-ci ones. That keeps ccov, clang-tidy and asan running against MoveIt main while giving the branch a Resolute signal it did not have. kilted-main noble blocking lyrical-main resolute non-blocking rolling-testing resolute non-blocking lyrical and rolling will both fail initially: E: Unable to locate package ros-lyrical-moveit-core Only moveit_common, moveit_configs_utils, moveit_msgs and moveit_resources are published for Resolute; moveit_core is not, which blocks every downstream package there on lyrical as well as rolling. Both jobs are non-blocking and start passing once moveit2 is released for Resolute. DOCKER_IMAGE moves out of the static job env into a step gated on `! matrix.env.OS_CODE_NAME`, since bare-OS jobs must leave it unset. CACHE_PREFIX and the job name fall back to <distro>-<repo> where IMAGE is absent. UNDERLAY already handled this correctly. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
The
ros2branch is released to four distros but the matrix tests two:jazzy-sourcerolling-source— see below(humble is released from its own branch, unaffected.)
The rolling jobs don't test Resolute
With a prebuilt image,
ROS_DISTRO: rollingdoesn't imply Resolute — the OS comes from the image.moveit/moveit2:rolling-sourceis Ubuntu noble, built 2026-01-24, with MoveIt compiled inside it. Rolling moved to Resolute, so those jobs have been green while testing a distro/OS pairing that no longer ships.They won't refresh either: moveit2's
docker.yamlhas 12 successes to 85 failures, last success 2026-06-24 (currently a hardcodedclang-format-14that Resolute doesn't package).How
Rather than converting them, add bare-OS jobs alongside — the shape moveit2's own
ci.yamluses, where a non-blockingrolling-resolutejob sits next to the prebuiltrolling-ciones. That keepsccov,clang-tidyandasanrunning against MoveItmainwhile giving the branch a Resolute signal it has never had.jazzy-source • ccovrolling-source • clang-tidyrolling-source • asankilted-mainlyrical-mainrolling-testingDOCKER_IMAGEmoves out of the static jobenv:into a step gated on! matrix.env.OS_CODE_NAME, since bare-OS jobs must leave it unset.CACHE_PREFIXand the job name fall back to<distro>-<repo>whereIMAGEis absent.UNDERLAYalready handled this correctly — it's conditional onendsWith(matrix.env.IMAGE, '-source').Only
moveit_common,moveit_configs_utils,moveit_msgsandmoveit_resourcesare published for Resolute;moveit_coreis not. That blocks every downstream package there — on lyrical as well as rolling. Both jobs are non-blocking and will start passing on their own once moveit2 is released for Resolute.This mirrors moveit_visual_tools#157 and rviz_visual_tools#301, both merged.
🤖 Generated with Claude Code