Skip to content

Migrate DAVE to ROS 2 Lyrical and Gazebo Jetty - #65

Open
yeseorizi wants to merge 9 commits into
ros2from
chore/lyrical-jetty-base-20260909
Open

Migrate DAVE to ROS 2 Lyrical and Gazebo Jetty#65
yeseorizi wants to merge 9 commits into
ros2from
chore/lyrical-jetty-base-20260909

Conversation

@yeseorizi

@yeseorizi yeseorizi commented Sep 9, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • migrate the current ros2 branch from ROS 2 Jazzy / Gazebo Harmonic to ROS 2 Lyrical / Gazebo Jetty
  • update Gazebo CMake targets and the Jetty spherical-coordinate API
  • rename and update the Ubuntu 26.04 installer, repository manifest, Dockerfiles, workflows, README, and issue templates
  • build Docker images from the exact checked-out revision and make pull-request runs build-only
  • preserve the existing CUDA implementation; ARM64 does not claim CUDA support, and the WGPU work remains separate

Scope

This PR is based directly on the current ros2 branch and is independent of PR #44. It does not include or modify the WGPU implementation, shader, range-axis correction, or research experiment files.

Validation

  • native Lyrical / Jetty build completed for the 7 migrated CMake packages
  • all repository pre-commit and GitHub lint checks passed
  • shell syntax, ShellCheck, workflow YAML, package.xml, and Dockerfile static checks passed
  • stale Jazzy / Harmonic / Ubuntu 24.04 product labels and versioned Harmonic CMake package names: none found
  • AMD64 Docker build passed
  • ARM64 Docker build passed
    • Ubuntu 26.04 / ARM64 image built on the repository self-hosted runner
    • ArduSub SITL and ardupilot_gazebo built against Gazebo Jetty
    • the missing GStreamer development headers required by ardupilot_gazebo were added
  • the locally loaded ARM64 PR image passed a runtime smoke test
    • Gazebo Sim 10.5.0 and the ArduSub executable were present
    • 11 dave_* packages plus multibeam_sonar and multibeam_sonar_system were discoverable
    • no unresolved shared-library dependency was found in the DAVE or ArduPilot Gazebo plugins
    • dvl_world started headlessly and advertised the expected Gazebo world clock/statistics topic
    • the default container command started xrdp, xrdp-sesman, and system DBus, and TCP port 3389 accepted a connection

Pull-request jobs are build-only. No Docker Hub image is pushed from a pull-request event.

Remaining post-merge check

The repository contains the DOCKERHUB_USERNAME and DOCKERHUB_TOKEN secret names, but their values cannot be read from GitHub. Their current validity and the final image pull/run check can only be confirmed by the first ros2 push workflow after merge.

Local limitation

The local validation machine has no NVIDIA CUDA toolkit. CUDA compilation and runtime behavior are therefore not claimed by this PR. The separate WGPU work in PR #44 is also not part of this migration.

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.

1 participant