From 395236dc7f01b5b61aa2d902e8ac71cda515e53b Mon Sep 17 00:00:00 2001 From: Ramon Roche Date: Tue, 7 Apr 2026 18:59:58 -0700 Subject: [PATCH] ci(ros): clone px4-ros2-interface-lib using PR base branch The previous logic used GITHUB_HEAD_REF, which on a pull request is the source (PR author's) branch name. For backport PRs (e.g. mrpollo/backport-26781-1.17), no matching branch exists in px4-ros2-interface-lib, so the script fell back to main and the build broke from uORB message divergence. Switch to GITHUB_BASE_REF, which on a PR is the branch the code is being merged into (main or release/X.Y), and fall back to GITHUB_REF_NAME for direct pushes. This always resolves to a real branch in px4-ros2-interface-lib. Signed-off-by: Ramon Roche --- .github/workflows/ros_integration_tests.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ros_integration_tests.yml b/.github/workflows/ros_integration_tests.yml index 7629522837..f5b38292f0 100644 --- a/.github/workflows/ros_integration_tests.yml +++ b/.github/workflows/ros_integration_tests.yml @@ -89,7 +89,9 @@ jobs: . /opt/ros/galactic/setup.bash mkdir -p /opt/px4_ws/src cd /opt/px4_ws/src - BRANCH="${GITHUB_HEAD_REF:-$GITHUB_REF_NAME}" + # On a PR, target the branch we're merging into (main or release/X.Y). + # On a direct push, fall back to the branch we're running on. + BRANCH="${GITHUB_BASE_REF:-$GITHUB_REF_NAME}" REPO_URL="https://github.com/Auterion/px4-ros2-interface-lib.git" if git ls-remote --heads "$REPO_URL" "$BRANCH" | grep -q "$BRANCH"; then echo "Cloning px4-ros2-interface-lib with matching branch: $BRANCH"