From 19a1b7749ef4ada74ed5475d2dd176156b05566d Mon Sep 17 00:00:00 2001 From: rafal-gorecki Date: Wed, 6 Dec 2023 13:49:37 +0100 Subject: [PATCH] Build Release & Helthcheck decrease interval --- Dockerfile.gazebo | 8 +++++--- Dockerfile.hardware | 8 +++++--- healthcheck.cpp | 2 +- 3 files changed, 11 insertions(+), 7 deletions(-) diff --git a/Dockerfile.gazebo b/Dockerfile.gazebo index 3722b50..e7dd775 100644 --- a/Dockerfile.gazebo +++ b/Dockerfile.gazebo @@ -44,7 +44,7 @@ RUN cd src/ && \ mv /healthcheck.cpp /ros2_ws/src/healthcheck_pkg/src/ && \ cd .. && \ # Build - colcon build && \ + colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release && \ rm -rf build log ## =========================== Final Stage =============================== @@ -71,8 +71,10 @@ RUN apt-get update && apt-get install -y \ rosdep init && \ rosdep update --rosdistro $ROS_DISTRO && \ rosdep install -i --from-path src --rosdistro $ROS_DISTRO -y && \ - apt-get clean && \ + # Save version echo $(cat /ros2_ws/src/rosbot_gazebo/package.xml | grep '' | sed -r 's/.*([0-9]+.[0-9]+.[0-9]+)<\/version>/\1/g') > /version.txt && \ + # Size optimalization + apt-get clean && \ rm -rf src && \ rm -rf /var/lib/apt/lists/* @@ -80,5 +82,5 @@ COPY ros_entrypoint.sh / COPY vulcanexus_entrypoint.sh / COPY healthcheck.sh / -HEALTHCHECK --interval=7s --timeout=2s --start-period=5s --retries=5 \ +HEALTHCHECK --interval=5s --timeout=2s --start-period=5s --retries=4 \ CMD ["/healthcheck.sh"] \ No newline at end of file diff --git a/Dockerfile.hardware b/Dockerfile.hardware index e3a1358..8d133b7 100644 --- a/Dockerfile.hardware +++ b/Dockerfile.hardware @@ -75,7 +75,7 @@ COPY healthcheck.cpp src/healthcheck_pkg/src/ RUN MYDISTRO=${PREFIX:-ros}; MYDISTRO=${MYDISTRO//-/} && \ source /opt/$MYDISTRO/$ROS_DISTRO/setup.bash && \ - colcon build && \ + colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release && \ rm -rf build log src ## =========================== ROS builder =============================== @@ -135,8 +135,10 @@ RUN apt-get update && apt-get install -y \ rosdep init && \ rosdep update --rosdistro $ROS_DISTRO && \ rosdep install -i --from-path src --rosdistro $ROS_DISTRO -y && \ - apt-get clean && \ + # Save version echo $(cat /ros2_ws/src/rosbot/package.xml | grep '' | sed -r 's/.*([0-9]+.[0-9]+.[0-9]+)<\/version>/\1/g') >> /version.txt && \ + # Size optimalization + apt-get clean && \ rm -rf src && \ rm -rf /var/lib/apt/lists/* @@ -151,7 +153,7 @@ COPY ros_entrypoint.sh / COPY vulcanexus_entrypoint.sh / COPY healthcheck.sh / -HEALTHCHECK --interval=7s --timeout=2s --start-period=5s --retries=5 \ +HEALTHCHECK --interval=5s --timeout=2s --start-period=5s --retries=4 \ CMD ["/healthcheck.sh"] COPY microros_localhost_only.xml / diff --git a/healthcheck.cpp b/healthcheck.cpp index ff80c35..31bb431 100644 --- a/healthcheck.cpp +++ b/healthcheck.cpp @@ -35,7 +35,7 @@ int main(int argc, char *argv[]) { rclcpp::init(argc, argv); auto node = rclcpp::Node::make_shared("healthcheck_node"); auto sub = node->create_subscription( - "odometry/filtered", rclcpp::SensorDataQoS(), msg_callback); + "odometry/filtered", rclcpp::SensorDataQoS().keep_last(1), msg_callback); while (rclcpp::ok()) { rclcpp::spin_some(node);