latest pushes
This commit is contained in:
@ -32,47 +32,6 @@ LABEL author=ronaldsonbellande@gmail.com
|
|||||||
LABEL ROS_architecture_github_branchtag=${ROS_ARCHITECTURE_VERSION_GIT_BRANCH}
|
LABEL ROS_architecture_github_branchtag=${ROS_ARCHITECTURE_VERSION_GIT_BRANCH}
|
||||||
LABEL ROS_architecture_github_commit=${ROS_ARCHITECTURE_VERSION_GIT_COMMIT}
|
LABEL ROS_architecture_github_commit=${ROS_ARCHITECTURE_VERSION_GIT_COMMIT}
|
||||||
|
|
||||||
# Ubuntu setup
|
|
||||||
RUN apt-get update -y
|
|
||||||
RUN apt-get upgrade -y
|
|
||||||
|
|
||||||
# Set the working directory inside the Docker image
|
|
||||||
WORKDIR /
|
|
||||||
|
|
||||||
# Create a directory for the requirements
|
|
||||||
RUN mkdir -p /requirements
|
|
||||||
|
|
||||||
# Copy specific files from the requirements directory to the "requirements" directory in the Docker image
|
|
||||||
COPY ../requirements/requirements.txt /requirements/requirements.txt
|
|
||||||
COPY ../requirements/system_requirements.txt /requirements/system_requirements.txt
|
|
||||||
COPY ../requirements/ros_requirements.txt /requirements/ros_requirements.txt
|
|
||||||
COPY ../requirements/ros_repository_requirements.txt /requirements/ros_repository_requirements.txt
|
|
||||||
|
|
||||||
# Install dependencies for system
|
|
||||||
RUN apt-get update && apt-get install -y --no-install-recommends <requirements/system_requirements.txt\
|
|
||||||
&& apt-get upgrade -y \
|
|
||||||
&& apt-get clean \
|
|
||||||
&& rm -rf /var/lib/apt/lists/*
|
|
||||||
|
|
||||||
# Install python 3.8 and make primary
|
|
||||||
RUN apt-get update && apt-get install -y \
|
|
||||||
python3.8 python3.8-dev python3-pip python3.8-venv \
|
|
||||||
&& update-alternatives --install /usr/bin/python python /usr/bin/python3.8 1
|
|
||||||
|
|
||||||
# Pip install update
|
|
||||||
RUN pip3 install --upgrade pip
|
|
||||||
|
|
||||||
# Install python libraries
|
|
||||||
RUN pip --no-cache-dir install -r requirements/requirements.txt
|
|
||||||
|
|
||||||
# Install dependencies for ros system
|
|
||||||
RUN apt-get update \
|
|
||||||
&& apt-get install -y --no-install-recommends <requirements/ros_requirements.txt \
|
|
||||||
&& rm -rf /var/lib/apt/lists/*
|
|
||||||
|
|
||||||
# Add /usr/bin to the PATH
|
|
||||||
ENV PATH="/usr/bin:${PATH}"
|
|
||||||
|
|
||||||
# Create local catkin workspace
|
# Create local catkin workspace
|
||||||
RUN mkdir -p $CATKIN_WS/src
|
RUN mkdir -p $CATKIN_WS/src
|
||||||
|
|
||||||
@ -82,10 +41,20 @@ COPY ../ ${CATKIN_WS}/src
|
|||||||
# Set the working directory for Catkin
|
# Set the working directory for Catkin
|
||||||
WORKDIR $CATKIN_WS
|
WORKDIR $CATKIN_WS
|
||||||
|
|
||||||
|
RUN export ROS_INSTALL_PATH=$(find / -name setup.bash -print)
|
||||||
|
RUN ROS_VERSION=$(rosversion -d)
|
||||||
|
|
||||||
|
# Print ROS installation path and version
|
||||||
|
RUN echo "ROS installed in: $ROS_INSTALL_PATH"
|
||||||
|
RUN echo "ROS version: $ROS_VERSION"
|
||||||
|
|
||||||
|
# Initialize catkin workspace
|
||||||
|
RUN catkin init \
|
||||||
|
&& catkin config --cmake-args -DCATKIN_ENABLE_TESTING=0
|
||||||
|
|
||||||
# Initialize local catkin workspace, install dependencies and build workpsace
|
# Initialize local catkin workspace, install dependencies and build workpsace
|
||||||
RUN echo "source /opt/ros/${ROS_VERSION}/setup.bash" >> ~/.bashrc
|
RUN echo "source /opt/ros/${ROS_VERSION}/setup.bash" >> ~/.bashrc
|
||||||
RUN source ~/.bashrc
|
RUN source ~/.bashrc
|
||||||
RUN catkin config --extend "/opt/ros/"${ROS_VERSION}"
|
|
||||||
|
|
||||||
RUN cd $CATKIN_WS \
|
RUN cd $CATKIN_WS \
|
||||||
&& rosdep init \
|
&& rosdep init \
|
||||||
|
@ -1,13 +1,17 @@
|
|||||||
import os
|
import os
|
||||||
import sys
|
import sys
|
||||||
import subprocess
|
import subprocess
|
||||||
|
from launch import LaunchDescription
|
||||||
|
from launch_ros.actions import Node
|
||||||
|
from launch.actions import DeclareLaunchArgument
|
||||||
|
from launch.substitutions import LaunchConfiguration
|
||||||
|
|
||||||
|
|
||||||
def ros1_launch_description():
|
def ros1_launch_description():
|
||||||
# Get command-line arguments
|
# Get command-line arguments
|
||||||
args = sys.argv[1:]
|
args = sys.argv[1:]
|
||||||
|
|
||||||
# Construct the ROS 1 launch command
|
# Construct the ROS 1 launch commandi
|
||||||
roslaunch_command = ["roslaunch", "ros_web_api_bellande_step", "bellande_step_api_2d.launch"] + args
|
roslaunch_command = ["roslaunch", "ros_web_api_bellande_step", "bellande_step_api_2d.launch"] + args
|
||||||
|
|
||||||
# Execute the launch command
|
# Execute the launch command
|
||||||
|
@ -1,16 +1,32 @@
|
|||||||
<?xml version="1.0"?>
|
<?xml version="1.0"?>
|
||||||
<launch>
|
<!--
|
||||||
<arg name="x1"/>
|
Copyright (C) 2024 Bellande Robotics Sensors Research Innovation Center, Ronaldson Bellande
|
||||||
<arg name="y1"/>
|
|
||||||
<arg name="x2"/>
|
|
||||||
<arg name="y2"/>
|
|
||||||
<arg name="limit"/>
|
|
||||||
|
|
||||||
<node pkg="ros_web_api_bellande_step" type="bellande_step_api_2d.py" name="bellande_step_api_2d_node" output="screen">
|
Licensed under the Apache License, Version 2.0 (the "License"); you may not
|
||||||
<param name="x1" value="$(arg x1)"/>
|
use this file except in compliance with the License. You may obtain a copy of
|
||||||
<param name="y1" value="$(arg y1)"/>
|
the License at
|
||||||
<param name="x2" value="$(arg x2)"/>
|
|
||||||
<param name="y2" value="$(arg y2)"/>
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
<param name="limit" value="$(arg limit)"/>
|
|
||||||
</node>
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||||||
|
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
||||||
|
License for the specific language governing permissions and limitations under
|
||||||
|
the License.
|
||||||
|
-->
|
||||||
|
<launch>
|
||||||
|
<arg name="x1" />
|
||||||
|
<arg name="y1" />
|
||||||
|
<arg name="x2" />
|
||||||
|
<arg name="y2" />
|
||||||
|
<arg name="limit" />
|
||||||
|
|
||||||
|
<node pkg="ros_web_api_bellande_step" type="bellande_step_api_2d.py"
|
||||||
|
name="bellande_step_api_2d_node" output="screen">
|
||||||
|
<param name="x1" value="$(arg x1)" />
|
||||||
|
<param name="y1" value="$(arg y1)" />
|
||||||
|
<param name="x2" value="$(arg x2)" />
|
||||||
|
<param name="y2" value="$(arg y2)" />
|
||||||
|
<param name="limit" value="$(arg limit)" />
|
||||||
|
</node>
|
||||||
</launch>
|
</launch>
|
||||||
|
Reference in New Issue
Block a user