diff --git a/.github/workflows/docker-image.yml b/.github/workflows/docker-image.yml index c75db508..eeac038f 100644 --- a/.github/workflows/docker-image.yml +++ b/.github/workflows/docker-image.yml @@ -58,7 +58,7 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v6 - name: Run build script - ${{ matrix.script }} run: | diff --git a/.github/workflows/pr.yaml b/.github/workflows/pr.yaml index 74908517..0bb9e0e4 100644 --- a/.github/workflows/pr.yaml +++ b/.github/workflows/pr.yaml @@ -11,5 +11,5 @@ jobs: name: Space ROS Commit Message Standards runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 - uses: space-ros/check-commit-message-action@main diff --git a/canadarm2/Dockerfile b/canadarm2/Dockerfile index 2c034ff8..835dd599 100644 --- a/canadarm2/Dockerfile +++ b/canadarm2/Dockerfile @@ -1,4 +1,4 @@ -FROM osrf/space-ros:jazzy-2025.10.0 +FROM osrf/space-ros:jazzy-2026.01.0 ENV RMW_IMPLEMENTATION=rmw_cyclonedds_cpp ENV ROS_DISTRO=jazzy diff --git a/curiosity_rover/Dockerfile b/curiosity_rover/Dockerfile index 501866d1..dbc15e4f 100644 --- a/curiosity_rover/Dockerfile +++ b/curiosity_rover/Dockerfile @@ -1,4 +1,4 @@ -FROM osrf/space-ros:jazzy-2025.10.0 +FROM osrf/space-ros:jazzy-2026.01.0 ENV RMW_IMPLEMENTATION=rmw_cyclonedds_cpp ENV ROS_DISTRO=jazzy diff --git a/lunar_terrain/Dockerfile b/lunar_terrain/Dockerfile index a6394016..a72e4ce6 100644 --- a/lunar_terrain/Dockerfile +++ b/lunar_terrain/Dockerfile @@ -19,7 +19,7 @@ # VCS_REF - The git revision of the Space ROS source code (no default value). # VERSION - The version of Space ROS (default: "preview") -FROM osrf/space-ros:humble-2024.10.0 +FROM osrf/space-ros:jazzy-2025.10.0 # Define arguments used in the metadata definition ARG VCS_REF @@ -36,15 +36,14 @@ LABEL org.label-schema.vcs-url="https://github.com/space-ros/docker" LABEL org.label-schema.vcs-ref=${VCS_REF} # Clone all space-ros sources -RUN mkdir ${SPACEROS_DIR}/src \ - && vcs import ${SPACEROS_DIR}/src < ${SPACEROS_DIR}/exact.repos +RUN sudo vcs import ${SPACEROS_DIR}/src < ${SPACEROS_DIR}/scripts/spaceros.repos # Define a few key variables -ENV DEMO_DIR=${HOME_DIR}/demos_ws -ENV GZ_VERSION=garden +ENV DEMO_DIR=${HOME}/demos_ws +ENV GZ_VERSION=harmonic ENV GZ_PARTITION=spaceros -ENV GZ_SIM_RESOURCE_PATH=/home/spaceros-user/demos_ws/src/simulation/models/lunar_terrain/models -ENV ROS_DISTRO=humble +ENV GZ_SIM_RESOURCE_PATH=$DEMO_DIR/src/simulation/models/lunar_terrain/models +ENV ROS_DISTRO=jazzy # Disable prompting during package installation ARG DEBIAN_FRONTEND=noninteractive @@ -57,11 +56,9 @@ ADD --chmod=644 https://raw.githubusercontent.com/ros/rosdistro/master/ros.key / # the cache won't make it into the built image but will be maintained between steps. RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \ --mount=type=cache,target=/var/lib/apt,sharing=locked \ - sudo apt-get update -RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \ - --mount=type=cache,target=/var/lib/apt,sharing=locked \ - sudo apt-get dist-upgrade -y -RUN rosdep update + sudo apt-get update \ + && sudo apt-get dist-upgrade -y +RUN sudo rosdep init && rosdep update # Install the various build and test tools RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \ @@ -71,39 +68,41 @@ RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \ clang-format \ cmake \ git \ + git-lfs \ libbullet-dev \ python3-colcon-common-extensions \ python3-flake8 \ python3-pip \ python3-pytest-cov \ + python3-rosinstall-generator \ python3-rosdep \ python3-setuptools \ python3-vcstool \ wget +# Install git-lfs for big files in simulation repo +RUN git lfs install + RUN sudo add-apt-repository ppa:kisak/kisak-mesa RUN sudo apt install xterm -y -# Get rosinstall_generator -# Using Docker BuildKit cache mounts for /var/cache/apt and /var/lib/apt ensures that -# the cache won't make it into the built image but will be maintained between steps. -RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \ - --mount=type=cache,target=/var/lib/apt,sharing=locked \ - sudo apt-get update -y && sudo apt-get install -y python3-rosinstall-generator +# Install Gazebo Harmonic, GZ ROS packages and rviz2 from offical binaries +RUN sudo wget https://packages.osrfoundation.org/gazebo.gpg -O /usr/share/keyrings/pkgs-osrf-archive-keyring.gpg \ + && echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/pkgs-osrf-archive-keyring.gpg] http://packages.osrfoundation.org/gazebo/ubuntu-stable $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/gazebo-stable.list > /dev/null -# Install Gazebo Garden -# Using Docker BuildKit cache mounts for /var/cache/apt and /var/lib/apt ensures that -# the cache won't make it into the built image but will be maintained between steps. RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \ --mount=type=cache,target=/var/lib/apt,sharing=locked \ - sudo wget https://packages.osrfoundation.org/gazebo.gpg -O /usr/share/keyrings/pkgs-osrf-archive-keyring.gpg \ - && echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/pkgs-osrf-archive-keyring.gpg] http://packages.osrfoundation.org/gazebo/ubuntu-stable $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/gazebo-stable.list > /dev/null \ - && sudo apt-get update -y && sudo apt-get install -y gz-garden && sudo apt-get install -y git-lfs && git lfs install + sudo apt-get update -y \ + && sudo apt-get install -y gz-$GZ_VERSION \ + && sudo apt-get install -y ros-${ROS_DISTRO}-ros-gz \ + && sudo apt-get install -y ros-${ROS_DISTRO}-rviz2 + +ENV SPACEROS_USER spaceros-user # Generate repos file for demo dependencies, excluding packages from Space ROS core. -COPY --chown=${USERNAME}:${USERNAME} demo-pkgs.txt /tmp/ -COPY --chown=${USERNAME}:${USERNAME} excluded-pkgs.txt /tmp/ +COPY --chown=${SPACEROS_USER}:${SPACEROS_USER} demo-pkgs.txt /tmp/ +COPY --chown=${SPACEROS_USER}:${SPACEROS_USER} excluded-pkgs.txt /tmp/ RUN rosinstall_generator \ --rosdistro ${ROS_DISTRO} \ --deps \ @@ -112,44 +111,48 @@ RUN rosinstall_generator \ -- $(cat /tmp/demo-pkgs.txt) \ > /tmp/demo_generated_pkgs.repos +# Create workspace for lunar_terrain demo RUN mkdir -p ${DEMO_DIR}/src WORKDIR ${DEMO_DIR} RUN vcs import src < /tmp/demo_generated_pkgs.repos -# Install system dependencies -RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \ - --mount=type=cache,target=/var/lib/apt,sharing=locked \ - /bin/bash -c 'source ${SPACEROS_DIR}/install/setup.bash' \ - && rosdep install --from-paths ${SPACEROS_DIR}/src src --ignore-src --rosdistro ${ROS_DISTRO} -r -y --skip-keys "console_bridge generate_parameter_library fastcdr fastrtps rti-connext-dds-5.3.1 urdfdom_headers rmw_connextdds ros_testing rmw_connextdds rmw_fastrtps_cpp rmw_fastrtps_dynamic_cpp composition demo_nodes_py lifecycle rosidl_typesupport_fastrtps_cpp rosidl_typesupport_fastrtps_c ikos diagnostic_aggregator diagnostic_updater joy qt_gui rqt_gui rqt_gui_py" - # Get the source for the dependencies # RUN vcs import src < /tmp/demo_generated_pkgs.repos -COPY --chown=${USERNAME}:${USERNAME} demo_manual_pkgs.repos /tmp/ -RUN vcs import src < /tmp/demo_manual_pkgs.repos && /bin/bash -c 'source "${SPACEROS_DIR}/install/setup.bash"' +COPY --chown=${SPACEROS_USER}:${SPACEROS_USER} demo_manual_pkgs.repos /tmp/ +RUN vcs import src < /tmp/demo_manual_pkgs.repos RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \ --mount=type=cache,target=/var/lib/apt,sharing=locked \ sudo apt-get update -y \ -&& /bin/bash -c 'source "${SPACEROS_DIR}/install/setup.bash"' \ -&& rosdep install --from-paths src --ignore-src -r -y --rosdistro ${ROS_DISTRO} + && /bin/bash -c 'source /opt/ros/${ROS_DISTRO}/setup.bash \ + && source "${SPACEROS_DIR}/setup.bash" \ + && rosdep install \ + --simulate \ + --from-paths src \ + --ignore-src \ + -r -y \ + --rosdistro ${ROS_DISTRO} > /tmp/rosdep-commands.sh \ + && chmod +x /tmp/rosdep-commands.sh \ + && /tmp/rosdep-commands.sh' # Copy the demo source code -COPY --chown=${USERNAME}:${USERNAME} lunar_sun_gz_plugin src/lunar_sun_gz_plugin -COPY --chown=${USERNAME}:${USERNAME} lunar_terrain_gz_bringup src/lunar_terrain_gz_bringup -COPY --chown=${USERNAME}:${USERNAME} lunar_terrain_gz_worlds src/lunar_terrain_gz_worlds +COPY --chown=${SPACEROS_USER}:${SPACEROS_USER} lunar_sun_gz_plugin src/lunar_sun_gz_plugin +COPY --chown=${SPACEROS_USER}:${SPACEROS_USER} lunar_terrain_gz_bringup src/lunar_terrain_gz_bringup +COPY --chown=${SPACEROS_USER}:${SPACEROS_USER} lunar_terrain_gz_worlds src/lunar_terrain_gz_worlds # Build the demo -RUN /bin/bash -c 'source ${SPACEROS_DIR}/install/setup.bash \ +RUN /bin/bash -c 'source /opt/ros/${ROS_DISTRO}/setup.bash \ + && source ${SPACEROS_DIR}/setup.bash \ && colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release' # Create the render group if it doesn't exist RUN sudo groupadd -f render # Add the user to the render group so that the user can access /dev/dri/renderD128 -RUN sudo usermod -aG render $USERNAME +RUN sudo usermod -aG render ${SPACEROS_USER} # Setup the entrypoint -COPY --chown=${USERNAME}:${USERNAME} ./entrypoint.sh / +COPY --chown=${SPACEROS_USER}:${SPACEROS_USER} ./entrypoint.sh / # RUN chown appuser:appuser /entrypoint.sh && chmod +x /entrypoint.sh ENTRYPOINT ["/entrypoint.sh"] CMD ["bash"] diff --git a/lunar_terrain/demo-pkgs.txt b/lunar_terrain/demo-pkgs.txt index 810d8895..8baaba3f 100644 --- a/lunar_terrain/demo-pkgs.txt +++ b/lunar_terrain/demo-pkgs.txt @@ -1,4 +1,3 @@ leo_gz_plugins -rviz2 xacro -teleop_twist_keyboard \ No newline at end of file +teleop_twist_keyboard diff --git a/lunar_terrain/demo_manual_pkgs.repos b/lunar_terrain/demo_manual_pkgs.repos index 9303f68a..dcc27555 100644 --- a/lunar_terrain/demo_manual_pkgs.repos +++ b/lunar_terrain/demo_manual_pkgs.repos @@ -1,26 +1,9 @@ repositories: - actuator_msgs: - type: git - url: https://github.com/rudislabs/actuator_msgs.git - version: main - ros_gz: - type: git - url: https://github.com/gazebosim/ros_gz.git - version: humble - vision_msgs: - type: git - url: https://github.com/ros-perception/vision_msgs.git - version: humble - gps_msgs: - type: git - url: https://github.com/swri-robotics/gps_umd.git - path: gps_msgs - version: 113782d leo_common-ros2: type: git url: https://github.com/LeoRover/leo_common-ros2.git - version: humble + version: jazzy simulation: type: git url: https://github.com/space-ros/simulation.git - version: main \ No newline at end of file + version: main diff --git a/lunar_terrain/excluded-pkgs.txt b/lunar_terrain/excluded-pkgs.txt index e279257d..9b7a3891 100644 --- a/lunar_terrain/excluded-pkgs.txt +++ b/lunar_terrain/excluded-pkgs.txt @@ -2,6 +2,22 @@ fastcdr fastrtps fastrtps_cmake_module generate_parameter_library +gz_cmake_vendor +gz_common_vendor +gz_dartsim_vendor +gz_fuel_tools_vendor +gz_gui_vendor +gz_math_vendor +gz_msgs_vendor +gz_ogre_next_vendor +gz_physics_vendor +gz_plugin_vendor +gz_rendering_vendor +gz_sensors_vendor +gz_sim_vendor +gz_tools_vendor +gz_transport_vendor +gz_utils_vendor rmw_connextdds rmw_fastrtps_cpp rmw_fastrtps_dynamic_cpp diff --git a/lunar_terrain/lunar_sun_gz_plugin/CMakeLists.txt b/lunar_terrain/lunar_sun_gz_plugin/CMakeLists.txt index 6e0ff86f..41df2c76 100644 --- a/lunar_terrain/lunar_sun_gz_plugin/CMakeLists.txt +++ b/lunar_terrain/lunar_sun_gz_plugin/CMakeLists.txt @@ -10,32 +10,17 @@ find_package(ament_cmake REQUIRED) add_library(lunar_sun_gz_plugin SHARED src/lunar_sun.cpp) -if(DEFINED ENV{GZ_VERSION} AND "$ENV{GZ_VERSION}" STREQUAL "garden") - find_package(gz-plugin2 REQUIRED COMPONENTS register) - set(GZ_PLUGIN_VER ${gz-plugin2_VERSION_MAJOR}) - - find_package(gz-sim7 REQUIRED) - set(GZ_SIM_VER ${gz-sim7_VERSION_MAJOR}) - - target_link_libraries(lunar_sun_gz_plugin - gz-sim${GZ_SIM_VER}::gz-sim${GZ_SIM_VER} - gz-plugin${GZ_PLUGIN_VER}::gz-plugin${GZ_PLUGIN_VER} - ) -else() - #If GZ_VERSION is not set default to Fortress - find_package(ignition-plugin1 REQUIRED COMPONENTS register) - set(IGN_PLUGIN_VER ${ignition-plugin1_VERSION_MAJOR}) - - find_package(ignition-gazebo6 REQUIRED) - set(IGN_GAZEBO_VER ${ignition-gazebo6_VERSION_MAJOR}) - - add_definitions(-DUSE_IGNITION) - - target_link_libraries(lunar_sun_gz_plugin - ignition-gazebo${IGN_GAZEBO_VER}::ignition-gazebo${IGN_GAZEBO_VER} - ignition-plugin${IGN_PLUGIN_VER}::ignition-plugin${IGN_PLUGIN_VER} - ) -endif() +find_package(gz_sim_vendor REQUIRED) +find_package(gz-sim REQUIRED) +set(GZ_SIM_VER ${gz-sim_VERSION_MAJOR}) + +find_package(gz-plugin2 REQUIRED COMPONENTS register) +set(GZ_PLUGIN_VER ${gz-plugin2_VERSION_MAJOR}) + +target_link_libraries(lunar_sun_gz_plugin + gz-sim${GZ_SIM_VER}::gz-sim${GZ_SIM_VER} + gz-plugin${GZ_PLUGIN_VER}::gz-plugin${GZ_PLUGIN_VER} +) set_property(TARGET lunar_sun_gz_plugin PROPERTY CXX_STANDARD 17) diff --git a/lunar_terrain/lunar_sun_gz_plugin/package.xml b/lunar_terrain/lunar_sun_gz_plugin/package.xml index 6a9d21a7..8919d552 100644 --- a/lunar_terrain/lunar_sun_gz_plugin/package.xml +++ b/lunar_terrain/lunar_sun_gz_plugin/package.xml @@ -10,14 +10,8 @@ Apache License 2.0 ament_cmake - - gz-plugin2 - gz-sim7 - - gz-plugin - gz-sim6 - gz-plugin - gz-sim6 + gz_plugin_vendor + gz_sim_vendor ament_lint_auto ament_cmake_copyright @@ -28,4 +22,4 @@ ament_cmake - \ No newline at end of file + diff --git a/lunar_terrain/lunar_sun_gz_plugin/src/lunar_sun.cpp b/lunar_terrain/lunar_sun_gz_plugin/src/lunar_sun.cpp index bfa8e530..a2f70e16 100644 --- a/lunar_terrain/lunar_sun_gz_plugin/src/lunar_sun.cpp +++ b/lunar_terrain/lunar_sun_gz_plugin/src/lunar_sun.cpp @@ -12,68 +12,60 @@ // See the License for the specific language governing permissions and // limitations under the License. -#include -#include -#include -#include -#include -#include +#include +#include +#include +#include +#include +#include #include -#include -#include -#include -#include +#include +#include +#include +#include #include #include +#include +#include -#ifdef USE_IGNITION -namespace gazebo = ignition::gazebo; -#else -namespace gazebo = gz::sim; -#endif -class LunarSun : public gazebo::System, - public gazebo::ISystemConfigure, - public gazebo::ISystemUpdate { +class LunarSun : public gz::sim::System, + public gz::sim::ISystemConfigure, + public gz::sim::ISystemUpdate { // Model entity - gazebo::World world_{gazebo::kNullEntity}; + gz::sim::World world_{gz::sim::kNullEntity}; // Joint entities - gazebo::Entity actorEntity, lightEntity; + gz::sim::Entity actorEntity, lightEntity; // Whether the system has been properly configured bool configured_{false}; public: - void Configure(const gazebo::Entity& entity, - const std::shared_ptr& sdf, - gazebo::EntityComponentManager& ecm, - gazebo::EventManager& /*eventMgr*/) override { - this->world_ = gazebo::World(entity); + void Configure(const gz::sim::Entity& entity, + const std::shared_ptr& /*sdf*/, + gz::sim::EntityComponentManager& ecm, + gz::sim::EventManager& /*eventMgr*/) override { + this->world_ = gz::sim::World(entity); this->actorEntity = - ecm.EntityByComponents(gazebo::components::Name("animated_sun")); + ecm.EntityByComponents(gz::sim::components::Name("animated_sun")); LoadCSV("/home/spaceros-user/demos_ws/src/lunar_sun_gz_plugin/horizons_az_el.csv"); - ignition::math::Pose3d startPose(0.0, 0.0, 0.0, 0.0, 0.0, 0.0); + gz::math::Pose3d startPose(0.0, 0.0, 0.0, 0.0, 0.0, 0.0); // Position the light above the ground ecm.CreateComponent(this->actorEntity, - gazebo::components::Pose(startPose)); + gz::sim::components::Pose(startPose)); ecm.CreateComponent(this->actorEntity, - gazebo::components::TrajectoryPose( + gz::sim::components::TrajectoryPose( this->trajectory[0])); configured_ = true; } - void Update(const gazebo::UpdateInfo& info, - gazebo::EntityComponentManager& ecm) override { - // Get actor pose - auto actor = gazebo::Actor(this->actorEntity); - auto actorPosition = actor.WorldPose(ecm); - - + void Update(const gz::sim::UpdateInfo& info, + gz::sim::EntityComponentManager& ecm) override { // Get the current simulation time this->currentSimTime = info.simTime; @@ -81,28 +73,28 @@ class LunarSun : public gazebo::System, std::chrono::_V2::steady_clock::duration elapsedTime = this->currentSimTime - this->startWaypointTime; - double secondElapsed = - std::chrono::duration_cast(elapsedTime).count(); - if (elapsedTime >= waypointDuration) { // Move to the next waypoint this->startWaypointTime = this->currentSimTime; this->trajectoryIndex++; - if (this->trajectoryIndex >= this->trajectory.size()) { + if (static_cast(this->trajectoryIndex) >= this->trajectory.size()) { this->trajectoryIndex = 0; } // Set the actor's trajectory pose - actor.SetTrajectoryPose(ecm, this->trajectory[this->trajectoryIndex]); - ecm.SetChanged(this->actorEntity, gazebo::components::TrajectoryPose::typeId, - gazebo::ComponentState::PeriodicChange); + auto trajPoseComp = ecm.Component(this->actorEntity); + if (trajPoseComp) { + trajPoseComp->Data() = this->trajectory[this->trajectoryIndex]; + ecm.SetChanged(this->actorEntity, gz::sim::components::TrajectoryPose::typeId, + gz::sim::ComponentState::PeriodicChange); + } - ignition::msgs::Light lightMsg; + gz::msgs::Light lightMsg; lightMsg.set_name("sunlight"); - lightMsg.set_type(ignition::msgs::Light::DIRECTIONAL); + lightMsg.set_type(gz::msgs::Light::DIRECTIONAL); // Set the pose in the light message // Directly set the position components - ignition::msgs::Pose* poseLight2 = lightMsg.mutable_pose(); + gz::msgs::Pose* poseLight2 = lightMsg.mutable_pose(); poseLight2->mutable_position()->set_x( this->trajectory[this->trajectoryIndex].X()); poseLight2->mutable_position()->set_y( @@ -140,16 +132,16 @@ class LunarSun : public gazebo::System, // Publish the light message to the light config service bool result; - ignition::msgs::Boolean res; - ignition::transport::Node node; + gz::msgs::Boolean res; + gz::transport::Node node; constexpr unsigned int timeout = 5000; - bool executed = node.Request("/world/dem_heightmap/light_config", lightMsg, - timeout, res, result); + node.Request("/world/dem_heightmap/light_config", lightMsg, + timeout, res, result); - ecm.SetChanged(this->lightEntity, gazebo::components::Pose::typeId, - gazebo::ComponentState::PeriodicChange); - ecm.SetChanged(this->lightEntity, gazebo::components::Light::typeId, - gazebo::ComponentState::PeriodicChange); + ecm.SetChanged(this->lightEntity, gz::sim::components::Pose::typeId, + gz::sim::ComponentState::PeriodicChange); + ecm.SetChanged(this->lightEntity, gz::sim::components::Light::typeId, + gz::sim::ComponentState::PeriodicChange); } else { return; } @@ -192,17 +184,17 @@ class LunarSun : public gazebo::System, double elevation = std::stod(elevationStr); // Convert azimuth and elevation to radians and then to a Pose - ignition::math::Vector3d position( + gz::math::Vector3d position( 100000 * cos(azimuth * M_PI / 180.0) * cos(elevation * M_PI / 180.0), 100000 * sin(azimuth * M_PI / 180.0) * cos(elevation * M_PI / 180.0), (100000 * sin(elevation * M_PI / 180.0)) - 10000); - ignition::math::Pose3d pose(position, ignition::math::Quaterniond::Identity); + gz::math::Pose3d pose(position, gz::math::Quaterniond::Identity); this->trajectory.push_back(pose); } } - std::vector trajectory; + std::vector trajectory; int trajectoryIndex = 0; std::chrono::_V2::steady_clock::duration startWaypointTime = std::chrono::steady_clock::duration::zero(); @@ -211,5 +203,5 @@ class LunarSun : public gazebo::System, std::chrono::hours(1); }; -IGNITION_ADD_PLUGIN(LunarSun, gazebo::System, LunarSun::ISystemConfigure, +GZ_ADD_PLUGIN(LunarSun, gz::sim::System, LunarSun::ISystemConfigure, LunarSun::ISystemUpdate) diff --git a/lunar_terrain/lunar_terrain_gz_bringup/config/leo_ros_gz_bridge.yaml b/lunar_terrain/lunar_terrain_gz_bringup/config/leo_ros_gz_bridge.yaml index 4f98732d..6da55ab5 100644 --- a/lunar_terrain/lunar_terrain_gz_bringup/config/leo_ros_gz_bridge.yaml +++ b/lunar_terrain/lunar_terrain_gz_bringup/config/leo_ros_gz_bridge.yaml @@ -2,20 +2,20 @@ - ros_topic_name: "/cmd_vel" ros_type_name: "geometry_msgs/msg/Twist" gz_topic_name: "/cmd_vel" - gz_type_name: "ignition.msgs.Twist" + gz_type_name: "gz.msgs.Twist" direction: ROS_TO_GZ - gz_topic_name: "/imu/data_raw" - gz_type_name: "ignition.msgs.IMU" + gz_type_name: "gz.msgs.IMU" ros_topic_name: "/imu/data_raw" ros_type_name: "sensor_msgs/msg/Imu" direction: GZ_TO_ROS - gz_topic_name: "/joint_states" - gz_type_name: "ignition.msgs.Model" + gz_type_name: "gz.msgs.Model" ros_topic_name: "/joint_states" ros_type_name: "sensor_msgs/msg/JointState" direction: GZ_TO_ROS - gz_topic_name: "/odom" - gz_type_name: "ignition.msgs.Odometry" + gz_type_name: "gz.msgs.Odometry" ros_topic_name: "/odom" ros_type_name: "nav_msgs/msg/Odometry" - direction: GZ_TO_ROS \ No newline at end of file + direction: GZ_TO_ROS diff --git a/lunar_terrain/lunar_terrain_gz_bringup/launch/lunar_terrain_world.launch.py b/lunar_terrain/lunar_terrain_gz_bringup/launch/lunar_terrain_world.launch.py index 78ad54d9..c99e877c 100644 --- a/lunar_terrain/lunar_terrain_gz_bringup/launch/lunar_terrain_world.launch.py +++ b/lunar_terrain/lunar_terrain_gz_bringup/launch/lunar_terrain_world.launch.py @@ -64,7 +64,7 @@ def generate_launch_description(): executable="parameter_bridge", name="clock_bridge", arguments=[ - "/clock@rosgraph_msgs/msg/Clock[ignition.msgs.Clock]", + "/clock@rosgraph_msgs/msg/Clock[gz.msgs.Clock]", ], parameters=[ { diff --git a/lunar_terrain/lunar_terrain_gz_worlds/package.xml b/lunar_terrain/lunar_terrain_gz_worlds/package.xml index 22b677c6..e2bc57d4 100644 --- a/lunar_terrain/lunar_terrain_gz_worlds/package.xml +++ b/lunar_terrain/lunar_terrain_gz_worlds/package.xml @@ -12,7 +12,7 @@ ament_lint_auto ament_lint_common - ros_ign_gazebo + ros_gz leo_description diff --git a/nav2_demo/Dockerfile b/nav2_demo/Dockerfile index 712724f5..a1909f74 100644 --- a/nav2_demo/Dockerfile +++ b/nav2_demo/Dockerfile @@ -19,7 +19,7 @@ # VCS_REF - The git revision of the Space ROS source code (no default value). # VERSION - The version of Space ROS (default: "preview") -FROM osrf/space-ros-nav2:jazzy-2025.10.0 +FROM osrf/space-ros-nav2:jazzy-2026.01.0 # Define arguments used in the metadata definition ARG VCS_REF diff --git a/racs2_demos_on_spaceros/Dockerfile.RACS2 b/racs2_demos_on_spaceros/Dockerfile.RACS2 index ef223364..2a8548cb 100644 --- a/racs2_demos_on_spaceros/Dockerfile.RACS2 +++ b/racs2_demos_on_spaceros/Dockerfile.RACS2 @@ -1,4 +1,4 @@ -FROM osrf/space-ros:jazzy-2025.10.0 +FROM osrf/space-ros:jazzy-2026.01.0 ENV RMW_IMPLEMENTATION=rmw_cyclonedds_cpp ENV ROS_DISTRO=jazzy @@ -109,4 +109,4 @@ RUN /bin/bash -lc '\ USER root COPY start_racs2_demo.sh ${HOME}/start_racs2_demo.sh RUN chmod +x ${HOME}/start_racs2_demo.sh -USER spaceros-user \ No newline at end of file +USER spaceros-user diff --git a/space_robots/Dockerfile b/space_robots/Dockerfile index 1df850c1..e39fab58 100644 --- a/space_robots/Dockerfile +++ b/space_robots/Dockerfile @@ -19,7 +19,7 @@ # VCS_REF - The git revision of the Space ROS source code (no default value). # VERSION - The version of Space ROS (default: "preview") -FROM osrf/space-ros-moveit2:jazzy-2025.10.0 +FROM osrf/space-ros-moveit2:jazzy-2026.01.0 # Define arguments used in the metadata definition ARG VCS_REF @@ -60,6 +60,10 @@ RUN git clone https://github.com/space-ros/simulation.git ${DEMO_DIR}/src/simula # Space Robots and RACS2 both reuse other demo assets and can lead to conflicts # This is a temporary fix for [issue #130](https://github.com/space-ros/demos/issues/130) RUN rm -r ${DEMO_DIR}/src/demos/racs2_demos_on_spaceros +# the next 2 demos are not related to space_robots so we drop them from this build to not conflict on versions +RUN rm -r ${DEMO_DIR}/src/demos/lunar_terrain +RUN rm -r ${DEMO_DIR}/src/demos/ros_trick + # Get a list of all installed ros2 packges RUN source "${SPACEROS_DIR}/setup.bash" && \